데일리 작(Job) 지식

μ½”λ”©ν…ŒμŠ€νŠΈ, μ–Έμ–΄λŠ” λ­˜μ¨μ•Όν• κΉŒ? μžλ°”? 파이썬? C++?

κ°œλ°œν•˜λŠ” 주디씨 2023. 10. 11. 14:06

개발자둜 μ·¨μ—…/이직을 μœ„ν•΄μ„œ μ½”λ”©ν…ŒμŠ€νŠΈλŠ” ν•„μˆ˜μΈ μ‹œλŒ€κ°€ λ˜μ—ˆλ‹€. μ•Œκ³ λ¦¬μ¦˜μ€ μ „κ³΅ν–ˆμ„ λ•ŒλΆ€ν„° μ€‘μš”μ„±μ„ μ΅νžˆλ“€μ–΄μ™”κ³ , κ³΅λΆ€ν•˜λŠ” 것이 λ‹Ήμ—°ν•˜λ‹€κ³  μƒκ°ν•œλ‹€. κ·ΈλŸ¬λ‚˜, 사싀 μ‹€λ¬΄μ—μ„œλŠ” 맀번 μ•Œκ³ λ¦¬μ¦˜μ„ λ”°μ Έκ°€λ©° μƒκ°ν•˜μ§„ μ•Šμ•˜κΈ° λ•Œλ¬Έμ— μ–΄λŠμ •λ„λŠ” 동떨어진 감이 없지 μ•Šμ•„μžˆμ§€λ§Œ κΈ°λ³Έ μ†Œμ–‘μ΄ λœλ‹€λŠ” μ μ—μ„œλŠ” 맀우 긍정적인 νŽΈμ΄λ‹€.

 

μ•”νŠΌ ν•„μš”μ„±μ€ μΈμ§€ν•˜κ³  μžˆμ—ˆλ‹€λŠ” 말이닀.

 

λ¨Όμ €, μ½”λ”©ν…ŒμŠ€νŠΈλ₯Ό μ€€λΉ„ν•˜λŠ” μž…μž₯μ—μ„œ κ°€μž₯ 첫 관문은 μ–΄λ–€ μ–Έμ–΄λ₯Ό 선택할 것인가?라고 μƒκ°ν•œλ‹€.

 

 

λ„ˆλ¬΄ λ§‰λ§‰ν•˜μ§€ μ•Šμ€κ°€..?

λ¬΄μž‘μ • λ§‰λ§‰ν•œ 것은 μ•„λ‹ˆμ—ˆλ‹€. (사싀 책도 κ΅¬λ§€ν•˜κ³ , κ°•μ˜λ„ λ“€μ–΄λ΄„...)

 

ν•˜μ§€λ§Œ μ΄λ•Œλ§ˆλ‹€ λ­”κ°€ 20%κ°€ 계속 λΆ€μ‘±ν•œ λŠλ‚Œμ΄ λ“€μ—ˆλ‹€.

사싀 코딩이 μ’‹μ•„μ„œ, 개발이 μ’‹μ•„μ„œ, ν”„λ‘œκ·Έλž¨μ΄ μ’‹μ•„μ„œ 개발자λ₯Ό ν•΄μ•Όκ² λ‹€κ³  마음 λ¨Ήμ—ˆλ˜ μˆœκ°„κ³ΌλŠ” 쑰금 달리 μ–΄λŠμƒŒκ°€λΆ€ν„°λŠ” μ‹œν—˜μ„ μœ„ν•œ 곡뢀λ₯Ό ν•˜κ²Œ 된 것 κ°™λ‹€... κ·Έλ ‡λ‹€λ³΄λ‹ˆ, λ³€λͺ…일 μˆ˜λ„ μžˆκ² μ§€λ§Œ κ³΅λΆ€ν•˜λŠ” 것도 손도 μ•ˆκ°€κ³ ..;;;γ…œγ…œγ…œγ…œ κ·Έλƒ₯ λ‹΅λ‹΅ν•˜κ³  λ§‰λ§‰ν•˜κ³  두렀움 뿐이 μ—ˆλ˜ 것 κ°™λ‹€...

 

μ‹œν—˜λ§Œμ„ μœ„ν•œ 곡뢀가 λ˜μ–΄λ²„λ¦¬λŠ” μˆœκ°„ κ·Έ κ³΅λΆ€λŠ” ν•˜κΈ°μ‹«μ–΄μ§ˆ 뿐 μ•„λ‹ˆλΌ 자꾸만 ν”Όν•˜κ³  μ‹Άμ–΄μ§€λŠ”λ° κ°„κ³Όν•˜κ³  μžˆμ—ˆλ˜ 것 κ°™λ‹€.

κΈ‰ν• μˆ˜λ‘ λŒμ•„κ°€μž, κΎΈμ€€ν•˜κ³  μ°¨λΆ„ν•˜κ²Œ

μ½”λ”©ν…ŒμŠ€νŠΈμ˜ 'μ½”'μžλ„ λͺ¨λ₯΄λŠ”μ§€λ§Œ μ§€κΈˆλΆ€ν„° λ‚΄κ°€ μƒκ°ν•˜κ³  κ³ λ―Όν–ˆλ˜ 뢀뢄을 ν•¨κ»˜ λ‚˜λˆ„λ €κ³  ν•œλ‹€.

 


 

 

μ–Έμ–΄ μ„ νƒμ—μ„œ κ°€μž₯ ν—·κ°ˆλ Έλ˜ 말과 μ˜μ‹μ˜ 흐름...

μ–Έμ–΄λ₯Ό μ„ νƒν•˜κΈ°μ— μ•žμ„œ 각 언어에 λŒ€ν•œ λ‚˜μ˜ baseλŠ” λ‹€μŒκ³Ό κ°™μ•˜λ‹€.

* C : ν•™λΆ€ λ•Œ ν”„λ‘œκ·Έλž˜λ° 기초둜 배움
* C++ : ν•™λΆ€ λ•Œ μ•Œκ³ λ¦¬μ¦˜ κ³Όλͺ©μœΌλ‘œ κ΅¬ν˜„ν•΄λ΄„
* Java : ν˜„μ§ 개발자둜 μΌν•˜λŠ” 쀑...
* Python : 빅데이터뢄석 함 

μ–Έμ–΄μ•Ό 뭐 사싀 개발자라면 μ‹œκ°„μ„ μ£Όκ³  ν•™μŠ΅ν•˜λŠ” 것이 어렡진 μ•Šλ‹€κ³  μƒκ°ν•œλ‹€. λ‹€λ§Œ, ν˜„μ§μžλ‘œ μΌν•˜λ©° μ‚¬μš©ν•˜λŠ” μ£Όλ ₯μ–Έμ–΄κ°€ 'μžλ°”'λΌλŠ” 점이 생각보닀 타 μ–Έμ–΄λ₯Ό μ‚¬μš©ν•˜λŠ”λ° μžˆμ–΄μ„œ 어렀움이 μžˆμ—ˆλ‹€. λ‚˜λŠ” λ©€ν‹°κ°€ μ•ˆλ˜λŠ” μ‚¬λžŒμ΄λΌ;;; ν•˜λ£¨ 8μ‹œκ°„μ„ Javaλ§Œμ‚¬μš©ν•˜λ‹€λ³΄λ‹ˆ μ•Œκ³ μžˆλ˜ C, Python의 λ¬Έλ²•μ΄λ‚˜ μ‚¬μš©μŠ€ν‚¬μ„ μ–΄λŠμ •λ„ λ– μ˜¬λ¦¬λŠ” 것이 μ•„λ‹ˆλΌλ©΄ μ‰½κ²Œ μΈμ§€ν•˜κΈ°κ°€ μ–΄λ €μ› λ‹€...

 

κ·ΈλŸΌμ—λ„ λΆˆκ΅¬ν•˜κ³  μ•„λž˜μ™€ 같은 μ΄μœ λ“€ λ•Œλ¬Έμ— μ–Έμ–΄ 선택에 λŒ€ν•œ 방황을 μ˜€λž˜ν–ˆλ‹€.

 

 


 

 

μžλ°”λŠ” μžλ£Œκ°€ λΆ€μ‘±ν•˜λ‹ˆ λΉ„μΆ”μ²œ

μžλ°”λŠ” μžλ£Œκ°€ λ‹€μ†Œ λΆ€μ‘±ν•˜κ³ , μ½”λ”©ν…ŒμŠ€νŠΈμ— μœ μš©ν•œ ν‘œμ€€ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ λΆ€μ‘±ν•˜κ³ , μ½”λ“œκ°€ κΈΈμ–΄μ§„λ‹€λŠ” 단점이 μžˆμ–΄ μΌλ°˜μ μœΌλ‘œλŠ” λΉ„μΆ”μ²œ

였??? λ‚˜λŠ” μžλ°” κ°œλ°œμž”λ°,, μ½”λ”©ν…ŒμŠ€νŠΈμ— μ ν•©ν•˜μ§€ μ•Šλ‹€? μ˜€μΌ€μ΄.. 파이썬 ν•™λΆ€ λ•Œ λ°μ΄ν„°λΆ„μ„μœΌλ‘œ 쑰금 κΉ”μ§ν•΄λ΄€μœΌλ‹ˆκΉŒ ν•  수 μžˆκ² μ§€ 뭐. "파이썬이 닡이닀.."

 

νŒŒμ΄μ¬μ€ C++에 λΉ„ν•΄ λŠλ¦¬λ‹€

νŒŒμ΄μ¬μ€ C++에 λΉ„ν•΄ μƒλ‹Ήνžˆ λŠλ¦½λ‹ˆλ‹€. μ•Œκ³ λ¦¬μ¦˜μ˜ μ’…λ₯˜μ— 따라 λ‹€λ₯΄μ§€λ§Œ 5λ°° μ •λ„μ˜ μ°¨μ΄λŠ” 기본이고 μ‹¬ν•˜κ²ŒλŠ” 100λ°° κ°€κΉŒμ΄ μ°¨μ΄λ‚˜κΈ°λ„ ν•©λ‹ˆλ‹€. λ¬Όλ‘  μ½”λ”©ν…ŒμŠ€νŠΈ μ£Όμ΅œμžλ“€λ„ 언어별 속도 차이λ₯Ό μΆ©λΆ„νžˆ 잘 μ•Œκ³  μžˆκΈ°μ— 보톡 μ–Έμ–΄λ³„λ‘œ μ‹œκ°„ μ œν•œμ„ λ‹€λ₯΄κ²Œ λ‘‘λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ΄λŸ¬ν•œ 점을 κ°μ•ˆν•˜λ”λΌλ„ νŒŒμ΄μ¬μ€ λ„ˆλ¬΄ λŠλ¦½λ‹ˆλ‹€. κ·Έλ ‡κΈ° λ•Œλ¬Έμ— λ§Œμ•½ μ •ν•΄λ‘œ μ ‘κ·Όν–ˆλ‹€λ©΄ λ‹Ήμ—°νžˆ C++κ³Ό 파이썬 λͺ¨λ‘ ν†΅κ³Όν•˜κ² μ§€λ§Œ(사싀 λ†€λžκ²Œλ„ νŒŒμ΄μ¬μ—μ„œ μ •ν•΄μ‘°μ°¨ ν†΅κ³Όλ˜μ§€ μ•ŠλŠ” κ²½μš°κ°€ μ•„μ£Ό 가끔씩 있긴 ν•©λ‹ˆλ‹€) 접근을 잘λͺ»ν•΄μ„œ λΉ„νš¨μœ¨μ μΈ μ½”λ“œλ₯Ό μ œμΆœν–ˆμ„ λ•Œ C++은 ν†΅κ³Όλ˜μ§€λ§Œ νŒŒμ΄μ¬μ€ ν†΅κ³Όλ˜μ§€ λͺ»ν•˜λŠ” κ²½μš°κ°€ 생길 수 μžˆμŠ΅λ‹ˆλ‹€

μ•„? 느리면 μ•ˆλ˜λŠ”κ±° μ•„λ‹Œκ°€? 파이썬 μΈν„°ν”„λ¦°νŠΈλ‹ˆκΉŒ μ’€ 느리긴 ν•˜μ§€;;; C++ μ–΄λ ΅μ§€λ§Œ,, κ·Έλž˜λ„ μ–Έμ–΄ λ°°μš΄λ‹€λŠ” μƒκ°μœΌλ‘œ ν•˜λ©΄ λ˜μ§€ μ•Šμ„κΉŒ? "κ°€λ³΄μžκ³  C++ κ°•μ˜μ™€ μ±… ꡬ맀함 β— β€Ώβ—  "

 

C++은 λŸ¬λ‹μ»€λΈŒκ°€ μ‘΄μž¬ν•œλ‹€

μ–Έμ–΄ λ‚œμ΄λ„μ  μΈ‘λ©΄μ—μ„œ 보면 λͺ¨λ‘κ°€ κ³΅κ°ν•˜κ² μ§€λ§Œ 파이썬이 C++에 λΉ„ν•΄ μ••λ„μ μœΌλ‘œ μ‰½μŠ΅λ‹ˆλ‹€. λ¬Έλ²•μ˜ 딱딱함을 μ œμ™Έν•˜κ³ μ„œλΌλ„ C++은 unmanaged language의 νŠΉμ„±μƒ ν¬μΈν„°μ˜ 잘λͺ»λœ μ‚¬μš©, λ°°μ—΄ 인덱슀 λ²”μœ„ 초과, Integer overflow λ“±μ˜ 문제λ₯Ό 금방 μ•Œμ•„μ°¨λ¦¬κΈ° νž˜λ“€μ–΄ μ΄ˆμ‹¬μžμ˜ ν•™μŠ΅μ— μ•„μ£Ό 큰 μ• λ‘œμ‚¬ν•­μœΌλ‘œ λ‹€κ°€μ˜΅λ‹ˆλ‹€. λ˜ν•œ Cμ—μ„œ char λ°°μ—΄λ‘œ λ¬Έμžμ—΄μ„ λ‹€λ£° λ•Œ 보닀야 상황이 λ‚˜μ•„μ‘Œλ‹€μ§€λ§Œ μ—¬μ „νžˆ λ¬Έμžμ—΄μ˜ μ²˜λ¦¬κ°€ λ‹€μ†Œ κΉŒλ‹€λ‘­μŠ΅λ‹ˆλ‹€. 반면 νŒŒμ΄μ¬μ€ λ‹€μ†Œ νŽΈν•˜κ²Œ 곡뢀λ₯Ό μ΄μ–΄κ°ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.

C++둜 κ°•μ˜ κΉ”μ§μ΄λ©΄μ„œ λŠλ‚€μ  = λ„ˆλ¬΄μ–΄λ €μš΄λ°..?!?!?!?!?! "γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹νŒŒμ΄μ¬γ…‹γ…‹γ…‹μœΌλ‘œ λ‹€μ‹œ λŒμ•„κ°ˆλž˜~"

 

 

κ²°λ‘ 

μ‘°κΈˆμ΄λΌλ„ μž˜ν•  수 μžˆλŠ” μ–Έμ–΄, μ˜€λžœμ‹œκ°„ λ…ΈμΆœλ˜λŠ” μ–Έμ–΄

이 λ‚΄μš©μ„ 보고 깨달은 생각은 κ·Έλƒ₯ ν•˜κ³ μ‹Άμ€κ±Έλ‘œ ν•˜μ„Έμš”.. μž…λ‹ˆλ‹€γ…‹γ…‹γ…‹γ…‹γ…‹γ…‹ λ¬Όλ‘  μ–Έμ–΄λ§ˆλ‹€ μž₯단점이 ν™•μ‹€ν•œ 건 λ§žλ‹€.

κ·ΈλŸ¬λ‚˜, μ‚¬λžŒλ§ˆλ‹€ λ³ΈμΈμ—κ²Œ μ ν•©ν•œ μ–Έμ–΄λŠ” λ‹€λ₯Ό 것이닀. κ·ΈλŸ¬λ‹ˆ λ‹€λ₯Έ μ‚¬λžŒμ˜κ²¬μ— νœ˜λ‘˜λ¦¬μ§€λ§κ³  본인이 μ‘°κΈˆμ΄λΌλ„ μž˜ν•  수 μžˆλŠ” μ–Έμ–΄λ₯Ό μ„ νƒν•˜λŠ” 것이 λ§žμ„ 것 κ°™λ‹€κ³  μƒκ°ν•œλ‹€.

 

 

 

μ’‹μ•˜μ„œ, μžλ°”λ‘œ κ°€λ³΄μžκ³