2020.10.17 - java-squid/effective-java GitHub Wiki
νκ³
Han
- μΆκ·ΌνλκΉ νλ¬
- μ¬ν 1~2λ² κΈ°λνκ³ μμ΅λλ€.
- item10μμ μν λ΄μ© μ΄μ§ 보기 μ«μ΄μ‘λ€.
- λ£° κ°μ μ΄ νμνλ€.
David
- νκ΅ λ€λλκΉ νλ€λ€
- κ³Όμ + μν....
- μμ΄ν μ΄ μ΄λ ΅μ§ μμλ€.
Jack
- λ€μμ£Ό μ°Έμ(10/24)μ μ’ νλ€ κ² κ°μ.
λ€μ μ€ν°λλ..?
- νλμ μμ΄ν
μ λν΄ λ무 κΉκ² λ€μ΄κ°λ κ²μ΄ μ’μ λ°©λ²μΌκΉ?
- κ°κ°μΈμ΄ μκ°νμ λ, μ΄κ±΄ μ°Ύμλ΄μΌκ² λ€κ³ μκ°λλ μ§λ¬Έλ€μ λ€ λ¨κ²¨μ£Όλ μΈ‘λ©΄μΌλ‘ μ§ν
- item3 (han, david, sunny)
- item8μ λν΄μλ κ°μ μ 리ν κ²(david, jack)
Item 9,10,11
Item 9
AutoCloseable
λ₯Ό ꡬνλ°μ κ°μ²΄λ try~λ¬Έμ λ€μ΄κ°λ©΄, μλμΌλ‘ close() λλ€.- μμΈ stack traceκ° μμ΄λ©΄, λμ€μ μλ κ²μ 무μνκ³ λ§¨ μ²μ(μλ μμΈ λ°μμ μμΈ)μ μΆμ ν¨.
Item 10
-
λ Όλ¦¬μ λμΉμ±μ μ¬λλ€μ΄ μ΄λ»κ² κ·μΉμ μ μνλμ λ°λΌ λ¬λ €μλ€.
- value objectμμ κ°μ(equality)μ μ μνλ κ².
- κ°μ μ£Όμ(==)λ₯Ό 곡μ νμ§ μλλΌλ, κ°μ΄ κ°λ€λΌκ³ μ μν λ
-
View λ©μλλ 무μμΈκ°?
- ColorPointκ° Pointλ₯Ό μμν΄μ μ¬μ©ν΄μΌνλλ°, ColorPointκ° Pointλ₯Ό κ°μ²΄λ₯Ό νλλ‘ κ°μ§κ³ μκ³ , κ±°κΈ°μ color λ§ κ°μ§κ³ μμ.
- ColorPointμμ Point λ§ λ°ννλ λ©μλλ₯Ό view λ©μλλΌ λΆλ₯Έλ€.
- μλ§λ, ColorPointμ ν μΈ‘λ©΄μ λ°ννκΈ° λλ¬Έμ΄ μλκΉ?
- μμμ΄ κ°μ§κ³ μλ ν° μ₯μ λ€μ΄ μμ§λ§, equals κ·μ½μ μ§ν€κΈ° μν΄μλ abstract ν΄λμ€λ₯Ό μ¬μ©ν΄μΌνμ§ μμκΉ?
-
AutoValue
- lombokμμ μ 곡νκ³ μλ
EqualsHashCode
λ±μ μ 곡ν΄μ£Όλ νλ μμν¬ - lombokμ μ¬μ©νκ³ μμΌλ©΄ κ΅³μ΄ μ¬μ©ν νμ μμ
- μ? 둬볡μμ λ λ§μ κΈ°λ₯(Builder...)λ±μ μ 곡ν΄μ£ΌλκΉ.
- lombokμμ μ 곡νκ³ μλ
-
URL Host Ip Equals ...
- equalsλ₯Ό ꡬνν λ, μΈλΆ 리μμ€κ° ν¬ν¨λλ©΄ μλλ€.
- μ? κ°μ²΄ μμ μ μλμλ λ€λ₯΄κ², λ³νν μ μμΌλκΉ.
- equalsλ₯Ό ꡬνν λ, μΈλΆ 리μμ€κ° ν¬ν¨λλ©΄ μλλ€.
-
νλμ νμ€ν
- νμ€ν?
- canonical form
- νμ€νμ νλλ§ μ‘΄μ¬ν΄μΌνκ³ , κ°μ²΄μμ νμ€νμ μ¬μ©νλ©΄, λ°λμ μ½μλ ν λλ‘(μμν λλ‘) λμν΄μΌνλ€.
- cf) Java νμ€νμ Oracleμ΄ μ£Όλν¨.
-
κ°μ²΄μ§ν₯μ μΈ‘λ©΄
- ColorPoint , Point μμμΌλ‘ ꡬνλμμ λ, equalsμ μ΄κΈ°λ κ±ΈκΉ?
- λμΉμ±, μΆμ΄μ±μ μ΄κΈΈ μ μμ.
- μ΄λ»κ² 보면 μ μ½μ΄λΌκ³ λλ μλ μμ§λ§, κ°μ²΄ μΈμμμ μ§μΌμΌν λ².
- chapter3μ λν΄ μμΈν 보λ κ² μ’μλ―
- μ? Objectμ λν΄ μ΄λ»κ² μμλ°κ³ μλμ§ μλ €μ£Όκ³ μκΈ° λλ¬Έμ.
- ColorPoint , Point μμμΌλ‘ ꡬνλμμ λ, equalsμ μ΄κΈ°λ κ±ΈκΉ?
Item11
-
λΉκ²°μ μ μΈ μμλ?
- λΉκ²°μ μ μΈ μμλ κ°λ³μ μΈ νλλ₯Ό μλ―Ένλ κ² μλκΉ?
- PhoneNumber μΈμ€ν΄μ€μμ μ μλ hashcode λ©μλλ₯Ό μ¬μ©ν λ, μΈλΆ μν©μ λ°λΌ λ¬λΌμ§λ νλλ€μ΄ μμΌλκΉ, νμ κ°μ ν΄μ¬μ½λ κ°μ λ°νν κ²μ μλ―Ένλ λ―.
- Java μμ μ¬μ©νλ keyλ λΆλ³κ°μ²΄μ.
-
μ§μ° μ΄κΈ°ν μ λ΅μ λν΄
- LazyλΌλ κ², μ¬μ©νκΈ° μ κΉμ§λ placeholder λ§ λ¨κ²¨λ¬μ, μ±λ₯μ μ΄μμμ μ΄λμ μ»μ μ μμλ―.
-
AutoValue
- Equals, Hascode, toStringλ§ μ§μ
- Lombokμ μμ κΈ°λ₯μ λν΄μ λ λ§μ΄ μ§μμ ν΄μ£ΌλκΉ, λ μ’μ.
μ€λΉ
-> Han -> 10μ 24μΌ