일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- nodejs
- mysql 5.5
- JavaScript
- spring
- java
- spring cloud
- Regular expression
- REACT
- migration
- update
- Effective Java 3/e
- current_date
- REACTJS
- upgrade
- 퀵소트
- git
- eslint
- Chunk
- Express
- Spring Batch
- MySQL
- Node
- log_bin
- regex
- Webpack
- 정규표현식
- Effective Java
- npm
- log4j2
- expire_logs_days
- Today
- Total
목록Effective Java (4)
내 세상
toString의 일반규약에 따라 '간결하면서 사람이 읽기 쉬운 형태의 유익한 정보'를 반환해야 한다. 또한, toString의 규약은 "모든 하위 클래스에서 이 메서드를 재정의하라"고 한다. toString을 잘 구현한 클래스는 사용하기에 훨씬 즐겁고, 그 클래스를 사용한 시스템은 디버깅하기 쉽다. toString메서드는 객체를 println, printf, 문자열 연결 연산자(+), assert 구문에 넘길 때, 혹은 디버거가 객체를 출력할 때 자동으로 호출된다. 즉, 직접 호출하지 않더라도 다른 어딘가에서 쓰일 거란 의미이다. format을 한번 명시하면 평생 그 format에 얽매이게 된다. 만약 향후 release에서 format을 바꾼다면 이를 사용하던 코드들과 데이터들은 엉망이 될 것이다. ..
Java Library에는 close 메서드를 호출해 직접 닫아줘야 하는 자원이 많다. ex) InputStream, OutputStream, java.sql.Connection 등 자원 닫기(close 메서드)는 client가 놓치기 쉬워서 예측할 수 없는 성능 문제로 이어지기도 함. 이런 자원 중 상당수가 안전망으로 finalizer를 활용하고는 있지만 finalizer는 그리 믿을만 하지 못하다.(Item 8) 전통적으로 자원이 제대로 닫힘을 보장하는 수단으로 try-finally가 쓰였다. static String firstLineOfFile(String path) throws IOException { BufferedReader br = new BufferedReader(new FileReader..
새로운 기능을 다룬 아이템의 위치 기능 아이템 번호 도입된 자바 버전 람다(lambda) 42~44 (p254 ~ p263) Java 8 스트림(stream) 45~48 (p268 ~ p291) Java 8 옵셔널(Optional) 55 (p326) Java 8 인터페이스의 디폴트 메서드 21 (p136) Java 8 try-with-resources 9 (p47) Java 7 @SafeVarargs 32 (p191) Java 7 모듈(Module) 15 (p96) Java 9 Component ? 개별 method부터 여러 package로 이뤄진 복잡한 framework까지 재사용 가능한 모든 software 요소 Component는 사용자를 놀라게 해서는 절대 안된다. (정해진 동작이나 예측할 수 있..