E D R , A S I H C RSS

Seminar How To Program It

• ๋“ค๋Ÿฌ˜ How to Read a Book๊ณผ ด๋ฆฌ•ผ˜ How to Solve it˜  „†ต„ ปด“จ„”„๋กœ๊ทธ๋ž˜๋ฐ ชฝ—„œ ž‡๋Š” „ธ๋ฏธ๋‚˜๊ฐ€ 2002๋…„ 4›” 11ผ ค‘•™๋Œ€•™๊ต—„œ žˆ—ˆ๋‹ค.


”„๋กœ๊ทธ๋ž˜๋ฐด๋ž€ ๊ฒƒ„ –ด๋–ป๊ฒŒ •˜๋Š”๊ฐ€? –ด๋–ค ‚ฌ๊ณ ˜ ๊ณผ •„น˜๋Š”๊ฐ€? –ด๋–ค ธง€  ๋ณดกฐ๋ฌผ˜ ๋„›€„ ๋ฐ›„ ˆ˜ žˆ๋Š”๊ฐ€? –ด๋–ป๊ฒŒ •˜๋ฉด ”„๋กœ๊ทธ๋ž˜๋ฐ„ ๋” ž˜•  ˆ˜ žˆ„๊นŒ?

  • CrcCard (Index Card -- The finalist of Jolt Award for "design tools" along with Rational Rose Enterprise Edition)
  • Paper Shell Programming -- Becoming a Pseudo-Turing Machine Yourself
  • TestDrivenDevelopment -- ”„๋กœ๊ทธ๋ž˜๋ฐ˜ ฝ”Ž˜๋ฅด๋‹ˆฟ Šค   „™˜
  • Stepwise Refinement -- „๋ถ€•œ ๋ฏธ๋ž˜, ‹ „ •œ ๊ณผ๊ฐ (see also NoSmok:ProgrammingOnPurpose )
  • White Board -- Communicate with the Board
  • PairProgramming -- 1+1 > 2
  • Refactoring -- ›„๊ฐ ๊ฐœ๋ฐœ๋ฒ•
  • DesignPatterns -- ๋””žธŒจ„ ๊ณต๋ถ€  ˆ๋Œ€๋กœ •˜ง€ ๋งˆ๋ผ
  • Coding Style -- esp. How to Name it (”„๋กœ๊ทธ๋ž˜๋จธ๋ฅผ œ„•œ  •๋ช…•™. "ๅญๆ›ฐ ๅฟ…ไนŸๆญฃๅไนŽ...ๅ๏ฅงๆญฃๅ‰‡่จ€๏ฅง้ † ่จ€๏ฅง้ †ๅ‰‡ไบ‹๏ฅงๆˆ" <๋…ผ–ด> ž๋กœŽธ)
  • Managing To Do List -- How to Become More Productive Only With a To-do List While Programming
  • Programmer's Journal -- Keeping a Diary (see also NoSmok:KeepaJournalToLiveBetter )
  • Lifelong Learning as a Programmer -- Teach Yourself Programming in Ten Years (http://www.norvig.com/21-days.html )
  • What to Read -- Programmer's Reading List

œ„˜ ๊ฒƒ„ ๋‘‹œ๊ฐ„ ๋™•ˆ ๋‹ค •œ๋‹ค๋Š” ๊ฒƒ€ -- „ธ๋ฏธ๋‚˜ ด „๊ณผ ด›„— ‚ฌ๋žŒด ๋‹ฌ๋ผง€๋Š” ˆ˜ค€—„œ -- ๋ถˆ๊ฐ€๋Šฅ•˜๊ณ , TDD™€ PP, ๊ทธ๋ฆฌ๊ณ  DP(RF)๋ฅผ ง‘ค‘ œผ๋กœ ๋‹ค๋ฃจ๊ฒ Šต๋‹ˆ๋‹ค. ๊ฐ€๋Šฅ•˜๋ฉด  œ ๊ตฌ๋‘„ค๋ช…€ งง๊ฒŒ „ด๊ณ  ๋‚˜๋จธง€ ‹œ๊ฐ„€ ด „ธ๊ฐ€ง€๋ฅผ ง ‘ ‹คŠต, † ๋ก •˜๋Š” ‹œ๊ฐ„ด ๋˜๋„๋ก •˜๊ฒ Šต๋‹ˆ๋‹ค. •  ๊ฒƒ€ ๋งŽ๊ณ  ‹œ๊ฐ„€ งงŠต๋‹ˆ๋‹ค. š”ฆ˜  €˜ "„ธ๋ฏธ๋‚˜ ™”๋‘"๋Š” –ด๋–ป๊ฒŒ •˜๋ฉด " ๊ฒŒ  „๋‹ฌ"•˜๊ณ  ๊นŠด ๊นจ๋‹ซ๊ฒŒ •˜๊ฐ๋‚˜ ˜น€ ๋ฐ˜„•˜๊ณ  ๋˜ ๋‹ค–‘•˜๊ฒŒ ‹ค—˜•ด ๋ณผ —ฌง€๋ฅผ ๋งŽด  œ๊ณต•  ˆ˜ žˆ„๊นŒ •˜๋Š” ๊ฒƒž…๋‹ˆ๋‹ค.

๋Œ€ƒ€ ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ—˜ด ๋ถ€•œ ๋ถ„, ˜น€ ๋„ˆ๋ฌด ๋งŽ€ ๋ถ„.

„ธ๋ฏธ๋‚˜๋Š” ‹คŠต/† ๋ก  ค‘‹ฌ˜ •ธ๋“œ˜จ „ธ๋ฏธ๋‚˜๊ฐ€ ๋  ๊ฒƒด๋ฉฐ, ๋”ฐ๋ผ„œ ธ› œ•œด žˆ–ด•ผ •  ๊ฒƒž„. •ฝ 20๋ช… ๋‚ด™ธ๊ฐ€  ๋‹น•  ๋“ฏ. ("Tell me and I forget, teach me, and I may remember, involve me and I learn." -- Benjamin Franklin)

˜‘๋™  •™Šต„ ๋ชฉ‘œ๋กœ •จ --  €๋Š” „œ๋กœ –ผ๋งˆ๋‚˜ ๋งŽ€ ๊ฒƒ„ ๋ฐฐšธ ˆ˜ žˆ๋Š”ง€ ๋งค๋ฒˆ ๋†€๋ž๋‹ˆ๋‹ค.

--๊น€ฐฝค€


‹œ๊ฐ„๊ณผ žฅ†Œ

  • žฅ†Œ: ค‘•™๋Œ€•™๊ต ๊ณต๋Œ€(๋ด…ŠคŠธ™€) 7ธต PC‹ค (4744)
  • (๊ณต‹ ) ‹œ๊ฐ„:4›” 11ผ 7‹œ 30๋ถ„~9‹œ 30๋ถ„ († ๋ก € 9‹œ 30๋ถ„—„œ 10‹œ๊นŒง€ „–‰๋  ˜ˆ •)
  • ๋Œ€ƒ: ค‘•™๋Œ€•™๊ต ปด“จ„ฐ ๊ณต•™๊ณผ  œ๋กœŽ˜ดง€ šŒ› ๋ฐ ๋น„šŒ›, ˜น€ ƒ€๊ณผ, ƒ€•™๊ต •™ƒ/๊ตˆ˜/ผ๋ฐ˜ธ
  • ๊ต†ตŽธ : 212, 21๋ฒˆ ‘„๋™ ค‘๋Œ€ž…๊ตฌ. ง€•˜ฒ  7˜ธ„  ƒ๋„—ญ •˜ฐจ (ƒ๋„—ญ—„œ 20๋ถ„ฐ๋ฆฌ)

”„๋กœ๊ทธ๋žจ (pun intended)

ค€๋น„
  • 7:00-7:30 „ธ๋ฏธ๋‚˜ ค€๋น„, ™˜๊ฒฝ „น˜, ž๋ฆฌ „ ƒ, ๊ฐ –ธ–ด ๊ทธ๋ฃน๋ณ„ xUnit(or assert) ‚ฌšฉ๋ฒ•  •๋ฆฌ/Šค„ฐ๋””

๋ณธ „ธ๋ฏธ๋‚˜
  • 7:30-7:50 ๊ฐ•‚ฌ ๋„ฐฉ. TDD ๋ฐ RF ‹œ—ฐ(Python). ๋Œ€˜• ™”๋ฉด„ ๋ณด๊ณ  ›•˜๋Š” ปค”Œ€ ๋”ฐ๋ผ•  ˆ˜ žˆŒ.
  • 7:50-8:00 PP— ๋Œ€•œ ๊ฐ„๋žต•œ †Œ๊ฐœ, ฃผ˜  ๋“.
  • 8:00-8:10 ปค”Œ๋ณ„๋กœ TDD ‹คŠต
  • 8:10-8:30 ๊ทธ๋ฃน ๋‚˜๋ˆ„๊ธฐ, Crc Card †Œ๊ฐœ, ”„๋กœ Šธ š”๊ตฌ‚ฌ•ญ †Œ๊ฐœ ๋ฐ ๊ทธ๋ฃน๋ณ„ † ˜
  • 8:30-9:30 ๊ทธ๋ฃน๋ณ„ ๊ฐœ๋ฐœ „–‰ (๊ฐœ๋ฐœ ค‘ ๊ณ ๊ฐ˜ š”๊ตฌ‚ฌ•ญ ˆ˜ •)

† ๋ก 
  • 9:30-9:35 ๊ทธ๋ฃน๋ณ„ (๋‚ด๋ถ€) † ๋ก , ‰๊ฐ€
  • 9:35-10:00 ”„๋กœ๊ทธ๋žจ ‹œ—ฐ, „ค๋ช…,  „ฒด † ๋ก 

ค€๋น„ ‚ฌ•ญ

  • PC ๋ฏธ๋ฆฌ …‹Œ… - ”„๋กœ …˜ •  ปด“จ„ฐ : Idle Fork + Python 2.2
  • ๊ธฐƒ€ ๋‹ค๋ฅธ ปด“จ„ฐ๋“ค€ –ด๋–ป๊ฒŒ • ๊นŒš”? ๊ธฐ๋ณธœผ๋กœ Visual Studio ๋Š” ๊น”๋ คžˆ„ ๊ฒƒด๋ฏ€๋กœ C, C++ ๋Š” ๋˜๊ฒ ง€๋งŒ, Java “ฐ‹œ๋Š” ๋ถ„๋“ค€?
    • ๊ธฐ๋ณธ œผ๋กœ Idle Fork™€ Python 2.2๋Š” ๋ชจ๋‘ ๊น”•„•ผ •จ. (๊ฐ•‚ฌ๊ฐ€ Pythonœผ๋กœ ‹œ๋ฒ”„ ๋ณดผ ๊ฒƒด๊ณ , ด๊ธ ๋ณด๋ฉด„œ ๊ทธ๋Œ€๋กœ ๋”ฐ๋ผ•˜๊ณ  ‹ถ€ ปค”Œ€ ๊ทธ๋ ‡๊ฒŒ •  ˆ˜ žˆ๋„๋ก)
    • Java 3๋Œ€ : JDK 1.3.1_02, eclipse 2.0 SDK(pre-release), Editplus „น˜ ๋ฐ „Œ…
    • C++ 3๋Œ€ : VC++ 6.0 („น˜ ๋˜–ด žˆ๋Š” ƒƒœ ™•ธฐจ›)
    • python 4๋Œ€ : Python 2.2, Idle Fork


~cpp 
7‹œ ~ 7‹œ 30๋ถ„ ค‘๋น„ ๊ณผ • (ค€๋น„ ธ›€ 3~4๋ช…ด  ๋‹น• ๋“ฏ •ฉ๋‹ˆ๋‹ค.)

0. ฒญ†Œ,  •๋ฆฌ
1. user  œ™ธ ๊ณตœ   ๊ฒ€ & ๋ฐ”ด๋ŸฌŠค ฒดฌ(v3 ๋””Šคผ“)
2. ž๋ฆฌ ๋ฐฐน˜
    Java 3๋Œ€ : JDK 1.3.1_02,   eclipse 2.0 SDK(pre-release),   Editplus „น˜ ๋ฐ „Œ…
    C++ 3๋Œ€ : VC++ 6.0 („น˜ ๋˜–ด žˆ๋Š” ƒƒœ ™•ธ)
     python 4๋Œ€ : Python 2.2, Idle Fork
     ”„๋กœ …˜ •  ปด“จ„ฐ : Idle Fork + Python 2.2
3. ”„๋กœ Šธ „น˜

0,1,2 ๋ฒˆ ธ›ด ๋ ๊ฒฝšฐ ๋™‹œ „–‰, 2๋ฒˆ ๊ณผ • ๋ณ‘๋ ฌ ˆ˜–‰ 3๋ฒˆ ๋‹จผ
๊ธฐƒ€ ‚ฌ•ญ :
•ด๋‹น ๋‚ งœ— 7ธต˜ PC‹ค— „ธ๋ฏธ๋‚˜ ๊ณต๊ณ ๋ฅผ ๋ถ™—ฌ๋„ ๋œ๋‹ค๊ณ  —ˆ๋ฝ ๋ฐ›•˜Šต๋‹ˆ๋‹ค.  €๋ณด๋‹ค ๋จผ € pc‹ค— ๋„ฐฉ•ด ‹œ๊ฐ„ด žˆœผ‹ ๋ถ„๋“ค€  ๋‹น•œ ๊ณต๊ณ ๋ฅผ 7ธต PC‹ค ๋ฌธ— ๋ถ™—ฌ ฃผ„š”. PC˜ ™•๋ณด—ญ‹œ žœจ ดง€๋งŒ, ๋งˆฐฌ๊ฐ€ง€ ž…๋‹ˆ๋‹ค. --ƒ๋ฏผ

Thread

žฅ†Œ ๊ด€๋ จ —ฌ๋‹ด : ๋•ค€ด™€, „ฒœด๊ฐ€ 2ธต„ ๋Œ€—ฌ๋ฅผ œ„•ด •Œ•„ ๋ณด•˜ง€๋งŒ, •™ƒ˜ ๊ถŒ•œœผ๋กœ๋Š” ๋นŒ๋ฆดˆ˜ —†๋‹ค๊ณ  –ˆŠต๋‹ˆ๋‹ค. ˆ˜๊ณ  •˜…จŠต๋‹ˆ๋‹ค. ๋งŒ•ฝ ๋‹คŒ— •„𔕠๋•Œ๋Š” •™๊ณผžฅ๋‹˜๊ป˜ •ด๋‹น –‰‚ฌ˜ ๋ฌธ„œ  œถœ›„— žฅ†Œ ™•๋ณด๊ฐ€ ๊ฐ€๋Šฅ• ๋“ฏ •ฉ๋‹ˆ๋‹ค. ๊ณผ‚ฌ—„œ ๋ฌธ„œ— ๋Œ€•œ ผ๋ฐ˜ ธ –‘‹€ กดžฌ•˜ง€ •Š๋Š”๋‹ค๊ณ  •ฉ๋‹ˆ๋‹ค.(๊ณผ๊ฐ PC ๋นŒ๋ ธ„๋•Œ ฒ˜๋Ÿผ) --ƒ๋ฏผ

4›” 12ผ€ ดMT™€ ๊ฒนน˜๊ณ , ๋‚˜๋จธง€, 9ผด๋‚˜ 11ผด ข‹„ฐ ๊ฐ™€๋ฐš”.. „ธ๋ฏธ๋‚˜ ๊ธฐ๋Œ€๋˜๋Š”๋ฐš”..^^ - ƒ˜‘

‘..  •๋ง •˜๊ณ  ‹ถ€๋ฐ.. 9ผ€ šŒ˜๊ฐ€(๊ธฐด๋ถ€) •„•„•….. –ด..–ดฉŒ๋ฉด ข‹ง€š”..  €๋Š”..?? ใ… .ใ…  --„ ˜ธ

šŒ˜ งธ๊ณ  ™€~ ๋‚œ ๊ธฐˆ™‚ฌ ๋™๊ธฐšŒ งธ๊ณ  ๊ฐ€๋Š”๊ตฌ๋งŒ.. šŒ˜๋ž‘ ๋™๊ธฐšŒ๋ž‘ ๋น„๊ต•ด๋ณด๋ฉด.. ๋™๊ธฐšŒ๊ฐ€ ›”ฌ๋” ƒ€๊ฒฉด ปค. -ƒ˜‘

˜ค˜ˆ~~~ ด œ ๊ธฐˆ™‚ฌ ๋™๊ธฐšŒ •ˆ๋น  ธ๋„ ๋˜๋„š”... 9ผ๋‚  ๋™๊ธฐšŒ ˜€๋Š”๋ฐ.. -ƒ˜‘


 •๋ง žฌ๋ฐŒ„ ๊ฒƒ ๊ฐ™Šต๋‹ˆ๋‹ค. ๋‚˜๋„ ๊ฐˆ ˆ˜ žˆœผ๋ฉด ข‹„…๋ฐ... ฐธ„•˜ง€ ๋ชป•˜๋Š” ‚ฌ๋žŒ๋“ค„ œ„•ด †Œค‘•œ „ธ๋ฏธ๋‚˜ ž๋ฃŒ๋ฅผ ๊ณตœ •ดฃผ‹œ๋ฉด ๊ฐ‚ฌ•˜๊ฒ Šต๋‹ˆ๋‹ค. ฐฝค€๊ตฐ„ ๋งŒ๋‚œ ๊—ฌ๋Ÿฌ๋ถ„ด๋‚˜  €๋‚˜ ฐธ –‰šดž…๋‹ˆ๋‹ค. 24‹œ๊ฐ„ ๊ฐ€๋ฅดณ๋‹ฌ๋ผ๊ณ  •˜„š”. ^^ ด๋Ÿฐ ๊ฐ•˜๋Š” •™๊ตกธ—…•˜๋ฉด ๋‹ค‹œ๋Š”  ‘•˜ง€ ๋ชป•  ๊ฒƒž…๋‹ˆ๋‹ค. ^^ (๊ทธ๋‚˜ €๋‚˜  œ๋กœŽ˜ด €๋„ •„๋‹Œ๋ฐ ๊ธ€„ ˜ฌ๋ ค๋„ ๋˜๋Š” ๊ง€ ๋ชจ๋ฅด๊ฒ ๊ตฐš”.) - ๋ฐ•ง€›ˆ
neocoin:œ„‚ค— Šน • ๋กœ๊ทธธด กดžฌ •˜ง€ •Š๊ณ ,—ด–ด๋…ผ ดœ ๊ฐ€ ๊ธ€„ “ฐ๊ณ  ˜๊ฒฌ„ ฃผ‹ญ‚ฌ •ด„œ ž…๋‹ˆ๋‹ค.  €๋ฒˆ๋‹ฌ ๋ˆ„๊ตฐ๊ฐ€ •จ๋ถ€๋กœ ง€šฐ๋Š” ‚ฌƒœ๊ฐ€ ๋ฐœƒ•ด„œ ผ๋‹จ ง€šฐ๋Š” ๊ถŒ•œ— ๋Œ€•˜—ฌ HGC(Human Garbage Collector- •„๋‹ˆ๋ผ KHGCธ๊ฐ€.--a)ฒด œ๋กœ ๋ฐ”๊พธ—ˆง€๋งŒš”. --ƒ๋ฏผ

ƒ€•™๊ต •™ƒ˜ ฐธ„„ ๊ฐ€๋Šฅผ€•ดฃผ…”„œ ๋ˆˆ๋ฌผ๋‚˜๊ฒŒ ๊ฐ‚ฌ•ด•˜๊ณ  žˆŠต๋‹ˆ๋‹ค. ^^; --„ฌƒ
DeleteMe) •—! ฌƒ”จ๋‹ท; ๋ถ€ง€๋Ÿฐ๋„ •˜…”๋ผ; -- „ฒœ

๊ฐ•˜๋ฅผ ๋…น™”•ด„œ ๋‹ค๋ฅธ ‚ฌ๋žŒ๋„ ๋ณผ ˆ˜ žˆ๊ฒŒ •˜๊ณ ž •ฉ๋‹ˆ๋‹ค. ๊ดœฐฎ๊ฒ Šต๋‹ˆ๊นŒ? -- •ฌ๋ก
•—.. ใ…ก.ใ…ก๋…น™”.. ข€. ๋นผž…๊ณ  ๊ฐ€•ผ•˜๋‚˜.. --„ ˜ธ

‚ฌ๋žŒด ๋งŽ•„ ง€๋‹ˆ ฐธ๊ฐ€— ๋Œ€•˜—ฌ ๋ถˆ•ˆ•œ ๊ฐด ๋“œ๋„š”. zpšŒ›— •œ•˜—ฌ ๋Šฆ๊ฒŒ ˜ค๋Š” ‚ฌ๋žŒ Œ๋ฃŒˆ˜ ‚ฌ๊ธฐ!!! --ƒ๋ฏผ

 €๋„ ƒ€•™๊ตƒด๊ฐ๋“ š”.. ฌƒด˜• ›„๋ฐฐ๋ž๋‹ˆ๋‹ค. ‹ค๋ ฅด •ˆ๋˜„œ ง ‘ ฐธ๊ฐ€๋Š” ๋ชป•˜๊ณ  ฐธ๊ด€•ด๋ณด๊ณ  ‹ถ๋„š”. ž˜๋ถ€ƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ()(__)() -- ตœœ ™˜

vim “ฐ‹œ๋Š” ๋ถ„๋“ค€ —ฌ๊ธฐ๋ฅผ.

ˆœ๋ฒˆ ฐธ๊ฐ€ ‹ ฒญž
1 ด„ šฐ
2 ตœ๊ด‘‹
3 ๋ฐ•˜œ˜
4 ๊ฐ•„ฒœ
5 ๋‚จƒ˜‘
6 ๊ฐ•ธˆ˜
7 ๋ฅ˜ƒ๋ฏผ
8 ž„๊ตฌ๊ทผ
9  •„๊ท 
10 ด๋ด๋ผ
11 ๊น€๋‚จ›ˆ
12 ด •ง
13 ‹ žฌ๋™
14 ดฐฝ„
15 ด„ ˜ธ
16 „ฌƒ
17 ด๋•ค€
18 ž„ฐจ„
19 ๊น€˜•šฉ
20 ๊น€Šน๋ฒ”
21 „œง€›
22 ™„๋‘


ˆœ๋ฒˆฐธ๊ด€ ‹ ฒญž
1 ตœƒœ˜ธ
2  •ฌ๋ก
3 ๋ฐ•ง€™˜
4 ตœœ ™˜
5 ด•œฃผ
6 ๊น€ •ค€
7 ๊น€šฉ๊ธฐ

  • ฐธ๊ฐ€ž(aka Player) : ง ‘ •™Šต— ๋™ฐธ•˜๊ณ  •จ๊ป˜ † ๋ก •˜๊ณ  •œ๋ฐ”ƒ• žฌ๋ฏธžˆ๊ฒŒ ๋†€•„๋ณผ ‚ฌ๋žŒ.
  • ฐธ๊ด€ž(aka Spectator) : ๊ทธ๋“ค„ ๊ตฌ๊ฒฝ•  ‚ฌ๋žŒ. (ด ๋ถ„๋“ค€ ด Œ€๊ณผ  € Œ€€ –ด๋–ป๊ฒŒ ๋‹ค๋ฅด๊ฒŒ •˜๋”๋ผ, ๊ทธ Œ€€ ๋ญ๋ฅผ •˜๊ณ , ๊ทธ Œ€€ ๋ญ๋ฅผ •ˆ•˜๋”๋ผ, ๊ทธ๋žฌ๋”๋‹ˆ ๋‚˜ค‘— š”๋ ‡๊ฒŒ  €๋ ‡๊ฒŒ ๊ณ ƒ„ •˜๋”๋ผ ๋“˜ ๊ด€ฐฐ„ •˜๊ณ , † ๋ก ‹œ— –ธ๊ธ‰•ด ฃผ‹œ๋ฉด ๋ชจ๋‘—๊ฒŒ ๋„›€ด ๋˜๊ฒ Šต๋‹ˆ๋‹ค)

๋ฌด—‡„ ข€ ๋” ง‘ค‘ œผ๋กœ ฆ๊ธฐ๊ณ  ‹ถŠต๋‹ˆ๊นŒ? 2๊ฐ€ง€๋งŒ ๊ณ ๋ฅธ๋‹ค๋ฉด? (๋ฌด๊ธฐ๋ช… ˆ‘œ; n++ )
Crc Card & Index Card & White Board1
Paper Shell Programming 1
TestDrivenDevelopment 5
Stepwise Refinement 1
PairProgramming 6
Refactoring 3
DesignPatterns 4
Coding Style 2
Managing To Do List 3
Programmer's Journal, Lifelong Learning & What to Read2

งง“๊ธฐ


C
  • ๊น€๋‚จ›ˆ, ด •ง

C++
  • ๊ฐ•ธˆ˜, ‹ žฌ๋™
  • ด„ ˜ธ, ๋‚จƒ˜‘
  • ดฐฝ„ญ, ๋ฐ•˜œ˜

Java
  • ด„ šฐ, ž„ฐจ„
  • ด๋•ค€, ž„๊ตฌ๊ทผ
  • ตœ๊ด‘‹,  •„๊ท 

Python
  • „ฌƒ, ๊น€Šน๋ฒ”
  • ๊ฐ•„ฒœ, ด๋ด๋ผ
  • ๊น€˜•šฉ, ๋ฅ˜ƒ๋ฏผ
  • ™„๋‘, „œง€›

Œ€ „  •

•ด๋‹น Œ€€ ๊ฐœ๋ฐœ ™˜๊ฒฝ, –ธ–ด „  •๋ถ€„ฐ, ”„๋กœ๊ทธ๋žจ ๋””žธ, ฝ”๋”ฉ๊นŒง€ ๋ชจ๋‘ •จ๊ป˜ •˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. •œ๊ฐ€ง€ ๋ฌธ œ ƒ™ฉด ฃผ–ดˆ ๊ฒƒด๊ณ ,  œ๊ฐ€ ๊ณ ๊ฐ—ญ• „ •ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ „–‰ ค‘— ๋ช‡๋ฒˆ˜ š”๊ตฌ‚ฌ•ญ ˆ˜ •ด žˆ„ ๊ฒƒด๋ฏ€๋กœ, " ‘๋„"— ๋Œ€•œ …ŒŠคŠธ๊ฐ€ ž๋™œผ๋กœ ด๋ฃจ–ด ˆ ๊ฒƒž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ™„๋ฃŒ ›„—๋Š” ๊ฐ๊ฐ ๋‹ค๋ฅธ –ธ–ด๋กœ ๊ตฌ˜„๋œ ”„๋กœ๊ทธ๋žจ๋“ค„ ‚ดŽด๋ณด๋ฉฐ ๋น„๊ต † ๋ก „ •  ๊ฒƒž…๋‹ˆ๋‹ค.

Lemon Team ๊น€๋‚จ›ˆ, ‹ žฌ๋™, ๋‚จƒ˜‘, ด„ šฐ, ดฐฝ„

Orange Team ด •ง, ๊ฐ•ธˆ˜, ด„ ˜ธ, ด๋•ค€

Cocoa Team ตœ๊ด‘‹,  •„๊ท , ž„๊ตฌ๊ทผ, ž„ฐจ„ญ, ๋ฐ•˜œ˜

Pipe Team „ฌƒ, ๊ฐ•„ฒœ, ๋ฅ˜ƒ๋ฏผ, ๊น€˜•šฉ

Snake Team ๊น€Šน๋ฒ”, ด๋ด๋ผ, „œง€›, ™„๋‘


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

ด ๋•Œ, OOP๊ฐ€ ๊ฐ€๋Šฅ•œ –ธ–ด๋ฅผ ถ”ฒœ•˜๊ณ , •ด๋‹น –ธ–ด˜ xUnit ‚ฌšฉ๋ฒ•„ ๋ฏธ๋ฆฌ ต˜€˜ค๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. (๋ฐ˜๋‚˜ ˆ  •๋„๊ฐ€ •„𔕠 ๊ฒ๋‹ˆ๋‹ค) http://www.xprogramming.com/software.htm —„œ ๋‹คšด ๋ฐ›„ ˆ˜ žˆŠต๋‹ˆ๋‹ค.
(See Also PyUnit, UnitTest, JUnit, CppUnit. C –ธ–ด๋ฅผ ‚ฌšฉ•˜‹œ๋Š” ๋ถ„๋“ค€ ASSERT ๋ฌธœผ๋กœ UnitTest ๋ถ€๋ถ„„ –ด๋А •๋„ ๋Œ€‹ •  ˆ˜ žˆŠต๋‹ˆ๋‹ค.)

•˜ง€๋งŒ ๋™  ž๋ฃŒ˜• –ธ–ด๋ฅผ  ‘•˜๋Š” ๊ฒƒ žฒด๊ฐ€ ฐ žฅ ผ ˆ˜๊ฐ€ žˆŠต๋‹ˆ๋‹ค. Šนžˆ TDD™€ Refactoring€ ๋™  ž๋ฃŒ˜• –ธ–ด—„œ ๋น›„ ๋ฐœ•˜๊ณ , ๋Œ€๋‹คˆ˜˜ DP๋Š” –ธ–ด ˆ˜ค€—„œ ง€›ด ๋˜๊ฐ๋‚˜ •„ฃผ ๊ฐ„๋‹จ•ฉ๋‹ˆ๋‹ค. 20๋ถ„  •๋„๋ฉด Python„ ๊ฐ„๋žต•˜๊ฒŒ ›‘„ ˆ˜๋Š” žˆŠต๋‹ˆ๋‹ค.

—ฌ๋Ÿฌ๋ถ„˜ ƒ๊ฐ€ –ด๋–ปŠต๋‹ˆ๊นŒ?

00•™๋ฒˆ ๊น€๋‚จ›ˆž…๋‹ˆ๋‹ค. C ๋กœ๋„ ƒ๊ด€—†„๊นŒš”?
๊ดœฐฎŠต๋‹ˆ๋‹ค๋งŒ, ๊ฐ€๋Šฅ•˜๋‹ค๋ฉด OOP–ธ–ด๋ฅผ ๊ถŒ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ž‹ ด „ ƒ•œ –ธ–ด™€ ๋™ผ•œ –ธ–ด๋ฅผ „ ƒ•œ ‚ฌ๋žŒด ตœ†Œ•œ •œ๋ช…€ ๋” žˆ–ด•ผ •ฉ๋‹ˆ๋‹ค.

„ธ๋ฏธ๋‚˜  „— Ž˜–ด๋ฅผ งœ๋Š”๊ฒŒ ข‹๊ฒ ๊ตฐš”.. -๋‚จ›ˆ
ด Ž˜ดง€๋ฅผ †ต•ด งœ๋Š” ๊ฒŒ ข‹๊ฒ Šต๋‹ˆ๋‹ค. ๊ฐ€๋Šฅ•˜๋ฉด „œ๋กœ ž˜ ๋ชจ๋ฅด๋Š” ‚ฌ๋žŒ๋ผ๋ฆฌ๊ฐ€ ข‹Šต๋‹ˆ๋‹ค. ๋ฐฐšธ ๊ฒƒด ๋” ๋งŽŠต๋‹ˆ๋‹ค.

ฐธ๊ด€ž ตœƒœ˜ธ œค •ˆ˜ †ŒŠคฝ”๋“œ: VendingMachine_ฐธ๊ด€ž


see also 02_Python

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:28:00
Processing time 0.0404 sec