๋ชฉ๋ก๐Ÿ–ฅ BE ๋ฐฑ์—”๋“œ (118)

Bibi's DevLog ๐Ÿค“๐ŸŽ

[2021 ๋งˆ์Šคํ„ฐ์ฆˆ ์ฝ”์Šค ํ…Œ์ŠคํŠธ] 2๋‹จ๊ณ„ : ํ‰๋ฉด ํ๋ธŒ ๊ตฌํ˜„ํ•˜๊ธฐ

2021 ์ฝ”๋“œ์Šค์ฟผ๋“œ ๋งˆ์Šคํ„ฐ์ฆˆ ์ฝ”์Šค ํ…Œ์ŠคํŠธ ๋ฌธ์ œ์™€ ์ €์˜ ํ’€์ด๋ฅผ ๊ณต์œ ํ•˜๋Š” ๊ธ€์ž…๋‹ˆ๋‹ค. 2๋‹จ๊ณ„: ํ‰๋ฉด ํ๋ธŒ ๊ตฌํ˜„ํ•˜๊ธฐ 3 X 3์˜ 2์ฐจ์› ๋ฐฐ์—ด์ด ์•„๋ž˜์ฒ˜๋Ÿผ ์žˆ๋‹ค. R R W G C W G B B ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ๋ฐ›์•„์„œ ์•„๋ž˜์˜ ๋™์ž‘์„ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌํ˜„ํ•˜์‹œ์˜ค > U ๊ฐ€์žฅ ์œ—์ค„์„ ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ ๋ฐ€๊ธฐ RRW -> RWR > U' ๊ฐ€์žฅ ์œ—์ค„์„ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ ๋ฐ€๊ธฐ RRW -> WRR > R ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์ค„์„ ์œ„๋กœ ํ•œ ์นธ ๋ฐ€๊ธฐ WWB -> WBW > R' ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์ค„์„ ์•„๋ž˜๋กœ ํ•œ ์นธ ๋ฐ€๊ธฐ WWB -> BWW > L ๊ฐ€์žฅ ์™ผ์ชฝ ์ค„์„ ์•„๋ž˜๋กœ ํ•œ ์นธ ๋ฐ€๊ธฐ RGG -> GRG (L์˜ ๊ฒฝ์šฐ R๊ณผ ๋ฐฉํ–ฅ์ด ๋ฐ˜๋Œ€์ž„์„ ์ฃผ์˜ํ•œ๋‹ค.) > L' ๊ฐ€์žฅ ์™ผ์ชฝ ์ค„์„ ์œ„๋กœ ํ•œ ์นธ ๋ฐ€๊ธฐ RGG -> GGR > B ๊ฐ€์žฅ ์•„๋žซ์ค„์„ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ ..

[Java - AWT ํ•™์Šต์ •๋ฆฌ] ์ž๋ฐ”์˜ GUIํ”„๋กœ๊ทธ๋ž˜๋ฐ - (2) ์ด๋ฒคํŠธ์ฒ˜๋ฆฌ, Adapterํด๋ž˜์Šค, paint()์™€ Graphics, Image

์ด ๊ธ€์€ ์•„๋ž˜ ๋งํฌ ๋ฌธ์„œ๋ฅผ ๋ณด๋ฉฐ ๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์š”์•ฝ์ •๋ฆฌํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค๐Ÿ™‡‍โ™€๏ธ '์ž๋ฐ”์˜ ์ •์„' ๋‚จ๊ถ์„ฑ ๋‹˜์˜ ๋ธ”๋กœ๊ทธ ์ž๋ฃŒ - AWT [์ž๋ฐ”์˜ ์ •์„ 2ํŒ] 13์žฅ AWT์ž…๋‹ˆ๋‹ค.(PDF) java์˜ ์ •์„ 3ํŒ์—์„œ AWT๋ฅผ ๋บ๋”๋‹ˆ ํ•„์š”ํ•˜๋‹ค๋Š” ๋ถ„๋“ค์ด ์žˆ์–ด์„œ ๋”ฐ๋กœ ๋ฝ‘์•„์„œ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค. ํ•„์š”ํ•˜์‹  ๋ถ„๋“ค ๋งˆ์Œ๊ป ๊ฐ€์ ธ๋‹ค ์“ฐ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. codechobo.tistory.com ์•„๋ž˜ ๊นƒํ—ˆ๋ธŒ ๋งํฌ์—์„œ ๊ฐ™์€ ๋‚ด์šฉ์„ ๋” ํŽธํ•˜๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. github.com/bibi6666667/Codesquad-Cocoa-JAVA/blob/main/mission/src/mission6/AWT.md bibi6666667/Codesquad-Cocoa-JAVA ์ฝ”๋“œ์Šค์ฟผ๋“œ - ๋งˆ์Šคํ„ฐ์ฆˆ ์ฝ”์ฝ”์•„ ๊ณผ์ •(JAVA)์ €์žฅ์†Œ์ž…๋‹ˆ๋‹ค. Contribute t..

[Java - AWT ํ•™์Šต์ •๋ฆฌ] ์ž๋ฐ”์˜ GUIํ”„๋กœ๊ทธ๋ž˜๋ฐ - (1) AWT์ปดํฌ๋„ŒํŠธ, ๋ฉ”๋‰ด ์ปดํฌ๋„ŒํŠธ, ๋ ˆ์ด์•„์›ƒ ๋งค๋‹ˆ์ €

์ด ๊ธ€์€ ์•„๋ž˜ ๋งํฌ ๋ฌธ์„œ๋ฅผ ๋ณด๋ฉฐ ๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์š”์•ฝ์ •๋ฆฌํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค๐Ÿ™‡‍โ™€๏ธ '์ž๋ฐ”์˜ ์ •์„' ๋‚จ๊ถ์„ฑ ๋‹˜์˜ ๋ธ”๋กœ๊ทธ ์ž๋ฃŒ - AWT [์ž๋ฐ”์˜ ์ •์„ 2ํŒ] 13์žฅ AWT์ž…๋‹ˆ๋‹ค.(PDF) java์˜ ์ •์„ 3ํŒ์—์„œ AWT๋ฅผ ๋บ๋”๋‹ˆ ํ•„์š”ํ•˜๋‹ค๋Š” ๋ถ„๋“ค์ด ์žˆ์–ด์„œ ๋”ฐ๋กœ ๋ฝ‘์•„์„œ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค. ํ•„์š”ํ•˜์‹  ๋ถ„๋“ค ๋งˆ์Œ๊ป ๊ฐ€์ ธ๋‹ค ์“ฐ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. codechobo.tistory.com ์•„๋ž˜ ๊นƒํ—ˆ๋ธŒ ๋งํฌ์—์„œ ๊ฐ™์€ ๋‚ด์šฉ์„ ๋” ํŽธํ•˜๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. github.com/bibi6666667/Codesquad-Cocoa-JAVA/blob/main/mission/src/mission6/AWT.md bibi6666667/Codesquad-Cocoa-JAVA ์ฝ”๋“œ์Šค์ฟผ๋“œ - ๋งˆ์Šคํ„ฐ์ฆˆ ์ฝ”์ฝ”์•„ ๊ณผ์ •(JAVA)์ €์žฅ์†Œ์ž…๋‹ˆ๋‹ค. Contribute t..

[Java] .printf() ์‚ฌ์šฉ๋ฒ• ์ตํžˆ๊ธฐ - ์ฝ˜์†”์ฐฝ ์ถœ๋ ฅ ์™ผ์ชฝ์ •๋ ฌ, ์˜ค๋ฅธ์ชฝ์ •๋ ฌ, ๊ฐ„๊ฒฉ ๋งž์ถ”๊ธฐ

keep-cool.tistory.com/15 https://althathatha.tistory.com/12 https://three-pleasure.tistory.com/251 ์„ธ ๋ถ„์˜ ๊ธ€์„ ์ฐธ๊ณ ํ•˜์—ฌ ๊ณต๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค๐Ÿ™‡‍โ™€๏ธ System.out.printf() ์‚ฌ์šฉ๋ฒ• ์ตํžˆ๊ธฐ .print();, .println(); ์ด ์•„๋‹Œ .printf();๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•  ๋•Œ๊ฐ€ ์˜จ ๊ฒƒ ๊ฐ™๋‹ค. ์šฐ์„  ๊ฐ€๋กœ, ์„ธ๋กœ๋ฅผ ๋„˜์–ด ์ฝ˜์†” ์ฐฝ์— ์ข€ ๋” ์˜ˆ์˜๊ฒŒ ์›ํ•˜๋Š” ํ˜•ํƒœ๋กœ ์ถœ๋ ฅํ•˜๊ณ  ์‹ถ์–ด์„œ, ๊ทธ๋ฆฌ๊ณ  .printf();์˜ ์ง€์‹œ์ž๋ฅผ ํ™œ์šฉํ•ด ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๊ฐ€๋ณ€์ ์ธ ๋‚ด์šฉ๋“ค์„ ํŽธํ•˜๊ฒŒ ๋งŽ์ด ๋„ฃ๊ธฐ ์œ„ํ•ด์„œ์ด๋‹ค. ( + println()์ฒ˜๋Ÿผ "" ์™€ + ๋กœ ์ด์–ด๋ถ™์ด์ง€ ์•Š์•„๋„ ๋œ๋‹ค!) System.out.printf("์ถœ๋ ฅ ์„œ์‹", ์ถœ๋ ฅํ•  ..

[Java] ๋‹ฌ๋ ฅ ๋งŒ๋“ค๊ธฐ - ํ˜„์žฌ ๋‚ ์งœ ๋ฐ ํŠน์ • ๋‚ ์งœ ๋‹ฌ๋ ฅ ์ถœ๋ ฅ. (Calendar, Date, SimpleDateFormat, ์œค๋…„)

์ž๋ฐ”๋กœ ๋‹ฌ๋ ฅ์„ ๋งŒ๋“ค๊ณ  ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ถœ๋ ฅํ˜•ํƒœ ํด๋ž˜์Šค : MyCalendar (ํด๋ž˜์Šค๋ช…์„ Calendar๋กœ ํ–ˆ๋”๋‹ˆ Calendarํด๋ž˜์Šค๋ฅผ ์ž„ํฌํŠธํ•  ๋•Œ ์—๋Ÿฌ๊ฐ€ ๋‚˜์„œ ๋ฐ”๊ฟจ๋‹ค) starter() ๋‹ฌ๋ ฅ์„ ์‹คํ–‰ํ•˜๋Š” ๋ฉ”์„œ๋“œ a๋ฅผ ์ž…๋ ฅํ•ด buildCurrendCalendar()๋ฅผ ์‹คํ–‰, ํ˜„์žฌ ๋‹ฌ๋ ฅ์„ ์ถœ๋ ฅ. z๋ฅผ ์ž…๋ ฅํ•ด getYear(),getMonth()๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์ž…๋ ฅ๊ฐ’์„ ๋ฐ›์•„ buildPastCalendar()๋ฅผ ์‹คํ–‰ ์ž˜๋ชป ์ž…๋ ฅ์‹œ starter()๋ฅผ ๋ฐ˜๋ณต์‹คํ–‰ getYear(), getMonth() ์—ฐ๋„ / ์›” ์„ ๋ฐ›์•„์˜ค๋Š” ๋ฉ”์„œ๋“œ. ๊ณผ๊ฑฐ ๋‹ฌ๋ ฅ ์ถœ๋ ฅํ•  ๋•Œ๋งŒ ์‹คํ–‰๋จ. ๋‘˜ ๋‹ค ์ž์—ฐ์ˆ˜๋ฅผ ์ž…๋ ฅํ•ด์•ผ ํ•˜๋ฉฐ ์›”์€ 1-12์‚ฌ์ด ์ž์—ฐ์ˆ˜๋งŒ ์ž…๋ ฅ ๊ฐ€๋Šฅ. getCurrent() ํ˜„์žฌ ์—ฐ์›”์„ ๊ฐ€์ ธ์˜ค๋Š” ๋ฉ”์„œ๋“œ. ํ˜„์žฌ ๋‹ฌ๋ ฅ ์ถœ๋ ฅํ•  ๋•Œ๋งŒ ..

[Java] ํ•œ๊ธ€์‹œ๊ณ„ ๋”ฐ๋ผ ๋งŒ๋“ค๊ธฐ - ์ด์ฐจ์›๋ฐฐ์—ด, ํ˜„์žฌ์‹œ๊ฐ„ ๊ตฌํ•˜๊ธฐ, switch-case ์—ฌ๋Ÿฌ ์กฐ๊ฑด + ์•ˆ์‹œ ์ฝ”๋“œ

hangulclock.today/#/main ์œ„์™€ ์‚ฌ์ดํŠธ์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ํ•œ๊ธ€ ์‹œ๊ณ„๋ฅผ ๋”ฐ๋ผ ๋งŒ๋“œ๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” ์ด์ฐจ์›๋ฐฐ์—ด์„ ํ™œ์šฉํ•ด ํ•œ๊ธ€ ์‹œ๊ณ„๋ฅผ ๋”ฐ๋ผ ๋งŒ๋“œ๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ €๋Š” ์ด์ฐจ์›๋ฐฐ์—ด์„ ๋จผ์ € ๊ณต๋ถ€ํ•œ ๋‹ค์Œ ๊ตฌํ˜„ - ๋‚ด์šฉ ์ „์ฒด ์ฝ”๋“œ๋Š” ๋งจ ์•„๋ž˜์— ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋ž˜์Šค : HangeulClock main() HangeulClock๊ฐ์ฒด๋ฅผ ์ƒ์„ฑ Timer, TimerTask ๊ฐ์ฒด ์ƒ์„ฑ TimerTask task ๋‚ด์˜ run() ๋ฉ”์†Œ๋“œ์— ๋ฐ˜๋ณต ์‹คํ–‰ํ•  ๊ตฌ๋ฌธ์„ ์ž…๋ ฅ. showHourMinute ๋ฉ”์†Œ๋“œ์˜ ๋ฆฌํ„ด๊ฐ’(์ด์ฐจ์›๋ฐฐ์—ด clockResult)์„ ๋ฐ›์•„์˜ด printHangeulClock์„ ํ†ตํ•ด ๋ฐ›์•„์˜จ ๋ฆฌํ„ด๊ฐ’์„ ์ถœ๋ ฅ scheduler.scheduleAtFixedRate(task, 1000, 60000); ๋กœ ์ •์˜ํ•œ..