-
Notifications
You must be signed in to change notification settings - Fork 38
2020.10.17
Han edited this page Oct 17, 2020
·
2 revisions
- ์ถ๊ทผํ๋๊น ํ๋ฌ
- ์ฌํ 1~2๋ฒ ๊ธฐ๋ํ๊ณ ์์ต๋๋ค.
- item10์์ ์ํ ๋ด์ฉ ์ด์ง ๋ณด๊ธฐ ์ซ์ด์ก๋ค.
- ๋ฃฐ ๊ฐ์ ์ด ํ์ํ๋ค.
- ํ๊ต ๋ค๋๋๊น ํ๋ค๋ค
- ๊ณผ์ + ์ํ....
- ์์ดํ ์ด ์ด๋ ต์ง ์์๋ค.
- ๋ค์์ฃผ ์ฐธ์(10/24)์ ์ข ํ๋ค ๊ฒ ๊ฐ์.
- ํ๋์ ์์ดํ
์ ๋ํด ๋๋ฌด ๊น๊ฒ ๋ค์ด๊ฐ๋ ๊ฒ์ด ์ข์ ๋ฐฉ๋ฒ์ผ๊น?
- ๊ฐ๊ฐ์ธ์ด ์๊ฐํ์ ๋, ์ด๊ฑด ์ฐพ์๋ด์ผ๊ฒ ๋ค๊ณ ์๊ฐ๋๋ ์ง๋ฌธ๋ค์ ๋ค ๋จ๊ฒจ์ฃผ๋ ์ธก๋ฉด์ผ๋ก ์งํ
- item3 (han, david, sunny)
- item8์ ๋ํด์๋ ๊ฐ์ ์ ๋ฆฌํ ๊ฒ(david, jack)
-
AutoCloseable
๋ฅผ ๊ตฌํ๋ฐ์ ๊ฐ์ฒด๋ try~๋ฌธ์ ๋ค์ด๊ฐ๋ฉด, ์๋์ผ๋ก close() ๋๋ค. - ์์ธ stack trace๊ฐ ์์ด๋ฉด, ๋์ค์ ์๋ ๊ฒ์ ๋ฌด์ํ๊ณ ๋งจ ์ฒ์(์๋ ์์ธ ๋ฐ์์ ์์ธ)์ ์ถ์ ํจ.
-
๋ ผ๋ฆฌ์ ๋์น์ฑ์ ์ฌ๋๋ค์ด ์ด๋ป๊ฒ ๊ท์น์ ์ ์ํ๋์ ๋ฐ๋ผ ๋ฌ๋ ค์๋ค.
- 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์ ์ด๊ธฐ๋ ๊ฑธ๊น?
-
๋น๊ฒฐ์ ์ ์ธ ์์๋?
- ๋น๊ฒฐ์ ์ ์ธ ์์๋ ๊ฐ๋ณ์ ์ธ ํ๋๋ฅผ ์๋ฏธํ๋ ๊ฒ ์๋๊น?
- PhoneNumber ์ธ์คํด์ค์์ ์ ์๋ hashcode ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ๋, ์ธ๋ถ ์ํฉ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ ํ๋๋ค์ด ์์ผ๋๊น, ํญ์ ๊ฐ์ ํด์ฌ์ฝ๋ ๊ฐ์ ๋ฐํํ ๊ฒ์ ์๋ฏธํ๋ ๋ฏ.
- Java ์์ ์ฌ์ฉํ๋ key๋ ๋ถ๋ณ๊ฐ์ฒด์.
-
์ง์ฐ ์ด๊ธฐํ ์ ๋ต์ ๋ํด
- Lazy๋ผ๋ ๊ฒ, ์ฌ์ฉํ๊ธฐ ์ ๊น์ง๋ placeholder ๋ง ๋จ๊ฒจ๋ฌ์, ์ฑ๋ฅ์ ์ด์์์ ์ด๋์ ์ป์ ์ ์์๋ฏ.
-
AutoValue
- Equals, Hascode, toString๋ง ์ง์
- Lombok์ ์์ ๊ธฐ๋ฅ์ ๋ํด์ ๋ ๋ง์ด ์ง์์ ํด์ฃผ๋๊น, ๋ ์ข์.
-> Han -> 10์ 24์ผ