Categories
문화

자바 최적화를 읽고 <한빛미디어: 나는 리뷰어다>

지난 달 말에 한빛미디어에서 리뷰할 책으로 O’REILLY 사의 Optimizing Java를 번역한 <자바 최적화> 라는 책을 받았습니다. 회사에서 사용하는 대부분의 업무처리가 자바(Java)로 되어 있다보니 이 책을 읽고 싶었기에 속으로 ‘아싸’를 외쳤습니다.

자바(Java)는 자바 가상 머신(Java Virtual Machine, 이하 JVM)에서 실행됩니다. 자바 소스 코드를 컴파일 하면 Java Intermediate Language(이하 JIL)라는 일종의 Intermediate Representation(이하 IR) 형식의 파일을 만듭니다. 그리고 JVM은 이 JIL을 읽어서 CPU가 이해할 수 있는 기계어 코드로 변환을 합니다. 즉, 기계어와 소스 코드 사이에 IR이라는 추상층(Abstract Layer)을 하나 더 만들어 언어의 유연성(Flexibility)을 살렸습니다. Microsoft의 .NET Framework 도 OS에 관계없이 프로그램을 실행할 수 있는데 이 또한 C#이 IR을 사용하기 때문입니다.

Categories
일상

<한빛미디어> 나는 리뷰어다: 책을 받다

집에 오니 택배가 책상 위에 있었다. 국내 IT도서 생태계의 허파 역할을 하는 한빛미디어에서 보낸 택배였다. 4월 말, <나는 리뷰어다>를 신청했느데 운이 좋게도 선정이 되었다. ‘과연 어떤 책이 왔을까?’ 기대 반, 걱정 반으로 택배를 뜯기 시작했다.

Categories
컴퓨터

Effective Java 3판 읽기 02

인터넷 커뮤니티를 뒤져보면 프로그래밍 인터뷰 시 String, StringBuffer, StringBuilder 객체의 차이를 설명하라는 질문을 받았다는 글이 종종 나온다. 아는 정도에 따라 답의 깊이가 달라지겠지만 일반적으로 아래와 같이 답하면 된다. String 객체는 불가변한(Immutable) 객체이나 StringBuffer와 StringBuilder는 변경이 가능한(Mutable) 객체이다. 그리고 StringBuffer와 StringBuilder는 동기화(Synchronization) 지원 여부가 다르다. StringBuffer는 Thread-safe 하지만, StringBuilder는 Thread-safe 하지 않다. 이번에 다루는 내용은 아이템 […]

Categories
컴퓨터

Effective Java 3판 읽기 01

이펙티브 자바(Effective Java)는 자바 개발자의 필독서다. 앞으로 꾸준히 읽으면서 필요한 내용을 여기에 적으려고 한다. 오늘 읽은 분량은 1쪽 부터 6쪽 까지이다. 오늘은 회사 퇴근 후 CISA 수업이 있었다. 샤워를 하고 나니 이미 0시가 넘어서 많이 읽지 못했다. 아래는 책 옮긴이가 제공한 주요 링크 정보다 번역 용어 해설: http://bit.ly/2Mr1ksE 네이버 랩스 백기선님 강의: http://bit.ly/2Lu4BGi 한국어판 깃허브 […]