1. Technology ¶
- World Wide Web Technology Surveys - http://w3techs.com/
- Markup Language
- Cascading Style Sheet
- Client-side Script Language
- JavaScript Library
- Server-side Script Language
4. Integrated Development Environment ¶
- Microsoft Visual Studio (AJAX.NET -> jQuery)
- JetBrains WebStorm
- Oracle NetBeans
- Aptana Studio (Titanium Studio)
- Cloud9 IDE (Node.js)
- Mozilla Bespin -> Mozilla Skywriter -> Ajax.org Ace -> Cloud9 -> http://c9.io/
5.1. 2012๋
7์ 4์ผ - ์ค์ต ¶
- ์น ๊ธฐ์ , ํ๊ฒฝ, ๋ ํผ๋ฐ์ค ์๊ฐ
- ์ค์ต ํ
๋ง ์ ์ - ๊ฐ์ ์น ๊ฒ์ ์ ์ํ๊ธฐ
- XHTML1.0, CSS2.1 ๊ธฐ์ด
- ๋ณํ์ง
- ์ ์ฅ ์ง์ ์ค๋ Cloud9 IDE๊ฐ ๋น ๋ฅด๊ฒ ์ ๋ฉ๋๋ค. ํ๊ต์ ์๋ ์ฌ๋๋ค๋ ํ
์คํธ ๋ถํํฉ๋๋ค. ํ๊ต ๋คํธ์ํฌ ๊ด๋ จ ์ด์์ธ์ง ๊ทธ๋ฅ ๊ทธ ์๊ฐ๋ c9.io ์๋น์ค ๊ด๋ จ ์ด์์ธ์ง ๊ถ๊ธํ๊ตฐ์.
- ๊ฐ์ ์์ ์ Cloud9 IDE Dashboard์์ Workspace๋ฅผ ๋ง๋ค์ด ๊ณผ์ ๋ฅผ ์งํํ๊ณ URL์ ๊ณต์ ํฉ์๋ค. ๊ณผ์ ๋ "๋ฉ๋ด ๋ง๋ค๊ธฐ"์๋๋ฐ ์ด๋ค ๋ชจ์ต์ผ๋ก ๊ตฌํํด๋ ์ข์ต๋๋ค!
- ํน์ ์ฌ์ ํ Cloud9 IDE์ด ๋์ํ์ง ์์ผ๋ฉด ์ด๋ฒ ๋ด์ฉ์ ํด๋ผ์ด์ธํธ ๊ตฌํ๋ง ์์ผ๋ฏ๋ก JSFiddle์ Saveํ๊ณ URL์ ๋งํฌํ๊ฑฐ๋ ZeroPage_200_OK/์์ค ํ์ด์ง์ ์ฌ๋ฆฌ์
๋ ๋ฉ๋๋ค.
- ์์ ๋งํฌํ ์ ์ Workspace Project์ index.html ํ์ผ์ ๋ฉ๋ด ์ํ์ ๊ตฌํํด๋์์ต๋๋ค. ์๋จ์ Preview๋ก ํ์ธํ๋ฉด์ ์ ์ ํ ์ฐธ์กฐํด์ ๋ง๋ค๋ฉด ๋์์ด ๋ ๊ฒ๋๋ค.
- ์ ์ง๊ฒฝ - c9.io๋ ํ์ํ ๋ ๋จนํต์ด ๋๋ค์... ์ค์ต ํ
๋ง๊ฐ ์น ๊ฒ์ ์ ์์ด๋ฉด Challengers์ ์ฝํ
์ธ ๋ฅผ ๋ณด๊ฐํ๊ธฐ ์ํด ์ธ๊ณต์ง๋ฅ์ผ๋ก ํ๋ ์ด๊ฐ ์ฉ์ดํ ๊ฒ์์ ๊ธฐํํด์ผ๊ฒ ์ต๋๋ค...ใ
ใ
5.2. 2012๋
7์ 7์ผ - ์ด๋ก ¶
- ๋คํธ์ํฌ์ ์ธํฐ๋ท
- ์๋ ์์ด๋ ์น(WWW)๊ณผ W3C ํ์ค(Recommendation)
- HTTP(HyperText Transfer Protocol) ์๊ฐ
- ๋ณํ์ง
- ์น์ ๋ค์ํ ์ด๋ก ์ ๋ฐฐ๊ฒฝ์ ๋ฐํ์ผ๋ก ํ์ํ๊ณ ๋ฐ์ ํด ์์ต๋๋ค. ์ฐ๋ฆฌ ์คํฐ๋์์๋ ๊ทธ๋ฐ ํตํฉ์ ์ธ ์ง์์ ๋ฐํ์ผ๋ก ์ฌ๋ฌ๋ถ๋ค์๊ฒ ํ์ฌ์ ์น ๊ธฐ์ ์ ๋ํ ์ดํด๋ ๋ฌผ๋ก ์ด๊ณ ์น ์ดํ์ ์๋ก์ด ๊ฒฝํฅ์ ๊ณ ๋ฏผํ๊ณ ์ฐ๊ตฌํ๊ธฐ ์ํด ํ์ํ ๋จ์๋ฅผ ์ ๊ณตํ๋๋ฐ ๋ชฉํ๋ฅผ ๋๊ณ ์์ต๋๋ค. ๋ฌผ๋ก ๊ตณ์ด ๋ชจ๋ฅด๊ณ ์์ด๋ ๋จ์ ์น ๊ฐ๋ฐ์ ํ๋๋ฐ ๋ฌด๋ฆฌ๋ ์์ผ๋, ๊ด๋ จ๋ ๋ฌธ์ ํด๊ฒฐ ๊ณผ์ ์ด๋ ์๋ก์ด ๊ธฐ์ ์ดํด๋ฅผ ์ํด์ ์ค์ํ ๋ฅ๋ ฅ์ด ๋ ์ ์์ต๋๋ค.
- ์ฐ๋ฆฌ ์คํฐ๋์์ ๋ค๋ฃจ๋ ์ด๋ก ์ ํ๋ถ 2~4ํ๋
์ ์ฌ๋ฌ ๊ต๊ณผ๋ฅผ ํฌ๊ดํ ๋ฟ ์๋๋ผ ๊ทธ ๋ฒ์๋ฅผ ์ด์ํ ์ ์์ต๋๋ค. ํ์ง๋ง ์์ผ๋ก๋ ํ๋ถ 1ํ๋
๋ ์ฝ๊ฒ ์ดํดํ ์ ์๋๋ก ๋๋ถ๋ถ์ ์ด๋ก ๊ฐ๋ก ์ ๊ต๊ณผ ์์
์ ๋ฐํ์ผ๋ก ํ์ง ์๊ณ ์ค๋ช
ํ๋ ๋ฐฉํฅ์ผ๋ก ์งํํ๊ฒ ์ต๋๋ค.
5.3. 2012๋
7์ 11์ผ - ์ค์ต ¶
- XHTML๊ณผ CSS ๊ณผ์ ํด์ค
- Form ๊ณ์ด ํ๊ทธ ํ์ฉ
- JavaScript DOM API ์ฒซ์๊ฐ
- form ๊ด๋ จ์ผ๋ก ์ฌ์ฉ์ ์
๋ ฅ์ ๋ฐ์ ์ ์์๋ ๋ถ๋ถ ์ค์ต์ ์ฃผ๋ก ๋ฐฐ์ ์ต๋๋ค. ๊ทผ๋ฐ ๊ถ๊ธํ๊ฒ ๋์ค์ html5 ์๊ธฐ๋ฅผ ํ์๋ฉด์ <a href=""><button>abc</button></a> html5์์๋ ์ด๋ ๊ฒ ์ฌ์ฉํ ์ ์๋๋ฐ ์ด๋ฐ๊ฒ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ธ ์ ์๋ ๊ฒฝ์ฐ์ ๋๋ค๊ณ ํ์
จ๋๋ฐ ๊ทธ๋ผ ์๋ ๋ฒํผ์ onclick๊ฐ์ on~๋ ์๋ฐ์คํฌ๋ฆฝํธ์ธ๊ฑด๊ฐ์? - ์์์ฃผ
5.4. 2012๋
7์ 14์ผ - ์ด๋ก ¶
- ์ด๋ฒ ์ฃผ์ ๋ ํ์ง์ดํํํ
์ฌ๋ฌ๋ฒ ๋ค์๋ ๋ด์ฉ์ด์๋ค์. ํ์คํ ์ฌ๋ฌ๋ฒ ๋ค์ผ๋๊น ๋ฌด์จ ์ด์ผ๊ธฐ๋ฅผ ํ๋์ง ์กฐ๊ธ ๋ ๋น ๋ฅด๊ฒ ์ดํดํ ์ ์์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ง๋๋ฒ ๋ค์ ๋์๋ ๊ถ๊ธํ๊ฒ ์๊ฐ ์ ๋ฌ์๋๋ฐ ์ด๋ฒ์ ๊ถ๊ธํ๊ฒ ์๊ธฐ๋๊ตฐ์. ๋ญ์ง -ใ
-;; ใ
ใ
๋ค๋ง ๋ค์์ฃผ์ ํ ์๋ฒ์ง ํ์์ด๋ผ ์ฐธ์ฌ๋ฅผ ๋ชป ํ๊ฒ ๋์ด์ ์ข ์์ฌ์ธ ๋ฟ.. -_-a ๊ทธ๋ฆฌ๊ณ ๊ณต๋ชจ์ ๊ณผ ๊ด๋ จํด์ ๋๋๊ณ ์ด๋ฐ ์ ๋ฐ ์ด์ผ๊ธฐ๊ฐ ๋ง์ด ๋์์๋๋ฐ, ์ ์งํ๋์ด ์ฐ๋ฆฌ ์ ํ๊ณ ์์ด์~ ๋ผ๋ ๋ชจ์ต์ ๋ณด์ฌ์คฌ์ผ๋ฉด ํ๋ค์ - ๊ถ์์
- https๋ ์ ๋ง ์ด๋ ค์ด ์ฃผ์ ๊ฐ๋ค์. ์ผ๋จ ์ดํด ๋๊ณ ๋๋ฉด ์ฌ์ด๋ฐ ๋ญ๊ฐ ์ด๊ฒ ์ ๊ฒ ์ฝํ์๋ ๋๋์ด๋ค์. ๋ฐ์ง๊ณ ๋ณด๋ฉด ๋ ์ด์ด ํ๋ ์ถ๊ฐ๋์์ ๋ฟ์ธ๋ฐ ๋์ด๋๋ ๊ธ ์์น. ์ธ์
์ด๋ ์ฟ ํค๊ฐ์๊ฒฝ์ฐ์๋ ๋์ค๊ฒ ๋ ๋ฐฐ๊ฒฝ์ ์๊ฒ๋์ด์ ํ์คํ๊ฒ ์ดํดํ๊ณ ๊ฐ๋ ๋๋์ด๋ค์. - ์ํ์ค
- ๊ฐ์ธ์ ์ผ๋ก ์ด๋์ ๋ ๋ง์ด ๋ฃ๊ธฐ๋ง ํ ์ฉ์ด๋ค(์ฟ ํค, HTTPS ๊ธฐํ ๋ฑ๋ฑ)์ ๋ํด์ ์์ธํ๊ฒ ๋ค์ ์ ์์ด์ ์ข์์ต๋๋ค. ๋ณด์ ๊ด๋ จ์ ์์ ๋ฐ๋ธ์ค ๋๋ ์ ๊น ๋ค์ ๊ธฐํ๊ฐ ์์๋๋ฐ, ๊ทธ ๋๋ ์ ์ดํด๋ฅผ ๋ชป ํ์๋๋ฐ ๋ฐ๋ณตํด์ ๋ค์ด์ ๊ทธ๋ฐ์ง ์ด๋ฒ์๋ ์ดํด๊ฐ ์ ๋์ต๋๋ค. ๋ค์์ผ๋ก๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ฌธ๋ฒ์ ๋ํด์ ๋ค๋ฃจ์ ๋ค๊ณ ํ์
จ๋๋ฐ ์ด๋ค ๋ฐฉํฅ์ผ๋ก ๋๊ฐ์ง ๊ถ๊ธํ๋ค์ - ์๋ฏผ๊ด
5.5. 2012๋
7์ 21์ผ - ์ด๋ก ¶
- ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ธฐ์ด์ ์ธ ๋ถ๋ถ์ด์๋๋ฐ ์ ๋ชฐ๋๋ ๊ตฌ์กฐ์ ๋ํด์ ์๊ฒ ๋์ด ์ข์์ต๋๋ค. ์คํ ์ปจํ
์คํธ๋ ํนํ ์ ์์๋๊ณ ๊ฐ ํ์๊ฐ ์๋ค๋ ์๊ฐ์ด ๋ค์์ต๋๋ค. - ์ํ์ค
- ์๋ฐ์คํฌ๋ฆฝํธ์์ ์์ฃผ this ์๊ธฐ๊ฐ ๋์ค๋๋ฐ, ์ด๋ฒ์ ์ด์ผ๊ธฐ๋ฅผ ๋ค์ ์ ์์ด์ ์ข์์ต๋๋ค. ๊ฐ์ธ์ ์ธ ๋๋์ ๋งํ์๋ฉด ํจ์๊ฐ ๋ฐ์ดํฐ๋ก ์ทจ๊ธ๋๋๋ฐ ํจ์ ๋ด๋ถ์์ ํจ์๋ฅผ ํธ์ถํ ๊ฐ์ฒด(execution context)์ ์ ๋ณด๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์ this๋ฅผ ์ฌ์ฉํ๋ค๋ ๋๋์ด๋๋ฐ ๋ง๋์ง ๋ชจ๋ฅด๊ฒ ๊ตฐ์. p.print๋ฅผ ๋๊ธฐ๋ ๊ฒ๋ ์ค์ ๋ก class p์ ์๋ ํจ์๋ฅผ ๋๊ธฐ๋ ๊ฒ ์๋๋ผ p.print์ ๋ฐ์ธ๋ฉ ๋ ์ด๋ค ํจ์๋ฅผ ๋๊ธฐ๋ ๊ฒ์ด๋๊น ๋ด๋ถ์ this๊ฐ ๊ธฐ์กด OOP์ ๊ฐ์ด ํด๋น class์ ์ธ์คํด์ค๋ ๋ ์ ์๊ฒ ์ฃ . ๊ทธ๋ฆฌ๊ณ ์ ์ผ ๋ง์์ ๋ค์๋ ๊ฒ์ ์ญ์ ์์ ์ ํ๋ ์คํฐ๋์์ ๋ค๋ค๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ๋ค ๊ฐ์ง ํน์ง์ ๋ํด์ ๋ค์ ์ ์์๋ค๋ ์ ์ด์์ต๋๋ค. ์ฌ์ค ์์ ์คํฐ๋ ๋ ๋ฌด์ฒ ๋ฃ๊ณ ์ถ์๋๋ฐ ๊ฐ์ธ์ ์ธ ์ฌ์ ์ผ๋ก ์ฐธ๊ฐ๋ฅผ ํ ์ ์์ด์ ๊ฝค ์์ฌ์ ๋ ํฐ๋ผ ;;; ๋ง์ง๋ง์๋ ๊ฐ์ธ์ ์ธ ์ฌ์ ์ผ๋ก ์๊ฐ์ด ์ ๋ง์์ ์ข ๊ธํ๊ฒ ๋๊ฐ๋๋ฐ, ๊ทธ๋๋ ์ต๋ํ ๋ค์ ์ ์๋ ๋ฐ๊น์ง ๋ฃ๊ธฐ๋ฅผ ์ ํ ๊ฒ ๊ฐ์ ๋๋์ด ๋ค์์ต๋๋ค. - ์๋ฏผ๊ด
- ์๋ฐ์คํฌ๋ฆฝํธ์ ์ธ์ด ํน์ฑ์ ๋ฐ๋ผ์ ๋ฐฐ์ฐ๊ณ ๊ธฐ๋ณธ์ ์ธ ์ฌ์ฉ ๋ฌธ๋ฒ์ ๋ํด์ ๋ฐฐ์ ์ต๋๋ค. ๋ช
๋ นํ ๊ตฌ์กฐ์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์ธ ๋ถ๋ถ์ ๋ํด์๋ ๊ทธ๋ ๊ฒ ์ด๋ ค์ด๊ฑด ์์๋๋ฐ ๊ทธ ๋ค์ ํจ์ํ ์ ์ธ์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ๋ถ๋ถ์์ ํด๋ก์ ๋ ํจ์์ ํจ์๋ฅผ ์ธ์๋ก ์ฃผ๋ ๋ถ๋ถ์ด ๊ฐ์ด ์ฐ์ด๋๊น ์ข ๋ณต์กํ์์ต๋๋ค. ์กฐ๊ธ ๋ ๊ณต๋ถํด์ผ ํ ๊ฒ ๊ฐ์ต๋๋ค. var Person = function(){}; ๊ฐ์ ๋ถ๋ถ๋ this๊ฐ new๋ฅผ ํ์ ๋์๋ง ์ ๋๋ก ๋์ํ๋ค๋ ๋ถ๋ถ๋ ํน์ดํ์ต๋๋ค. ๋ฌธ๋ฒ์ ์ธ ๋ถ๋ถ ์์ฒด๋ ๊ทธ๋ ๊ฒ ์ด๋ ค์ด ๊ฒ ๊ฐ์ง ์์๋ฐ ํจ์๋ฅผ ์ค์ฒฉํด์ ์ฐ๊ฑฐ๋ ๊ทธ๋ฐ ๋ถ๋ถ์ด ์ฝ๊ฐ ์์๋ณด๊ธฐ ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. - ์์์ฃผ
5.6. 2012๋
7์ 25์ผ - ์ค์ต ¶
- ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์์ ๋ณด์ฌ์ค์ผ ํ๋ ๊ฒฝ์ฐ์ ์ฑ๊ธ์ค๋ ๋๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์๊ธฐ๋ ๋ฌธ์ ์ ์ ๋ํด์ ๋ฐฐ์ฐ๊ณ ์ด๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ ๋ฐฐ์ ์ต๋๋ค. ์ฒ์์๋ iframe์ ์ด์ฉํ ์ฒ๋ฆฌ๋ฅผ ๋ฐฐ์ ๋๋ฐ iframe ๋ด๋ถ๋ ๋
๋ฆฝ์ ์ธ ํ์ด์ง์ด๊ธฐ ๋๋ฌธ์ ๋ฐ๊นฅ์ ๋ ๋๋ง์ ์ํฅ์ ์์ฃผ์ง๋ง ํ์ด์ง๋ฅผ ์ด๋ํ๋ ์๋ฆฌ๊ฐ ๋๊ณ , iframe์ด ์๋ฒ์ธก์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ ๋ ๋๋ง ํด์ค ๋ ์๋ฒ์ธก์ ์คํฌ๋ฆฝํธ๊ฐ ์คํ๋๋ ๋ฌธ์ ์ ๋ฑ์ด ์์์ ์์์ต๋๋ค. ์ด๋ฅผ ๋์ฒดํ๊ธฐ ์ํด ajax๋ฅผ ์ฌ์ฉํ๋๋ฐ ajax๋ ๋ ๋๋ง์ ํ์ง ์๊ณ ์์ฒญ ์ค๋ ๋๋ง ์์ฑํด์ ์ฒ๋ฆฌ๋ฅผ ํ๋ ๋ฐฉ์์ธ๋ฐ xmlHttpRequest๋ ActiveXObject๊ฐ์ ๋ด์ฅ๊ฐ์ฒด๋ฅผ ์จ์ ์์ฒญ ์ค๋ ๋๋ฅผ ์์ฑํ๋ค๋๊ฑธ ๋ฐฐ์ ์ต๋๋ค. ajax๋ผ๊ณ ๋ง์ ๋ง์ด ๋ค์๋๋ฐ ๊ตฌ์ฒด์ ์ผ๋ก ์ด๋ค ํจ์๋ ์ด๋ค ๊ฐ์ฒด๋ฅผ ์ฐ๋ฉด ajax์ธ๊ฑด๊ฐ๋ ์ ๋ชฐ๋์๋๋ฐ ์ผ๋ฐ์ ์ผ๋ก ๋น๋๊ธฐ ์ฒ๋ฆฌ๋ฅผ ํ๋๊ฑฐ๋ฉด ajax๋ผ๊ณ ๋งํ ์ ์๋ค๊ณ ํ์
จ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ค๊ฐ์ body.innerHTML์ ์ง์ ์์ ํ๋ ๋ถ๋ถ์์ ๋ฌธ์ ๊ฐ ์๊ฒผ์๋๋ฐ innerHTML์ ์๋๋ฉด DOM์ด ๋ค์ ๋ง๋ค์ด์ ธ์ ํธ๋ค๋ฌ๊ฐ ์ ๋ถ ๋ค ์ฌ๋ผ์ง๋ค๋ ๊ฒ๋ ๊ธฐ์ต์ ํด๋ฌ์ผ๊ฒ ์ต๋๋ค. - ์์์ฃผ
5.7. 2012๋
7์ 28์ผ - ์ด๋ก ¶
5.8. 2012๋
8์ 1์ผ - ์ค์ต ¶
- ๋น๋๊ธฐ HTTP Request ๋ณต์ต.
- JSON
- ์๋ฐ์คํฌ๋ฆฝํธ์์ ๊ฐ์ฒด๋ฅผ ํํํ๊ธฐ ์ํ ํ๊ธฐ๋ฒ.
- ์๊ธฐ์์ ์ ๋ ํผ๋ฐ์ค(์ฌ์ดํด๋ฆญ ๋ ํผ๋ฐ์ค), ์ปค์คํ
์ค๋ธ์ ํธ(ํจ์ or ๊ฐ์ฒด) ๋ฑ์ ์ง๋ ฌํ๊ฐ ์ด๋ ต๊ธฐ ๋๋ฌธ์ ๋์์ ๋ค์ด๊ฐ์ง ์๋๋ค.
- JSON.stringify() ๋ฉ์๋์ JSON.parse() ๋ฉ์๋๋ฅผ ์ด์ฉํด์ JSON์ Serialization <-> Deserialization์ด ๊ฐ๋ฅํ๋ค.
- jQuery
- Builder Pattern์ ์ผ์ข
์ผ๋ก jQuery์ ๋ฉ์๋๋ฅผ ์คํํ ์ดํ์ jQuery ๋ฐฐ์ด ๊ฐ์ฒด๋ฅผ ๋ฐํํจ์ผ๋ก์จ ํจ์์ chainning์ ํด์ ์ฌ์ฉํ ์ ์๋ค.
- DOM ๊ฐ์ฒด๋ฅผ wrapping ํ ๊ฒ์ผ๋ก CSS selector ๋ฌธ๋ฒ์ผ๋ก DOM์์ Element๋ฅผ ์ฐพ์ ์ฌ ์ ์๋ค.
- Element๋ฅผ ์ฐพ์ ๋ CSS ๋ฌธ๋ฒ์ ์ด์ฉํ์ฌ ์์
์ ํ ์๋ ์๊ณ jQuery์ ๋ฉ์๋๋ฅผ ์ด์ฉํด์ ์์
์ ํ ์๋ ์๋๋ฐ, ๋ณต์กํ ๋์์ ํ ๋ฒ๋ง ์ฐพ์์ ์์
์ ํ ๊ฒฝ์ฐ์๋ CSS ๋ฌธ๋ฒ์ ์ด์ฉํ๋ ๊ฒ์ด ์ข๊ณ , ์ฐพ์ ๋์์์ ์ฌ๋ฌ ์์
์ ํ ๊ฒฝ์ฐ์๋ jQuery ํจ์๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ํด๋น Element๋ฅผ ๋ณ์์ ์ ์ฅํด ๋์๋ค๊ฐ ์ฌ์ฉํ๋ ๊ฒ์ด ์ฑ๋ฅ ๋ฉด์์ ์ข๋ค.
- ๋์ Element๋ฅผ ์ฐพ๋ ๋ชป ์ฐพ์ ํญ์ ๋ฐฐ์ด์ ๋ฐํํ๊ธฐ ๋๋ฌธ์ ๋ฐํ ๊ฒฐ๊ณผ์ ์๊ด ์์ด ๋ฐฐ์ด์ ๋ํ ์ฒ๋ฆฌ๋ง ๊ณ ๋ คํ๋ฉด ๋๋ค.
- ์น ์ด๊ธฐ์ css์ค๋ช
ํ์ ๋ css์
๋ ํฐ ๋ฌธ๋ฒ๋ ์ค๋ช
์ ํด์ฃผ์
จ์๋๋ฐ ๋ง์ด ๊น๋จน์ด์ ํท๊ฐ๋ ธ์์ต๋๋ค.
์ญ์ ํ ๋ ๋ฒ ๋ณธ๊ฑธ๋ก๋ ๊ธ๋ฐฉ ์์ด๋ฒ๋ฆฌ๊ธฐ ์ฌ์ด ๊ฒ ๊ฐ์ต๋๋ค. jQueryํจ์์ ๋๋ถ๋ถ์ ํธ์ถ ํ jQuery๊ฐ์ฒด๋ฅผ ๋ฆฌํดํ๊ธฐ ๋๋ฌธ์ ํจ์์ ์ฒด์ด๋์ด ๊ฐ๋ฅํ๋ค๋ ์๊ธฐ๋ฅผ ํ์
จ์๋๋ฐ ๊ตฌ๊ธ์ guava๋ ๊ทธ๋ ๊ณ ์์ฆ์ ์ด๋ฐ ํํ์ ๊ตฌํ์ด ๋ง์๊ฑด์ง ๊ถ๊ธํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฒฐ๊ณผ ๊ฐ์ ๋ฐ์์ ๊ณ์ํด์ ๋ค๋ฅธ ์์
์ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋๋ผ๋ฉด ์ฒด์ด๋์ด๋ ๊ทธ๋ฅ ํ ๋ฒ์ ๊ณ์ฐํ๋ ๋ฐฉ์์ด๋ ๋ณ ์ฐจ์ด๊ฐ ์๋๊ฑด๊ฐ์? - ์์์ฃผ
5.9. 2012๋
8์ 4์ผ - ์ด๋ก ¶
- JavaScript (prototype/closure)
- Private instance property
- URI encode
- Charset
- ASCII, EUC-KR, CP949, Unicode(UCS), UTF-8
- JavaScript functions
- escape, unescape (deprecated) : encoding ์คํ์ด ์ ํด์ ธ ์์ง ์์์ ๋ธ๋ผ์ฐ์ ๋ง๋ค ๊ตฌํ์ด ๋ค๋ฅผ ์ ์๋ค.
- encodeURI, decodeURI
- encodeURIComponent, decodeURIComponent
- document.cookie
- Browser Object Model : ์๋ฐ์คํฌ๋ฆฝํธ๋ก Browser์ ์ํธ์์ฉํ๊ธฐ ์ํด ์ ๊ณต๋๋ API๋ค์ ์งํฉ. ๊ณต์์ ์ธ ํ์ค์ ์กด์ฌํ์ง ์์์ ์กฐ๊ธ์ฉ ๋ค๋ฅผ ์ ์๋ค.
- window.history
- window.location
- window.navigator
5.10. 2012๋
8์ 15์ผ - ์ค์ต ¶
- jQueryUI
- $(document).ready() - ์ฒ์์ ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ํด์ํ ๋ ํด๋น ๊ฐ์ฒด๊ฐ ์์ ์ ์๊ธฐ ๋๋ฌธ์ DOM ๊ฐ์ฒด๊ฐ ์์ฑ๋๊ณ ๋์ jQuery ์ฝ๋๊ฐ ์คํ๋๋๋ก ์ฝ๋๋ฅผ ready() ์์ ๋ฃ์ด์ฃผ์ด์ผ ํ๋ค.
- setter, getter - ๊ฐ์ ํจ์๊ฐ set์ฉ ์ธ์๊ฐ ๋ค์ด์์ ๊ฒฝ์ฐ์๋ setter๋ก, ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ์๋ getter๋ก ์คํ๋๋ค.
- ์ด๋ฒคํธ ๋ฉ์๋ - ์ด๋ฒคํธ ๋ฉ์๋์ ํจ์๋ฅผ ์ธ์๋ก ์ฃผ์ง ์๊ณ ์คํ์ํค๋ฉด ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํค๋ ๊ฒ์ด๊ณ , ํจ์ ์ธ์๋ฅผ ์ฃผ๊ณ ์คํ์ํค๋ฉด ์ด๋ฒคํธ ํธ๋ค๋ฌ์ ํด๋น ํจ์๋ฅผ ๋ฑ๋กํ๋ค. (ex. $(".add_card").click() / $(".add_card").click(function() { ... }))
- data() ๋ฉ์๋ - ์ด๋ฒคํธ ํธ๋ค๋ฌ์ ํด๋ก์ ๋ฅผ ์ฐ๋ฉด ํธ๋ค๋ฌ๊ฐ ๋ฑ๋ก๋์์ ์์ ๊ณผ ํธ๋ค๋ฌ๊ฐ ํธ์ถ๋์์ ์์ ์ ๋ณ์ ๊ฐ์ด ๋ค๋ฅผ ์๊ฐ ์๋ค. ํด๋ก์ ๋ฅผ ์ฐ์ง ์๊ธฐ ์ํด์๋ .data()๋ฅผ ์ด์ฉํ๋ฉด ํด๋น data๊ฐ key/value ํํ๋ก DOMํธ๋ฆฌ์ ๋ฑ๋ก๋๋ค.
- append(), appendTo() - jQuery์๋ ๊ฐ์ ๊ธฐ๋ฅ์ ํจ์์ธ๋ฐ ์ฒด์ด๋์ ์ฝ๊ฒ ํ๊ธฐ ์ํด์ caller์ parameter๊ฐ ๋ค๋ฐ๋ ํจ์๋ค์ด ์๋ค. (ex. A.append(B) == B.appendTo(A))
- live() - ์ฒ์์ ready() ๋์ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ๊ฑธ์ด์ฃผ๋ ์์ผ๋ก ์ฝ๋๋ฅผ ์งฐ์ ๊ฒฝ์ฐ ์ค๊ฐ์ ์์ฑํ ๊ฐ์ฒด์๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ๊ฑธ๋ ค์์ง ์๋ค. ํ์ง๋ง ready()์์ live() ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ๊ฑธ ๊ฒฝ์ฐ ๋งค ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๋๋ง๋ค ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ๊ฑธ๋ ค์ผ ํ ๊ฐ์ฒด๋ฅผ ์ฐพ์์ ์์ผ๋ฉด ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์์์ ๊ฑธ์ด์ค๋ค. ํ์ง๋ง ์ฒ์์ ํธ๋ค๋ฌ๋ฅผ ๊ฑธ์ด์ฃผ๋ ๊ฒ๊ณผ ๋น๊ตํด์ ๋น์ฉ์ด ๋ค์ ๋น์ธ๋ค.
- Trello ๋ง๋ค๊ธฐ
- sortable(), appendTo(), data(), focus(), blur(), clone() ๋ฑ์ jQuery API๋ฅผ ์ฌ์ฉ.
5.11. 2012๋
8์ 18์ผ ํ ์์ผ ¶
- Load web page faster!!!
- CSS -> HTML -> JavaScript ์์๋ก html์ ์์ฑํ๋ค. - CSS๊ฐ ๋ค์ ์์ผ๋ฉด HTML ๋ ๋๋ง์ ํ ํ์ CSS๊ฐ ์ ์ฉ๋๋ค. JavaScript๊ฐ ์์ ์์ผ๋ฉด JavaScript๊ฐ ๋ค ๋ฐ์์ง๊ณ ๋์ ๋ท๋ถ๋ถ์ด ์คํ๋๊ธฐ ๋๋ฌธ์ ์๋์ ๋ฌธ์ ๊ฐ ์์ ์ ์๋ค.
- JavaScript๊ฐ ๋ค์ ์์ผ๋ฉด ์ด๋ฒคํธ๊ฐ ๋ฆ๊ฒ ๊ฑธ๋ฆฌ๊ฒ ๋๋ค. -> Command Queue ํจํด ์ฌ์ฉ.
- Script์ ์์ฒญ - import์ ๋ํ ์์ฒญ์ ๋ณ๋ ฌ์ ์ผ๋ก ์ด๋ฃจ์ด์ง์ง๋ง ๋ค์ชฝ์ ์์ฒญ์ด ๋จผ์ ์ฒ๋ฆฌ๋๋๋ผ๋ ์์ชฝ ์์ฒญ์ด ์ฒ๋ฆฌ๋๊ธฐ ์ ๊น์ง๋ ๋๊ธฐํด์ผ ํ๋ค.