본문 바로가기

Intro of programming

언어에 대하여...

주의 !!  이 글은 필자의 경험으로  머릿속에 흐름대로 작성된 글이므로 가볍게 읽어 주시길 바랍니다.


앞서 작성한 프로그래밍에 대하여.. 의 글과 달리 언어에 대하여... 에 대한 글을 작성하기에 고민이 많았다. 

 

누구의 시점에서 혹은 누구의 관점에서 어느정도 수준으로 설명해아 할지 정하기 어려웠기 때문이다.

 

그래서 프로그래밍에 입문하여 스스로 아리송하고 의문이었던 질문에 대해 그동안의 경험으로  찾은 답을 적도록 하겠다.

 

 

Q.1  어떤 언어를 공부해야 하나?

 

A. 만일 프로그래밍이 처음이고 시간이 많다면 무조건 쉬운거!!! ex) python,Web  왜냐하면 프로그래밍에 대해 어려움을 느끼고  입문하자마자  포기를 하는 사람들을 많이 봐왔기 때문이다. 필자도 학부시절 JAVA로 입문하여 프포자 상태였다...   죄송합니다 교수님

 

 하지만 그럼에도 불구하고 나에게 시간조차 없다면? 내가 갖고있는 목표에 맞는 언어를 공부하는게 맞다.

ex) 빨리 취업을 해야한다면 수요가 높은 JAVA

ex) 데이터 처리 관련 분야를 공부하고 싶다면 python

ex) 웹 개발자가 되고싶다면 javascript 

ex) 어플을 개발하고 싶다면 kotlin or swift

등 많은 분야가 있기에 나머지는 생략.. 사실 나머지는 잘 모른다..

 

사실 언어에 대해 크게 얽매일 필요가 없다. 흔히 말하듯 도구일 뿐이기 때문이다. 마치 십자드라이버,일자드라이버 ,뺸치 같은?

 

언어마다 특성과 장단점이 제각각이라 요구된 상황에 구현하기에 적절한 언어를 선택해 사용하는게  가장 베스트 이기 때문이다.

 

성능을 생각하면 메모리관리가 우수한 컴파일언어인 C 혹은 JAVA

가볍게 빠른 구현이 목적이거나 데이터를 다루는 작업이 많다면  관련 라이브라리가 우수한 python 

 

장인은 도구를 탓하지 않는다고 했던가? 우수한 프로그래머는 언어에 얽머애지 않는다. 라고 봐도 좋은것 같다.

 

중요한것은 주어진 문제 및 요구사항을 해석해서 프로그래밍 화 시키는 능력, 즉 문제 해결능력을 기르는것이 중요하다. 

 

Q.2 프로그래밍 언어만 잘하면 되냐  흔히 말하길 코더가 되지 마라고 하는데 코더와 프로그래머의 차이는?

 

A. 코더를 영문 번역가에 비유하자면 프로그래머는 강연가 설계사  무역가 등등이  아닐까 싶다

 

번역가는 한글=>영어로 변환 해주는 직업이기 때문에  코더도 마찬가지로 인간의 언어(논리)=>컴퓨터 언어 로 바꾸는 직업이다

 

따라서 번역가가 Top 급들만 대접받듯 코더들도 추후에는 Top 급들만 살아남을 듯 싶다.

 

그렇다면 프로그래머란? 강연가는  영어+자신만의 사상(잡지식 and 경험)   설계사는 영어+건축설계지식, 무역가는 영어+무역지식

 

등으로 자신들만의 가치를 창출한다.

 

따라서 프로그래머 또한 전공지식이나 여타 전문 지식이 필요하다.

 

마치 프론트엔드 엔지니어는 브라우저 렌더링 구조 라던지 서버개발자는 데이터베이스 지식이라던지

 

지식을 기반으로 효율적이고 높은 퍼포먼스를 가능케 설계(프로그래밍)하는것이 프로그래머가 아닐까 싶다.

 

 

Q. 3 프로그래밍 언어 책을 봐도 도무지 이해가 안되고 와 닿지가 않는다. 어떻게 공부를 해야하나?

 

A . 프로그래밍 언어 책을 처음부터 깊게 보지 않는걸 추천한다. 벽돌마냥 두꺼운 프로그래밍 책을 보더라도 해당 개념이 왜 존재하는지, 어디에 사용을 해야 되는지 보더라도 현 상황에서는 프로젝트 경험이 거의 전무 한 상태에서 이해도 제대로 안되고 왜 써야하느니 무엇을 의미하는지 이해가 안되기 때문이다.  따라서 가장 좋은것은 가벼운 프로젝트 부터 시작 하는거지만 그것 마저도  너무 막연하기만 하니 개인적으로 추천하는 것은 코딩테스트(백준,코드포스) 사이트에서 가볍게 입출력 부터 시작하여 문제 100여개를 푸는것을 추천한다. 쌓이고 쌓이다보면 책에 나와있는 지렁이 글씨같이 느껴젓던 설명들이 어느 순간 입체적으로  튀어나와 감탄을 하며 읽게 되는 순간들이 찾아 오기 때문이다. 

 

 

 

음 일단 생각나는건 이정도 이므로 또 생각나는 것이 있으면 추후 추가 하도록 하겠습니다~

댓글로 궁금 하신거 말씀 주시면 수정, 추가 하도록 할게요~

 

 

'Intro of programming' 카테고리의 다른 글

백엔드 개발이란  (0) 2023.04.18
개발자의 덕목 및 개발 프로세스  (0) 2023.04.16
웹개발에 대한 가장 쉬운 설명  (0) 2023.04.14
알고리즘에 대하여...  (0) 2023.04.12
프로그래밍에 대하여...  (0) 2020.11.30