์ ์ฒด ๊ธ101 Day1. Ai์์ ๋ํ ์ค๋์ ์ง๋ฌธ ai: What is your favorite hobby and why do you enjoy it? me: I like watching youtube, because i can not thinking in watching youtube. -> “I like watching YouTube because I don’t have to think while watching it.” 1. can ๋ค์๋ ๋์ฌ ์ํ์ด ์์ผํ๋ค. 2. in ์ ๋ฌธ๋ฒ์ ์ณ์ง ์๋ค ~ ๋์ ์ด๋ผ๋ while์ ์ฌ์ฉํ์. 3. dont' have to think ๋ ์๊ฐํ ํ์๊ฐ ์๋ค๋ ์๋ฏธ๋ฅผ ๋ช ํํ ์ ๋ฌํ๋ค. 4. ์์ Youtube๋ผ๋ ๊ฒ์ ์ค๋ช ํ์ผ๋ฏ๋ก it์ผ๋ก ํํํด๋ ๋๋ค. ai: What kind of video.. 2024. 8. 2. [Vanila js] ํค์๋ ๊ฒ์ ๊ตฌํํ๊ธฐ ResultViewexport default class KeywordListView extends View { constructor() { super(qs('#keyword-list-view')); this.template = new Template(); this.bindEvents(); } show(data = []) { } bindEvents() { } handleClick(event) { }} ์์ ๊ธฐ๋ฅ๋ค๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก keyword-list-view์ ์ ์ฉํ interface๋ค.Result๋ฅผ ๋ณด๋ฉด ํค์๋๋ฅผ ํด๋ฆญํ๋ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋๊น ์ด๋ฒคํธ๋ฅผ ๋ฐ์ธ๋ฉํด์ฃผ๋ ๊ฒ์ด ํ์ํ๊ณ keyword ๋ชฉ๋ก๋ค์ ๋ณด์ฌ์ฃผ์ด์ผ ํ๋ฏ๋ก show().. 2024. 8. 2. [Vanila js] ํญ ๊ตฌํํ๊ธฐ ResultViewexport default class TabView extends View { constructor() { super(qs('#tab-view')); this.template = new Template(); } show() {} bindEvents() {} } ์ ์ ํ์ด์ง์ tab-view id๋ฅผ ๊ฐ์ง ํ๊ทธ์ ์์ ์ ์ํํ๋ค.Result์ ๊ฐ์ด ํญ์ ๋ณด์ฌ์ค ๊ธฐ๋ฅ๊ณผ, ํญ์ ๋๋ฅด๋ ํ์๋ฅผ ํ๋ ๊ธฐ๋ฅ์ด ํ์Controllerexport default class Controller { constructor(store, {searchFormView, searchResultView, tabView}) { this.store.. 2024. 8. 1. [Vanila js] ๊ฒ์ ๊ฒฐ๊ณผ ๊ธฐ๋ฅ ๊ตฌํ Viewexport default class SearchResultView extends View { constructor() { super(qs("#search-result-view")); this.template = new Template(); } show(data = []) { if (data.length > 0) { this.element.innerHTML = this.template.getList(data); } else { this.element.innerHTML = this. template.getEmptyMessage(); } super.show(); }}.. 2024. 7. 31. [Vanila js] ๊ฒ์ ๊ธฐ๋ฅ ๊ตฌํํ๊ธฐ Branch - ready/search-form-1์์ ํฌ์คํ ์ ์์ ์ด ์ ๋๋ก ๋์๋ค๋ฉด main ๋ธ๋์น์์1. git checkout -b ready/search-form-12. ์ฝ๋ ์์ฑ3. git add .4. git commit -m "feat: ๋ด์ฉ"5. git push origin ready/search-form-1์ดํ PR ๋ ๋ฆฌ๊ณ Rebase Merge ํ๊ธฐ.git bash์์ ์ฝ๋๋ก ํ ์๋ ์์ง๋ง, ํ์ ์ค ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ํ๋ ๊ณผ์ ์ด ์์.๊ทธ๋์ ์ง์ github ์ฌ์ดํธ์์ Mergeํ๋ ๊ฒ์ ์ต์ํด์ง๊ธฐ ์์ผ๋ก ๋ชจ๋ ์์ ์ ์ ๊ณผ์ ์ ๋ฐ๋ณตํด์ branch๋ฅผ ์ ๋ฐ์ดํธ ํ ์์ // index.html // main.jsdocument.addEventListener("DOMContentL.. 2024. 7. 31. [Vanila.js] ์ฌ์ ์ฝ๋ ์ดํดํ๊ธฐ ๊ฐ์ฌ๋์ด ๋ฏธ๋ฆฌ ๊ตฌํํด ๋ ์๋น์ค branch : ready/scaffodingIn Memory DB์ถ์ฒ ๊ฒ์์ด, ๊ฒ์ ๊ธฐ๋ก, ์ํ ๋ฐ์ดํฐUtility์๊ฐ๊ด๋ จ UtilDOM Event๋ฅผ ํ์ฉํ Util๊ธฐ๋ณธ์ ์ผ๋ก JS์์ ์ ๊ณตํ๋ ๊ธฐ์ ๋ค์ ๋ชจ๋ํํ๋ค๊ณ ๋ณด์ธ๋ค.Model์ดํ์ ๋น์ฆ๋์ค ๋ก์ง ๋ฐ ์ค์ ๋ก์ง์ด ๋ด๊ธธ ๊ฒ์ผ๋ก ๋ณด์.View์ ์ ํ์ด์ง ์ ๋ณด๋ฅผ ๋ ๋๋ง(์์ )ํ๋ ํ์ด์งUtility๋ฅผ ํ์ฉํด ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ด ์ ๊ณต๋๋ค.ControllerView์ ์์ฑ๋ ๋ด์ฉ์ ์ ์ดModel์ ๋น์ฆ๋์ค ๋ก์ง์ ํ์ฉํ๊ฑฐ๋ ๋ฐ๋ก ์๋น์ค ๋ก์ง์ ์์ฑํ ๋ฏ 2024. 7. 31. [Vanila.js] ํ๊ฒฝ์ ํ 1 ์ฐ์ํ ํ์ ๋ค์์ ๊ทผ๋ฌด ์ค์ด์ ํ๋ก ํธ ๊ฐ๋ฐ์ ๊น์ ํ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑํฉ๋๋ค.์ธํ๋ฐ ๊ฐ์ ์ ๋ชฉ์ '๋ง๋ค๊ณ ๋น๊ตํ๋ฉฐ ํ์ตํ๋ ๋ฆฌ์กํธ'์ ๋๋ค. ํด๋น ๊ฐ์๋ ๊น์ ์ฌ์ฉํ๋ฉฐ Branch๋ณ๋ก ๊ฐ์๋ฅผ ํด์ฃผ์ญ๋๋ค. ํ์ต์ ํ๊ธฐ ์ํด ๋จผ์ git์ forkํฉ๋๋ค. fork๊ฐ ์๋์๋ค๋ฉด, ๊ฐ์ฌ๋์ด ๋ง๋ค์ด ๋ branch๋ก ์ด๋ํ ์ ์์ต๋๋ค.์ฐ์ forkํ ๋ด ๋ ํ์งํ ๋ฆฌ๋ฅผ cloneํ๊ณ ํด๋น ํด๋๋ก ์ด๋ํด์ git bash๋ฅผ ์คํํฉ๋๋ค.๊ทธ๋ฆฌ๊ณ ์๋์ ๊ฐ์ ๋ช ๋ น์ ์์ฑํฉ๋๋ค. 1. git remote add upstream https://github.com/jeonghwan-kim/lecture-react.git2. git fetch upstream3. git checkout -f upstream/ready/scaf.. 2024. 7. 30. [Vanila.js] ํ๊ฒฝ์ ํ 2 1. VS ์ฝ๋๋ฅผ ์ค์นํ๋ค.2. Node.js๋ฅผ ์ค์นํ๋ค.2-1. npm --version ์ผ๋ก ํ๊ฒฝ๋ณ์ ์ค์น๊ฐ ์๋์๋์ง ํ์ธํ๋ค.3. Git Bash๋ฅผ ์ค์นํ๋ค. (์ ํ, ํ๋ก์ ํธ ๊ด๋ฆฌํ๋ ค๋ฉด ์ค์น)4. npx lite-server --baseDir "ํด๋๋ช " or npx lite-server โป ์ฃผ์ (windows ํ๊ฒฝ)Node.js์ ๊ฒฝ๋ก๋ฅผ ์ปค์คํ ์์ญ์ ์ค์น ์, ์คํ์ด ์๋๋ค.1. Ctrl + r -> %appdata% -> ์ํด๋ ์์ฑ(์ด๋ฆ: npm) 2. System ํ๊ฒฝ๋ณ์์์ ํด๋น node js์ custom ์์ญ์ path ๋ณ์์ ์ถ๊ฐํ๋ค.๋๋ ์ฌ์ฉ์ ์์ญ์ ์ถ๊ฐํ๋ค. โป TipVsCode์์ code . ์ผ๋ก ์คํํ๋ ค๋๋ฐ ์๋๋ค.Ctrl + shift + p ๋ก๋ code ๋ฅผ ๊ฒ์ํด.. 2024. 7. 30. [์ค๊ธฐ ํ๊ธฐ] ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ๊ฐ์ฑ์ ๊ฒฐ๊ณผ 3๋ฌธ์ ๊ฐ ํ๋ ธ๋ค. ์ด ๊ณต๋ถ ์๊ฐ์ ๋ธ๋ก๊ทธ์ ์์ฑํ ๋ชจ์๊ณ ์ฌ ๋์ด๋ค.์ ๊ณต์์ ๊ฒฝ์ฐ, ์ฝ๋ฉ๋ง ์ค๋น๊ฐ ๋์ด์์ผ๋ฉด ํ๋ฃจ๋ง ๊ณต๋ถํด๋ ๋ ๊ฒ ๊ฐ๋ค. ๋๋ 22๋ ๋๋ถํฐ 24๋ ๊น์ง ๋ชจ์๊ณ ์ฌ๋ฅผ ํ์ด๋ดค๋๋ฐ ๊ฐ์ธ์ ์ผ๋ก 23๋ 2ํ, 3ํ์ ๋น์ทํ ํฉ๊ฒฉ๋ฅ ์ ๋ณด์ด์ง ์์๊น ์ถ๋ค. 1. ์ฝ๋๊ฐ ์๋นํ ์ด๋ ค์ธ ์๋ ์๋ค.์ฌ๊ท๋ฅผ ์ด์ฉํ ๋ฉ๋ชจ์ ์ด์ ๊ธฐ๋ฒ์ด ๋์๋ค.๊ทธ ์ธ ํฌ์ธํฐ๊ฐ ๋ค์ํ๊ฒ ๋์๋ค. 2. ์ด๋ก ๋คํธ์ํฌ, ๋ณด์๋ง ๊ณต๋ถํ์ผ๋ฉด ๋์ ๊ฒ ๊ฐ๋ค. ์ด์ ํ์ฐจ์ ๋นํด ์ฝ๋ฉ : ์, ์ด๋ก : ํ์๋ฌด๋๋ ๋น์ ๊ณต์๊ฐ ๋ง์ด ์์ํ๋ค๋ฉด ํฉ๊ฒฉ๋ฅ ์ด ์ข ๋ฎ์ ๊ฒ์ผ๋ก ์์๋๋ค. 2024. 7. 30. ์ด์ 1 2 3 4 5 ยทยทยท 12 ๋ค์