๐Ÿ‘ฉ‍๐Ÿ’ปProgramming

JavaScript vs C#: ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด ๋น„๊ต

taesooya 2023. 5. 29.

JavaScript vs C#: ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด ๋น„๊ต

JavaScript์™€ C#์€ ๋ชจ๋‘ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋ฉฐ, ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ์™€ ํ•จ์ˆ˜๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‘ ์–ธ์–ด๋Š” ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ์ฐจ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋™์  ์–ธ์–ด vs ์ •์  ์–ธ์–ด

JavaScript๋Š” ๋™์  ์–ธ์–ด์ด๊ณ  C#์€ ์ •์  ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ์ฆ‰, JavaScript๋Š” ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ์‹คํ–‰ ์ค‘์— ๋™์ ์œผ๋กœ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ C#์€ ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ์ปดํŒŒ์ผ ํƒ€์ž„์— ๊ฒฐ์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด JavaScript๋Š” C#๋ณด๋‹ค ๋” ์œ ์—ฐํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ์ง€๋งŒ, C#์€ JavaScript๋ณด๋‹ค ์†๋„๊ฐ€ ๋” ๋น ๋ฆ…๋‹ˆ๋‹ค.

๊ฐ์ฒด ์ง€ํ–ฅ ๊ธฐ๋Šฅ

JavaScript๋Š” C#๋ณด๋‹ค ๋” ๋งŽ์€ ๊ฐ์ฒด ์ง€ํ–ฅ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, JavaScript๋Š” ํด๋ž˜์Šค, ์ƒ์†, ๋‹ค์ค‘ ์ƒ์†์„ ์ง€์›ํ•˜์ง€๋งŒ C#์€ ํด๋ž˜์Šค์™€ ์ƒ์†๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ž๋ฃŒ๊ตฌ์กฐ

JavaScript์™€ C#์˜ ์ž๋ฃŒ๊ตฌ์กฐ์˜ ์ข…๋ฅ˜์™€ ์ฐจ์ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  JavaScript C#
๋ฐฐ์—ด Array Array
๊ฐ์ฒด Object Object
ํŠœํ”Œ Tuple Tuple
๋งต Map Dictionary
์„ธํŠธ Set HashSet

์ˆซ์žํ˜•

JavaScript์™€ C#์˜ ์ˆซ์žํ˜•์˜ ์ข…๋ฅ˜์™€ ์ฐจ์ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  JavaScript C#
์ •์ˆ˜ Number Int32
๋ถ€๋™์†Œ์ˆ˜์  Number Double
8๋น„ํŠธ ์ •์ˆ˜ Number SByte
16๋น„ํŠธ ์ •์ˆ˜ Number UInt16
32๋น„ํŠธ ์ •์ˆ˜ Number Int32
64๋น„ํŠธ ์ •์ˆ˜ Number UInt64

๊ณตํ†ต์ 

JavaScript์™€ C#์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณตํ†ต์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.
  • ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋„ ๊ฐ’์ด ํ• ๋‹น๋˜์—ˆ์„ ๋•Œ ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.

์ฐจ์ด์ 

ํ•˜์ง€๋งŒ ๋‘ ์–ธ์–ด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฐจ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋™์  ์–ธ์–ด vs ์ •์  ์–ธ์–ด
  • ์ž๋ฃŒ๊ตฌ์กฐ์™€ ์ˆซ์žํ˜•์˜ ์ข…๋ฅ˜์™€ ์ฐจ์ด

์–ด๋–ค ์–ธ์–ด๊ฐ€ ๋” ๋‚˜์€์ง€์— ๋Œ€ํ•œ ๋‹ต์€ ์—†์Šต๋‹ˆ๋‹ค. ์–ธ์–ด ์„ ํƒ์€ ํŠน์ • ํ”„๋กœ์ ํŠธ์˜ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ ๊ฒฐ์ •๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋Œ“๊ธ€