[WIL] 22.08.19 - 22.08.25

DEINGVELOPยท2022๋…„ 8์›” 26์ผ
0

Weekly I Learned

๋ชฉ๋ก ๋ณด๊ธฐ
5/6

๐Ÿ“š This Week

  • ์ด๋…ธ๋ฒ ์ด์…˜ ์บ ํ”„ (์›” - ํ† ) : 4์ฃผ์ฐจ - ์ฃผํŠน๊ธฐ ์ˆ™๋ จ (Spring)
  • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์Šคํ„ฐ๋”” (์ฃผ 1ํšŒ) : ์ข…๋ฃŒ
  • ์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ ๋ฐ CS ์Šคํ„ฐ๋”” (์ฃผ 1ํšŒ) : ๋‹ค์Œ์ฃผ๋กœ ๋ฏธ๋ค„์ง

๐Ÿƒ๐Ÿปโ€โ™€๏ธ What I Learned

Spring

  • Spring Security์— ๋Œ€ํ•ด ๊ฒ‰ํ•ฅ๊ธฐ ์ˆ˜์ค€์ด์ง€๋งŒ ์ดํ•ด๋ฅผ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋‹จ, Filter, Config ๋“ฑ์— ๋Œ€ํ•œ ์ •๋ฆฌ๋ฅผ ํ•œ ๋ฒˆ ํ•ด์•ผ ํ•  ๋“ฏ ํ•˜๋‹ค.

  • JWT ํ† ํฐ ์ธ์ฆ ๋ฐฉ์‹์— ๋Œ€ํ•œ ์ •๋ฆฌ๊ฐ€ ํ•„์š”ํ•  ๋“ฏ ํ•˜๋‹ค.


Git

  • Pull Requestํ•˜๋Š” ๋ฒ•์„ ๋ฐฐ์› ๋‹ค. ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉฐ Comment๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ๊ทธ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ ๋ฐ ์ถฉ๋Œ ๊ด€๋ฆฌํ•˜๋Š” ๋ฒ•์„ ์ตํ˜”๋‹ค.

  • Branch Mergeํ•˜๋Š” ์„ธ๊ฐ€์ง€ ๋ฐฉ๋ฒ•(Merge, Rebase, Fastforward)์„ ๋น„๊ตํ•˜์—ฌ ํ•  ์ค„ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.

  • Git Flow์— ๋Œ€ํ•ด ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.


Web Project

  • ํ”„๋กœ์ ํŠธ ํŒ€๊ณผ ์Šคํ„ฐ๋””๋ฅผ ํ•˜๋ฉฐ ์›น์ƒ ๋กœ๊ทธ์ธ ํ›„ ์ธ์ฆ(Authentication) ๋ฐฉ์‹ 3๊ฐ€์ง€๋ฅผ ์ •๋ฆฌํ–ˆ๋‹ค.
    โ‘  HTTP ํ—ค๋”์— ๋ณด๋‚ด๋Š” ๋ฒ•
    โ‘ก ์„ธ์…˜/์ฟ ํ‚ค ๋ฐฉ์‹
    โ‘ข JWT ํ† ํฐ ์ธ์ฆ ๋ฐฉ์‹

  • ๊ทธ๋Ÿผ ๋กœ๊ทธ์ธํ•  ๋•Œ์— POST API์˜ ์ •๋ณด ๋ณด์•ˆ์€ ๋ˆ„๊ฐ€ ๋‹ด๋‹นํ•˜์ง€?์— ๋Œ€ํ•ด ํ† ์˜ํ•ด๋ณด์•˜๋‹ค. TLS(Trnasport Layer Security, ์ „์†ก ๊ณ„์ธต ๋ณด์•ˆ)์— ๋Œ€ํ•œ ๊ฐœ๋…์ด์—ˆ๊ณ , ์ด์— ๋Œ€ํ•ด์„œ๋Š” ์ฃผ๋กœ HTTPS/SSL์„ ์ ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ, ์ถ”ํ›„ ๋ณด์™„์ด ํ•„์š”ํ•  ๋“ฏ ํ•˜๋‹ค.

  • ERD์— ๋Œ€ํ•ด ๊ณ ๋ฏผํ–ˆ๋‹ค. ํŠนํžˆ ๋‹ค๋Œ€๋‹ค ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐ์—, ๋งค๊ฐœ์ฒด ํ…Œ์ด๋ธ”์„ ๊ฐ€์šด๋ฐ์— ๋‘๊ณ  ๋‘ ํ…Œ์ด๋ธ”์˜ ๊ธฐ๋ณธํ‚ค๋ฅผ ์™ธ๋ž˜ํ‚ค๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ณ ๋ ค์ค‘์ด๋‹ค.

  • SQL Joinํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•ด์•ผ๊ฒ ๋‹ค.


โœ๐Ÿป What to Organize & Summarize (Blog)

Spring

  • Spring Security ์ดˆ๊ธฐ์„ค์ •์— ์–ด๋ ค์›€์ด ์žˆ์—ˆ๋Š”๋ฐ, ์ด์— ๋Œ€ํ•ด ๊ธฐ๋กํ•˜๊ณ  ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค.

  • Container, Bean ๋ณดํ‰ ์„ค๋ช…

  • DTO์˜ ๊ฐœ๋… ๋ฐ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

    • Patch๋Š” DTO๋ฅผ ๋˜ ๋”ฐ๋กœ ๋งŒ๋“ค์–ด์•ผ ํ•˜๋Š”๊ฐ€?
    • ResponseEntity๋ž€?
  • JPA์˜ ๊ธฐ๋ณธ ๋ฌธ๋ฒ• ๋ฐ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

  • Projection

  • JsonIngnore

OOP

  • ๊ด€์‹ฌ์‚ฌ ๋ถ„๋ฆฌ

Java

  • ๋ฌธ์ž์—ด ๋‹ค๋ฃจ๊ธฐ

  • for๋ฌธ : for, enhanced for, for each

  • int vs float vs short vs long

  • stream

  • Math ๋ฉ”์†Œ๋“œ

  • List and Multi Threading

  • class์™€ instance์˜ ๋ฉ”๋ชจ๋ฆฌ ์ €์žฅ ๋ฐฉ์‹ ๋“ฑ ์ฐจ์ด

Python, Java

  • try ... except...๋ณด์ถฉ

Web

  • JWT ์›นํ† ํฐ - ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•

  • SSR - Jinja2

  • ์บ์‹œ(Cache)๋ž€?

PS

  • ์Šคํ„ฐ๋”” : ๋ฐ€๋ฆฐ ์ฝ”ํ…Œ ๋ฌธ์ œ ํ’€์ด ๋“ฑ๋ก

0๊ฐœ์˜ ๋Œ“๊ธ€