알라딘

헤더배너
상품평점 help

분류

이름:조태현

최근작
2012년 7월 <자바7 NIO.2>

조태현

다채로운 학문의 세상에 이끌려 연구자의 길을 걷고 있다. IT에 관심이 많으며 시간이 있을 때면 다양한 물건을 만들어보거나 시도해보는 것을 좋아한다. 태생은 보헤미안이나 현실은 아저씨.  

대표작
모두보기
저자의 말

<자바7 NIO.2> - 2012년 7월  더보기

자바7은 많은 변화가 있는 언어지만, 아직 현업에는 그렇게까지 널리 퍼지지는 않았습니다. 자바7은 기존 언어의 장점이라 여겨졌던 부분을 대폭 수용했으며, 언어 차원에서도 많이 변화했습니다. case "April":처럼 switch 문에 문자열을 쓰는 것도 가능해졌고, try-with-resources 구문으로 리소스 관리도 편해졌습니다. 심지어 long big = 1_800_000; 같은 선언도 가능합니다. 이처럼 언어적인 변화뿐만 아니라 자바의 기본 클래스에도 변화가 생겼습니다. 비동기 처리가 없었던 자바 IO의 불편함을 해소하고자 자바 NIO가 등장했고, 자바 IO와 NIO 사이의 일관성 없는 클래스 설계를 바로 잡고, 비동기 채널 등의 네트워크 지원을 대폭 강화한 NIO.2가 등장했습니다. IO → NIO → NIO.2처럼 클래스 API 명칭에는 일관성 없는 모습을 보여주지만, NIO.2에서는 내부 클래스에 대해서는 일관된 모습으로 정리가 되었습니다. 대표적으로 File 클래스 대신 Path 클래스를 사용하게 바뀌었습니다. 각 운영체제 고유의 파일시스템을 반영한 NIO.2에서는 파일과 디렉터리의 복사, 이동, 삭제 같은 작업도 편하게 할 수 있게 되었습니다. 와치 서비스를 통해 파일시스템 이벤트를 직접 받을 수 있게 되었고, 이를 기반으로 고급 기능을 좀 더 쉽게 구현할 수 있습니다. 소켓 기반 애플리케이션을 만들어보면서 자바7이 제공하는 네트워크 기능을 맛볼 수 있으며, 파일시스템 제공자를 통해 자신만의 파일시스템 작업이 가능해졌습니다. 이 책에서 직접적인 언급이나 예제가 등장하지는 않지만, HTML5가 등장하면서 자바 개발자도 네트워크 프로그래밍을 좀 더 자주 접하게 되었습니다. HTML5에서 등장한 웹 소켓, 웹 소켓을 통해 부분적으로 업데이트되는 위젯 등을 작업하려면 소켓 프로그래밍을 해야 하기 때문입니다. 페이스북, 트위터 등은 하나의 웹 애플리케이션처럼 동작하는데, 이를 구현하려면 소켓 프로그래밍이 필요합니다. 웹 페이지 전체가 아닌 필요한 부분만 업데이트하는 데 필요하기 때문입니다. 이 책이 네트워크 프로그래밍을 익히고, 자바7과 HTML5라는 미래를 대비하는 개발자가 되는 데 도움이 되기를 바랍니다.

가나다별 l l l l l l l l l l l l l l 기타
국내문학상수상자
국내어린이문학상수상자
해외문학상수상자
해외어린이문학상수상자