Home - noir1986/guide-web-development GitHub Wiki

์›น ๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ

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

๋ชฉ์ฐจ

1. ํ‘œ๊ธฐ๋ฒ•

์–ธ์–ด๋งˆ๋‹ค ๊ถŒ์žฅํ•˜๋Š” ํ‘œ๊ธฐ๋ฒ•์ด ๋‹ค๋ฅด๊ณ , ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์—์„œ ์—ฌ๋Ÿฌ ํ‘œ๊ธฐ๋ฒ•์„ ํ˜ผ์šฉํ•˜์—ฌ ์‚ฌ์šฉ ํ•  ๊ฒฝ์šฐ ๊ฐ€๋…์„ฑ์ด ์ข‹์ง€ ์•Š๋‹ค.

1.1. ์†Œ๋ฌธ์ž lowerCamelCase, headlessCamelCase

๋‹จ๋ด‰๋‚™ํƒ€ ํ‘œ๊ธฐ๋ฒ•์ด๋ผ๊ณ ๋„ ํ•œ๋‹ค. ๋ณดํ†ต ์นด๋ฉœ ์ผ€์ด์Šค๋ผ๊ณ  ํ•˜๋ฉด lower ์นด๋ฉœ ์ผ€์ด์Šค๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๋ฌธ์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ํ‘œ์‹œํ•˜๋˜, ์ด๋ฆ„์˜ ์ฒซ ๋ฌธ์ž๋Š” ์†Œ๋ฌธ์ž๋กœ ์ ๋Š”๋‹ค.

์ผ๋ฐ˜ ํ‘œ๊ธฐ๋ฒ• ์†Œ๋ฌธ์ž ์นด๋ฉœ ์ผ€์ด์Šค ํ‘œ๊ธฐ๋ฒ•
Class Name className ํด๋ž˜์Šค ๋ช…
object Type objectType ํด๋ž˜์Šค ๋ช…
background Color backgroundColor ํด๋ž˜์Šค ๋ช…

1.2. ๋Œ€๋ฌธ์ž ์นด๋ฉœ ์ผ€์ด์Šค (UpperCamelCase), ํŒŒ์Šค์นผ ์ผ€์ด์Šค (PascalCase)

CamelCase, BackgroundColor, ClassName ์Œ๋ด‰๋‚™ํƒ€ ํ‘œ๊ธฐ๋ฒ•์ด๋ผ๊ณ ๋„ ํ•œ๋‹ค. ์ „์ฒด ์ด๋ฆ„์˜ ์ฒซ ๋ฌธ์ž๋ฅผ ํฌํ•จํ•œ ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๋ฌธ์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ํ‘œ์‹œํ•œ๋‹ค.

1.3. ์Šค๋„ค์ดํฌ ์ผ€์ด์Šค (snake_case)

camelcase, backgroundcolor, class_name ๊ฐ ๋‹จ์–ด์˜ ์‚ฌ์ด๋ฅผ ์–ธ๋”๋ฐ”_๋กœ ๊ตฌ๋ถ„ํ•ด์ฃผ๋Š” ํ‘œ๊ธฐ๋ฒ•์ด๋‹ค.

1.4. kebab-case, spinal-case, Train-Case, Lisp-case

1.5. ํ—๊ฐ€๋ฆฌ์•ˆ ํ‘œ๊ธฐ๋ฒ• (Hungarian Notation)

์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๋ณ€์ˆ˜ ๋ฐ ํ•จ์ˆ˜์˜ ์ด๋ฆ„ ์ธ์ž ์•ž์— ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๋ช…์‹œํ•˜๋Š” ํ‘œ๊ธฐ๋ฒ•์ด๋‹ค. 80๋…„๋Œ€ ๋‹น์‹œ์—๋Š” IDE๋ผ๋Š”๊ฒŒ ๋‹ค๋“ค ๋ถ€์‹คํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ๋˜๊ธฐ ์‹œ์ž‘ํ–ˆ์ง€๋งŒ ์ง€๊ธˆ์€ MS๋„ ๊ณต์‹ ๊ฐ€์ด๋“œ๋ผ์ธ์—์„œ ์‚ฌ์šฉํ•˜์ง€ ๋ง ๊ฒƒ์„ ๊ถŒ๊ณ ํ•˜๊ณ  ์žˆ๋‹ค.

์žฅ์ 

  • ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ๋ณ€์ˆ˜๋ช…์—์„œ ๋ฐ”๋กœ ์ถ”์ • ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๊ฐ™์€ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์œ ํ˜•์˜ ๋ณ€์ˆ˜๊ฐ€ ์žˆ์„๋•Œ ์ถฉ๋™์„ ๋ฐฉ์ง€ ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋‹จ์ 

  • ๋ฐ์ดํ„ฐ ์œ ํ˜•์ด ๋ณ€๊ฒฝ๋  ๊ฒฝ์šฐ ๋ณ€์ˆ˜ ๋ฐ ํ•จ์ˆ˜ ๋ช…์„ ๋ณ€๊ฒฝํ•ด์•ผ ํ•œ๋‹ค.
  • ์ธ์ž์˜ ๋ช…์นญ์„ ๊ธฐ์–ตํ•˜๊ธฐ ์‰ฝ์ง€ ์•Š๋‹ค.

๊ณตํ†ต

์ ‘๋‘์‚ฌ ๋ฐ์ดํ„ฐ ์œ ํ˜• ์„ค๋ช…
b byte, boolean, bit ์ฐธ, ๊ฑฐ์ง“
n int, short ์ •์ˆ˜
i int, short ์ธ๋ฑ์Šค
c int, short ํฌ๊ธฐ
l long, bigint -
f float -
d, db double -
ld long double -
w word -
dw double word -
qw quad word -
ch char -
sz quad word NULL๋กœ ๋๋‚˜๋Š” ๋ฌธ์ž์—ด
str string NULL๋กœ ๋๋‚˜๋Š” ๋ฌธ์ž์—ด
arr quad word NULL๋กœ ๋๋‚˜๋Š” ๋ฌธ์ž์—ด
p pointer 16bit, 32bit
lp long pointer 64bit
psz long pointer 16bit, 32bit
lpsz long pointer 64bit
fn function ํ•จ์ˆ˜
pfn pointer function 16bit, 32bit
lpfn long pointer function 64bit

OOP

์ ‘๋‘์‚ฌ ๋ฐ์ดํ„ฐ ์œ ํ˜• ์„ค๋ช…
g_ - ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ ์ „์—ญ ๋ณ€์ˆ˜
m_ - ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„ ๋ณ€์ˆ˜
s_ - ํด๋ž˜์Šค์˜ static ๋ณ€์ˆ˜
c_ - ํ•จ์ˆ˜์˜ static ๋ณ€์ˆ˜

์˜ˆ

์ผ๋ฐ˜ ํ‘œ๊ธฐ๋ฒ• ์†Œ๋ฌธ์ž ์นด๋ฉœ ์ผ€์ด์Šค ํ‘œ๊ธฐ๋ฒ• ์„ค๋ช…
Class Name strClassName ํด๋ž˜์Šค ๋ช… ๋ฌธ์ž์—ด
Sale Price nSalePrice ํŒ๋งค ๊ธˆ์•ก ์ •์ˆ˜
object Type g_arrType ์ „์—ญ ์œ ํ˜• ๋ฐฐ์—ด

๋ชฉ์ฐจ๋กœ ๋Œ์•„๊ฐ€๊ธฐ

2. ์†Œ์Šค ํŒŒ์ผ ๊ธฐ๋ณธ ์‚ฌํ•ญ

ํŒŒ์ผ ๋ช…

ํŒŒ์ผ ์ด๋ฆ„์€ ๋ชจ๋‘ ์†Œ๋ฌธ์ž ์—ฌ์•ผํ•˜๋ฉฐ ๋ฐ‘์ค„ ( _) ๋˜๋Š” ๋Œ€์‹œ ( -) ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ์ง€๋งŒ ์ถ”๊ฐ€ ๊ตฌ๋‘์  ์€ ํฌํ•จ๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ทœ์น™์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ํŒŒ์ผ ์ด๋ฆ„์˜ ํ™•์žฅ์ž๊ฐ€ ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค .js.

ํŒŒ์ผ ์ธ์ฝ”๋”ฉ : UTF-8

์†Œ์Šค ํŒŒ์ผ์€ UTF-8 ๋กœ ์ธ์ฝ”๋”ฉ๋ฉ๋‹ˆ๋‹ค

๋ชฉ์ฐจ๋กœ ๋Œ์•„๊ฐ€๊ธฐ

3. IDE(ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ) ๋ฐ ์—๋””ํ„ฐ

Notepad++

๋ฌด๋ฃŒ ์—๋””ํ„ฐ ์ค‘ ๊ฐ€์žฅ ์•Œ๋ ค์ง„ ์˜คํ”ˆ์†Œ์Šค ์—๋””ํ„ฐ๋กœ Syntax highlighting ๋“ฑ ๊ธฐ๋ณธ์ ์ธ ์—๋””ํ„ฐ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋ฉฐ FTP ๋ฅผ ํฌํ•จํ•œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์ œ๊ณตํ•œ๋‹ค.

์ฐธ๊ณ 
๊ณต์‹ ์‚ฌ์ดํŠธ ๋ฐ ๋‹ค์šด๋กœ๋“œ : http://notepad-plus-plus.org/

Brackets

Adobe์—์„œ ๊ฐœ๋ฐœํ•œ ์˜คํ”ˆ์†Œ์Šค ์›น ์—๋””ํ„ฐ๋กœ ์‹ค์‹œ๊ฐ„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ(ํฌ๋กฌ์—์„œ๋งŒ ์ง€์›)์„ ์ง€์›ํ•˜๊ณ , JS ํŽธ์ง‘ ์‹œ JSLint๊ฐ€ ๋ฐ”๋กœ ์ ์šฉ๋˜๋Š” ๋“ฑ HTML, CSS, JS์— ๋Œ€ํ•ด ๋‹ค์–‘ํ•˜๊ณ  ๊ฐ•๋ ฅํ•œ ํŽธ์ง‘ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.

์ฐธ๊ณ 
๊ณต์‹ ์‚ฌ์ดํŠธ ๋ฐ ๋‹ค์šด๋กœ๋“œ : http://brackets.io/

Atom

์ฐธ๊ณ 
๊ณต์‹ ์‚ฌ์ดํŠธ ๋ฐ ๋‹ค์šด๋กœ๋“œ : https://atom.io/

Visual Studio Code

์ฐธ๊ณ 
๊ณต์‹ ์‚ฌ์ดํŠธ ๋ฐ ๋‹ค์šด๋กœ๋“œ : https://code.visualstudio.com/

๋ชฉ์ฐจ๋กœ ๋Œ์•„๊ฐ€๊ธฐ