ํ”„๋กœ๊ทธ๋ž˜๋จธ ๋ฐˆ(meme) ๋ชจ์Œ

1. Java์—์„œ c++ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• 2. Client์˜ ์ง๊ด€์„ ์‹ ๋ขฐํ–ˆ์„ ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์ผ 3. "Good looks sell"์€ ํŒจ์…˜๊ณผ ์†Œํ”„ํŠธ์›จ์–ด์— ๋ชจ๋‘ ์ ์šฉ ๋ฉ๋‹ˆ๋‹ค. "Good looks sell"์€ ์ œํ’ˆ์ด๋‚˜ ์„œ๋น„์Šค๊ฐ€ ์ž˜ ๋ณด๊ธฐ ์ข‹๋‹ค๋ฉด, ๋” ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๊ทธ๊ฒƒ์„ ๋” ๋งŽ์ด ๊ตฌ๋งคํ•˜๊ณ  ์‚ฌ์šฉํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ œํ’ˆ์ด๋‚˜ ์„œ๋น„์Šค๊ฐ€ ์‹œ๊ฐ์ ์œผ๋กœ ๋งค๋ ฅ์ ์ด๊ณ  ๋ˆˆ์— ๋„๋Š” ๊ฒฝ์šฐ, ์†Œ๋น„์ž๋“ค์€ ๋”์šฑ ๊ด€์‹ฌ์„ ๊ฐ€์ง€๋ฉฐ ์ œํ’ˆ์ด๋‚˜ ์„œ๋น„์Šค์˜ ๊ฐ€์น˜๋ฅผ ๋†’๊ฒŒ ํ‰๊ฐ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. 4. ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ํ•˜๋Š” ๋™์•ˆ ํ”„๋กœ๊ทธ๋ž˜๋จธ์˜ ์‹ฌ๊ฒฝ ๋ณ€ํ™” 5. ์™œ ์•„๋ฌด๋„ ์ €์˜ ๊ฐ„๋‹จํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๋‚˜์š”? 6. null๊ณผ 0, undefined ๊ตฌ๋ถ„ํ•˜๋Š” ๋ฐฉ๋ฒ• 7. ์ž๊ธฐ ์„ฑ์žฅ์€ ๊ณผ์†Œํ‰๊ฐ€ ๋˜์–ด์žˆ๋‹ค. 8. ๋ถ„๋ช…ํžˆ ์„ธ๋ฏธ์ฝœ๋ก ์€ ์‚ฌํƒ„์— ์˜ํ•ด ๋งŒ๋“ค์–ด์กŒ์„..

ETC 2023. 2. 27. 12:00
Optional์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌํ•˜์ง€ ๋ง์ž

์ž๋ฐ” ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๋‹ค๋ณด๋ฉด Optional์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌํ–ˆ์„ ๋•Œ ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ๊ฒฝ๊ณ (๋…ธ๋ž€์ค„)๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. (IntelliJ์—์„œ๋Š” ํ‘œ์‹œํ•ด์ฃผ๋Š”๋ฐ ๋‹ค๋ฅธ IDE๋Š” ์–ด๋–ค์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ๋„ค์š”) ๊ฒฝ๊ณ ๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ„๋‹จํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ณด๋ฉด, public void foo(String nullable) { bar(Optional.of(nullable)); } private void bar(Optional s) { // do something } 'Optional' used as type for parameter 's' ๋ฐ”๋กœ ์ด๋Ÿฐ ๋‚ด์šฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์™œ Optional์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌํ•˜๋ฉด ์•ˆ ๋˜๋Š” ๊ฒƒ์ผ๊นŒ์š”? ๊ฒฐ๋ก ๋ถ€ํ„ฐ ๋ง์”€๋“œ๋ฆฌ๋ฉด ์žฅ์ ๋ณด๋‹ค ๋‹จ์ ์ด ๋งŽ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋จผ์ € ์žฅ์ ์œผ๋กœ๋Š” ์ „๋‹ฌํ•  ๋‹น์‹œ์— ๋ณ„ ์ƒ๊ฐ ์—†..

Java 2023. 2. 3. 04:38
Optional์—์„œ orElse()์™€ orElseGet()์€ ๋ฌด์Šจ ์ฐจ์ด๊ฐ€ ์žˆ์„๊นŒ?

Optional์„ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋ฉด ๋งˆ์ง€๋ง‰์— orElse() ๋˜๋Š” orElseGet()๋ฅผ ์ด์šฉํ•ด ์›๋ž˜ ๊ฐ’์„ ์–ป์Šต๋‹ˆ๋‹ค. ๊ทธ๋™์•ˆ ์ €๋Š” ๋‘ ๋ฉ”์„œ๋“œ์˜ ์ฐจ์ด๊ฐ€ ๋‹จ์ˆœํžˆ ์ „๋‹ฌํ•ด์•ผํ•˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ์ฐจ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด orElse(defaultValue), orElseGet(this::getDefaultValue) (๋˜๋Š” orElseGet(() -> getDefaultValue())) ์ด๋Ÿฐ์‹์œผ๋กœ ํ•˜๋‚˜๋Š” ๊ฐ’์„ ์ „๋‹ฌํ•˜๊ณ  ํ•˜๋‚˜๋Š” ๊ตฌํ˜„์ฒด๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ƒฅ ์ ์ ˆํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋ฉด ๋˜๊ฒ ๋‹ค๋Š” ์ •๋„๋กœ๋งŒ ์ƒ๊ฐํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋˜ ์ค‘ ํ…Œ์ŠคํŠธ ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋‹ค๊ฐ€ mocking์„ ์‚ฌ์šฉํ•˜์˜€๋Š”๋ฐ ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋ณธ๋ฌธ๊ณผ ํฌ๊ฒŒ ๊ด€๋ จ ์—†๋Š” ๋‚ด์šฉ(์–ด๋–ค ํ…Œ์ŠคํŠธ๊ฐ€ ๋™์ž‘ํ•˜์ง€ ์•Š์•˜๋Š”์ง€)์ด๋ผ ์ ‘์–ด๋‘๊ฒ ์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ํ•  ํด๋ž˜์Šค๋Š” Servi..

Java 2023. 2. 1. 10:30
๊ณต์ง€์‚ฌํ•ญ
Total
202,075
Today
1
Yesterday
511
๋งํฌ
ยซ   2023/02   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
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
๊ธ€ ๋ณด๊ด€ํ•จ