forked from mingulmangul/H6-CaArt
-
Notifications
You must be signed in to change notification settings - Fork 0
0816_retrospecitve
rbgus2002 edited this page Aug 18, 2023
·
1 revision
2023/08/16
์ค๋ ํ ์ผ
1. API ์์ ๋ฐ ํ
์คํธ
- ๋ผ์ดํ์คํ์ผ์ ์ ํํ๊ณ ์ถ์ฒํ๋ API๋ฅผ ์์ ํ๊ณ ํ
์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋ค. ํ
์คํธ ์ฝ๋ ์์ฑ์ ์กฐ๊ธ ๋ฏธ๋ฃฌ ๊ฒ์ด ์
๋ณด๊ฐ ๋์ด์ ์ด์ฌํ ์ฒญ์ฐํ๋ ์ค์ด๋ค..
- ํ
์คํธ๋ฅผ ์ํ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋ฅ ์๋ฐ ์ฝ๋๋ก ๋ง๋ค์ด ์ผ์๋๋ฐ ํ
์คํธ ์คํ ์ ์ sql ์คํฌ๋ฆฝํธ ์คํํด์ ๋ฐ์ดํฐ ์์ฑํ๋ ๋ฐฉ์์ผ๋ก ๋ฐ๊ฟจ๋ค.
- ์ค๋ ์์ ํ
์คํธ ์ฝ๋์ ์ด ๋ถ๋ถ์ ๋ํ API ๊ฐ๋ฐ์ ์๋ฃํ ์์ ์ด๋ค.
2. ๋ฐฑ์๋ ์์
: DI
- DI์ ํ์์ฑ์ ์ฒด๊ฐํ๊ณ ์ถ๋ค๋ฉด ํ
์คํธ ์ฝ๋๋ฅผ ์งค ๊ฒ
- ์๋ธ๋ฆฟ๊ณผ ์๋ธ๋ฆฟ ์ปจํ
์ด๋ ๊ด๊ณ
- ๋น๊ณผ DI ์ปจํ
์ด๋ ๊ด๊ณ
- ์คํ๋ง์์ ์ฌ์ฉํ๋ DI ๋ฐฉ์ (setter / ์์ฑ์ -> p namespace / c namespace -> @Autowired -> @Qualifier / @Resource / @Inject)
์์ฌ์ด ์
1. ํ
์คํธ ์ฝ๋ ์์ฑํ๊ธฐ
- ํ๋ฌ ๋ด๋ด ์์ฌ์ด ์ ์ ์ฐ๊ณ ์๋ ๊ฒ ๊ฐ๋ค..
2. ์คํ๋ง ๊ณต๋ถํ๊ธฐ
- Spring Triangle์ ๋ํด ์ค๋ช
ํ ์ ์๋๋ก ๊ณต๋ถํด์ผ๊ฒ ๋ค.
- ๋ฌด์ง์ฑ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ๋ค ๊ณต๋ถํ๊ธฐ
ํ๋ง๋
๋ฒ์จ ์ค๋์ด ์ง๋๋ฉด ๋ด์ผ ๋ ๋ฐ๋ชจ์์ ์ฐ์ด์ผ ํ๋ค๋ ๋ฏฟ๊ธฐ์ง ์๋๋ค. ์๊ฐ์ด ๋๋ฌด ๋น ๋ฅธ ๊ฒ ๊ฐ๋ค. ๋ชฉํํ๋ ๊ฒ์ ๋นํด ์ง๋๊ฐ ๋ง์ด ์ ๋๊ฐ๋ ๊ฒ ๊ฐ์ ์ฌํ๋ค. ๋ถ๋ช
์ฒ์์๋ ํด๋ณด๊ณ ์ถ์ ๊ฒ์ด ๋ง์๋๋ฐ.. ์ผ๋จ ํ์ํ ๊ธฐ๋ฅ ๊ตฌํ์ ์ง์คํด์ผ๊ฒ ๋ค.
*TODAY
- ์ง๋ฌธ ํ๋ฉด UI ์์ฑ
- RangeSlider
- Slider
- ๋ฐ์ดํฐ ํ๋ก์ฐ ์์
- Tint , ColorFilter๊ด๋ จ ๊ณต๋ถ
- GlideโCoil๋ก ์ด์
- ์ด์ 1) Lifecycle.Transforamtions ์ํฌํธ ์๋จ โ ํด๋น ์ฝ๋ ์์
- ์ด์ 2) okhttp2.Interceptor ์ํฌํธ ์๋จ โ ๋ฒ์ ๋ณ๊ฒฝํ์ฌ ํด๊ฒฐ
*LEARN
[Tint & ColorFilter]
- ๊ณตํต์
- ๋๋ค ํฝ์
๋จ์๋ก ๊ธฐ์กด ํ์ธํธ ์์
- ์ฐจ์ด์
- tint์ ๊ฒฝ์ฐ ๋ฌด์กฐ๊ฑด ์ค๋ฒ๋ ์ด โ ๋ ์ด์ด๋ง ๋ถ๊ฐ๋ฅ!
- ์ปฌ๋ฌํํฐ์ ๊ฒฝ์ฐ ์ฌ๋ฌ ๋ชจ๋๊ฐ ์์ โ ๋ชจ๋์ ๋ฐ๋ผ ๋ ์ด์ด๋ง ๊ฐ๋ฅ!
*TODO
- ์ฝ๋๋ฆฌ๋ทฐ
- ์ต์
, ์ง๋ฌธ API์ฐ๊ฒฐ!
- ์๊ฐ ๋จ์ผ๋ฉด ๋ผ์ดํ ์คํ์ผ ์ฟ๋ณด๊ธฐ ๊น์ง!
์ค๋ ํ ์ผ
- Glide -> Coil ๋ง์ด๊ทธ๋ ์ด์
- ์ฐจ๋ ๊ตฌ์ฑ ์ ๋ณด ํ๋ฉด API ์ฐ๋
- ํธ๋ฆผ ์ ํ ํ๋ฉด ์์ดํ
์ ํ์ blinking? ์ด์ ํด๊ฒฐ
- DTO ํด๋์ค ์ถ์ํ
RecyclerView๋ ๊ธฐ๋ณธ์ ์ผ๋ก DefaultItemAnimator ํด๋์ค์ ์ ๋๋ฉ์ด์
์ ์ง์ํ๋๋ฐ
ํด๋น ํด๋์ค๋ ์์ดํ
์ด ์ถ๊ฐ๋๊ฑฐ๋ ์ ๊ฑฐ๋ ๋์ ์ ๋๋ฉ์ด์
ํจ๊ณผ๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํ๋ ํด๋์ค์ด๋ค.
Change Animation์ ๊ธฐ๋ณธ์ ์ผ๋ก ์์ดํ
์ ๋ด์ฉ์ด ๋ณ๊ฒฝ๋ ๋ (์ฆ, notifyItemChanged(int)๊ฐ ํธ์ถ๋ ๋)
ํด๋น ์์ดํ
์ ๋จผ์ fade out ํจ๊ณผ๋ก ์ฌ๋ผ์ง ๋ค์, ๋ณ๊ฒฝ๋ ๋ด์ฉ์ ๋ฐ์ํ์ฌ fade in ํจ๊ณผ๋ก ๋ค์ ๋ํ๋๊ธฐ ๋๋ฌธ์
์ด fade in/out ํจ๊ณผ๊ฐ ์ฐ์์ผ๋ก ์ผ์ด๋๋ฉด์ ์์์น ๋ชปํ ์ํฉ์ด ๋ฐ์ ํ ์ ์๋ค.
์งํ ์ํฉ์ ์์๋ณด๋ค ์ ์งํ๋๊ณ ์๋ ๊ฒ ๊ฐ๊ณ ์ต๋ํ ๊ตฌํ์ ํ ๋ค์
์ ๋ฐ์ ์ธ ๋ฆฌํฉํ ๋ง, ๊ธฐ์ ์ ์ธ ๋์ ์ ์งํํ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.
์ค๋์ ์ค์ ์ ์์
์ ๋ฃ๊ณ ์ฝ๋ฉ์ ๊ณ์ ํ๋ค. API๊ฐ ๊ตฌํ๋๋ ๋๋ก ์ต๋ํ ๋ฐ๋ก๋ฐ๋ก UI์ ์ ์ฉํ๊ณ ์๋ค. API๋ฅผ ์ฐ๋ํ ๋ ํ์
์คํฌ๋ฆฝํธ์ ์ฅ์ ์ด ์ ๋๋ฌ๋๋ ๊ฒ ๊ฐ๋ค. ์ด๋ค ์์ฑ์ ๊ฐ์ง๊ณ ์๋์ง ํ์ธํ๊ธฐ ์ฌ์์ ์ข๋ค.
๊ทธ๋ฆฌ๊ณ ๋จ๋ ์๊ฐ์ ํค๋ ์ปดํฌ๋ํธ๋ฅผ ์ ๋ฆฌํ๊ณ ์๋๋ฐ ์ ๋๋ฉ์ด์
์ ์ง๊ธ ๋ฃ์ผ๋ ค๋ ๊ฝค ์ด๋ ต๋ค. ์ค๋์ ํน ์ฌ๊ณ ๋ด์ผ ์ด์ฌํ ์ง๋ด์ผ๊ฒ ๋ค.
์ด์ ํ๋ฃจ ์ฌ๊ณ ์ค๋๊น ๋๋ฌด๋๋ฌด ์ค๊ธฐ ์ซ์์ง๋ง ์ค๋๋ ์ด์ฌํ ์ด์๋ค.
์ฌ์ค ์์นจ๋ถํฐ ๋๋ฌด ํผ๊ณคํด์ ๋ฐฅ ๋จน๊ณ ์กฐ๊ธ ์ฌ๋ ์๊ฐ์ ๊ฐ์ก๋๋ ์กฐ๊ธ ๋์์ ธ์ ์ด์ฌํ ๋ฌ๋ ธ๋ ๊ฒ ๊ฐ๋ค.
์์ ์ ํ ํ์ด์ง๊ฐ API ์ฐ๋ํ ๋ ์ ์ผ ์ด๋ ค์ธ ๊ฒ ๊ฐ์๋ฐ ์์ง API๊ฐ ๋์ค์ง ์์์ ๋ค๋ฅธ ์ธ์ธํ ์์
์ ์งํํ๊ณ ์๋ค.
์ค๋์ ์ ๋๋ฉ์ด์
์์
ํ๊ณ , ๊ณตํต ์ปดํฌ๋ํธ(Flex, Hr)๋ฅผ ์ ์ํ๊ณ , ์ฝ๋ ๊ฐ์ ํ๋ ์๊ฐ์ ๊ฐ์ก๋ค.
๊ณตํต ์ปดํฌ๋ํธ๋ ํญ์ FlexBox๋ฅผ ๋ง๋ค๋ ์ฝ๋๊ฐ ์ค๋ณต๋์ด ๋ง์ ๋ค์ง ์์๊ณ , ๋ง๋ค์ด์ผ๊ฒ ๋ค๊ณ ์๊ฐํด์ ๋ง๋ค์๋๋ฐ ์ฌ์ฉํ๋ค๋ณด๋ ๊ธฐ์กด์ Styled Component๋ก ์ฌ์ฉํ๋ ๋ถ๋ถ์ด ์คํ๋ ค ์ฝ๋ ๊ฐ๋
์ฑ?(์ด ๋ถ๋ถ์ Head๊ณ ..)์ด ์ข์ ๊ฒ ๊ฐ์ ์์ ํ๋ค๊ฐ ๋ฉ์ท๋ค. ์ผ๋จ ๋ง๋ค์ด๋ ๋จ๋๋ฐ ์ฌ์ฉํ ์ง๋ ๋ฏธ์ง์. ์๋ง๋ค์์ง?
๋ ๋๋กญ๋ค์ด ์ปดํฌ๋ํธ๋ฅผ ๊ฐ์ ํ๋ ค๊ณ ํ๋ค. ์๋๋ setter, value๋ฅผ ๋ชจ๋๋ชจ๋ ๋๊ฒจ์ค์ ์ฝ๋๊ฐ ๋๋ฌด ๊ธธ๊ณ ๋ถํ์ํ๋ค๊ณ ์๊ฐํ๋๋ฐ, ref๋ฅผ ์ฌ์ฉํด ์ํ๋ฅผ ๊ด๋ฆฌํ ์ ์๋ ํ
์ ๋ง๋ค์ด์(๊ฒ์ํด์) ์ค๋ณต๋ ์ฝ๋๋ ์ค์ด๊ณ , ํ์์๋ props์ ์ ๋ฌ๋ ์ค์ผ ์ ์์๋ค. ์ด๊ฒ ์ค๋ ๊ฐ์ฅ ๊ธฐ๋ถ ์ข์ ์ผ์ธ ๋ฏ ? ใ
ใ
๊ธฐ๋ถ ์ข์ผ๋๊น ์นตํ
์ผ ํ์ ๋ง์
์ผ๊ฒ ๋ค~
์ด๋ฒ์ฃผ ์์ ์์์ ํ ํ์ด์ง๊น์ง ๋ง๋ฌด๋ฆฌ ํ ์ ์์์ง ๋ชจ๋ฅด๊ฒ ๋คใ
ใ
ํ์ดํ
์ค๋๋ง์ ๊ณ ๋ฏผํ ๋ถ๋ถ>
Dropdown ์ปดํฌ๋ํธ์ ์ ๋๋ฉ์ด์
ํจ๊ณผ๋ฅผ ์ฃผ๋ ค๊ณ ํ๋๋ฐ, visibility์ transition ํจ๊ณผ๋ฅผ ์ฃผ๋ฉด ์ฝ๊ฐ์ ๋๋ ์ด?๊ฐ ์๊ฒผ๋ค. ์ปจํ
์ด๋์ width๋ฅผ ๋ณ๊ฒฝํ๋ transition ํจ๊ณผ๊ฐ ์์ ์๋ item์ visibility๊ฐ ์ฌ๋ผ์ง๊ณ ๋ ๋ค ๋ฐ์ํด์ ์ฝ๊ฐ์ ์ฃผ์ถค?์ด ๋ฐ์ํ๋๋ฐ, ์๋ฒฝํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด๊ฒ ๊ณ visibility์ 0.1์ด์ ์ฐจ์์์์ ์ค์ ์ด๋์ ๋ ํฐ ์๋๊ฒ ํด๊ฒฐํ๋๋ฐ, ๋์ค์ ์ข ๋ ์์๋ด์ผ๊ฒ ๋ค.
### **<Honux๋ ๊ฐ์>**
- javax == java + extended
- Java Servlet โ http๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ํ์ค
- WS โ Apache / Nginx
- WAS โ tomcat
- Servlet Container
- Servlet์ ๋ด๋ ๊ณต๊ฐ
- Dispatcher Servlet์ด ์กด์ฌ
- Dispatcher Servlet โ DI Container์ ์ฐ๊ฒฐ๋์ด ์์
- DI Container์๋ Bean๋ค์ด ์กด์ฌ
- ๋น ์์ฑ 3๊ฐ์ง
- Annotation
- xml
- java code
- โ์คํ๋ง ์
๋ฌธ์ ์ํ ์๋ฐ ๊ฐ์ฒด ์งํฅ์ ์๋ฆฌ์ ์ดํดโ ์ฝ์ด๋ณด๊ธฐ
### <์ค๋ ํ ๊ฒ>
- ์ถ๊ฐ ์ต์
๋ชฉ๋ก ์กฐํ API ๊ฐ๋ฐ
- ๊ธฐ๋ณธ ํ ์์ฑ
- ํ๊ทธ ํํฐ๋ง ๊ตฌํ
- Option์ ResponseDto ์์
- pagination ๊ตฌํ
- response ๋ช
์ธ์ ์์ฑ ๋ฐ ๊ณ ์ง
๐ป [H6-CaArt] โDone is better than perfectโ ๐ป
- [์ต๊ทํ] Sentry ๋์ ๊ธฐ (feat. ๋ก๊ทธ ๊ด๋ฆฌ)
- [์ต๊ทํ] GPT3.5 ๋ชจ๋ธ์ ํ์ฉํด์ ์ถ์ฒ ๋ฌธ๊ตฌ ์์ฝํ๊ธฐ
- [์ต๊ทํ] ์คํ๋ง์์ OpenAI API ์ฑ๋ฅ ๊ฐ์ ๊ธฐ
- [๊ถ๋ฏผ์] CaArt CI/CD ๊ตฌ์ถ ๊ณผ์
- [๊ถ๋ฏผ์] ์ฑํ๋ฅ ๊ณ์ฐ ๋ก์ง ๊ฐ์ - Index tuning๊ณผ Batch processing
- [์ด์นํ] useReducer, useContext๋ฅผ ์ฌ์ฉํ ์ ์ญ ์ํ ๊ด๋ฆฌ with React, TS
- [์ด์นํ] ํ๋กํ ํ์ ํจํด์ด๋?
- [์ด์นํ] UX ๊ฐ์ ์ ์ํ ์ด๋ฏธ์ง ํ๋ฆฌ๋ก๋ฉ With Promise
- [์์ํ] ํ์ ์คํฌ๋ฆฝํธ ์ ๋ค๋ฆญ์ด๋?
- [๋ฐ์ธ์] Android์ Data Binding: DataBindingUtil vs Binding.inflate
- [๋ฐ์ธ์] DI, Hilt ๋ฝ๊ฐ๊ธฐ
- [๋ฐ์ธ์] Retrofit ๋์ ๊ธฐ
- [๋ฐ์ธ์] 360๋ Spin Image Touble Shooting
- [๊น์ ๋น] ์ปค์คํ ๋ค์ด์ผ๋ก๊ทธ ๊ตฌํ