본문 바로가기

JAVA/Java의 정석 3rd Edition

1# 하루 JAVA (feat. Java의 정석 3)

반응형
  • 자바의 정석을 선택한 이유

원래 '이것이 자바다' 라는 책으로 먼저 공부 한 다음 'Java의 정석'을 공부하려 했었는데 서점에 'Java의 정석' 밖에 없어서 이 책으로 Java 공부를 시작하게 되었다. 

 

'Java의 정석3판'의 내용을 중심으로 하루에 최소 하나씩이라도 공부한 내용들을 정리한 글을 올릴 수 있도록 노력 해보겠다.


1. Java 란 무엇인가 ?

자바는 썬 마이크로시스템즈 에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어이다.

자바의 가장 중요한 특징은 운영체제에 독립적이라는 것이다. 즉 자바로 작성된 프로그램은 운영체제의 종류에 관계없이 실행이 가능하기 때문에, 운영체제에 따라 프로그램을 전혀 변경하지 않고도 실행이 가능하다.

 

2. Java 언어의 특징

 

1. 운영체제에 독립적이다.

자바 응용프로그램은 운영체제나 하드웨어가 아닌 JVM(자바 가상 머신) 하고만 통신하고 JVM이 자바 응용프로그램으로부터 전달받은 명령을 해당 운영체제가 이해할 수 있도록 변환하여 전달한다. 자바로 작성된 프로그램은 운영체제에 독립적이지만 JVM은 운영체제에 종속적이어서 썬에서는 여러 운영체제에 설치할 수 있는 서로 다른 버전의 JVM을 제공하고 있다. 그래서 자바로 작성된 프로그램은 운영체제와 하드웨어에 관계없이 실행 가능하며 이것을 '한번 작성하면, 어디서나 실행된다' 고 표현하기도 한다.

 

2. 객체지향언어이다.

자바는 객체지향 프로그래밍언어중의 하나로 객체지향개념의 특징인 상속, 캡슐화, 다형성이 잘 적용된 순수한 객체지향언어라는 평가를 받고 있다.

 

3. 비교적 배우기 쉽다.

자바의 연선자와 기본구문은 C++에서, 객체지향관련 구문은 스목톡이라는 객체지형언어에서 가져왔다. 이 들 언어의 장점은 취하면서 복잡하고 불필요한 부분은 과감히 제거하여 단순화함으로서 쉽게 배울 수 있으며, 간결하고 이해하기 쉬운 코드를 작성할 수 있도록 하였다.

 

4. 자동 메모리 관리

자바로 작성된 프로그램이 실행되면, 가비지컬렉터가 자동적으로 메모리를 관리해주기 때문에 프로그래머는 메모리를 따로 관리 하지 않아도 된다.

 

5. 네트워크와 분산처리를 지원한다.

풍부하고 다양한 네트워크 프로그래밍 라이브러리를 통해 비교적 짧은 시간에 네트워크 관련 프로그램을 쉽게 개발할 수 있도록 지원한다.

 

6. 멀티쓰레드를 지원한다.

일반적으로 멀티쓰레드의 지원은 사용되는 운영체제에 따라 구현방법도 상이하며, 처리 방식도 다르다. 그러나 자바에서 개발되는 멀티쓰레드 프로그램은 시스템과는 관계없이 구현가능하며, 관련된 라이브러리가 제공되므로 구현이 쉽다. 그리고 여러 쓰레드에 대한 스케줄링을 자바 인터프리터가 담당하게 된다.

 

7. 동적로딩을 지원한다.

자바는 동적 로딩을 지원하기 때문에 실행 시에 모든 클래스가 로딩되지 않고 필요한 시점에 클래스를 로딩하여 사용할 수 있다는 장점이 있다. 

 


자바의 정석 책은 아주 친절하다. 지은이인 남궁성님이 그만큼 꼼꼼하다는 얘기겠지만..ㅎㅎ Java에서 자주 발생하는 에러와 해결방법, 자바의 정석 책으로 공부하는 방법 등 자바를 처음 접하는 사람들에 대한 배려가 많이 느껴지는 책이다. 알록달록 색이나 그림이 없어서 조금 지루하게 느끼는 사람들도 있겠지만, 남궁성님이 운영하는 네이버 코드초보스터디카페 라던지, 유튜브 무료강의도 참고하여 들을 수 있기때문에 다양한 방법으로 효율적으로 공부할 수 있는 책이라고 느낀다. 

반응형

'JAVA > Java의 정석 3rd Edition' 카테고리의 다른 글

2# 하루 JAVA (feat. Java의 정석 3)  (0) 2023.01.18