๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[D+26] ์‘์šฉSW ๊ธฐ์ดˆ ๊ธฐ์ˆ  ํ™œ์šฉ ๊ตญ๋น„์ง€์› D+26 - ์‘์šฉ SW ๊ธฐ์ดˆ ๊ธฐ์ˆ  ํ™œ์šฉ - ์‘์šฉ SW ๊ธฐ์ดˆ ๊ธฐ์ˆ  ํ™œ์šฉ #1. ๋„คํŠธ์›Œํฌ ๊ธฐ์ดˆ ํ™œ์šฉํ•˜๊ธฐ • ๋„คํŠธ์›Œํฌ ๊ฐœ๋… ๋งŒ์•ฝ ๋‚ด๊ฐ€ ํ•œ๊ตญ์—์„œ ebay์™€ ํ†ต์‹ ์„ ์›ํ• ๋•Œ ๋‹จ์ˆœํžˆ ๋ฏธ๊ตญ์— ์žˆ๋Š” ebay์—๊ฒŒ ํ†ต์‹ ์„ ์š”์ฒญํ•˜๋ฉด ํ†ต์‹ ์ด ๋˜์ง€ ์•Š๋Š”๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๋ฐ”๋กœ ํ•œ๊ตญ์—์„œ ebay์™€ ํ†ต์‹ ์„ ํ•  ๊ฒฝ์šฐ ๋ฏธ๊ตญ์— ์žˆ๋Š” ebay๋กœ ๊ฐ€๋ฉด์„œ ์‹ ํ˜ธ๊ฐ€ ์•ฝํ•ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ebay์— ๋„์ฐฉํ•˜๊ธฐ ์ „์— ์‹ ํ˜ธ๊ฐ€ ์ œ๋Œ€๋กœ ์ „๋‹ฌ๋˜์ง€ ๋ชปํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ebay๊นŒ์ง€ ํ†ต์‹ ์ด ์ž˜ ์œ ์ง€๋  ์ˆ˜ ์žˆ๋„๋ก ์‹ ํ˜ธ๋ฅผ ์ฆํญํ•˜๋Š” ์ฆํญ์žฅ์น˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ๋˜ํ•œ ebay์™€์˜ ํ†ต์‹ ์„ ๋‚˜๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๋ˆ„๊ตฐ๊ฐ€๋„ ebay์™€ ํ†ต์‹ ์„ ์›ํ•  ์ˆ˜ ์žˆ์–ด ์ˆ˜๋งŽ์€ ํ†ต์‹ ๋“ค๋กœ ์—ฎ์—ฌ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ebay ์ž…์žฅ์—์„  ์–ด๋””๋กœ๋ถ€ํ„ฐ ํ†ต์‹ ์ด ์™”๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์–ด๋ ต๊ธฐ๋•Œ๋ฌธ.. 2022. 10. 27.
[D+25] ๊ธฐ๋ณธ API ๊ตญ๋น„์ง€์› D+25 - ๊ธฐ๋ณธ API - ๊ธฐ๋ณธ API Java Platform SE 8 docs.oracle.com ์ž๋ฐ”์—์„œ ์‚ฌ์šฉ๋˜๋Š” API๋Š” ๋‹จ์ˆœ ์ธํ„ฐ๋„ท ๊ฒ€์ƒ‰์„ ํ†ตํ•ด์„œ ํ™•์ธํ•˜๊ธฐ ๋ณด๋‹จ ๊ณต์‹๋ฌธ์„œ๋ฅผ ํ†ตํ•ด ํ•™์Šตํ•ด ๋‚˜๊ฐ€๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. • java.lang๊ณผ java.util ํŒจํ‚ค์ง€ java.lang ํŒจํ‚ค์ง€ - ์ž๋ฐ”์˜ ๊ธฐ๋ณธ์ ์ธ ํด๋ž˜์Šค๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š” ํŒจํ‚ค์ง€ - import์—†์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. - ex) Object, System, Class, String, StringBuffer, StringBuilder, Math, Wrapper java.util ํŒจํ‚ค์ง€ - ๋ณดํ†ต ํŒจํ‚ค์ง€๋กœ ๋ถ„๋ฅ˜ํ•˜๊ธฐ์— ์• ๋งคํ•œ ๊ฒƒ๋“ค์„ ๋‹ด๊ณ  ์žˆ๋Š” ํŒจํ‚ค์ง€ - ex) Array, Calendar, Date, Objects, StringTokenizer, Ran.. 2022. 10. 26.
[D+24] ์˜ˆ์™ธ์ฒ˜๋ฆฌ ๊ตญ๋น„์ง€์› D+24 - ์˜ˆ์™ธ์ฒ˜๋ฆฌ - ์˜ˆ์™ธ์ฒ˜๋ฆฌ ์˜ˆ์™ธ (Exception) - ์‚ฌ์šฉ์ž ์‹ค์ˆ˜, ์‹œ์Šคํ…œ์˜ ๋ฌธ์ œ๋กœ ์ธํ•ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋Œ€์‘ํ•˜์ง€ ๋ชปํ•˜๋Š” ๋น„์ •์ƒ์ ์ธ ์ƒํ™ฉ (abnormal condition) - ์ฝ”๋“œ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹˜. - ์‹คํ–‰์‹œ๊ฐ„(Run-Time)์— ๋ฐœ์ƒํ•˜๋Š” ๋น„์ •์ƒ์  ์ƒํ™ฉ - ๋น„์ •์ƒ์  ์ƒํ™ฉ์€ ๋Œ€๋ถ€๋ถ„ ์–ด๋–ค๊ฒŒ ์ •์ƒ์ ์ธ์ง€ ํŒ๋‹จ ๋ถˆ๊ฐ€๋Šฅ - ํŒ๋‹จ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— JVM ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒ๋œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ€๊ธ‰์  ์ข…๋ฃŒ ์˜ˆ์™ธ์—๋Š” ์˜ˆ์ธก๊ฐ€๋Šฅํ•œ ์˜ˆ์™ธ์™€ ์˜ˆ์ธก๋ถˆ๊ฐ€๋Šฅํ•œ ์˜ˆ์ธก์ด ์žˆ๋‹ค. ์ด๋•Œ ์˜ˆ์ธก๊ฐ€๋Šฅํ•œ ์˜ˆ์™ธ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๋Œ€์‘์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด๋‚˜๊ฐˆ์ˆ˜ ์žˆ์ง€๋งŒ, ์˜ˆ์ธก์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์˜ˆ์™ธ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๋Œ€์‘ํ•  ์ˆ˜ ์—†๋Š” ์˜ˆ์™ธ๋„ ์กด์žฌํ•œ๋‹ค. ์ด๋•Œ ์˜ˆ์ธก๊ฐ€๋Šฅํ•œ ์˜ˆ์™ธ๋Š” ๊ฒฐ๋ก ์ ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด ๋‚˜๊ฐˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฒฐํ•จ์ด ์—†๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฐ˜.. 2022. 10. 25.
[D+23] ์ธํ„ฐํŽ˜์ด์Šค, ์ถ”์ƒํด๋ž˜์Šค ๊ตญ๋น„์ง€์› D+23 - ์ธํ„ฐํŽ˜์ด์Šค, ์ถ”์ƒํด๋ž˜์Šค - ์ธํ„ฐํŽ˜์ด์Šค ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ƒ์†์—์„œ์˜ ๊ทœ์•ฝ์„ ์ข€๋” ๊ตฌ์ฒดํ™”ํ•˜๊ณ  ๊ฐ•์ œํ™”ํ•œ ๊ฒƒ์œผ๋กœ ์ธํ„ฐํŽ˜์ด์Šค๋‚ด์— ํ‘œํ˜„๋˜์–ด ์žˆ๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜์ง€ ์•Š์•˜์„๊ฒฝ์šฐ ์—๋Ÿฌ๋ฅผ ๋ฐœ์ƒ์‹œํ‚จ๋‹ค. ์ด๋Ÿฌํ•œ ์ธํ„ฐํŽ˜์ด์Šค์˜ ์›๋ฆฌ๋กœ ์ฝ”๋“œ์˜ ๋ณต์žก๋„๊ฐ€ ๋‚ฎ์•„์ง„๋‹ค๋Š” ์žฅ์ ์„ ๊ฐ€์ง€๊ณ ๋Š” ์žˆ์ง€๋งŒ ๋‹จ์  ๋˜ํ•œ ์กด์žฌํ•œ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด MS๋ผ๋Š” ํšŒ์‚ฌ์—์„œ ์ธํ„ฐํŽ˜์ด์Šค Printable์•ˆ์— ํ”„๋ฆฐํŠธ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๋Š” ํ•จ์ˆ˜์™€ ํ‘๋ฐฑ์ถœ๋ ฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ initPrinter์™€ printDoc์„ ์‚ฌ์šฉํ•ด ๊ตฌํ˜„ํ•˜๋„๋ก ๊ทœ์•ฝ์„ ์ •ํ•ด๋†จ๋‹ค๊ณ  ํ•˜์ž. ๊ทธ๋Ÿฌ๋ฉด HPPrinter, SSPrinter, EPPrinter๋Š” ๊ฐ ํ•จ์ˆ˜๋ฅผ ํด๋ž˜์Šค๋‚ด์— ๊ตฌํ˜„ํ–ˆ์„ ๊ฒƒ์ด๋‹ค. ์ด๋•Œ, ๋” ๋‚˜์•„๊ฐ€ ์‹œ๋Œ€๊ฐ€ ๋ฐœ์ „ํ•˜์—ฌ ํ”„๋ฆฐํ„ฐํšŒ์‚ฌ๋“ค์—์„œ ์ ์ฐจ ์ปฌ๋Ÿฌํ”„๋ฆฐํ„ฐ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ฒŒ ๋˜์–ด MS๋‚ด์—์„œ ์ปฌ๋Ÿฌํ”„๋ฆฐํ„ฐ๋ฅผ ํ•˜๋„๋ก ๋ช…๋ น.. 2022. 10. 24.
[D+22] Linked List ๊ตญ๋น„์ง€์› D+22 - Linked List - Linked List • ์ •์˜ ๊ธฐ์กด์— ์šฐ๋ฆฌ๊ฐ€ ๋ฐฐ์šด ๋ฐฐ์—ด์€ ์—ฐ๊ฒฐ๋˜์–ด ๋ถ™์–ด์žˆ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ์ ‘๊ทผํ•˜๊ธฐ์ข‹์œผ๋ฉฐ, ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ๊ณ ์ •์ ์ธ ๋ฐ์ดํ„ฐ์— ์‚ฌ์šฉ์ด ์šฉ์ดํ•œ ์žฅ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐฐ์—ด์—๋„ ๋‹จ์ ์ด ์กด์žฌํ•˜๋Š”๋ฐ ๋ฐ”๋กœ ์ค‘๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ๋นผ๊ฑฐ๋‚˜ ์ถ”๊ฐ€ํ•  ๊ฒฝ์šฐ ์—ฐ์‚ฐ์ด๋‚˜ ๊ตฌ์กฐ๊ฐ€ ๋ณ€๊ฒฝ๋˜๊ธฐ ์‰ฌ์šฐ๋ฉฐ ๋ฐฐ์—ด๊ธ” ํฌ๊ธฐ๊ฐ€ ๊ณ ์ •์ ์ธ ํŠน์ง•์œผ๋กœ ์ธํ•ด ์ถ”ํ›„์— ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด์˜ฌ์ง€ ๋ชฐ๋ผ ์‚ฌ์ด์ฆˆ๋ฅผ ํฌ๊ฒŒ์žก์•„ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋‚ญ๋น„๋  ์—ผ๋ ค๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐฐ์—ด์˜ ๋ฌธ์ œ์ ์„ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ”๋กœ Linked List๊ฐ€ ๋“ฑ์žฅํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. • ๊ตฌ์กฐ Linked List๋Š” Data์™€ ๋‹ค์Œ ๋…ธ๋“œ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ์ฐธ๊ณ ๊ฐ’์„ ๋‹ด๊ณ ์žˆ๋Š” ๋…ธ๋“œ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ• ๋•Œ ๋งˆ๋‹ค ๋…ธ๋“œ๊ฐ€ ์ถ”๊ฐ€๋˜๋ฉฐ ๋™์‹œ์— ์ด์ „ ๋…ธ๋“œ๊ฐ€ ์ƒˆ.. 2022. 10. 24.
[D+22] ์ฝ”๋”ฉ๋ฐ์ด ๊ตญ๋น„์ง€์› D+22 - ์ฝ”๋”ฉ๋ฐ์ด - ์ฝ”๋”ฉ๋ฐ์ด Q) Linked List๋ฅผ ๊ตฌํ˜„ํ•˜์‹œ์˜ค. • Main.java public class Main { // ๋งˆ์ง€๋ง‰ ๋…ธ๋“œ๋ฅผ getํ•˜๋Š” ํ•จ์ˆ˜ public static Node getLastNode(Node head) { Node lastNode = head; while(lastNode.getNext() != null) { lastNode = lastNode.getNext(); } return lastNode; } // ๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ํ•จ์ˆ˜ public static void InsertNode(Node head, Node newNode) { Node lastNode = null; // 1. ๋งˆ์ง€๋ง‰ ๋…ธ๋“œ๋ฅผ ์ฐพ๋Š”๋‹ค. lastNode = getLastNode(head); //.. 2022. 10. 22.