์ด ๊ธฐ์ฌ์์๋ ์ ๊ฐ ์๊ฐํ๊ณ ์ ๋ง ์ฆ๊ฒผ๋ ๋ฌด๋ฃ JavaScript/ํ๋ก ํธ์๋ ๊ณผ์ ์ธ Rolling Scopes School์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์ถ์ต๋๋ค. ์ฐ์ฐํ ์ด ๊ฐ์ข๋ฅผ ์๊ฒ ๋์๋๋ฐ, ์ ์๊ฐ์๋ ์ธํฐ๋ท์ ์ด์ ๋ํ ์ ๋ณด๊ฐ ๊ฑฐ์ ์์ง๋ง ๊ฐ์ข๋ ํ๋ฅญํ๊ณ ์ฃผ๋ชฉํ ๋งํฉ๋๋ค. ์ด ๊ธ์ ํ๋ก๊ทธ๋๋ฐ์ ์ค์ค๋ก ๋ฐฐ์ฐ๋ ค๋ ๋ถ๋ค์๊ฒ ๋์์ด ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ์ด์จ๋ , ๋๊ตฐ๊ฐ๊ฐ ์ด ๊ฐ์ข์ ๋ํด ๋ ์ผ์ฐ ๋์๊ฒ ๋งํด์ฃผ์๋ค๋ฉด ๋๋ ๋ถ๋ช
ํ ๊ฐ์ฌํ์ ๊ฒ์
๋๋ค.
์ค์ค๋ก ์ฒ์๋ถํฐ ๋ฐฐ์ฐ๋ ค๊ณ ๋
ธ๋ ฅํ์ง ์์ ์ฌ๋๋ค์ ์ง๋ฌธ์ด ์์ ์ ์์ต๋๋ค. ์ธํฐ๋ท์ ๋ง์ ์ ๋ณด๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ฝ์ค๊ฐ ํ์ํ ์ด์ ๋ ๋ฌด์์
๋๊น? ๊ฐ์ ธ๊ฐ์ ๋ฐฐ์ฐ์ญ์์ค. ์ฌ์ค, ์ ๋ณด์ ๋ฐ๋ค๊ฐ ํญ์ ์ข์ ๊ฒ์ ์๋๋๋ค. ์๋ํ๋ฉด ์ด ๋ฐ๋ค์์ ํ์ํ ๊ฒ์ ์ ํํ ์ ํํ๋ ๊ฒ์ด ์ ํ ์ฝ์ง ์๊ธฐ ๋๋ฌธ์
๋๋ค. ์ด ๊ณผ์ ์์๋ ๋ฌด์์ ๋ฐฐ์ธ์ง, ์ด๋ป๊ฒ ๋ฐฐ์ธ์ง, ์ด๋ค ์๋๋ก ๋ฐฐ์ธ์ง ์๋ ค์ค ๊ฒ์
๋๋ค. ํ๋ฅญํ๊ณ ์ฃผ๋ชฉํ ๋งํ ์ ๋ณด ์์ค์ ํ์ง์ด ๋ฎ๊ณ ์ค๋๋ ์ ๋ณด ์์ค๋ฅผ ๊ตฌ๋ณํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ๋ง์ ์ค์ฉ์ ์ธ ๊ณผ์ ๋ฅผ ์ ๊ณตํ ๊ฒ์
๋๋ค. ๋น์ ๊ณผ ๊ฐ์ ์ผ์ ํ๋ ์ด์ ์ ์ด๊ณ ๊ด์ฌ ์๋ ์ฌ๋๋ค๋ก ๊ตฌ์ฑ๋ ์ปค๋ฎค๋ํฐ์ ์ผ์์ด ๋ ์ ์์ต๋๋ค.
๊ณผ์ ์ ๋ฐ์ ๊ฑธ์ณ ์ฐ๋ฆฌ๋ ์ง์์ ์ผ๋ก ์์ ์ ์๋ฃํ์ต๋๋ค. ํ ์คํธ๋ฅผ ๋ฐ๊ณ , ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ , ์์ฒด ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์์ต๋๋ค. ์ด ๋ชจ๋ ๊ฒ์ด ํ๊ฐ๋์ด ๊ณตํต ํ ์ด๋ธ์ ์ ๋ ฅ๋์์ผ๋ฉฐ, ์ฌ๊ธฐ์ ๊ทํ์ ๊ฒฐ๊ณผ๋ฅผ ๋ค๋ฅธ ํ์๋ค์ ๊ฒฐ๊ณผ์ ๋น๊ตํ ์ ์์ต๋๋ค. ๊ฒฝ์ ๋ถ์๊ธฐ๋ ์ข๊ณ , ์ฌ๋ฏธ์๊ณ , ํฅ๋ฏธ๋กญ์ต๋๋ค. ํ์ง๋ง ํฌ์ธํธ๋ ๋ค์ ๋จ๊ณ๋ก ๋์ด๊ฐ๋ ๋ฐ ์ค์ํ์ง๋ง ๊ทธ ์์ฒด๊ฐ ๋์ด ์๋์์ต๋๋ค. ์ฝ์ค ์ฃผ์ต์๋ ์ง์๊ณผ ์ํธ ์ง์์ ํ์ํ์ต๋๋ค. ์ฑํ ์์ ํ์๋ค์ ๊ณผ์ ๋ฅผ ํด๊ฒฐํ๋ฉด์ ๋ฐ์ํ ์ง๋ฌธ์ ๋ํด ํ ๋ก ํ๊ณ ํจ๊ป ๋ต์ ์ฐพ์ผ๋ ค๊ณ ๋ ธ๋ ฅํ์ต๋๋ค. ๋ํ, ๋ฉํ ๋ค์ ์ฐ๋ฆฌ๊ฐ ๊ณต๋ถํ๋ ๋ฐ ๋์์ ์ฃผ์๋๋ฐ, ์ด๋ ๋ฌด๋ฃ ๊ฐ์ข๋ฅผ ์๊ฐํ ์ ์๋ ๋ ํนํ ๊ธฐํ์ ๋๋ค.
์ด ๊ณผ์ ์ ๊ฑฐ์ ์ง์์ ์ผ๋ก ์ด์๋ฉ๋๋ค. 1๋ ์ ๋ ๋ฒ ์์๋์ด 6๊ฐ์ ๋์ ์งํ๋ฉ๋๋ค. ์ธ ๋จ๊ณ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์ฒซ ๋ฒ์งธ ๋จ๊ณ์์๋ ์ฃผ๋ก Git๊ณผ ๋ ์ด์์์ ๊ณต๋ถํ๊ณ , ๋ ๋ฒ์งธ ๋จ๊ณ์์๋ JavaScript, ์ธ ๋ฒ์งธ ๋จ๊ณ์์๋ React์ Node.js๋ฅผ ๊ณต๋ถํ์ต๋๋ค.
์ด์ ๋จ๊ณ์ ๊ณผ์ ๋ฅผ ์๋ฃํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ์ผ๋ก ๋ค์ ๋จ๊ณ๋ก ๋์๊ฐ์ต๋๋ค. ๊ฐ ๋จ๊ณ๊ฐ ๋๋ ๋๋ง๋ค ์ธํฐ๋ทฐ๊ฐ ์งํ๋์์ต๋๋ค. 1๋จ๊ณ์ 2๋จ๊ณ ์ดํ์๋ ๋ฉํ ์์ ๊ต์ก ์ธํฐ๋ทฐ๊ฐ ์ด๋ฃจ์ด์ก๊ณ , 3๋จ๊ณ ์ดํ์๋ ๋ฏผ์คํฌ EPAM JS Lab์ ์ฐ์ ํ์ 120๋ช ์ ๋์์ผ๋ก ์ธํฐ๋ทฐ๊ฐ ์งํ๋๋ค. ์ด ๊ณผ์ ์ ๋ฒจ๋ก๋ฃจ์์ ํ๋ฐํธ ์๋ ๋ฐ JavaScript ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ์ธ The Rolling Scopes์์ ์งํํ๋ฏ๋ก ์ด๋ค์ด EPAM Minsk ์ฌ๋ฌด์ค๊ณผ ์ ์ดํ๊ณ ์๋ ๊ฒ์ด ๋ถ๋ช ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ปค๋ฎค๋ํฐ์์๋ ๋ฒจ๋ผ๋ฃจ์ค, ์นด์ํ์คํ, ๋ฌ์์์ IT ํ์ฌ์ ๋ค๋ฅธ ๋์์ ํ์๋ค์ ์ถ์ฒํ๊ณ ์ฐ๋ฝ์ฒ๋ฅผ ๊ตฌ์ถํ๋ ค๊ณ ๋ ธ๋ ฅํ๊ณ ์์ต๋๋ค.
์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ํ ๋ฌ ์กฐ๊ธ ๋๊ฒ ์ง์๋์์ต๋๋ค. ๊ฐ์ฅ ์ธ๊ธฐ๊ฐ ๋ง์ ๋ฌด๋์ ๋๋ค. ๋ด ์ฑ์ฉ์์๋ 1860๋ช ์ด ์์ํ์ต๋๋ค. ๊ฐ์ข์ ๋ฑ๋กํ์ ๋ชจ๋ ๋ถ๋ค. ์ด ๊ณผ์ ์ ๋ชจ๋ ์ฐ๋ น์ธต์ ์ฌ๋๋ค์ด ์๊ฐํ์ง๋ง ๋๋ถ๋ถ์ ํ์๋ค์ ๊ณ ํ๋ ํ์์ด๊ฑฐ๋ ๋ค๋ฅธ ๋ถ์ผ์์ ๋ช ๋ ๋์ ์ผํ ํ ์ง์ ์ ๋ฐ๊พธ๊ธฐ๋ก ๊ฒฐ์ ํ ์ฌ๋๋ค์ ๋๋ค.
์ฒซ ๋ฒ์งธ ๋จ๊ณ์์๋ Git ๊ธฐ์ด์ ๋ํ ๋ ๊ฐ์ง ํ ์คํธ, HTML/CSS, Codecademy ๋ฐ HTML Academy ๊ณผ์ ์ ๋ํ ๋ ๊ฐ์ง ํ ์คํธ๋ฅผ ํต๊ณผํ์ผ๋ฉฐ ๋งํฌ๋ค์ด ํ์ผ ํ์๊ณผ ์ผ๋ฐ ์น ํ์ด์ง ํ์์ผ๋ก ์ด๋ ฅ์๋ฅผ ์์ฑํ์ต๋๋ค. ์์ ํ ํ์ด์ง ๋ ์ด์์์ผ๋ก JavaScript๋ฅผ ํตํด ๋ค์ ๋ณต์กํ ์ฌ๋ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
์ฒซ ๋ฒ์งธ ๋จ๊ณ์ ๊ฐ์ฅ ๊ด๋ฒ์ํ ์์
์ Hexal ์น์ฌ์ดํธ์ ๋ ์ด์์์ด์์ต๋๋ค.
๊ฐ์ฅ ํฅ๋ฏธ๋ก์ด ๊ฒ์ CSS ์ ํ๊ธฐ "CSS Quick Draw"์ ๋ํ ์ง์์ ๋ฐํ์ผ๋ก ํ ๊ฒ์ Code Jam์
๋๋ค.
๊ฐ์ฅ ์ด๋ ค์ด ๊ฒ์ JavaScript ์์
์
๋๋ค. ๋ค์ ์์
์ค ํ๋์ ์: โ์ง์ ๋ ์ ์ฒด๊ณ์์ ํฐ ์์ ๊ณ์น ๋์ 0์ ๊ฐ์๋ฅผ ์ฐพ์๋ณด์ธ์โ.
์ฒซ ๋ฒ์งธ ๋จ๊ณ ์์
์ ์:
833๋จ๊ณ ๊ณผ์ ์๋ฃ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ์ผ๋ก 150๋ช ์ ํ์๋ค์ด ๋ฉด์ ์ด์ฒญ์ ๋ฐ์์ต๋๋ค. ์ธํฐ๋ทฐ ์ค ํ์์ ๋ ๋ฒ์งธ ๋จ๊ณ ํต๊ณผ ์ฌ๋ถ๋ ๋ฏธ๋ ๋ฉํ ์ ์ํด ๊ฒฐ์ ๋์์ต๋๋ค. Rolling Scopes School ๋ฉํ ๋ ๋ฒจ๋ก๋ฃจ์, ๋ฌ์์, ์ฐํฌ๋ผ์ด๋์์ ํ๋ฐํ๊ฒ ํ๋ํ๋ ๊ฐ๋ฐ์์ ๋๋ค. ๋ฉํ ๋ ๋์๊ณผ ์กฐ์ธ์ ์ ๊ณตํ๊ณ , ๊ณผ์ ๋ฅผ ํ์ธํ๊ณ , ์ง๋ฌธ์ ๋ต๋ณํฉ๋๋ค. ์ฐ๋ฆฌ ์ธํธ์๋ XNUMX๋ช ์ด์์ ๋ฉํ ๊ฐ ์์์ต๋๋ค. ๋ฉํ ๋ ์์ ์๊ฐ์ ๊ฐ์ฉ์ฑ์ ๋ฐ๋ผ XNUMX๋ช ์์ XNUMX๋ช ๊น์ง ํ์์ ๋ฐ๋ ค๊ฐ ์ ์์ง๋ง ์ธํฐ๋ทฐ ์ค์ ๋ฉํ ๊ฐ ๋๊ตฌ์ ํจ๊ป ํ ์ฌ๋์ ์ ํํ ์ ์๋๋ก ์ธํฐ๋ทฐ๋ฅผ ์ํด ๋ ๋ช ์ ํ์์ ๋ ๋ณด๋ ๋๋ค. ๊ทธ๋ ์ผํ ๊ฒ์ด๋ค.
ํ์๊ณผ ๋ฉํ ์ ๋ฐฐ์น๋ ์ฝ์ค์์ ๊ฐ์ฅ ํฅ๋ฏธ๋กญ๊ณ ํฅ๋ฏธ์ง์งํ ์๊ฐ ์ค ํ๋์์ต๋๋ค. ์ฃผ์ต์๋ ์ฌ๊ธฐ์ ์์ ๊ฒ์ ์์๋ฅผ ๋์ ํ์ต๋๋ค. ๋ฉํ ์ ๋ํ ๋ฐ์ดํฐ๋ ์ ๋ ฌ ๋ชจ์์ ์ ์ฅ๋์์ผ๋ฉฐ ํด๋ฆญํ๋ฉด ๋ฏธ๋ ๋ฉํ ์ ์ด๋ฆ๊ณผ ์ฐ๋ฝ์ฒ๋ฅผ ๋ณผ ์ ์์ต๋๋ค.
๋ด ๋ฉํ ์ ์ด๋ฆ์ ์๊ณ ๋งํฌ๋์ธ์์ ๊ทธ์ ํ๋กํ์ ๋ณด์์ ๋ ๋๋ ์ ๋ง๋ก ๊ทธ์๊ฒ ๋ค๊ฐ๊ฐ๊ณ ์ถ์๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค. ๊ทธ๋ ๊ฒฝ๋ ฅ์ด ํ๋ถํ ๊ฐ๋ฐ์์ด์ ์ ๋ฐฐ์ด๋ฉฐ, ์๋ ๊ฐ ํด์ธ์์ ๊ทผ๋ฌดํด ์์ต๋๋ค. ๊ทธ๋ฌํ ๋ฉํ ๋ฅผ ๊ฐ๋ ๊ฒ์ ์ ๋ง ํฐ ์ฑ๊ณต์ ๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ์ ์๊ตฌ๋ ๋งค์ฐ ๋์ ๊ฒ ๊ฐ์์ต๋๋ค. ๋์ค์๋ ๋๋ฌด ๋์ ์๊ตฌ ์ฌํญ์ ๋ํด ์ฐฉ๊ฐํ๋ค๋ ๊ฒ์ด ๋ฐํ์ก์ง๋ง ๋น์์๋ ๊ทธ๋ ๊ฒ ์๊ฐํ์ต๋๋ค.
๋ค๊ฐ์ค๋ ๋ฉด์ ์ ๋ํ ์ง๋ฌธ์ด ๋ฏธ๋ฆฌ ๋์์์ด์ ๋ฏธ๋ฆฌ ์ค๋นํ ์ ์์์ด์.
๋น๋์ค๋ก ๋ฐฐ์ฐ๋ OOP
๋ฐ์ดํฐ ๊ตฌ์กฐ์ Big O ํ๊ธฐ๋ฒ์ ์ด ๊ธฐ์ฌ์์ ์ ๋ค๋ฃจ์ด์ง๋๋ค.
๊ฐ์ฅ ํฐ ์๊ตฌ์ฌ์ ์ธํฐ๋ทฐ์ ๋ฐ๋์ ํฌํจ๋ JavaScript ์์
์ผ๋ก ์ธํด ๋ฐ์ํ์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ ๋ ๋ฌธ์ ํด๊ฒฐ์ ์ข์ํ์ง๋ง Google๊ณผ ๋ธ๋ผ์ฐ์ ์ฝ์์ ์ฌ์ฉํ์ฌ ํ๊ณผ ์ข
์ด(๋๋ ๋ฉ๋ชจ์ฅ์ ๋ง์ฐ์ค)๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผ ํ๋ค๋ฉด ๋ชจ๋ ๊ฒ์ด ํจ์ฌ ๋ ์ด๋ ค์์ง๋๋ค.
๋ ์ฌ๋ ๋ชจ๋ ์น์ฌ์ดํธ์์ ์ธํฐ๋ทฐ๋ฅผ ์ค๋นํ๋ ๊ฒ์ด ํธ๋ฆฌํฉ๋๋ค.
์ธํฐ๋ทฐ๊ฐ ์ด๋จ ๊ฒ์ด๋ผ๊ณ ์์ํ๋์? ์๋ง๋ ์ํ๊ด๊ณผ ์์์๊ฐ ์๋ ์ํ์ ๊ฒฝ์ฐ์ผ ๊ฒ์ ๋๋ค. ์ฌ์ค ๊ทธ๊ฒ์ ์ํ์ด ์๋์์ต๋๋ค. ์คํ๋ ค ๊ฐ์ ์ผ์ ํ๊ณ ์๋ ์ด์ ์ ์ธ ๋ ์ฌ๋์ ๋ํ. ์ธํฐ๋ทฐ๋ ๋งค์ฐ ์ฐจ๋ถํ๊ณ ํธ์ํ์ผ๋ฉฐ ์น์ ํ๊ณ ์ง๋ฌธ๋ ๊ทธ๋ฆฌ ์ด๋ ต์ง ์์๊ณ ์์ ๋ ๋งค์ฐ ๊ฐ๋จํ์ผ๋ฉฐ ๋ฉํ ๋ ์ฝ์์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์ ํ ๋ฐ๋ํ์ง ์์๊ณ Google์ ์ดํด๋ณด๋๋ก ํ์ฉํ์ต๋๋ค. ์ง์ฅ์์ Google ์ฌ์ฉ์ ๊ธ์งํฉ๋๋ค').
๋ด๊ฐ ์๋ ํ, ์ธํฐ๋ทฐ์ ์ฃผ์ ๋ชฉ์ ์ ์ฐ๋ฆฌ์ ์ง์๊ณผ ๋ฌธ์ ํด๊ฒฐ ๋ฅ๋ ฅ์ ํ ์คํธํ๋ ๊ฒ์ด ์๋๋ผ ๋ฉํ ์๊ฒ ํ์๋ค์ ์์๊ฐ๊ณ ์ธํฐ๋ทฐ๊ฐ ์ผ๋ฐ์ ์ผ๋ก ์ด๋ค ๋ชจ์ต์ธ์ง ๋ณด์ฌ์ค ์ ์๋ ๊ธฐํ๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ธํฐ๋ทฐ์์ ์ข์ ์ธ์๋ง ๋จ์๋ค๋ ๊ฒ์ ๊ทธ์ ์์์ ์ธ ๋ ธ๋ ฅ์ ๊ฒฐ๊ณผ, ์ธํฐ๋ทฐ์ ์ค์ ๋ก ๋ฌด์์ด ๊ฒ์ด ์์๊ณ ์ฆ๊ฒ๊ฒ ์ง๋ผ ์ ์๋ค๋ ๊ฒ์ ๋ณด์ฌ์ฃผ๊ณ ์ถ์ ๋ง์์ด์๋ค. ๋ ๋ค๋ฅธ ์ง๋ฌธ์ ๊ธฐ์ ๊ต์ก์ ๋ฐ์ ์ฌ๋์ด ์ด ์ผ์ ํ๋ ๊ฒ์ด ๋งค์ฐ ์ฌ์ ์ง๋ง ๊ต์ฌ์๊ฒ๋ ๋งค์ฐ ๋๋ฌผ์๋ ์ด์ ์ ๋๋ค. ๋น๋ก ๋ด์ฉ์ ์๋ฒฝํ๊ฒ ์๊ณ ์์์์๋ ๋ถ๊ตฌํ๊ณ ์ํ์ ์์ํ๊ฒ ๋์ด ์ผ๋ง๋ ๊ธฐ๋ปค๋์ง ๋ชจ๋๊ฐ ๊ธฐ์ตํฉ๋๋ค. ๊ณต์ ๊ต์กํ์ ๊ดํด ์ด์ผ๊ธฐํ๊ณ ์์ผ๋ฏ๋ก ๊ด์ฐฐ ๋ด์ฉ์ ํ ๊ฐ์ง ๋ ๊ณต์ ํ๊ฒ ์ต๋๋ค. ์ด ๊ณผ์ ์๋ ํนํ ์ ๋ฐฐ IT ํ์๋ค์ด ์ฐธ์ํ์ต๋๋ค. ๊ทธ๋์ ๊ทธ๋ค์ Rolling Scopes School์์ ์ ๊ณตํ๋ ๊ต์ก ํ์์ด ์ผ๋ฐ ๋ํ ํ๋ก๊ทธ๋จ๋ณด๋ค ํจ์ฌ ๋ ์ ์ฉํ๊ณ ํฅ๋ฏธ๋กญ๊ณ ํจ๊ณผ์ ์ด๋ผ๊ณ ์ฃผ์ฅํ์ต๋๋ค.
์ ๋ ๋ฉด์ ์ ํฉ๊ฒฉํ์ต๋๋ค. ๊ทธ ํ ๋ฉํ ๋ ๋์ ๋ํํ๊ธฐ ํธ๋ฆฌํ ์์ผ๊ณผ ์๊ฐ์ ์ ํ์ต๋๋ค. ์ด๋ ์ง๋ฌธ์ ์ค๋นํ๋๋ฐ, ๋ต๋ณํด์ฃผ์ จ์ด์. ์ ๋ ์ ๊ฐ ์งํํ๋ ํ๋ก์ ํธ์ ๋ํด ๊ถ๊ธํ ์ ์ด ๋ง์ง ์์์ต๋๋ค. ๋๋ถ๋ถ์ ๋ต๋ณ์ Google์ด๋ ํ๊ต ์ฑํ ์์ ์ฐพ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ ์์ ์ ์์ , ๊ฐ๋ฅํ ๋ฌธ์ ๋ฐ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ๊ด์ฐฐ๊ณผ ์๊ฒฌ์ ๊ณต์ ํ์ต๋๋ค. ์ ๋ฐ์ ์ผ๋ก ์ด๋ฌํ ๋ํ๋ ๋งค์ฐ ์ ์ฉํ๊ณ ํฅ๋ฏธ๋ก์ ์ต๋๋ค. ๋ํ ๋ฉํ ๋ ์ค์ ๋ก ๋น์ ์ด ๋ฌด์์ ์ด๋ป๊ฒ ํ๋์ง์ ๊ด์ฌ์ ๊ฐ๊ณ ๋น์ ์ ์์ ์ ์ดํด๋ณด๊ณ ๋ฌด์์ด ๋ฌธ์ ์ธ์ง, ์ด๋ป๊ฒ ๊ฐ์ ํ ์ ์๋์ง ๋งํด ์ฃผ๋ ์ ์ผํ ์ฌ๋์ ๋๋ค. ๋ฉํ ์ ์กด์ฌ๋ ํ๊ต์ ์ ๋ง ํฐ ์ฅ์ ์ด๋ฉฐ ๊ทธ ์ญํ ์ ์๋ฌด๋ฆฌ ๊ฐ์กฐํด๋ ์ง๋์น์ง ์์ต๋๋ค.
๋ ๋ฒ์งธ ๋จ๊ณ์์๋ ๋งค์ฐ ํฅ๋ฏธ๋กญ๊ณ ์ญ๋์ ์ธ ์ฝ๋ ์ผ "JavaScript Arrays Quick Draw"๊ฐ ์ด๋ ธ์ต๋๋ค. ํ๊ต์์์ ์ด๋ฌํ ๋ํ๋ ํฅ๋ฏธ๋กญ๊ณ ํฅ๋ฏธ๋กญ์ต๋๋ค.
Code Jam "CoreJS"๋ ํจ์ฌ ๋ ๋ณต์กํ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ํด๊ฒฐํ๋ ๋ฐ 120์๊ฐ์ด ๊ฑธ๋ฆฐ 48๊ฐ์ JavaScript ๋ฌธ์ ๊ฐ ์ฌ๊ฐํ ํ
์คํธ๊ฐ ๋์์ต๋๋ค.
๋ํ ๋ช ๊ฐ์ง JavaScript ํ
์คํธ๋ ์งํํ์ต๋๋ค.
๋ค์์ผ๋ก NeutronMail ๋ ์ด์์์ ๊ตฌ์ฑํ๊ณ ์ฝ๋ ์ผ โDOM, DOM ์ด๋ฒคํธโ๋ฅผ ์๋ฃํ๊ณ YouTube ๊ฒ์ ์์ง์ ๋ง๋ค์์ต๋๋ค.
๋ ๋ฒ์งธ ๋จ๊ณ์ ๋ค๋ฅธ ์์ : ์์ : Codewars โ ๋์ผํ ์ด๋ฆ์ ์ฌ์ดํธ์ธ Code Jam "WebSocket Challenge"์ ๋ฌธ์ ํด๊ฒฐ. โ ์น ์์ผ, Code Jam โAnimation Playerโ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฉ์์ง ๋ณด๋ด๊ธฐ ๋ฐ ๋ฐ๊ธฐ โ ์์ ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ง๋ค๊ธฐ.
๋ ๋ฒ์งธ ๋จ๊ณ์ ๋ค์ ํน์ดํ๊ณ ํฅ๋ฏธ๋ก์ด ์์
์ "ํ๋ ์ ํ
์ด์
" ์์
์ด์์ต๋๋ค. ๊ฐ์ฅ ํฐ ํน์ง์ ํ๋ ์ ํ
์ด์
์ ์์ด๋ก ์ค๋นํ๊ณ ๋ฐํํด์ผ ํ๋ค๋ ์ ์
๋๋ค.
๊ทธ๋ฆฌ๊ณ ์์ฌํ ์ฌ์ง ์์ด ๊ฐ์ฅ ๋ณต์กํ๊ณ ๋ฐฉ๋ํ ์์
์ ๋ ๋ฒ์งธ ๋จ๊ณ์ ๋ง์ง๋ง ์์
์ด์์ผ๋ฉฐ, ๊ทธ ๋์ ์ฐ๋ฆฌ๋ Piskel ์น ์ ํ๋ฆฌ์ผ์ด์
(www.piskelapp.com)์ ์์ฒด ๋ณต์ฌ๋ณธ์ ์์ฑํ๋ผ๋ ์์ฒญ์ ๋ฐ์์ต๋๋ค.
์ด ์์
์ ํ ๋ฌ ์ด์์ด ๊ฑธ๋ ธ์ผ๋ฉฐ ๋๋ถ๋ถ์ ์๊ฐ์ ์๋ณธ์์ ์ด๋ป๊ฒ ์๋ํ๋์ง ์ดํดํ๋ ๋ฐ ์๋น๋์์ต๋๋ค. ๊ฐ๊ด์ฑ์ ๋์ด๊ธฐ ์ํด ๋ฌด์์๋ก ์ ํ๋ ๋ค๋ฅธ ๋ฉํ ๊ฐ ์ต์ข
์์
์ ํ์ธํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ 2๋จ๊ณ ์ดํ์ ์ธํฐ๋ทฐ๋ ๋ฌด์์ ๋ฉํ ๊ฐ ์งํํ๋๋ฐ, ์๋ํ๋ฉด ์ฐ๋ฆฌ๋ ์ด๋ฏธ ์ฐ๋ฆฌ์๊ฒ ์ต์ํ๊ณ , ๊ทธ ์ฌ๋๋ ์ฐ๋ฆฌ์๊ฒ ์ต์ํ๊ธฐ ๋๋ฌธ์ด๋ฉฐ, ์ค์ ์ธํฐ๋ทฐ์์๋ ์์น์ ์ผ๋ก ์๋ก ๋ชจ๋ฅด๋ ์ฌ๋๋ค์ ๋ง๋๊ฒ ๋๋ค.
๋ ๋ฒ์งธ ์ธํฐ๋ทฐ๋ ์ฒซ ๋ฒ์งธ ์ธํฐ๋ทฐ๋ณด๋ค ํจ์ฌ ๋ ์ด๋ ค์ ์ต๋๋ค. ์์ ์ฒ๋ผ ์ ๊ฐ ์ค๋นํ ๋ฉด์ ์ง๋ฌธ ๋ชฉ๋ก์ด ์์๋๋ฐ, ๋ฉํ ๋๊ป์๋ ๋จ์ํ ์ด๋ก ๋ง ๋ฌป๋ ๊ฒ์ ์ณ์ง ์๋ค๊ณ ํ๋จํ์๊ณ ๋ฉด์ ์ ์ํ ์ผ๋ จ์ ๊ณผ์ ๋ฅผ ์ค๋นํ์
จ์ต๋๋ค. ์ ์๊ฐ์๋ ์์
์ด ์๋นํ ์ด๋ ค์ ์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๊ทธ๋ ๋ด๊ฐ ๋ฐ์ธ๋ ํด๋ฆฌํ์ ์์ฑํ๋ ๊ฒ์ ๋ฐฉํดํ๋ ๊ฒ์ด ๋ฌด์์ธ์ง ์ง์ฌ์ผ๋ก ์ดํดํ์ง ๋ชปํ๊ณ , ๋๋ ๋ฐ์ธ๋๊ฐ ๋ฌด์์ธ์ง, ํด๋ฆฌํ์ด ๋ฌด์์ธ์ง ์๊ณ ์๋ค๋ ์ฌ์ค์ด ์ด๋ฏธ ๋ง๋ค๊ณ ์ง์ฌ์ผ๋ก ๋ฏฟ์์ต๋๋ค. ๋๋ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง ๋ชปํ์ต๋๋ค. ํ์ง๋ง ์ ๊ฐ ์ฒ๋ฆฌํ ๋ค๋ฅธ ์ฌ๋๋ค๋ ์์์ต๋๋ค. ํ์ง๋ง ๋ฌธ์ ๋ ๊ฐ๋จํ์ง ์์๊ณ , ํด๊ฒฐ์ฑ
์ ์ฐพ์๋ง์ ๋ฉํ ๊ฐ ์กฐ๊ฑด์ ์กฐ๊ธ ๋ฐ๊ฟ์ ๋ฌธ์ ๋ฅผ ๋ ๋ณต์กํ ๋ฒ์ ์ผ๋ก ๋ค์ ํด๊ฒฐํด์ผ ํ์ต๋๋ค.
๋์์ ๋ฉด์ ๋ถ์๊ธฐ๋ ๋งค์ฐ ์ฐํธ์ ์ด์๊ณ , ๊ณผ์ ๋ ํฅ๋ฏธ๋ก์ ์ผ๋ฉฐ, ๋ฉํ ๋ ๋ง์ ์๊ฐ์ ๋ค์ฌ ์ค๋นํ์ผ๋ฉฐ, ํฅํ ๊ต์ก ๋ฉด์ ์ด ์ค์ ๋ฉด์ ์ ํฉ๊ฒฉํ๋ ๋ฐ ๋์์ด ๋ ์ ์๋๋ก ๋
ธ๋ ฅํ์ต๋๋ค. ์ทจ์
์ ์ ์ฒญํ ๋.
๋ ๋ฒ์งธ ๋จ๊ณ ์์
์ ์:
์ธ ๋ฒ์งธ ๋จ๊ณ์์๋ ๋ฌธํํฌํธ ๊ณผ์ ๋ฅผ ์ ์๋ฐ์์ต๋๋ค. ๊ทธ๋ฃน ๋จ์๋ก ์งํํ๋๋ฐ, Git์์ ๋ธ๋์น ๋ณํฉ ์ ํ์ํฌ, ์ฑ ์ ๋ถ๋ฐฐ, ๊ฐ๋ฑ ํด๊ฒฐ์ ํน์ง์ ์ฒ์์ผ๋ก ์๊ฒ ๋์์ต๋๋ค. ์ด๊ฒ์ ์๋ง๋ ์ด ๊ณผ์ ์์ ๊ฐ์ฅ ํฅ๋ฏธ๋ก์ด ๊ณผ์ ์ค ํ๋์์ ๊ฒ์ ๋๋ค.
์ธ ๋ฒ์งธ ๋จ๊ณ ์์
์ ์:
120๋จ๊ณ๋ฅผ ๋ง์น ํ EPAM์ ์ง์ํด ์์ XNUMX์ ์์ ๋ ํ์๋ค์ ์์ด ๋ฅ๋ ฅ์ ํ ์คํธํ๊ธฐ ์ํด ์ ํ ์ธํฐ๋ทฐ๋ฅผ ์งํํ์ผ๋ฉฐ ํ์ฌ ๊ธฐ์ ์ธํฐ๋ทฐ๋ฅผ ์งํํ๊ณ ์๋ค. ๊ทธ๋ค ์ค ๋๋ถ๋ถ์ EPAM JS Lab์ ์ด๋๋๊ณ ์ค์ ํ๋ก์ ํธ์๋ ์ด๋๋ ๊ฒ์ ๋๋ค. ๋งค๋ XNUMX๋ช ์ด ๋๋ Rolling Scopes School ์กธ์ ์์ด EPAM์ ์ฑ์ฉ๋ฉ๋๋ค. ์ฒ์ ์์ํ ์ฌ๋์ ๋นํ๋ฉด ์๋นํ ๋ฎ์ ๋น์จ์ด์ง๋ง, ๋ณธ์ ์ ์ง์ถํ ์ฌ๋์ ๋ณด๋ฉด ์ทจ์ ๊ฐ๋ฅ์ฑ์ด ์๋นํ ํฌ๋ค.
๋น์ ์ด ์ค๋นํด์ผ ํ ์ด๋ ค์ ์ค ๋ ๊ฐ์ง๋ฅผ ์ธ๊ธํ๊ฒ ์ต๋๋ค. ์ฒซ ๋ฒ์งธ๋ ์๊ฐ์ ๋๋ค. ๊ฝค ๋ง์ด ํ์ํฉ๋๋ค. ์ผ์ฃผ์ผ์ 30-40์๊ฐ์ ๋ชฉํ๋ก ํ๋ฉด ๋ ๋ง์ ์๊ฐ์ด ๊ฐ๋ฅํ๋ฉฐ, ๊ทธ๋ณด๋ค ์ ์ผ๋ฉด ์ฝ์ค ํ๋ก๊ทธ๋จ์ด ๋งค์ฐ ์ง์ค์ ์ด๋ฏ๋ก ๋ชจ๋ ์์ ์ ์๋ฃํ ์๊ฐ์ด ๊ฑฐ์ ์์ ๊ฒ์ ๋๋ค. ๋ ๋ฒ์งธ๋ ์์ด ๋ ๋ฒจ A2์ ๋๋ค. ๋ฎ ์ผ๋ฉด ์ฝ์ค๋ฅผ ๊ณต๋ถํ๋ ๊ฒ์ด ๋์์ง๋ ์์ง๋ง ์ด ์์ค์ ์ธ์ด๋ก ์ผ์๋ฆฌ๋ฅผ ์ฐพ๋ ๊ฒ์ ์๋นํ ์ด๋ ค์ธ ๊ฒ์ ๋๋ค.
๊ถ๊ธํ ์ ์ด ์์ผ๋ฉด ๋ฌผ์ด๋ณด์ธ์. ๋ต๋ณํด ๋๋ฆฌ๊ฒ ์ต๋๋ค. ๋ค๋ฅธ ์ ์ฌํ ๋ฌด๋ฃ ๋ฌ์์์ด ์จ๋ผ์ธ ๊ฐ์ข๋ฅผ ์๊ณ ๊ณ์๋ค๋ฉด ๊ณต์ ํด ์ฃผ์ธ์. ํฅ๋ฏธ๋ก์ธ ๊ฒ์
๋๋ค.
์ถ์ฒ : habr.com