이제 퇴근 후, 조금씩 파이썬을 공부하기 위해 '점프 투 파이썬' 파이썬 독학 책을 샀습니다.
아직 책 안의 용어들을 보면 하나도 이해하지 못하지만 하루하루 점차 나아질거라는 믿음으로 해보려고 합니다.
요즘 저와같이 코딩에 많은 관심을 갖고 인터넷 강의로, 유튜브로, 블로그로 정보를 찾으며 코딩을 배워보려는 분들이 많은 것 같습니다. 이제 저의 블로그에 하루하루 해나간 저만의 코딩 독학을 남기고 공유해보고자 합니다.
코딩 공부 첫걸음에 앞서, 많이 고민을 했던 부분인 어떤 프로그래밍 언어를 공부할지에 대한 고민. 바로,
C언어 VS 자바(Java) VS 파이썬(Python) 어떤 언어를 공부해야 할까?
아마 저처럼 코딩을 처음 접하시는 분들이라면 각각의 주요 프로그래밍들이 어떤 장점과 단점이 있는지 궁금하실 것 같아요. 인터넷에서 많이 찾아보고 또 현직 개발자인 친구에게 직접 조언을 들으며 정리한 내용을 알려드리겠습니다.
1. C, C++, C# (C+++) (C is created in 1972)
프로그래밍의 초창기에 나온 언어 C는 가장 기본이라고 할 수 있습니다. 예전에는 기본기인 C언어를 먼저 배우는 게 대세였다면 요즘에는 언어가 하도 많이 생기고 각각 언어의 특성이 다분화되면서 그럴 필요도 많이 사라졌다고 합니다.
그렇다면 C는 무엇이고 C++, C#은 무엇일까?
C -> 초장기 언어 / 다른 언어들의 기반 / 임베디드(기계제어)에서 가장 많이 쓰임 / Low-level언어 (컴퓨터가 기본적으로 작동되는 원리를 이해할 수 있는 비교적 낮은 난이도의 언어)
C언어의 특징은 가장 대표적인 절차지향언어이다. IT학과라면 기본적으로 배우는 프로그래밍 언어의 기본 틀이라고 할 수 있습니다. C언어는 하드웨어나 서버를 다루는데 용이하고 다른 하드웨어로 이식도 쉽습니다. 프로그램의 크기가 작아서 속도가 빠른 점이 장점입니다. -> 메모리가 작은 환경에서도 구현이 가능합니다.
* 절차 지향적 : 위에서 아래로 유기적으로 연결됨
C++ -> C기본 언어에 좀 더 다양한 기능을 추가한 언어 / 3년 주기로 리뉴얼 / 자바, JAVA보다 어려움 /
C++ 언어의 특징은 C언어(절차지향언어)의 객체지향버전이라고 생각하시면 쉽습니다. 라이브러리가 풍부한 점 또한 장점이며 게임개발, 모바일 계열에 많이 쓰입니다. C언어와의 호환성이 좋기도 하지만 C++언어는 공부해야할 것이 많은 언어입니다. 수정사항을 확인하려면 컴파일 필요, 디버깅 어려움 등의 단점이 있습니다.
C# = C+++ -> C++에서 복잡한 부분을 간소화한 버젼 (created by Microsoft) / C+++을 줄여서 C#이라고 씀
C#언어는 다양한 윈도우 응용프로그램의 개발이 가능하며 C 계열이므로 C언어와 호환이 좋습니다. C#은 C언어계의 JAVA라고도 불리는데, 그 이유는 C#과 JAVA는 서로 유사한 부분이 꽤 있어서 C#을 배운 사람이 JAVA를 공부하거나 또는 반대로 JAVA공부를 한 사람이 C#를 새로이 배우는 데 있어 더욱 빨리 이해할 수 있습니다.
2. 자바 JAVA created by Microsystems in 1995
한국의 50% 이상의 기업에서 쓴다는 JAVA. 현재까지는 취업을 위해서라면 가장 인기 높은 게 JAVA 언어입니다. C언어들과 유사한 문법을 가지고 있지만 C++에 비해 간결하고 효율성이 높은 자바, JAVA 언어의 특징은 다음과 같습니다.
-> 안드로이드 앱 개발 언어로 어플 개발에 관심이 있다면 솔깃합니다.
-> 앱 개발뿐만 아니라 데스크탑 애플리케이션, 웹사이트 개발, 빅데이터, 게임 개발에도 두루두루 사용됩니다.
-> 메모리 (ram) 자동 정리 ok - 메모리 정리하는 수고를 덜고 코딩에 집중 가능합니다.
-> 무료 라이브러리(미리 구현된 코드)가 잘 구비되어 있습니다.
-> 이미 JAVA의 전문가들이 많아 보고 배울 학습자료들이 인터넷에 많습니다.
-> JAVA는 빠르고 안정적입니다.
-> 핸드폰, 온라인 교육, 가상 여행, 사진 업로드, 온라인 채팅 등의 많은 서비스에 JAVA가 쓰입니다.
-> 즉, 취업에 유리합니다.
3. 파이썬 Python created by Guido van Rossum in 1990
마지막으로 파이썬 언어. 1990년에 네덜란드 개발자 Guido van Rossum이 개발한 언어입니다. 현재 구글, 야후, NASA(미국 항공우주국) 등에서 안정적으로 활용하고 있는 언어, Python파이썬의 특징을 알아보겠습니다!
-> 간결한 문법 -> 진입장벽이 낮음
-> 사람이 대화하는 형식의 표현 구조로 이해가 쉬움
-> 데이터 사이언스, 인공지능, 해킹, 웹 개발, 머신러닝 등 다양한 사용처
-> 빠른 결과물
-> 게임 개발에서는 느린 편
-> 어플 개발은 파이썬보다는 JAVA가 적합
-> 프런트 앤드보다 백엔드에 더 잘 어울림
-> 전 세계적으로 코딩 열풍이 불 때 프로그래밍 교양과목으로 파이썬이 많이 쓰임
-> 대중에 완전 무료 공개
-> 유지와 보수가 쉬움
-> 컴파일 시, 타입 검사가 이루어지지 않아 개발자가 실수할 여지가 있음
-> 멀티코어를 활용하기 쉽지 않음
제가 찾아보고 자문을 구한 위의 C언어, 자바, 파이썬의 장점, 단점들이 다가 아닌 것은 확실합니다. 코딩 공부 독학으로 Python, 파이썬을 선택한 이유는 문법이 간단해서 쉽게 배울 수 있는 점이 가장 매력적으로 느껴졌습니다. 모바일 어플 쪽에도 관심이 있어서 JAVA, 자바도 공부하고 싶었지만 미래에 인공지능과 관련된 직업도 참 멋질 거라 생각되어 인공지능 쪽으로 무궁무진한 파이썬을 먼저 배우고 프로그래밍이 무엇인지, 컴퓨터란 무엇인지, 컴퓨터와 어떻게 대화를 하는지 먼저 공부하고 다음 언어들을 차차 이해해보고자 합니다.
또 한국 기업의 50% 이상이 자바를 쓰고 있고 또 취업에 유리한 언어는 자바이지만 세계적으로 가장 많이 쓰이는 프로그래밍 언어 그래프를 보면 파이썬이 점차 2위인 자바를 따라잡고 있습니다. (1%보다 적은 차이)
1위는 압도적인 C언어입니다. 추세를 보면 1위 C언어, 2위 JAVA, 자바 3위 Python, 파이썬이며 1,2위인 C언어와 자바는 부동의 1,2위였지만 최근 들어 점차 비율이 줄어들고 있습니다. 새로운 프로그래밍 언어들의 탄생, 그리고 접하기 쉬운 파이썬의 상승으로 앞으로의 1,2,3위가 어떻게 변할지 궁금합니다.
전 세계의 프로그래밍 언어 순위를 볼 수 있는 사이트 - 티오베 방문하셔서 직접 확인해보세요!
C언어, 자바, 파이썬의 장단점에 대해서 알아보았습니다.
감사합니다.
'About coding' 카테고리의 다른 글
코딩 영어실력과 관계가 있을까? 코딩 배우는 기간 및 사이트 소개 (0) | 2020.12.20 |
---|---|
코딩이란? 앞으로 우리가 코딩을 배워야하는 이유 4가지 (0) | 2020.12.20 |
댓글