๐Ÿ‘ฉ‍๐Ÿ’ป 93

[Spring] ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ ๊ฐœ์š”

๊ฐœ์š” ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๋Š” Java ํ”Œ๋žซํผ์„ ์œ„ํ•œ ๊ฒฝ๋Ÿ‰๊ธ‰ ์˜คํ”ˆ ์†Œ์Šค ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๋‹จ์ง€ ์›น์•ฑ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋งŒ ์กด์žฌํ•˜์ง€๋Š” ์•Š์ง€๋งŒ, ๋™์ ์ธ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ํ•œ๊ตญ์˜ ๊ฒฝ์šฐ, ๊ณต๊ณต ๊ธฐ๊ด€์˜ ์›น ์„œ๋น„์Šค ๊ฐœ๋ฐœ ์‹œ ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•˜๋Š” ์ „์ž์ •๋ถ€ ํ‘œ์ค€ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ๋กœ ์“ฐ์ด๊ณ  ์žˆ๋‹ค. ์ž๋ฐ” ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์ธ๋งŒํผ ์ข…์† ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ์กฐ๋ฆฝํ•ด์ฃผ๋Š” ํˆด์ด๋‹ค. POJO Bean Container. ์ปจํ…Œ์ด๋„ˆ๋ผ๋Š” ํ‘œํ˜„์€, ์Šคํ”„๋ง์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ์ฒด์˜ ์ƒ๋ช… ์ฃผ๊ธฐ์™€ ์„ค์ •์„ ํฌํ•จํ•˜๊ณ  ๊ด€๋ฆฌํ•œ๋‹ค๋Š” ์ ์—์„œ ๋‚˜์˜จ ๊ฐœ๋…. ๋˜ํ•œ, myBatis๋‚˜ Hibernate ๊ฐ™์€ ์™„์„ฑ๋„ ๋†’์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฒ˜๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค๋Š” ๋งฅ๋ฝ๋„ ์กด์žฌํ•œ..

[MySQL] MySQL Installer -> Type and Networking -> Port "The Specified port is already in use" ์ด์Šˆ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

DB ์ด์šฉํ•ด์„œ ํšŒ์› ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ์—ฐ์Šต์„ ์œ„ํ•ด์„œ ๋‹ค์‹œ MySQL ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•˜๋Š”๋ฐ, ์˜ˆ์ „์— MySQL ์„ค์น˜๋ฅผ ํ•ด๋‘” ๋ฒ„์ „์ด ์žˆ์–ด์„œ Port ์„ค์ • ๋‹จ๊ณ„์—์„œ "The specified port is already in use"๋ผ๋Š” ๋ฉ”์„ธ์ง€๋ฅผ ๋„์› ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ชจ๋‹ˆํ„ฐ์—์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. Window+R -> resmon.exe ์‹คํ–‰ ๋˜๋Š” ์œˆ๋„์šฐ ๊ฒ€์ƒ‰์— '๋ฆฌ์†Œ์Šค ๋ชจ๋‹ˆํ„ฐ'๋ผ๊ณ  ๊ฒ€์ƒ‰ํ•ด๋„ ๋œ๋‹ค. ๋„คํŠธ์›Œํฌ ํƒญ -> ์ˆ˜์‹ ๋Œ€๊ธฐ ํฌํŠธ ์“ฐ๊ณ ์ž ํ–ˆ๋˜ ํฌํŠธ ๋„˜๋ฒ„๊ฐ€ 3306์ด์—ˆ์œผ๋ฏ€๋กœ, ํ•ด๋‹น ํŒŒ์ผ์˜ PID๋ฅผ ํ™•์ธํ•œ๋‹ค. ๋ช…๋ น ํ”„๋กฌํฌํŠธ(CMD) -> ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰ / ๋˜๋Š” Window + R๋กœ CMD ๊ฒ€์ƒ‰ taskkill /F /PID 6060 ๋ช…๋ น์–ด ์ž…๋ ฅ. ์˜คํƒ€์— ์ฃผ์˜ ๐Ÿ˜ช ์ด์ œ 3306์„ Port number๋กœ ์“ธ ์ˆ˜ ์žˆ๋‹ค.

[๋„คํŠธ์›Œํฌ ์Šคํ„ฐ๋””] 5 ๋„คํŠธ์›Œํฌ ๊ณ„์ธต : ๋ชฉ์ ์ง€์— ๋ฐ์ดํ„ฐ ์ „๋‹ฌํ•˜๊ธฐ (IP, ๋ผ์šฐํ„ฐ, IP ์ฃผ์†Œ, ์„œ๋ธŒ๋„ท, ๋ผ์šฐํŒ…)

๋„คํŠธ์›Œํฌ ๊ณ„์ธต์˜ ์—ญํ•  ์ˆ˜๋งŽ์€ ๋„คํŠธ์›Œํฌ๋Š” ๋„คํŠธ์›Œํฌ ๋ผ๋ฆฌ์˜ ์—ฐ๊ฒฐ๋กœ ๊ฑฐ๋Œ€ํ•œ ํ•˜๋‚˜์˜ ์ธํ„ฐ๋„ท์ด ๋˜์—ˆ๋‹ค. ๋‹ค๋ฅธ ๋„คํŠธ์›Œํฌ์— ์žˆ๋Š” ๋ชฉ์ ์ง€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ณ ์ž ํ•  ๋•Œ๋Š”(๋„คํŠธ์›Œํฌ ๊ฐ„ ์—ฐ๊ฒฐ), OSI ๊ณ„์ธต ์ค‘ ๋„คํŠธ์›Œํฌ ๊ณ„์ธต์—์„œ ๊ด€์—ฌํ•œ๋‹ค. ์•ž์—์„œ ์‚ดํŽด๋ณธ ๋ฐ์ดํ„ฐ ๋งํฌ ๊ณ„์ธต์—์„œ๋Š” ์ด๋”๋„ท ๊ทœ์น™์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ ์ „์†ก์„ ์ฑ…์ž„์กŒ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐ์ดํ„ฐ ๋งํฌ ๊ณ„์ธต์˜ ๊ธฐ์ˆ ๋งŒ์œผ๋กœ๋Š” ์ˆ˜๋งŽ์€ ๋„คํŠธ์›Œํฌ๊ฐ€ ์—ฐ๊ฒฐ๋œ ํ™˜๊ฒฝ์—์„œ ์ธํ„ฐ๋„ท์ด๋‚˜ ๋‹ค๋ฅธ ๋„คํŠธ์›Œํฌ๋กœ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ์ˆ˜ ์—†๋‹ค. ์ด๋•Œ ๋‹ค๋ฅธ ๋„คํŠธ์›Œํฌ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ผ์šฐํ„ฐ(router)๋ผ๋Š” ๋„คํŠธ์›Œํฌ ์žฅ๋น„๋ฅผ ์ด์šฉํ•œ๋‹ค. ๋ผ์šฐํ„ฐ๋Š” ๋ฐ์ดํ„ฐ์˜ ๋ชฉ์ ์ง€๊ฐ€ ์ •ํ•ด์ง€๋ฉด, ํ•ด๋‹น ๋ชฉ์ ์ง€๊นŒ์ง€ ์–ด๋–ค ๊ฒฝ๋กœ๋กœ ๊ฐ€๋Š” ๊ฒƒ์ด ์ข‹์€์ง€ ์•Œ๋ ค์ฃผ๋Š” ๊ธฐ๋Šฅ์„ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋ ค๋Š” ๋ชฉ์ ์ง€๊ฐ€ ์–ด๋””์— ์žˆ๋Š”์ง€ ๋ชจ๋ฅธ๋‹ค๋ฉด, ๋ผ์šฐํ„ฐ๋„ ๋‹น..

[๋„คํŠธ์›Œํฌ ์Šคํ„ฐ๋””] 4 ๋ฐ์ดํ„ฐ ๋งํฌ ๊ณ„์ธต : ๋„คํŠธ์›Œํฌ ๊ธฐ๊ธฐ ๊ฐ„ ์ „์†ก๊ณผ ์ด๋”๋„ท(MAC ์ฃผ์†Œ, ํ”„๋ ˆ์ž„, ์Šค์œ„์น˜, ์ „์ด์ค‘ ํ†ต์‹ , ๋ฐ˜์ด์ค‘ ํ†ต์‹ )

์ด๋”๋„ท์ด๋ž€? OSI 7๊ณ„์ธต ๋ชจ๋ธ์˜ ๋‘ ๋ฒˆ์งธ ๊ณ„์ธต์ธ '๋ฐ์ดํ„ฐ ๋งํฌ ๊ณ„์ธต'์˜ ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•ด ๋žœ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋งํฌ ๊ณ„์ธต์—์„œ๋Š” ๋„คํŠธ์›Œํฌ ์žฅ๋น„ ๊ฐ„์— ์‹ ํ˜ธ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ๊ทœ์น™์„ ์ •ํ•˜๋Š”๋ฐ, ๊ทธ ๊ทœ์น™๋“ค ์ค‘ '์ด๋”๋„ท(Ethernet)'์ด ์ผ๋ฐ˜์ ์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค. ๋žœ์— ์ ์šฉ๋œ ๊ทœ์น™์ธ ์ด๋”๋„ท์€ ํ—ˆ๋ธŒ ๊ฐ™์€ ์žฅ๋น„์— ์—ฐ๊ฒฐ๋œ ์ปดํ“จํ„ฐ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ์ด์ „ ํฌ์ŠคํŠธ์—์„œ ๋”๋ฏธ ํ—ˆ๋ธŒ๋Š” ๋ณด๋‚ด๊ณ ์ž ํ•˜๋Š” ๋ชฉ์ ์ง€๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ๊ณณ์—๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด '๋”๋ฏธ ํ—ˆ๋ธŒ'๋ผ๋Š” ์ด๋ฆ„์ด ๋ถ™์—ˆ๋‹ค๊ณ  ์„ค๋ช…ํ–ˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์— ๋”๋ฏธ ํ—ˆ๋ธŒ๋ผ๋Š” ํŠน์„ฑ ์ƒ ์ปดํ“จํ„ฐ ์—ฌ๋Ÿฌ ๋Œ€๊ฐ€ ๋™์‹œ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ณ  ๋ฐ›๋Š”๋‹ค๋ฉด ๋ฐ์ดํ„ฐ๋“ค์ด ์„œ๋กœ ๋ถ€๋”ชํž ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค. (๋ฌผ๋ก  ๋ชฉ์ ์ง€๊ฐ€ ์•„๋‹Œ ๊ณณ์—์„œ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์ง€ ๋ชปํ•˜๋„๋ก ํ•˜๋Š” ํ™•์‹คํ•œ ๊ทœ์น™์ด ์žˆ๋‹ค.) ์–ด..

[๋„คํŠธ์›Œํฌ ์Šคํ„ฐ๋””] 3 ๋ฌผ๋ฆฌ ๊ณ„์ธต : ๋ฐ์ดํ„ฐ๋ฅผ ์ „๊ธฐ ์‹ ํ˜ธ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ (๋žœ ์นด๋“œ, UTP/ FTP/STP ์ผ€์ด๋ธ”, ์ปค๋„ฅํ„ฐ, ๋ฆฌํ”ผํ„ฐ, ํ—ˆ๋ธŒ, ์Šค์œ„์น˜)

๋ฌผ๋ฆฌ ๊ณ„์ธต์—์„œ ํ•˜๋Š” ์ผ ๋ฐ์ดํ„ฐ๋Š” ์ „๊ธฐ ์‹ ํ˜ธ๋กœ ๋ณ€ํ™˜๋˜์–ด ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์ „์†ก๋œ๋‹ค. ์ด๋•Œ ์ „๊ธฐ์‹ ํ˜ธ๋Š” ์•„๋‚ ๋กœ๊ทธ ์‹ ํ˜ธ์™€ ๋””์ง€ํ„ธ ์‹ ํ˜ธ๊ฐ€ ์žˆ๋‹ค. ์•„๋‚ ๋กœ๊ทธ ์‹ ํ˜ธ : ๋ฌผ๊ฒฐ ๋ชจ์–‘(sin ํ•จ์ˆ˜)์˜ ์ „๊ธฐ ์‹ ํ˜ธ๋กœ, ์ „ํ™” ํšŒ์„ ์ด๋‚˜ ๋ผ๋””์˜ค ๋ฐฉ์†ก์— ์‚ฌ์šฉ๋˜๋Š” ์‹ ํ˜ธ์ด๋‹ค. ์ž์—ฐ์˜ ๋ชจ๋“  ์†Œ๋ฆฌ, ์ธ๊ฐ„์ด ๋งŒ๋“  ์Œ์•…๋„ ์•„๋‚ ๋กœ๊ทธ ํ˜•์‹์œผ๋กœ ์ €์žฅ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋””์ง€ํ„ธ ์‹ ํ˜ธ : ๋ง‰๋Œ€ ๋ชจ์–‘์˜ ์ „๊ธฐ ์‹ ํ˜ธ๋กœ, ํŠน์ • ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œํ˜„ํ•˜๊ณ ์ž ํ•  ๋•Œ ์ „์••์„ ์˜ฌ๋ฆฌ๊ณ , ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์„ ๋•Œ ์ „์••์„ ๋‚ฎ์ถ˜๋‹ค. ๊ธฐ์ค€์ด ๋˜๋Š” ์ „์••์ด 5v๋ผ ํ–ˆ์„ ๋•Œ, ์ด ํŠน์ • ์ „์•• ์ด์ƒ์ด ๋˜์–ด์•ผ ๋ฐ์ดํ„ฐ๊ฐ€ ์กด์žฌํ•œ๋‹ค๊ณ  ์ดํ•ด๋˜๋ฉฐ, ๊ทธ ์ดํ•˜์˜ ์ „์••์€ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๋‹ค๊ณ  ๊ฐ„์ฃผ๋œ๋‹ค. (๋‹จ, ์ „๋ฅ˜๋Š” ๋Š์–ด์ง€์ง€ ์•Š๊ณ  ์ด์–ด์ ธ ์žˆ๋‹ค.) ์ฆ‰, ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๊ฐ€ ์ „๋‹ฌ๋˜๋Š” ๊ณผ์ •์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. 1. ๋ฐ์ดํ„ฐ ์†ก์‹  ์ธก ์ปด..

[๋„คํŠธ์›Œํฌ ์Šคํ„ฐ๋””] 2 ๋„คํŠธ์›Œํฌ์˜ ๊ธฐ๋ณธ ๊ทœ์น™ (OSI ๋ชจ๋ธ, TCP/IP ๋ชจ๋ธ, ์บก์Šํ™”, ์—ญ์บก์Šํ™”)

๋„คํŠธ์›Œํฌ ํ†ต์‹ ์˜ ๊ธฐ๋ณธ ๊ทœ์น™์ธ ํ”„๋กœํ† ์ฝœ์„ ์ดํ•ดํ•œ๋‹ค. OSI ๋ชจ๋ธ๊ณผ TCP/IP ๋ชจ๋ธ์„ ์ดํ•ดํ•˜๊ณ , ์บก์Šํ™”์™€ ์—ญ์บก์Šํ™”๋ฅผ ์ดํ•ดํ•œ๋‹ค. ์šฐ์ฒด๊ตญ์œผ๋กœ ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ๊ณผ์ •์„ ์ƒ๊ฐํ•ด๋ณด์ž. ๊ทœ์น™์—๋Š” 'ํŽธ์ง€๋ฅผ ์“ฐ๋Š” ๊ทœ์น™', 'ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ๊ทœ์น™', '์šฐ์ฒด๊ตญ์˜ ๊ทœ์น™' ๋“ฑ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ๋Š”๋ฐ ๊ฐ๊ฐ์€ ์„œ๋กœ์—๊ฒŒ ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š”๋‹ค๋Š” ํŠน์ง•์ด ์žˆ๋‹ค. ํ”„๋กœํ† ์ฝœ : ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•œ ๊ทœ์น™ OSI ๋ชจ๋ธ๊ณผ TCP/IP ๋ชจ๋ธ ์ง€๊ธˆ์€ ์ƒ๊ฐํ•  ์ˆ˜ ์—†์ง€๋งŒ, ๊ฐ™์€ ํšŒ์‚ฌ์˜ ์ปดํ“จํ„ฐ๋ผ๋ฆฌ๋งŒ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•˜๋˜ ๋•Œ๊ฐ€ ์žˆ์—ˆ๋‹ค. A์‚ฌ์˜ ์ปดํ“จํ„ฐ๊ฐ€ B ์‚ฌ์˜ ์ปดํ“จํ„ฐ์™€๋Š” ํ†ต์‹ ์„ ํ•  ์ˆ˜ ์—†์—ˆ๋˜ ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์— ์ผ€์ด๋ธ”์„ ์—ฐ๊ฒฐํ•˜๋Š” ์ปค๋„ฅํ„ฐ๋„ ํšŒ์‚ฌ๋ณ„๋กœ ๋‹ค๋ฅด๋‹ค๋ฉด ๋” ๊ณค๋ž€ํ–ˆ์„ ๊ฒƒ์ด๋‹ค. ์ด๋Ÿฐ ์ผ๋“ค์ด ์žˆ์–ด ๊ณตํ†ต์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ‘œ์ค€ ๊ทœ๊ฒฉ์„ ์ •ํ•ด์•ผ๋งŒ ํ–ˆ๋‹ค. ์ด ํ‘œ์ค€์„ ์ •ํ•˜๋Š” ๋‹จ์ฒด๋Š” ์—ฌ๋Ÿฌ ๊ณณ์ด..

[๋„คํŠธ์›Œํฌ ์Šคํ„ฐ๋””] 1 ๋„คํŠธ์›Œํฌ์˜ ๊ฐœ์š” (ํŒจํ‚ท, LAN, WAN, ์•„์Šคํ‚ค์ฝ”๋“œ, ์˜จํ”„๋ ˆ๋ฏธ์Šค, ํด๋ผ์šฐ๋“œ)

๋„คํŠธ์›Œํฌ ๊ฐœ์š” ๋‘ ๋Œ€ ์ด์ƒ์˜ ์ปดํ“จํ„ฐ๊ฐ€ ๋ชจ์ธ๋‹ค๋ฉด, ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ๋ฅผ ์ด๋ฃจ๊ณ , ์ปดํ“จํ„ฐ ๊ฐ„์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ(์ •๋ณด)๋ฅผ ์„œ๋กœ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค. ์ด ๋„คํŠธ์›Œํฌ ์ข…๋ฅ˜ ์ค‘ ํ•˜๋‚˜์ธ ์ธํ„ฐ๋„ท์€ ์ „ ์„ธ๊ณ„์˜ ํฐ ๋„คํŠธ์›Œํฌ๋ถ€ํ„ฐ ์ž‘์€ ๋„คํŠธ์›Œํฌ๊นŒ์ง€๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฑฐ๋Œ€ํ•œ ๋„คํŠธ์›Œํฌ๋ฅผ ๋งํ•œ๋‹ค. ํŒจํ‚ท์ด๋ž€ ํŒจํ‚ท(packet)์€ ์ปดํ“จํ„ฐ ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์ „์†ก๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์ž‘์€ ์กฐ๊ฐ์„ ๋งํ•œ๋‹ค. ํฐ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋”๋ผ๋„ ์ž‘๊ฒŒ ๋‚˜๋ˆ„์–ด์„œ ๋ณด๋‚ด๋Š” ๊ฒƒ์ด ๊ทœ์น™. ํฐ ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด๋‚ธ๋‹ค๋ฉด, ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋Š” ๋„คํŠธ์›Œํฌ์˜ ๋Œ€์—ญํญ์„ ๋„ˆ๋ฌด ๋งŽ์ด ์ฐจ์ง€(์ ์œ )ํ•ด์„œ ๋‹ค๋ฅธ ํŒจํ‚ท์˜ ํ๋ฆ„์„ ๋ง‰์„ ๊ฐ€๋Šฅ์„ฑ ์žˆ๋‹ค. ๋Œ€์—ญํญ(bandwidth) : ์ผ๋ฐ˜์ ์œผ๋กœ๋Š” ๋„คํŠธ์›Œํฌ์—์„œ ์ด์šฉ ๊ฐ€๋Šฅํ•œ ์ตœ๋Œ€ ์ „์†ก ์†๋„๋กœ, ์ •๋ณด๋ฅผ ์ „์†กํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์œ„ ์‹œ๊ฐ„ ๋‹น ์ „์†ก๋Ÿ‰์„ ๋งํ•œ๋‹ค. ์‚ฌ์ง„..

[python & ruby] ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž

๋ฃจ๋น„์™€ ํŒŒ์ด์ฌ ๋ชจ๋‘ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž ์ ์šฉ์ด ํฌ๊ฒŒ ๋‹ค๋ฅด์ง€ ์•Š๋‹ค. ๋ฃจ๋น„์˜ ๊ฒฝ์šฐ : puts("์•„์ด๋””๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”") input = gets.chomp() real_hannah = "11" real_jessy = "ab" if real_hannah == input or real_jessy == input puts("Hello!, user") else puts("who are you?") end ์‚ฌ์šฉ์ž๊ฐ€ 11์ด๋‚˜ ab ๋‘˜ ์ค‘ ์–ด๋Š ๊ฒƒ์„ ์ž…๋ ฅํ•˜๋”๋ผ๋„ or๋กœ ๋ฌถ์—ˆ์œผ๋ฏ€๋กœ ์ฐธ์ด ๋œฌ๋‹ค. ํŒŒ์ด์ฌ์˜ ๊ฒฝ์šฐ: in_str = input("์•„์ด๋””๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.\n") real_hannah = "11" real_jessy = "ab" if real_hannah == in_str or real_jessy == in_str: prin..

[python & ruby] ์ž…๋ ฅ๊ณผ ์ถœ๋ ฅ

์ƒํ™œ์ฝ”๋”ฉ์œผ๋กœ ํ•™์Šต ์ค‘. 1) ๋ฃจ๋น„์—์„œ ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๊ฐ€์ง€๊ณ  ์˜ค๊ธฐ puts("์ž…๋ ฅํ•ด์ฃผ์„ธ์š”") in_str = gets.chomp() puts(in_str.capitalize() + " world!") ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”๋ฅผ ํ™”๋ฉด์— ์ถœ๋ ฅํ•˜๊ณ , gets.chomp()๋ฅผ ์ด์šฉํ•ด ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ๊ฐ’์„ ๋ฐ›์•„์™€ ๋ณ€์ˆ˜ in_str์— ์ €์žฅ. ๋ฐ›์•„์˜จ ๋ณ€์ˆ˜๋ฅผ '๋ฌธ์ž์—ด์˜ ์ฒซ ๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š”' capitalize()๋ฅผ ์ ์šฉํ•ด ๋’ค์— ์ƒˆ๋กœ ์ž…๋ ฅํ•œ world!์™€ ํ•จ๊ป˜ ์ถœ๋ ฅ๋˜๋„๋ก ํ•˜๊ธฐ. ๊ฒฐ๊ณผ๋Š” ์•„๋ž˜์ฒ˜๋Ÿผ hannah๋กœ ์ž…๋ ฅํ•œ ๋ฌธ์ž์—ด์ด Hannah world!๋กœ ์ถœ๋ ฅ๋œ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. 2) ํŒŒ์ด์ฌ์—์„œ ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๊ฐ€์ง€๊ณ  ์˜ค๊ธฐ in_str = input("์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.\n") print(in_str.u..

[python & ruby] ์กฐ๊ฑด๋ฌธ ๋งŒ๋“ค์–ด๋ณด๊ธฐ

์ƒํ™œ์ฝ”๋”ฉ์œผ๋กœ ํ•™์Šต ์ค‘. ๋ฃจ๋น„์—์„œ ์กฐ๊ฑด๋ฌธ์„ ๋งŒ๋“ค ๋•Œ๋Š” if์™€ end๊ฐ€ ๊ฐ๊ฐ ์กฐ๊ฑด๋ฌธ์˜ ์‹œ์ž‘๊ณผ ๋์„ ์•Œ๋ฆฌ๋Š” ์—ญํ• ์„ ํ•ด์ค€๋‹ค. if true puts("code1") puts("code2") end puts("code3") if ๋’ค์— ์˜ค๋Š” ์กฐ๊ฑด์€ true/false๋กœ ์†Œ๋ฌธ์ž. ์ถœ๋ ฅ๋˜๋Š” ๊ฒฐ๊ณผ๋Š” ์กฐ๊ฑด์ด true์ด๋ฏ€๋กœ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. If~else ๊ตฌ๋ฌธ user = 11 real = 11 if real == user puts("Hello!") else puts("Who are you") end if์˜ ์กฐ๊ฑด์ด ์ฐธ์ด๋ฉด ์ฒซ ๋ฒˆ์งธ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰, ๊ฑฐ์ง“์ด๋ฉด else ๋’ค์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰. if~elsif~else ๊ตฌ๋ฌธ input = 33 real_hannah = 11 real_jessy = "ab" if real_hannah == i..