๋ชฉ๋ก์ ์ฒด ๊ธ (115)
let's get IT with DAVINA ๐ป
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bmsl8d/btrYzKyx0YW/oOgE64LJRm342MgBzTqyG0/img.png)
์ฑํค ๋ฐ๊ธฐ Kakao Developers ์ฐ์ ์นด์นด์ค ๊ฐ๋ฐ์ ์ฌ์ดํธ์ ์ ์ํด์ ์นด์นด์ค ๋ก๊ทธ์ธ์ ํ๋ค. ๋ด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ค์ด๊ฐ์ ์ ํ๋ฆฌ์ผ์ด์ ์ถ๊ฐํ๊ธฐ๋ฅผ ๋๋ฅธ๋ค. ํ๋ซํผ ์ค์ ํ๊ธฐ๋ฅผ ๋๋ฅด๊ณ (๋๋ ์น์์ ์ฌ์ฉํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ web ํ๋ซํผ ๋ฑ๋ก์ ์ ํํ๋ค) ๋๋ฉ์ธ ์ค์ ์ํด์ค๋ค. react๋ฅผ ์ฌ์ฉํด์ ์น์ ๊ตฌํํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ http: // localhost:3000๋ ์ถ๊ฐํด์ฃผ์๋ค. HTML์ ์ ์ฉ pubilc/index.html head or body ์๋ฌด๋ฐ๋ ์๊ด X ๋๋ head์ ์ ์ฉํด์ฃผ์๋ค. KakaoMap.js ํ์ผ ์์ฑ import React, { useEffect } from "react"; import styled from "styled-components"; const MapContaine..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/o8xGA/btrYz0gYBrA/iiN6lKNGfQ7uvIsukAWDH0/img.png)
1 ? "disabled" : null} > → Count๊ฐ 2๊ฐ ๋๋์๊ฐ๋ถํฐ ๋์ด์ ๋ฒํผ ํ์ฑํ๋์ง ์๊ฒ ๋ง๋ค๊ธฐ
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/vbvoG/btrYAQrtEkQ/uSt0xEbBG4tqVNEfrE7crk/img.png)
Position ๋ฌธ์ ์์ ์์๋ฅผ ๋ฐฐ์นํ๋ ๋ฐฉ๋ฒ์ ์ง์ ํ๋ค. top, right, bottom, left ์์ฑ์ ํตํด ์์์ ์ต์ข ์์น๋ฅผ ๊ฒฐ์ ํ๋ค. ์ฌ์ฉ๋ฒ ๊ธฐ์ค์ ์ก๋๋ค. (ex. position: relative;) ์ด๋์ํจ๋ค. (ex. top: 50px;) block : ํ ์ค ๋ชจ๋ ์ฐจ์ง (๋ํ element - , ) inline : ์ฝํ ์ธ ํฌ๊ธฐ ๋งํผ๋ง ์ฐจ์ง (๋ํ element - ) ๊ฐ ์๋ฏธ static ๊ธฐ์ค ์์ (๋ฐฐ์น ๋ถ๊ฐ๋ฅ / ๊ธฐ๋ณธ๊ฐ) relative ์์ ์๊ธฐ ์์ ์ ๊ธฐ์ค์ผ๋ก ๋ฐฐ์น absolute ๋ถ๋ชจ(์กฐ์) ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฐฐ์น fixed ๋ทฐํฌํธ ๊ธฐ์ค์ผ๋ก ๋ฐฐ์น stickey ์คํฌ๋กค ์์ญ ๊ธฐ์ค์ผ๋ก ๋ฐฐ์น Relative ์์๋ฅผ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ํ๋ฆ์ ๋ฐ๋ผ ๋ฐฐ์นํ๋ค. ์์ ์๊ธฐ ์์ ์ ์๋ ์..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/3hgd7/btrYDf5cSbV/MhEuOkfXFqA9bNeWRm2fok/img.png)
TypeScript Javascript with syntax for types a strongly typed programming language that builds on JavaScript, giving you better tool at any scale JS์ ํ์ ์์ ์ฑ โฌ ๋ฒ์ ! TypeScript & VS Code ⇒ ๋ ๋ค Microsoft์์ ๊ฐ๋ฐํด์ ์ฃฝ์ด ์ ๋ง์ JavaScript VS TypeScript JS ⇒ ๊ฐ๋ฐ์๋ค์ด ๋ฉ์ฒญํ ์ค์๋ฅผ ํด๋ ์ดํดํด์ฃผ๋ ค ํ๋ ์ ์ฐํ ์ธ์ด [1,2,3,4]+ false(boolean) = “1,2,3,4false”(string) ⇒ TS๋ ๋ง๋ ์๋๋ ํธ์ถ์ ํ์ฉํ์ง ์์ ๋ฌธ์ ์๋ ํธ์ถ์ ์ ์ ์ ์ปดํจํฐ์์ ์ด๋ฏธ ์คํํ๊ณ ๋์ ์๋ฌ๋ผ๊ณ ๋งํด์ค ์ด๊ฒ์ด ๋ฐํ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dyTqZF/btrYDeZpP8L/GZWogdCqce14j4aMfThOek/img.png)
ํธํ ์นดํ ๊ณ ๋ฆฌ list ํ๋ฉด์์ ์ข์์๋ ํธํ ์ด ์ฑ์์งํํธ๋ก ํ์ ํ์ → BE์์ isLike ์ ๊ฐ์ํ๋๋ช ์ผ๋ก ๊ตฌ๋ถํด์ค์ผํจ ํธํ list ์กฐํํ๋ฉด์์ like๊ฐ ์ ์ญ์ผ๋ก ๊ด๋ฆฌ๋๊ฒ ๋๋ฉด ํธํ ๋ณ "์ข์์" ์ํ ํ์๊ฐ(ํ๊ฐ ๋๋ฅด๋ฉด ์ ์ฒด ์ํ๊ฐ ๋ค ๋ฐ๋๊ฒ ๋จ) ํ๋๋ฏ๋ก ๊ฐ๋ณ ์ํ๋ก ๊ด๋ฆฌ๊ฐ๋ฅํ๋๋ก ์์ ํด์ผํ๋ ์ํฉ ์์๋ฆฌ์คํธ ํ์ด์ง์์๋ ํธํ ํํธ ์ฑ์์ง์ํ๋ก ํ์ ๋ฉ์ธ ํ๋ก์ ํธ๋์ ์ํฉ → BE์ isLike ๊ตฌ๋ถ์ด ์๋์ด ์์์ผ๋ฉฐ, → wishlist์์ data์ ๋ณด๋ค์ด ์์์ ⇒ ๋ฐ๋ผ์, ์ข์์๋ฅผ ๋๋ ๋์ง ์๋๋ ๋์ง๋ฅผ ํ๋จํ๋๊ฒ๋ณด๋ค ์์๋ฆฌ์คํธ์ ์๋ ํธํ ์ด ์ ์ฒด๋ฆฌ์คํธ์ ํธํ id๊ฐ๊ณผ ์ผ์นํ ๊ฒฝ์ฐ ์ข์์๊ฐ ๋์ด์๋ ์ํ & ์์๋ฆฌ์คํธ์ ์์ผ๋ฉด ์ข์์๊ฐ ์๋์ด์๋ ์ํ๋ก ๊ตฌ๋ถ 1. WishList data..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ruviF/btrYvmZGAfa/AwR2MeXebQ85CklpX45K5k/img.png)
Git๊ณผ Github ์ฌ์ฉ๋ฒ์ ๋ธ๋ก๊น ํ๋ฉฐ ์นดํ ๊ณ ๋ฆฌ๋ฅผ ๋ถ๋ฅํ๋๋ฐ ๋ฌธ๋ ์ด ๋์ ์ฐจ์ด๋ฅผ ๋ช ํํ ์๊ณ ์๋์ง ๊ถ๊ธํด์ก๋ค. Git ์์ค ์ฝ๋๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ๋ถ์ฐํ ๋ฒ์ ๊ด๋ฆฌ ์์คํ VCS: Version Control System ์์ค ์ฝ๋ ์์ ์ ๋ฐ๋ฅธ ๋ฒ์ ์ ๊ด๋ฆฌํด์ฃผ๋ ์์คํ ๋ก์ปฌ ์ ์ฅ์๋ฅผ ์ฌ์ฉ (๋ค๋ฅธ ๊ฐ๋ฐ์์ ํ์ ์ ๊ฐ๋ X) Github ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ํด์ธ Git์ ์ฌ์ฉํ๋ ํ๋ก์ ํธ๋ฅผ ์ง์ํ๋ ์นํธ์คํ ์๋น์ค ์ธ์ , ์ด๋์๋ ํ์ ์ด ๊ฐ๋ฅ ๋ก์ปฌ์์ ๋ฒ์ ๊ด๋ฆฌํ ์์ค์ฝ๋๋ฅผ ํด๋ผ์ฐ๋ ์๋ฒ๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ก๋ํด์ ๊ณต์ ๊ฐ๋ฅ Git์ผ๋ก ๋ก์ปฌ ์ ์ฅ์์์ ์์ -> Github์ ์ ๋ก๋ & Github์ ์๋ ์์ ๋ฌผ์ ๋ด๋ ค๋ฐ์์์ ์์ Local Repository : ๋ด PC์ ์ ์ฅ๋๋ ๊ฐ์ธ ์ ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oede6/btrYzZ3cGTk/HWfMVVS7Kp7XeQ1EMbMkm1/img.png)
1. main (๋ฐฐํฌ์ฉ) ํ์ฌ ์ฝ๋์ → ์ ๊ฑด๋ค์ง ๋ง๊ณ ์ผ๋จ ์์ → 4๋ฒ ๊ณผ์ ๊น์ง ๋ค ์์ฑ๋๋ฉด mergeํด์ ๋ฐฐํฌ! 2. develop (๊ฐ๋ฐ์ฉ) 3๋ฒ feature์์ ์๋๋ฉด develop ๋ธ๋์น์ mergeํ๊ณ 3. feature (develop์ ๊ธฐ๋ฅ์ถ๊ฐ์ฉ) ๋ถ๋ฅ๋ฅผ ์ธ์ธํ๊ฒ ๋๋๊ธฐ๋ฅผ ์ํ๋ ํ์ฌ์์๋ refactor, fix, docs, chore์ ๊ฐ์ด ์ธ์ธํ๊ฒ ์ปค๋ฐ ๋ฉ์์ง๋ ๋ธ๋์น ๋ช ์ prefix๋ฅผ ๋ฌ๊ธฐ๋ ํฉ๋๋ค. hash (๋ธ๋์น ๋ช ) ์ปค๋ฐ ๋ฉ์์ง 2f85eea (feat/create-todo) feat: Todo ์ถ๊ฐ ๊ธฐ๋ฅ 2ad0805 (fix/var-name) fix: ๋ณ์ ๋ค์ด๋ฐ ์ปจ๋ฒค์ ์ ๋ง๊ฒ ๋ณ์๋ช ๋ณ๊ฒฝ (ismale => isMale) e7ce3ad (refactor) refa..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Fxt0I/btrYyd9dlQz/ktkUntbW0bfMcvrRiASdgK/img.png)
โญ git ⇒ ๋ฒ์ ๊ด๋ฆฌ ํ๋ก๊ทธ๋จ repository ⇒ git์ด ํ์ผ ๊ธฐ๋กํด๋๋ ์ฅ์ ์๊ฒฉ ์ ์ฅ์ = ์จ๋ผ์ธ repository - ์ปดํจํฐ ๊ณ ์ฅ๋๋ ์์ฌ - ํ์ ์ด ๊ฐ๋ฅ - ex) github ๋ด ์ฝ๋ ์ฌ๋ฆด ๋? git push //local ํ๊ฒฝ์์ repository ์์ฑ git init //๊ธฐ๋ณธ๋ธ๋์น ์ด๋ฆ์ main์ผ๋ก ๋ฐ๊พธ๊ธฐ git branch -M main //๋ก์ปฌ -> ์๊ฒฉ์ผ๋ก ๋ณด๋ด๊ธฐ git push -u ์๊ฒฉ์ ์ฅ์์ฃผ์ ์ฌ๋ฆด๋ก์ปฌ๋ธ๋์น๋ช //์๊ฒฉ์ ์ฅ์์ฃผ์ ๋ ๊ธธ์ด์ -> ๋ณ์ ๋ฌธ๋ฒ ์ฌ์ฉํ๊ธฐ git remote add ๋ณ์๋ช ์ฃผ์ git push -u ๋ณ์๋ช ์ฌ๋ฆด๋ก์ปฌ๋ธ๋์น๋ช //์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํด์ง! //-u๋ฅผ ์ฌ์ฉํ๋ฉด ๊ทธ ์ดํ๋ถํฐ ์ฃผ์๊ฐ ๊ธฐ์ต๋๊ธฐ ๋๋ฌธ์ git push //๋ง ํด๋ ์๋์ผ๋ก ๋ณด๋ด..