๐ ์ค๋ ์ฝ์ ๋ฒ์: 3์ฅ ํจ์(p.40~54)
(p.40) ํ๋ก๊ทธ๋๋ฐ ์ด์ฐฝ๊ธฐ์๋ ์์คํ ์ ๋ฃจํด๊ณผ ํ์ ๋ฃจํด์ผ๋ก ๋๋ด๋ค. ํฌํธ๋๊ณผ PL/1 ์์ ์๋ ํ๋ก๊ทธ๋จ์, ํ์ ํ๋ก๊ทธ๋จ, ํจ์๋ก ๋๋ด๋ค. ์ง๊ธ์ ํจ์๋ง ์ด์๋จ์๋ค. ์ด๋ค ํ๋ก๊ทธ๋จ์ด๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋จ์๊ฐ ํจ์์ด๋ค.
(p.42) ํจ์๋ฅผ ๋ง๋๋ ์ฒซ์งธ ๊ท์น์ '์๊ฒ!'๋ค. ํจ์๋ฅผ ๋ง๋๋ ๋์งธ ๊ท์น์ '๋ ์๊ฒ!'๋ค.
(p.44) ํจ์๋ ํ ๊ฐ์ง๋ฅผ ํด์ผ ํ๋ค. ๊ทธ ํ ๊ฐ์ง๋ฅผ ์ ํด์ผ ํ๋ค. ๊ทธ ํ ๊ฐ์ง๋ง์ ํด์ผํ๋ค.
(p.46) ํจ์ ํ๋์ ์ถ์ ๊ฐ๋ ์ ํ๋ ์ด์์ด ๋๋ฉด ์๋๋ค. getHTML()์ ์ถ์ํ ์์ค์ด ์์ฃผ ๋๋ค. ๋ฐ๋ฉด String pagePathName = PathParseer.render(pagepath);๋ ์ถ์ํ ์์ค์ด ์ค๊ฐ์ด๋ค. ๊ทธ๋ฆฌ๊ณ .append("\n")์ ๊ฐ์ ์ฝ๋๋ ์ถ์ํ ์์ค์ด ์์ฃผ ๋ฎ๋ค.
(p.46) ์ฝ๋๋ ์์์ ์๋๋ก ์ด์ผ๊ธฐ์ฒ๋ผ ์ฝํ์ผ ์ข๋ค.
(p.49) ๋๋ private ํจ์์๋ isTestable, includesetupAndTeardownPages ๋ฑ๊ณผ ๊ฐ์ด ์์ ์ ์ธ ์ด๋ฆ์ ์ง์๋ค. ์ข์ ์ด๋ฆ์ด ์ฃผ๋ ๊ฐ์น๋ ์๋ฌด๋ฆฌ ๊ฐ์กฐํด๋ ์ง๋์น์ง ์๋๋ค.
(p.50) ํจ์์์ ์ด์์ ์ธ ์ธ์ ๊ฐ์๋ 0๊ฐ(๋ฌดํญ)๋ค. ๋ค์์ 1๊ฐ(๋จํญ)์ด๊ณ , ๋ค์์ 2๊ฐ(์ดํญ)๋ค. 3๊ฐ(์ผํญ)๋ ๊ฐ๋ฅํ ํผํ๋ ํธ์ด ์ข๋ค. 4๊ฐ ์ด์(๋คํญ)์ ํน๋ณํ ์ด์ ๊ฐ ํ์ํ๋ค. ํน๋ณํ ์ด์ ๊ฐ ์์ด๋ ์ฌ์ฉํ๋ฉด ์ ๋๋ค.
(p.53) ์ธ์๊ฐ 2-3๊ฐ ํ์ํ๋ค๋ฉด ์ผ๋ถ๋ฅผ ๋ ์์ ์ธ ํด๋์ค ๋ณ์๋ก ์ ์ธํ ๊ฐ๋ฅ์ฑ์ ์ง์ด๋ณธ๋ค.
(p.54) ๋จํญ ํจ์๋ ํจ์์ ์ธ์๊ฐ ๋์ฌ/๋ช ์ฌ ์์ ์ด๋ค์ผ ํ๋ค. ex) writeField(name)
(p.54) ํจ์ ์ด๋ฆ์ ํค์๋๋ฅผ ์ถ๊ฐํ๋ ํ์์ด๋ค. ์ฆ, ํจ์ ์ด๋ฆ์ ์ธ์ ์ด๋ฆ์ ๋ฃ๋๋ค. ex) assertEquals -> assertExpectedEqualsActual(expected, actual)
์์ง ๋ค์ํ ํจ์๋ฅผ ๋ค๋ค๋ณด์ง ์์์ ์ต์์น ์์์ ๊ทธ๋ฐ์ง ์ ์ฅ์ ํด๋์ค๋ช ๋งํผ ์ ์๋ฟ์ง๋ ์์๋ค. ์ผ๋จ ์์งํด๋๊ณ ์์ผ๋ก ํจ์๋ฅผ ์ธ ๋๋ง๋ค '์, ํด๋ฆฐ ์ฝ๋์์ ์ด๋ ๊ฒ ์ฐ๋ฌ์ง!'ํ๊ณ ์๊ธฐ์ํฌ ์ ์์ผ๋ฉด ํ๋ค.
- switch ๋ฌธ: ์ผ๋ฐ์ ์ผ๋ก ์๋ฐ์คํฌ๋ฆฝํธ์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ์กฐ๊ฑด๋ฌธ์ if ๋ฌธ์ด๋ค. switch ๋ฌธ๋ if ์ ๊ฑฐ์ ๊ฐ์ ๊ธฐ๋ฅ์ ์ํํ๋ ์กฐ๊ฑด๋ฌธ์ด๋ค. switch ๋ฌธ์ ๊ฒฝ์ฐ if ๋ฌธ๊ณผ ๋ฌ๋ฆฌ ๋ชจ๋ ์กฐ๊ฑด์ ํ์ธํ์ง ์๊ณ , ๋ง๋ ๊ตฌ๋ฌธ์ ๋ง๋๋ฉด break ๋ฅผ ํตํด ์ฆ์ ๋ฃจํ์์ ๋ฒ์ด๋ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค. (์ถ์ฒ)