이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 자바의 네이티브 인터페이스(Java native interface, JNI)는 C나 C++ 등의 native programming language로 작성된 native method를 호출하는 데 이용되는 기능이다. 네이티브 메서드가 수행하는 임의의 계산은 네이티브 언어로 실행되며, 자바 언어로 전달된다.전통적으로 네이티브 메서드는 세 가지 용도로 쓰였다. 네이티브 메서드를 사용하면 레지스트리(registry)나 파일 락(file lock) 같은 특정 플랫폼에 고유한 기능을 이용할 수 있다.또한 이미 구현되어 있는 라이브러리를 이용할 수 있으며, 그 ..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 java.lang.reflect의 핵심 리플렉션 기능(core reflection facility)을 이용하면 메모리에 적재된 클래스의 정보를 가져오는 프로그램을 작성할 수 있다. 하지만 이런 능력에는 대가가 따른다. 컴파일 시점에 자료형을 검사함으로써 얻을 수 있는 이점들을 포기해야 한다(exception checking 포함). 리플렉션을 통해 존재하지 않는, 또는 접근할 수 없는 메서드를 호출하면 실행 도중에 오류가 발생할 것이다. 그러니 특별히 주의해야 한다. 리플레션 기능을 이용하는 코드는 보기 싫은데다 장황하다. 영리한 코드와는 거리가 멀..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 만일 적당한 인터페이스 자료형이 있다면 인자나 반환값, 변수 그리고 필드의 자료형은 클래스 대신 인터페이스로 선언하자. 아래와 같은 타이핑하는 습관을 들이는 것이 좋다. // 인터페이스를 자료형으로 사용하고 있는 바람직한 예제 List subscribers = new Vector(); // 클래스를 자료형으로 사용하는 나쁜 예제 Vector subscribers = new Vector(); 인터페이스를 자료형으로 쓰는 습관을 들이면 프로그램은 더욱 유연해진다. 가령 성능 개선, 기능 추가 등의 이유로 객체의 실제 구현을 다른 것으로 바꿀 때 유연하게..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 문자열 연결(concatenation) 연산자 +는 여러 문자열을 하나로 합하는 편리한 수단이다. 하지만 n개의 문자열에 연결 연산자를 반복 적용해서 연결하는데 드는 시간은 n^2에 비례한다. public String statement() { String result = ""; for (int i = 0; i < numItems(); i++) { result += lineForItem(i); // String concatenation } return result; } 만족스런 성능을 얻으려면 String 대신 StringBuiler를 써야된다. pu..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 문자열은 텍스트 표현과 처리에 걸맞도록 설계되었다. 그런데 문자열은 워낙 흔한 데다 자바의 문자열 지원도 아주 훌륭하기 때문에 원래 설계된 목적 외의 용도로 많이 활용하는 경향이 있다.문자열은 값 자료형(value type)을 대신하기에 부족하다. 적절한 값 자료형이 있다면 그것이 기본 자료형이건 아니면 객체 자료형이건 상관없이 해당 자료형을 사용해야 한다.문자열은 enum 자료형을 대신하기에는 부족하다. enum은 문자열보다 훨씬 좋은 열거 자료형 상수들을 만들어 낸다.문자열은 혼합 자료형(aggregate type)을 대신하기엔 부족하다. // ..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 모든 기본 자료형에는 대응되는 참조 자료형이 있는데, 이를 객체화된 기본 자료형(boxed primitive type) 이라 부른다. int, double, boolean의 객체화된 기본 자료형은 각각 Integer, Double, Boolean이다.릴리스 1.5부터 자동 객체화(autoboxing)와 지동 비객체화(auto-unboxing)가 언어의 일부가 되었다. 이 기능들은 기본 자료형과 그 객체 표현형 간의 차이를 희미하게 만든다.그런데 그 둘 사이에는 실질적인 차이가 있으므로, 둘 가운데 무엇을 사용하고 있는지를 아는 것이 중요하며, 어떤 ..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 float와 double은 기본적으로 과학 또는 엔지니어링 관련 계산에 쓰일 목적으로 설계된 자료형이다. 이 자료형들은 이진 부동 소수점 연산(binary floating-point arithmetic) 을 수행하는데, 이것은 넓은 범위의 값(magnitude)에 대해 정확도가 높은 근사치를 제공할 수 있도록 세심하게 설계된 연산이다. 하지만 정확한 결과를 제공하지는 않기 때문에 정확한 결과가 필요한 곳에는 사용하면 안 된다. float와 double은 특히 돈과 관계된 계산에는 적합하지 않다. 돈 계산을 할 때는 BigDecimal, int 또는 ..
이펙티브 자바 Effective Java 2/E국내도서저자 : 조슈아 블로크(Joshua Bloch) / 이병준역출판 : 인사이트 2014.09.01상세보기 표준 라이브러리(standard library)를 사용하면 그 라이브러리를 개발한 전문가의 지식뿐만 아니라 여러분보다 먼저 그 라이브러리를 사용한 사람들의 경험을 활용할 수 있다. 실제로 하려는 일과 큰 관련성도 없는 문제에 대한 해결 방법을 임의로 구현하느라 시간을 낭비하지 않아도 된다는 것이다.또한 별다른 노력을 하지 않아도 그 성능이 점차로 개선되며, 시간이 흐르면 새로운 기능들도 추가된다. 아울러 표준 라이브러리를 사용하면 주류(mainstream) 개발자들과 같은 코드를 만들게 된다. 그런 코드는 가독성이 높고, 유지보수가 쉬우며, 다른 개..
- Total
- Today
- Yesterday
- rabbitmq
- 한화에어로스페이스
- ubuntu
- Java
- Rails
- CSS
- html
- SK하이닉스
- 삼성전자
- 알고리즘
- 프로그래밍
- install
- 한미반도체
- 국제유가
- 주식투자
- 투자전략
- 이펙티브 자바
- codecademy
- ruby on rails
- ruby
- OpenStack
- javascript
- 웹프로그래밍
- 이수페타시스
- Message Queue
- 현대차
- HBM
- 자료구조
- 흥구석유
- 반도체관련주
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
