Skip to content

Commit b139186

Browse files
committed
Merge branch 'main' of https://github.com/hyeoni90/java-labs into main
2 parents 4a35e46 + c444ca2 commit b139186

File tree

1 file changed

+7
-5
lines changed
  • src/main/java/com/hyeonah/javalabs/designpattern/builderpattern

1 file changed

+7
-5
lines changed

โ€Žsrc/main/java/com/hyeonah/javalabs/designpattern/builderpattern/README.mdโ€Ž

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
* ๊ฐ ๊ฐ’์˜ ์˜๋ฏธ๋ฅผ ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‹ค์ˆ˜๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์ˆœ์„œ๋ฅผ ๋ฐ”๊ฟ” ๊ฑด๋„ค์ฃผ๊ฒŒ ๋˜๋ฉด ์ปดํŒŒ์ผ ์‹œ ์•Œ์•„์ฑ„์ง€ ๋ชปํ•˜๊ณ  ๋Ÿฐํƒ€์ž„์— ์—‰๋šฑํ•˜๊ฒŒ ๋™์ž‘ํ•  ์šฐ๋ ค๊ฐ€ ์žˆ๋‹ค.
3232

3333
## ์ž๋ฐ” ๋นˆ์ฆˆ ํŒจํ„ด (javaBeans pattern)
34-
์„ ํƒ์  ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋งŽ์„ ๋Œธ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์•ˆ.
34+
์„ ํƒ์  ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋งŽ์„ ๋•Œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์•ˆ.
3535
๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์—†๋Š” ์ƒ์„ฑ์ž๋กœ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค๊ณ  ์„ธํ„ฐ(setter) ๋ฉ”์„œ๋“œ๋“ค์„ ํ˜ธ์ถœํ•˜์—ฌ ์›ํ•˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ์„ค์ •ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.
3636

3737
```java
@@ -54,14 +54,14 @@
5454
* ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค๊ธฐ ์‰ฝ๊ณ , ์ ์ธต์  ์ƒ์„ฑ์ž ํŒจํ„ด ๋ณด๋‹ค๋Š” ์ฝ”๋“œ๋ฅผ ์ฝ๊ธฐ ์‰ฝ๋‹ค.
5555
* ํ•„์š”์— ๋”ฐ๋ฅธ ๋‹ค์–‘ํ•œ ์ƒ์„ฑ์ž๋ฅผ ๋งŒ๋“ค์ง€ ์•Š์•„๋„ ๋œ๋‹ค.
5656
* ๋‹จ์ )
57-
* ๊ฐ์ฒด ํ•˜๋‚˜๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ํ˜ธ์ถœํ•ด์•ผํ•˜๊ณ , ๊ฐ์ฒด๊ฐ€ ์™„์ „ํžˆ ์ƒ์„ฑ๋˜๊ธฐ ์ „๊นŒ์ง€๋Š” ์ผ๊ด€์„ฑ(consistency)์ด ๋ฌด๋„ˆ์ง„ ์ƒํƒœ์— ๋†“์ธ๋‹ค.
58-
* ์ผ๊ด€์„ฑ์ด ๊นจ์ง„ ๊ฐ์ฒด๊ฐ€ ๋งŒ๋“ค์–ด์ง€๋ฉด, ๋ฒ„๊ทธ๋ฅผ ์‹ฌ์€ ์ฝ”๋“œ์™€ ๊ทธ ๋ฒ„๊ทธ ๋–„๋ฌธ์— ๋Ÿฐํƒ€์ž„์— ๋ฌธ์ œ๋ฅผ ๊ฒช๋Š” ์ฝ”๋“œ๊ฐ€... ๋””๋ฒ„๊น…์ด ์–ด๋ ต๋‹ค!
57+
* ๊ฐ์ฒด ํ•˜๋‚˜๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ํ˜ธ์ถœ ํ•ด์•ผํ•˜๊ณ , ๊ฐ์ฒด๊ฐ€ ์™„์ „ํžˆ ์ƒ์„ฑ๋˜๊ธฐ ์ „๊นŒ์ง€๋Š” ์ผ๊ด€์„ฑ(consistency)์ด ๋ฌด๋„ˆ์ง„ ์ƒํƒœ์— ๋†“์ธ๋‹ค.
58+
* ์ผ๊ด€์„ฑ์ด ๊นจ์ง„ ๊ฐ์ฒด๊ฐ€ ๋งŒ๋“ค์–ด์ง€๋ฉด, ๋ฒ„๊ทธ๋ฅผ ์‹ฌ์€ ์ฝ”๋“œ์™€ ๊ทธ ๋ฒ„๊ทธ ๋•Œ๋ฌธ์— ๋Ÿฐํƒ€์ž„์— ๋ฌธ์ œ๋ฅผ ๊ฒช๋Š” ์ฝ”๋“œ๊ฐ€... ๋””๋ฒ„๊น…์ด ์–ด๋ ต๋‹ค!
5959
* ํด๋ž˜์Šค๋ฅผ ๋ถˆ๋ณ€์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค.
6060
* ์Šค๋ ˆ๋“œ ์•ˆ์ „์„ฑ์„ ์–ป์œผ๋ ค๋ฉด ์ถ”๊ฐ€ ์ž‘์—…์„ ํ•ด์•ผํ•œ๋‹ค.
6161

6262

6363
## ๋นŒ๋” ํŒจํ„ด (Effective Java ์Šคํƒ€์ผ)
64-
ํŒŒ์ด์ฌ๊ณผ ์Šค์นผ๋ผ์— ์žˆ๋Š” ๋ช…๋ช…๋œ ์„ ํƒ์  ๋งค๊ฐœ๋ณ€์ˆ˜ (named optional parameters)๋ฅผ ํ‰๋‚ด๋‚ธ ๊ฒƒ์œผ๋กœ,
64+
ํŒŒ์ด์ฌ๊ณผ ์Šค์นผ๋ผ์— ์žˆ๋Š” ๋ช…๋ช…๋œ ์„ ํƒ์  ๋งค๊ฐœ๋ณ€์ˆ˜ (named optional parameters)๋ฅผ ํ‰๋‚ด ๋‚ธ ๊ฒƒ์œผ๋กœ,
6565
์ ์ธต์  ์ƒ์„ฑ์ž ํŒจํ„ด์˜ ์•ˆ์ „์„ฑ๊ณผ ์ž๋ฐ”๋นˆ์ฆˆ ํŒจํ„ด์˜ ๊ฐ€๋…์„ฑ์„ ๊ฒธ๋น„ํ•œ ํŒจํ„ด.
6666

6767
```java
@@ -77,8 +77,10 @@
7777

7878
## ์ •๋ฆฌ
7979
์ƒ์„ฑ์ž๋‚˜ ์ •์  ํŒฉํ„ฐ๋ฆฌ๊ฐ€ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•  ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋งŽ๋‹ค๋ฉด ๋นŒ๋” ํŒจํ„ด์„ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ๋‚ซ๋‹ค.
80+
8081
๋งค๊ฐœ ๋ณ€์ˆ˜ ์ค‘ ๋‹ค์ˆ˜๊ฐ€ ํ•„์ˆ˜๊ฐ€ ์•„๋‹ˆ๊ฑฐ๋‚˜ ๊ฐ™์€ ํƒ€์ž…์ด๋ฉด ํŠนํžˆ ๋” ๋”์šฑ!
82+
8183
๋นŒ๋” ํŒจํ„ด์€ ์ ์ธต์  ์ƒ์„ฑ์ž๋ณด๋‹ค ํด๋ผ์ด์–ธํŠธ ์ฝ”๋“œ๋ฅผ ์ฝ๊ณ  ์“ฐ๊ธฐ๊ฐ€ ํ›จ์”ฌ ๊ฐ„๊ฒฐํ•˜๊ณ , ์ž๋ฐ”๋นˆ์ฆˆ๋ณด๋‹ค ํ›จ์”ฌ ์•ˆ์ „ํ•˜๋‹ค.
8284

8385
# Reference
84-
* [์ดํŽ™ํ‹ฐ๋ธŒ ์ž๋ฐ” 3/E](http://www.yes24.com/Product/Goods/65551284) ์•„์ดํ…œ2. ์ƒ์„ฑ์ž์— ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋งŽ๋‹ค๋ฉด ๋นŒ๋”๋ฅผ ๊ณ ๋ คํ•˜๋ผ.
86+
* [์ดํŽ™ํ‹ฐ๋ธŒ ์ž๋ฐ” 3/E](http://www.yes24.com/Product/Goods/65551284) ์•„์ดํ…œ2. ์ƒ์„ฑ์ž์— ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋งŽ๋‹ค๋ฉด ๋นŒ๋”๋ฅผ ๊ณ ๋ คํ•˜๋ผ.

0 commit comments

Comments
ย (0)