-
[Wingle] ๊ตญ์ ๊ต๋ฅ ์ปค๋ฎค๋ํฐ ๊ฐ๋ฐ ํ๋ก์ ํธ ๊ฐ๋ฐ ์ ๋ฆฌReact 2023. 9. 8. 02:05
๐ ํ๋ก์ ํธ ๊ธฐ๊ฐ
- 2023.3.26 ~ 2023.8.25
๐ ๊ฒฐ๊ณผ๋ฌผ
2023.8.29 ๊ธฐ์ค 39๋ช ์ ์ ์ ํ๋ณด ๋ฐ ์ฌ์ฉ์ ํผ๋๋ฐฑ ์๋ ด
๐ง๐ป๐ป ์ญํ
- ํ๋ก ํธ์๋ ๊ธฐ๋ฅ ๊ฐ๋ฐ ๋ฐ ๋ฐฉํฅ ์ค์ , ํ๋ก ํธ์๋ ํ์ ์ฃผ๋, ํ๋ก์ ํธ ๊ธฐํ ๋ฐ ์ธ๋ถ ๊ธฐ๋ฅ ์ค์
- MVP ๋ฒ์ ๋ง์ดํ์ด์ง,ํ๋กํ, ๋ก๋ฉ ์ปดํฌ๋ํธ UI ํ๋ฉด ๊ตฌ์ ๋ฐ ๊ณตํต ์ปดํฌ๋ํธ ์ ์- ๊ณ์ ๊ด๋ จ ์ ๋ณด ํธ์ถ ๋ฐ ๊ณ์ ์ ๋ณด Edit ๊ธฐ๋ฅ ๊ตฌํ
1. ๋๋ค์ ๋ฐ ์ฌ์ง ์์
- ๋๋ค์ ์ค๋ณต ๋ฐ ์ฌ์ง ํ์ผ ํฌ๊ธฐ ํ์ธ
- useMutation์ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ๋ ์์ ์ ์ฒ๋ฆฌ
2. ๊ด์ฌ์ฌ ๋ฐ ์ธ์ด ์ ํ
[์ธ์ด]
- <์ ํ ์ด๊ธฐํ> ๋ฒํผ ํด๋ฆญ์ ์ ์ฅ๋ ์ธ์ด ์ ๋ณด๊ฐ ๋ฆฌ์
- ์ ์์๊ฐ ์ ํ๋์ด์ผ ํ ์์ ์ ํ ๊ฐ๋ฅ
[๊ด์ฌ์ฌ]
- ์ค๋ณต ํด๋ฆญ์ ์ ํ ํด์ , ํด๋ฆญ์ ์ ํ
3. ํ์ธ ํ๋กํ
- ์ฟผ๋ฆฌ์์ ์ฌ์ฉ์ ID ๋ฅผ ๊ฐ์ ธ์์ ์ฌ์ฉ์ ์ ๋ณด ํธ์ถ
๐ฉ๐ป๐ง ๊ธฐ์ ์คํ
๐บ ํ๋ฉด ์ค๊ณ์
๐ API ๋ช ์ธ์
๐ ์ฝ๋ฉ ์ปจ๋ฒค์
- Common
- ๋ค์ด๋ฐ ๊ธ์ ๊ธธ์ด : 20์ ์ด๋ด (20์ ์ด์์ ํ์๊ณผ ์์)
- ์ ํ๋ณ ๋ค์ด๋ฐ ๊ท์น
- Default : camelCase
- Folder, File names : lowerCamelCase
- Component names : PascalCase
- Function names : lowerCamelCase, ๋์ฌ + ๋ช ์ฌ (์: getUserInformation)
- Constant names : CONSTANT_CASE
- React
- ํจ์ํ ์ปดํฌ๋ํธ ์ฌ์ฉ
- ๋ฉ๋ชจ์ด์ ์ด์ ๊ถ์ฅ
- ์ด๋ฒคํธ ํจ์ ๋ค์ด๋ฐ : handle + event / const handleOnClickAlarm = () => { ... }
- ํจ์ ์ ์ธ : ์ ์ธ์์ผ๋ก ์์ฑํ๋, ํํ์์ ์ฌ์ฉํด์ผ ํ ๊ฒฝ์ฐ(ํด๋ก์ , ์ฝ๋ฐฑํจ์ ๋ฑ) ํ์ดํ ํจ์ ์ฌ์ฉ
- Styled-Components
- ํด๋น ์ปดํฌ๋ํธ ํ์ผ์ ์คํ์ผ ์ ์
- ๋ค์ด๋ฐ : S-dot ํจํด ์ฌ์ฉ (์: `const Wrapper = styled.div``)
- Recoil
- ๋ฌด๋ถ๋ณํ ์ ์ญ์ํ ์ฌ์ฉ ๊ธ์ง : ๋ค์์ ์ปดํฌ๋ํธ ๊ฐ์ ์ํ ์์กด์ฑ์ด ๋์์ง ๋๋ง ์ ์ญ์ํ๋ก ๋ฐ์ดํฐ ๊ด๋ฆฌ(์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ ์ง์ญ์ํ๋ก ๊ด๋ฆฌ)
- ๋ค์ด๋ฐ : StateAtom ์ถ๊ฐ / export const imgModalStateAtom = atom({ ... })
- TypeScript
- ๋ค์ด๋ฐ : PascalCase ์ฌ์ฉ, I/T prefix ์ฌ์ฉ ๊ธ์ง
- Type alias์ interface ์ฌ์ฉ (API ๋ฐ์ดํฐ ๋ฑ)
โ๏ธ ์ปค๋ฐ ๊ท์น
์ด์ ์์ฑ ๊ท์น
๊ธฐ๋ณธ ํ์ : [#์ด์๋ฒํธ -] [commit type]: [commit message] ์์ : #1 - feat: ๋ก๊ทธ์ธ
์ฝ๋ฉ ์ปจ๋ฒค์
-
- Common
- ๋ค์ด๋ฐ ๊ธ์ ๊ธธ์ด : 20์ ์ด๋ด(20์ ์ด์ ํ์๊ณผ ์์)
- ์ ํ๋ณ ๋ค์ด๋ฐ ๊ท์น
- React
- ๋ฉ๋ชจ์ด์ ์ด์ ๊ถ์ฅ
- ํจ์ ์ ์ธ : ํ์ดํ ํจ์๋ก ์ ์ธ
- ํจ์ํ ์ปดํฌ๋ํธ ์์ฑ์ → export default function Example() {}
- ์ปดํฌ๋ํธ ๋ด๋ถ์ ์๋ ํจ์ ์์ฑ ์ → const Example () ⇒ {}
- ์ด๋ฒคํธ ํจ์ ๋ค์ด๋ฐ : handle + event / const handleOnClickAlarm = () => { ... }
- Styled-Components
- ํด๋น ์ปดํฌ๋ํธ ํ์ผ์ ์ ์
- ๋ค์ด๋ฐ(S-dot)
- Recoil
- ๋ฌด๋ถ๋ณํ ์ ์ญ์ํ ์ฌ์ฉ ๊ธ์ง : ๋ค์์ ์ปดํฌ๋ํธ๊ฐ์ ์ํ ์์กด์ฑ์ด ๋์์ง๋๋ง ์ ์ญ์ํ๋ก ๋ฐ์ดํฐ ๊ด๋ฆฌ(์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ ์ง์ญ์ํ๋ก ๊ด๋ฆฌ)
- ๋ค์ด๋ฐ : StateAtom ์ถ๊ฐ / export const imgModalStateAtom = atom({...})
- TypeScript
- naming : PascalCase ์ฌ์ฉ, I/T prefix ์ฌ์ฉ ๊ธ์ง
- type alias + interface(API Data)
- ์ถฉ๋์ฑ ์ค๋ฅ๋ก ๋ ์ค ํ๋์ ๋ฐฉ์๋ง → type ๋ฐฉ์์ผ๋ก ์ฐ๊ธฐ๋ก ๊ฒฐ์
- interface ๋ก ๋์ด ์๋ ์ฝ๋ type ์ผ๋ก ์์ ํด์ฃผ๊ธฐ
'React' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ