๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
TIP

์ฃผ์„์„ ์–ด๋–ป๊ฒŒ ๋‹ค๋Š”๊ฒŒ ์ข‹์„๊นŒ...

by GREEN๋‚˜๋ฌด 2025. 5. 24.
728x90

๐Ÿ’ฌ ํ˜‘์—…๊ณผ ๊ณต๋ถ€๋ฅผ ์œ„ํ•œ "์ฃผ์„ ์ž˜ ๋‹ค๋Š” ๋ฒ•" ๊ฐ€์ด๋“œ

์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ์ฃผ์„์€ ๋‹จ์ˆœํ•œ ๋ฉ”๋ชจ ๊ทธ ์ด์ƒ์ž…๋‹ˆ๋‹ค. ํ˜‘์—…์—์„œ๋Š” ์˜์‚ฌ์†Œํ†ต ๋„๊ตฌ์ด๊ณ , ๊ฐœ์ธ ๊ณต๋ถ€์—์„œ๋Š” ๋‚˜์ค‘์˜ ๋‚˜๋ฅผ ์œ„ํ•œ ์„ค๋ช…์„œ์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ํ˜‘์—…๊ณผ ๊ฐœ์ธ ๊ณต๋ถ€ ๊ฐ๊ฐ์˜ ์ƒํ™ฉ์— ๋งž์ถ˜ ์ฃผ์„ ์ž‘์„ฑ๋ฒ•๊ณผ ์‹ค์ œ ์˜ˆ์‹œ๋ฅผ ์†Œ๊ฐœํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


โœ๏ธ ์ฃผ์„์˜ ๊ธฐ๋ณธ ์›์น™

โœ… 1. ์™œ๋ฅผ ์„ค๋ช…ํ•˜๋ผ

  • ๋ฌด์—‡์„ ์„ค๋ช…ํ•˜๊ธฐ๋ณด๋‹ค๋Š” ์™œ ๊ทธ๋ ‡๊ฒŒ ํ–ˆ๋Š”์ง€๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ) // ์„ฑ๋Šฅ์„ ์œ„ํ•ด ์ด์ค‘ ๋ฃจํ”„ ๋Œ€์‹  ํ•ด์‹œ ๋งต ์‚ฌ์šฉ

โœ… 2. ์ฝ”๋“œ์™€ ๋ฉ€์–ด์ง€์ง€ ์•Š๊ฒŒ

  • ์ฃผ์„์€ ๋ฐ”๋กœ ์œ„๋‚˜ ์˜†์— ์œ„์น˜ํ•ด์•ผ ์ดํ•ด๊ฐ€ ์‰ฝ์Šต๋‹ˆ๋‹ค.
  • ์˜ˆ์™ธ์ ์œผ๋กœ ๋ธ”๋ก ์ฃผ์„์€ ํ•จ์ˆ˜/ํด๋ž˜์Šค ์ƒ๋‹จ์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค.

โœ… 3. ๊ณผํ•˜์ง€๋„, ๋ถ€์กฑํ•˜์ง€๋„ ์•Š๊ฒŒ

  • ๋‹น์—ฐํ•œ ๋‚ด์šฉ์„ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ํ•„์š” ์ด์ƒ์˜ ์„ค๋ช…์€ ์˜คํžˆ๋ ค ๊ฐ€๋…์„ฑ์„ ํ•ด์นฉ๋‹ˆ๋‹ค.

๐Ÿค ํ˜‘์—…์„ ์œ„ํ•œ ์ฃผ์„ ์ž‘์„ฑ๋ฒ•

ํ˜‘์—…์—์„œ๋Š” "๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž"๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์‚ฌ๋žŒ์ด ๋‚ด ์ฝ”๋“œ์˜ ๋งฅ๋ฝ์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ์˜๋„, ์ฃผ์˜์‚ฌํ•ญ, ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ์ด์œ ๋ฅผ ๋ช…ํ™•ํžˆ ๊ธฐ๋กํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ํ˜‘์—… ์‹œ ์œ ์šฉํ•œ ์ฃผ์„ ํŒจํ„ด

1. ์˜๋„ ์„ค๋ช…

// ์ƒˆ๋กœ๊ณ ์นจ ์‹œ ๋กœ๊ทธ์ธ ์œ ์ง€ ์œ„ํ•ด ํ† ํฐ์„ localStorage์—์„œ ๋ถˆ๋Ÿฌ์˜ต๋‹ˆ๋‹ค
const token = localStorage.getItem('token');

2. ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ์ด์œ 

// ์‚ฌ์šฉ์ž๊ฐ€ ํŒŒ์ผ์„ ์„ ํƒํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒํ•  ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœ null ์ฒดํฌ
if (selectedFile == null) {
    return;
}

3. TODO / FIXME ์ฃผ์„ ํ™œ์šฉ

// TODO: API ์‘๋‹ต ์˜ˆ์™ธ์ฒ˜๋ฆฌ ๋กœ์ง ์ถ”๊ฐ€ ์˜ˆ์ •
// FIXME: ํŽ˜์ด์ง€๋„ค์ด์…˜์ด ๋ˆ„๋ฝ๋จ – ์ถ”ํ›„ ๊ตฌํ˜„ ํ•„์š”

4. ๋ณ€๊ฒฝ ํžˆ์Šคํ† ๋ฆฌ (๊ฐ„๋‹จํžˆ)

/*
[2025-05-24 ๋‹ด๋‹น์ž์ด๋ฆ„]
๋ฆฌ์ŠคํŠธ์—์„œ ์ค‘๋ณต ์ œ๊ฑฐ ๋กœ์ง ๋ณ€๊ฒฝ – ์„ฑ๋Šฅ ๊ฐœ์„  ๋ชฉ์ 
*/

 

๐Ÿง  ๊ฐœ์ธ ๊ณต๋ถ€์šฉ ์ฃผ์„ ์ž‘์„ฑ๋ฒ•

๊ฐœ์ธ ํ•™์Šต์—์„œ๋Š” ๋‚ด๊ฐ€ ์ดํ•ดํ•œ ๊ฐœ๋…, ์ฝ”๋“œ ํ๋ฆ„, ์™ธ์šด ๋ฌธ๋ฒ•์„ ์ฃผ์„์œผ๋กœ ์ •๋ฆฌํ•˜๋ฉด ๋ณต์Šตํ•  ๋•Œ ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ ๊ฐœ์ธ ๊ณต๋ถ€์— ์œ ์šฉํ•œ ์ฃผ์„ ํŒจํ„ด

1. ์šฉ์–ด/๊ฐœ๋… ์ •๋ฆฌ

# ํด๋กœ์ €(closure): ๋‚ด๋ถ€ ํ•จ์ˆ˜๊ฐ€ ์™ธ๋ถ€ ํ•จ์ˆ˜์˜ ์ง€์—ญ ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐ

2. ํ๋ฆ„ ์„ค๋ช…

// Step 1. ์‚ฌ์šฉ์ž ์ž…๋ ฅ ๊ฒ€์ฆ
// Step 2. ์„œ๋ฒ„์— ์š”์ฒญ ์ „์†ก
// Step 3. ์‘๋‹ต ๊ฒฐ๊ณผ ์ฒ˜๋ฆฌ

3. ๋ฌธ๋ฒ•/ํŒจํ„ด ์•”๊ธฐ

// initState๋Š” ์œ„์ ฏ์ด ์ฒ˜์Œ ์ƒ์„ฑ๋  ๋•Œ ํ•œ ๋ฒˆ๋งŒ ํ˜ธ์ถœ๋จ
@override
void initState() {
  super.initState();
}

4. ์‹คํ—˜์šฉ ์ฝ”๋“œ ํ‘œ์‹œ

// ์‹คํ—˜: ๋ฐฐ์—ด ๋ณต์‚ฌ๋ฅผ ํฌ์ธํ„ฐ๋กœ ์ฒ˜๋ฆฌํ•ด๋ณด๊ธฐ

 

๐Ÿ’ก ํŒ

ํŒ ์„ค๋ช…
๐Ÿ”„ ์ฃผ๊ธฐ์ ์œผ๋กœ ๊ฐฑ์‹  ์ฝ”๋“œ๊ฐ€ ๋ฐ”๋€Œ๋ฉด ์ฃผ์„๋„ ํ•จ๊ป˜ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•จ
๐ŸŽฏ ์ผ๊ด€๋œ ์Šคํƒ€์ผ ์œ ์ง€ ํŒ€ ์ปจ๋ฒค์…˜์— ๋”ฐ๋ผ ์ฃผ์„ ์Šคํƒ€์ผ ํ†ต์ผ (//, /* */, ///, #)
๐Ÿงน ๋ถˆํ•„์š”ํ•œ ์ฃผ์„ ์ œ๊ฑฐ ์˜๋ฏธ ์—†๋Š” ์ฃผ์„์€ ์‚ญ์ œํ•ด์„œ ์ฝ”๋“œ ์ฒญ๊ฒฐ ์œ ์ง€

๐Ÿงช ์ฃผ์„ ์•ˆ ์จ๋„ ๋˜๋Š” ๊ฒฝ์šฐ๋Š”?

  • ๋„ˆ๋ฌด ๋‹จ์ˆœํ•œ ์ฝ”๋“œ (์˜ˆ: int i = 0;)
  • ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋‚˜ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ž์ฃผ ์“ฐ๋Š” ์ „ํ˜•์ ์ธ ์ฝ”๋“œ (React useState, Flutter build)
  • ํ…Œ์ŠคํŠธ์šฉ ์ž„์‹œ ์ฝ”๋“œ (๋‹จ, ํ˜‘์—… ์ค‘์ด๋ผ๋ฉด ๋ช…์‹œ์ ์œผ๋กœ // ํ…Œ์ŠคํŠธ์šฉ์ด๋ผ๊ณ  ์จ์•ผ ํ•จ)

 

๐Ÿ’ฌ ์–ธ์–ด ๋ฐ ํ™˜๊ฒฝ๋ณ„ ์ฃผ์„ ๊ธฐํ˜ธ ์ •๋ฆฌํ‘œ

์–ธ์–ด / ํ™˜๊ฒฝ ํ•œ ์ค„ ์ฃผ์„ ์—ฌ๋Ÿฌ ์ค„ ์ฃผ์„ ๊ธฐํƒ€ ์ฃผ์„ (๋ฌธ์„œํ™” ๋“ฑ)
C / C++ // /* ... */ ///, /** ... */ (Doxygen)
Java // /* ... */ /** ... */ (JavaDoc)
Python # ์—†์Œ ('''๋Š” ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ) """Docstring""" (ํ•จ์ˆ˜/ํด๋ž˜์Šค ๋ฌธ์„œํ™”)
JavaScript // /* ... */ /** ... */ (JSDoc)
TypeScript // /* ... */ /** ... */ (TSDoc)
Dart // /* ... */ ///, /** ... */ (DartDoc)
Swift // /* ... */ ///, /** ... */ (SwiftDoc)
Kotlin // /* ... */ /** ... */ (KDoc)
Go // /* ... */ (๊ฐ€๋Šฅํ•˜๋‚˜ ๊ถŒ์žฅ X) // + ๋ฐ”๋กœ ์•„๋ž˜์— ํ•จ์ˆ˜ ์œ„์น˜ (GoDoc)
Rust // /* ... */ ///, //!, /** ... */, /*! ... */
SQL -- /* ... */ ์—†์Œ
HTML ์—†์Œ <!-- ... --> ์—†์Œ
CSS ์—†์Œ /* ... */ ์—†์Œ
Shell (bash, zsh) # ์—†์Œ ์—†์Œ
Windows CMD REM ๋˜๋Š” :: ์—†์Œ ์—†์Œ
PowerShell # <# ... #> ์—†์Œ

 

ํ™˜๊ฒฝ ํŠน์ง•
Shell # ์ดํ›„ ๋‚ด์šฉ์€ ๋ชจ๋‘ ์ฃผ์„ ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ .sh์—์„œ๋„ ๋™์ผํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
CMD (Windows ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ) REM ๋˜๋Š” ::๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ::๋Š” ์กฐ๊ฑด๋ฌธ ์•ˆ์—์„œ๋Š” ์˜ค๋ฅ˜ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์–ด REM์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
PowerShell #๋Š” ํ•œ ์ค„ ์ฃผ์„, <# ... #>๋Š” ์—ฌ๋Ÿฌ ์ค„ ์ฃผ์„์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.