C언어 공부, 프로그래밍 독학하면 프로그래머 될 수 있을까?

C언어 공부, 프로그래밍 독학으로 좋은 프로그래머 될 수 있을까?


프로그래밍 독학 프로그래머[비전공자 소프트웨어 엔지니어]


프로그래밍 공부 할 때, C언어 자바 C++ C# 등을 하나의 언어로 생각하세요. 그 이상도 그 이하도 아닙니다. 2~3년차 정도의 실무 경력을 쌓은 개발자라면, 프로그래밍 언어의 특성을 차츰 깨닫게 되고, 문법이 다를 뿐, 결국 구현하는 과정은 똑같다는 생각을 하게 됩니다.


언어를 어느 정도 배운다면 알고리즘, 자료구조 등의 IT 공부하는 것이 좋죠. 읽기 좋은 코드가 좋은 코드라는 프로그래머 교양서적을 읽는 것도 좋겠고요.

그럼 어떤 언어로 공부하는 게 좋을까? 그건 개인의 선택입니다. 알고리즘만 머릿속에 들어있다면 언어를 선택해 자유자재로 구사해 보는 노력이 필요합니다. 구현하는 방법이 중요한 것이지, 프로그래밍 공부를 위해 어떤 언어를 선택하느냐는 부차적인 요소일 뿐입니다.


프로그래밍 언어는 도구일 뿐, 어떤 문제를 어떻게 해결할 것인가? 이게 중요한 부분입니다.


  • 사람이 하는 말(자연어)이 제일 중요하고,
  • 프로그래밍 언어는 뜻(로직)을 전달하는 수단이고,
  • 뜻(로직)을 프로그래밍 언어로 얼마나 잘 표현하는가(알고리즘)를 고민하세요.


그래서 언어는 신경 쓰지 말고, 선호하는 언어로 뭐든 구현할 수 있는 실력을 만들어 놓는 게 좋습니다. 욕심을 부리는 건 그다음입니다.



소프트웨어 개발자 독학[비전공자 소프트웨어 엔지니어]



뜻을 풀이하는 능력, 그러니깐 알고리즘, 자료구조, 디자인 패턴은 프로그래밍 언어가 익숙해지면 배워보세요. 추가로 OOP 탄생 배경을 알면 왜 OOP를 사용해야 하는지 근본적인 이유도 알 수 있습니다. 뭐, 여기에 더해 DB, 대용량 데이터베이스를 배우는 것도 좋아요.


저도 학생 신분일 땐 C#을 선호했으나, 회사에선 MFC, C++, Qt 등을 사용했습니다. 자신 있게 다룰 줄 아는 언어 하나만 있다면 다른 언어에 진입하는 건 편합니다. C++ 이용해 엔진 만들고 C#으로 UI 만드는 등 융합도 할 수 있게 됩니다.


프로그래밍 공부도 중요하지만, 뭐라도 만들어보는 게 필요한 셈이죠. 무에서 유를 창조. 이것이 핵심이죠.



C언어 공부, 프로그래밍 독학하면 프로그래머 될 수 있을까[비전공자 소프트웨어 엔지니어]



그래도 주력 언어는 하나 정해놓는 게 좋습니다.


C/C++ 하고 C#은 다른 언어입니다. C언어와 C++도 엄연히 다른 언어죠. OOP 공부하려면 자바, C++ 등을 공부하면 됩니다. 하지만, 아무리 영어를 잘해도 중국 가면 쓸 일이 거의 없듯, 언어마다 주로 쓰이는 분야가 다릅니다.


만약, 이직하거나 첫 직장을 구하면, 회사에서 쓰던 언어가 있을 테니, 해당 언어를 습득해야죠. 회사에서 사용하는 언어와 개인이 선호하는 프로그래밍 언어는 다를 수 있습니다. 그래서 꾸준히 프로그래밍 공부를 해야 합니다.


난 Java 프로그래밍으로만 먹고 살 거야. 그래서 C++, C# 개발은 안 할 거야~


이런 생각은 하면 안 됩니다. 주력 언어로 Java를 잡고 추가로 C++을 할 줄 안다는 수준은 되어야죠.



c언어 c++ 독학[비전공자 소프트웨어 엔지니어]



다른 언어를 배울 때는, 주력 언어에서 이렇게 구현했는데, 이 언어는 어떻게 구현해야 할까? 라는 식으로 접근하는 게 좋습니다. C++은 웬만한 언어의 특징은 다 포함하고 있어서 자바에서 C++, C++에서 자바로 넘어가는 난이도도 다릅니다.


C언어를 강조하는 이유는 C++ 습득의 난이도 문제입니다. 솔직히 C++ 손이 많이 갑니다. 거꾸로 이야기하면 그만큼 꼼꼼한 코딩 버릇을 익힐 수 있다는 뜻이죠.


위에서 C++을 계속 언급했지만, 어차피 언어를 공부하는 건 개인의 선택입니다. 어느 방향으로 공부할지 결정하는 게 우선이라, 모바일 프로그래머를 꿈꾼다면 안드로이드, 자바, 코틀린 등을 배워야 합니다. 추가로 서버 공부를 하면 좋고요.



c언어 프로그래밍 독학[비전공자 소프트웨어 엔지니어]


만약 CS 프로그램 제작이 목표라면 자바, C++, C# 프로그래밍 공부를 추천합니다.


분야를 떠나서 가장 기본이 되는 프로그래밍 언어입니다. 일반적으로 자바 + C#, C++ + C# 등 경력자들은 주력 언어 + 서브 언어 구현 능력을 보유합니다. 프로그래머 지망하고 IT 공부 중이라면 폭을 넓히는 것도 좋아요.


몇 가지 프로그램(또는 프로젝트)을 구현하면서 흥미가 생기는 언어를 주력으로 삼는 겁니다. 대세를 따르라는 말도 있으나 틀렸습니다. 대세라는 건 아무도 예측할 수 없고, 대세를 따른다고 나의 성공을 보장하지도 않습니다. 개인의 성공 기준도 사람마다 다르죠.


다만, 취직이라는 것만 따지면 Java가 유리합니다. 수요가 많거든요. 수요가 많은 만큼 선택의 폭이 넓습니다. 우리나라 공공기관들은 주로 자바 기반 프로젝트를 발주합니다.




좋은 프로그래머 직업 코딩[비전공자 소프트웨어 엔지니어]



프로그래밍 공부하는 것 때문에 고민 많으실 겁니다. 자바 배운다고 취업이 잘 될까, 안드로이드 배워야 취업이 잘 될까, 어려운데 언제쯤 잘하게 될까? 등 많은 고민을 하실 텐데요.


여러 프로그램을 다루면서 가장 흥미가 생기는 언어를 주력으로 삼으세요. 프로그래밍 언어 하나만 능숙하게 다루게 되면, 다른 언어를 배우는 건 아주 쉬운 일입니다.


프로그래머 진입 장벽이 낮다는 말이 많습니다. 사실이고요. 하지만, 낮은 만큼 낮은 수준의 개발자도 많습니다. 그런 분들은 주로 SI 파견직에 몰려 있습니다.


월화수목금금금 대신 워라벨을 챙기고 싶다면, 언어 공부, 이론 공부, 개발자 교양 등 여러 가지를 챙기세요. 4년제 컴퓨터공학과 학생들은 4년이나 이걸 배웁니다. 그만큼 차이가 크니 따라잡기 위해선 효율적으로 IT 공부해야죠.


하여튼, 열심히 하세요. 그러면 길이 보입니다.


C언어 공부, 프로그래밍 독학으로 좋은 프로그래머 될 수 있을까?


댓글

Designed by JB FACTORY