프로그래밍이 궁금학 중학생입나다!
중학생입니다!
프로그래밍을 배워보고 싶은데... 뭐부터하면 좋을까요?프로그래밍은 학원을 다니는게 좋을까요?... 아니면독학을하는게 좋을까요? 그리고 프로그래밍 관련 직업도 몇개 알려주세요!
안녕하세요.
독학으로도 충분히 공부가 가능합니다.
요즘은 유튜브나 책, 그 외에 유료 강의들도 많이 있습니다.
처음 코딩을 시작하시는 분들이 어떤 언어를 배워야할지 고민을 많이 하십니다.
사실 언어보다는 본인이 무엇을 만들고 싶은지부터 명확히 하는 것이 좋습니다.
어떤 것을 만들 것이냐에 따라 유리한 언어와 툴이 있기 때문입니다.
어느 언어 한 언어에 능숙해지면 다른 언어를 공부할 때 진입 장벽이 낮아지기 때문에
어떤 것을 먼저 시작해야하는지는 중요하지 않다고 생각합니다.
딥러닝, 인공지능, 데이터 관리와 관련된 것을 만들고 싶으시다면 파이썬,
웹, 프론트엔드, 하이브리드 애플리케이션을 만들고 싶다면 자바스크립트,
웹, 안드로이드 애플리케이션을 만들고 싶다면 자바를 공부하시는 것을 추천드립니다.
자바, 파이썬, 자바스크립트에 대한 강의는 생활코딩에서 무료로 보실 수 있습니다.
생활코딩 : https://opentutorials.org/course/1223
프로그래밍 관련 분야는 게임, 응용, 웹, 시스템, 임베디드, 보안 등
우리 주변에 있는 거의 모든 영역에서 관련 직업군들이 있습니다.
안녕하세요.
가장 확실히 배울 수 있는 방법은 학원이겠죠. 하지만 요새는 온라인으로도 많은 자료와 커뮤니티들이 있어서 독학으로 공부하기도 괜찮습니다.
보통 프로그래밍 입문은 파이썬, 자바, C 로 많이 시작합니다. 그리고 화면 쪽에서 사용하는 언어로 자바스크립트도 있습니다.
파이썬은 데이터통계 등에 많이 사용되고 비교적 쉽게 배울 수 있는 언어이고 자바는 웹이나 안드로이드 등 다양한 분야에 많이 사용 되는 언어입니다. 정부에서 사용하는 전자정부프레임워크에서도 쓰입니다. C는 하드웨어제어나 게임등에 사용되는 언어로 기초를 다지기에 적합한 언어입니다.
자바스크립트는 제일 배우기 쉬운 언어이기도 하지만 기능이 막강합니다. 또한 간단하게 화면을 만들어서 바로바로 테스트를 해 볼수 있는 장점도 있습니다.
모든 언어가 알고리즘이나 로직은 다 똑같습니다. 그 로직을 구현하는 문법이 조금씩 다를 뿐이죠. 그 언어를 배우는 것도 좋지만 그 안에 로직이나 알고리즘을 구현하는 연습을 많이 하시면 다른 언어를 배울 때도 큰 도움이 됩니다.
인터넷이나 유튜브 검색해 보면 관련자료가 많이 나와 있습니다. 아래 참고한 만할 사이트도 같이 링크 보내드립니다.
[생활코딩]
https://www.youtube.com/user/egoing2[추천책]
프로그래밍 기초를 공부하시려면 "Do it! 첫 코딩(정동균/이지스퍼블리싱)"이란 책을 추천드립니다. 프로그래밍의 개념부터 해서 아주 기초적인 부분을 설명해 주고 있습니다. 뒷부분에는 가장 많이 쓰이는 언어인 자바로 코딩하는 법에 대한 설명도 있습니다.안녕하세요. 아공입니다!
저능 현재는 현직에서 웹디자인과 웹 프로그래밍을 하고 있는데요.
난이도는 프로그래밍의 정도에 따라 달라지실 수 있어요~
기본만 익히시면 하중상으로 점차 발전하는 프로그래밍을 하실수 있답니다!:)
일단 서점에서 제일 쉬워보이는 책으로 배우고 싶은 책으로 구매를 하신 후, 아래 순서대로 진행해 보세요!
단! 일단 시도해보시고 아니다 싶으면 빠르게 다른 길을 찾으셔야 해요~
프로그래밍을 직접 해본 사람으로서 약간의 재능도 필요한게 프로그래밍이랍니다!
시작부터 해보시고! 경험해본 후에 진로를 또 정하셔도 늦지 않은 나이에요! 파이팅입니다!!:)
🌷 코딩의 본질을 제대로 배워보고 싶으시면 기초 지식을 쌓을겸 C언어를 배워 보시는게 좋을 것 같아요!
C언어를 배우고 나서 JAVA를 배우시면 자바를 좀더 쉽게 접근하실 수 있을거에요!:)
공부해본 사람의 입장으로서
언어의 성질이 좀 달라서 배우실때 혼란이 있으실 수는 있을것 같은데 시작부터 자바를 배우시고 나면 C언어를 이해하시기가 더 어렵거든요~
그래서 그렇게 권장 드리는것이고:)
사실 실무적으로는 자바가 좀더 실용성이 있어요!
1 일단 진로의 방향 부터 잡아보시는게 좋을 것 같아요!
2 진로의 방향에 따라 배워야 하는 언어가 달라요~
3 서버관리 같은 직업은 C언어를 배우셔야하고 어플개발 등 웹관련 업무에는 JAVA가 더 필요해요~
완전히 처음이시라면~
시작이 반이다! 일단 하나 잡고
1 앱을 만든다던가
2 사이트를 만들어본다던가
하는 기초 개발부터 시작해보세요^^
조금이나마 도움이 되셨기를 바라며, 건강조심하시고 좋은하루되세요:)
안녕하세요.
언어에 따라 난이도가 차이가 있지만 기초부터 시작하면 독학도 충분히 가능합니다.
일단 처음 언어를 배우기전에 프로그래밍, 코딩에 대한 기초지식을 좀 습득하고 나서 프로그래밍 언어를 공부하시는 게 좋습니다.
프로그래밍 언어는 프런트엔드, 백엔드로 나뉘는 데요. 프런트엔드는 클라이언트(화면)쪽, 백엔드는 서버쪽 언어로 라고 보시면 됩니다.
보통 프런트엔드로는 html, css, 자바스크립트 등이 있고 백엔드로는 자바, C, 파이썬 등이 있습니다.
간단히 보여주기만 하는 화면은 html, css, 자바스크립트만으로 가능하고 등록, 조회, 수정, 삭제 등의 기능을 구현 하려면 서버쪽 백엔드 언어를 배우셔야 합니다.
html은 화면에 기본적인 레이아웃 그리는 작업이고, css는 글꼴이라던지 크기, 색상 등 디자인을 입히는 작업이고, 자바스크립트는 화면단에 필요한 로직을 구현하는 작업이라고 보시면 됩니다.
C는 기초가 되는 언어이고 성능이 뛰어나서 처음 하시면 좋긴 한데 좀 어려울 수 있습니다. 자바는 웹, 모바일, 앱 등 실사용이 많이 되고, 파이썬은 문법이 간단하여 다른 언어보다 배우기 쉬운 장점이 있습니다.
프런트엔드 쪽을 먼저 공부하시고 백엔드 쪽을 공부하시는게 좋습니다.
코딩에 대한 기초적인 설명이랑 기본적인 웹프로그래밍(html,css,javascript) 강좌가 있는 유튜브강의 링크인데 한번 보시기 바랍니다.
https://m.youtube.com/playlist?list=PLU9-uwewPMe0ynomccdrAX2CtVbahN4hD
요즘에는 인터넷에 잘 정리된 프로그래밍 관련 강의와 책들이 많이 있기 때문에 학원에 다니지 않아도 왠만한 기초적인 내용들은 배울 수 있습니다.
처음에 배워두면 좋은 언어는 자바, 자바가 어렵다면 파이썬 배우는 것을 추천드립니다.
구글이나 유튜브에 관련 강의 검색해보시고 강의를 보면서 프로그래밍 기초 개념들을 익히고 강의에 나오는 실습들을 따라해보시면 됩니다.
프로그래밍 관련 직업만 해도 엄청 많이 있는데요, 크게 분야를 나누어서 보면 다음과 같습니다.
1. 게임 개발자: 게임 프로그램 개발
2. 웹 개발자: 웹 사이트(클라이언트, 서버) 개발
3. 응용 소프트웨어 개발자: 컴퓨터 내에서 사용되는 프로그램 개발
4. 임베디드 개발자: 컴퓨터 이외의 장치에 사용되는 프로그램 개발
5. 앱 개발자: 스마트폰 애플리케이션 개발
6. 인공지능 개발자: 인공지능 개발
7. 정보보안 개발자: 해킹 방지 프로그램 개발
등이 있습니다.
인녕하세요!
프로그래밍이 완전 처음이시라면,
C나 JavaScript를 추천합니다!
C는 전통적으로 많이 사용되는 언어이며 한번 배워두면 다른 언어 등을 배울 때 도움이 되기 때문에 추천드립니다.
그리고 자바스크립트는 웹페이지를 스스로 바꿔나가는 것을 보며 학습 할 수 있기에 배우기 재미있고 언어 자체가 상대적으로(?) 쉽기에 처음시작하기 좋다고 생각합니다.
아직 프로그래밍에 대해서 어떻게 공부해야 할지 모른다면 유튜브 등에서 다른 사람들이 프로그래밍 하는 것을 지켜보는 것도 좋은방법입니다.
또는 '생활코딩'과 같은 사이트를 통해 직접 공부해나가는 것도 좋다고 생각합니다.
처음에는 가볍게 즐기시며 배우길 바랍니다.
화이팅!!
안녕하세요. 한인택 입니다.
프로그래밍에 관심이 생기셨나보네요.
" 프로그래밍을 배워보고 싶은데... 뭐부터하면 좋을까요? "
우선 대표적인 프로그래밍 언어(한국을 기준으로요.)에 대해서 말씀 드릴게요. 한국에서 정부관련 기관들에서는 Spring Framework를 이용해서 사이트를 만들고 있는데요. JAVA기반의 프레임워크라고 생각하시면 됩니다.
프레임워크는 개발시 도움을 주는 툴 혹은 기능을 실행하는 실행체 모음 이라고 생각하시면 됩니다.
서버는 아실수도 있겠지만, 대용량의 데이터를 가지고 있는 Database 에서 사용자가 필요로 하는 데이터를 가공해서 사용자에게 전송해주는 업무를 합니다. 네 맞습니다.
모바일 게임을 예로 설명을 드리자면, 휴대폰 혹은 PC에서 프로그램을 실행해서, 로그인 하고 게임을 즐기실때 전에 했던 데이터들이 있고 이어서 게임을 진행하셨던 경험이 있으실 텐데요. 대부분은 사용자의 모바일 혹은 PC에서 저장된 데이터를 서버와 동기화 해서 클라이언트(앞에서 말씀드린 사용자의 모바일, 혹은 PC를 이르는 말 입니다.)측에서 앱이 혹시 지워지거나 해도 재설치후 이전 데이터를 가져와서 이어서 게임을 즐길수 있게 해주는 부분을 프로그래밍 하는 업무 담당이 서버측 업무 입니다. JAVA 언어만 서버를 개발 할 수 있는 것은 아니고요. 서버를 개발할 수 있는 언어중에 한 언어가 JAVA 입니다.
그리고 위에서 말씀드린 모바일 관련해서 말씀 드릴게요.
저도 회사에서는 아이폰에 올라가는 앱을 제작하는 일을 하고 있는데요. PC에서는 Windows 라는 OS가 올라 가듯이 아이폰에는 iOS가 운영체제로 설치가 되어 있습니다. 이 iOS에서는 Objective-C와 Swift 라는 언어로 개발을 할수 있습니다. 요새는 Objective-C 보다는 Swift가 대세 언어로 되어 있습니다. iOS 개발에서는요.
그리고 모바일은 iOS말고 아시겠지만 안드로이드가 있는데요. Android에서는 역시 아까 서버와 마찬가지로 JAVA를 이용해서 개발을 합니다. 그리고 iOS처럼 Kotlin 이라는 언어가 새로 만들어져서 안드로이드 개발에 이용이 됩니다.
제가 경험이 제한적이긴 하지만, 한국에서는 안드로이드 개발자의 수요가 더 많은 것으로 판단되긴 합니다. 아직 나이가 어리시니, 한가지 언어를 차근차근 공부 하시면 좋을 듯 합니다.
그리고 https://www.tiobe.com/tiobe-index/ 사이트를 알려 드리고 싶은데요.
이 사이트는 한국에만 국한된것은 아니고 전 세계적으로 인기있는 언어에 대한 순위를 나열해서 보여주는 사이트 입니다.
참고해 보시면, 좋을듯 합니다.
예전(?) 제가 질문자 님 정도 나이였을때는 Dos에서 Turbo-C 로 C 언어 책보고 예제를 따라 만들던 기억이 나네요. 그때 사용하던 언어가 C 언어인데요.. 아직 C, JAVA 가 1,2위를 다투고는 있습니다. 하지만 한국의 최근 트렌드는 굳이 C언어는 추천 안하는 듯 하고요.
윈도우에서 돌아가는 어플리케이션 (아래아 한글 혹은 MS-WORD, EXCEL 같은...) 제작에 관심이 있으시다면, Visual Studio 를 검색해 보시면 C# 등의 언어로 작성이 가능 하십니다.
혹은 관심있는 홈페이지에서 필요한 부분의 데이터를 긁어오는 스크래핑.. 등의 작업에 관심이 있으시다면, Python 등의 스크립트형 언어를 추천 드립니다. 윈도우에서 돌아가는 어플리케이션 처럼 EXE 파일로 컴파일링, 링크 작업은 거치지 않고 Python 실행기가 py 파일을 로드해서 실행해 주는데요. 이미 구현되어 있는 라이브러리들이 많아서 몇줄 코딩 안해도 간단한 정보를 긁어오는 데는 손색이 없습니다.
예를 들어 저는 비트코인 사이트인 Upbit, Korbit 등에서 가격을 요청하는 API 를 python을 이용해서 구현하여 사이트 안가도 값을 확인 할 수 있는 프로그램을 Python으로 간단하게 짜본 경험이 있습니다.
답변이 주절주절 길었네요.. 정리 해 드릴게요.
* 주요 언어
JAVA, Swift, Kotlin
Objective-C [이건 이전에 짜둔 - 레거시라고 하는데요- 프로젝트에 참여하게 된다면 도움이 될듯 합니다.]
* 윈도우용에 관심 있다면
C# 등.
* 스크립트 언어
Python [왠만하면 3.x 대 버전으로 공부하세요. 근데 2.7x 도 ... ㅎㅎ 보시게 될 겁니다. 근데 지원이 2.x대는 안될 겁니다.] <- 짱짱 언어 입니다.
Javascript : 이건 홈페이지 만들때 버튼 액션 만들기 정도로만 이해하고 있었는데요. 요새는 정말 좋아 졌더라고요.. 이쪽은 저도 자세히는 몰라서요...
"프로그래밍은 학원을 다니는게 좋을까요?."
음... 요새는 인터넷에 정보가 많아서요 독학도 가능하실거라 생각됩니다.
하지만 환경 설정이라던가, 시간을 너무 많이 허비할 수도 있는 경우가 많아서요..
JAVA나 Swift는 관심 있으시다면, 학원기관에서 학습 해 보시는 것도 추천 드립니다.
광고는 아니지만 제가 한번 다녀 봤던 곳 링크 밀어 드릴게요.
여기 원장님께 JAVA Spring을 배워 봤습니다.
"그리고 프로그래밍 관련 직업도 몇개 알려주세요!"
우선 프로그래밍 관련 직업은 제가 경험한 iPhone 앱 개발자가 있습니다.
그리고 JAVA를 주력으로 하셨다면 서버 개발자, 안드로이드 개발자도 가능하실 것 이고요.
그리고 C#에 관심이 있으시다면, 윈도우용 프로그램을 만드는 곳의 개발자가 되실수 있습니다.
그래서 프로그래밍을 공부하고 취직하신다면 큰 틀은 "XX 개발자"가 되실수 있습니다.
하지만 만약 비IT분야라고 하더라도, 일반 회사에서 업무에 필요한 간단한 정보를 긁어오는 프로그램은 만들 수 있다면
업무를 더 효율적으로 하실수 있다고 생각됩니다.
날짜만 바꿔서 거의 비슷한 보고서를 써야 한다.. 뭐 그럴때요.. 요새는 어떤 업종이든 컴퓨터를 쓰지 않는 업무는 거의 없으니 까요..
답변이 좀 길었는데요...
아무쪼록 저의 답변이 도움이 되셨으면 좋겠네요.
이상입니다.
프로그래밍은 학원을 다니실 필요가 없습니다.
요즘 고등학교들이 프로그래밍에 관심을 크게 두고 있기 때문에, 학년이 오름에 따라 자연스럽게 접할 기회가 생길 것입니다.
고등학교에 재학하던 때에, 프로그래밍 학원을 다녔다는 같은 반 친구를 만났는데, 학원을 다녔다고 해서 꼭 프로그래밍을 잘 하진 않았습니다.
때문에 저는 독학을 더 추천드리는데, 가능하다면 주위 친구들을 한두명만 더 모아 같이 학습하는 것이 좋습니다. 흥미를 붙이기 위해서이고, 학습 효율도 잘나옵니다.
프로그래밍은 파이썬으로 시작하는 것이 좋겠습니다. 파이썬은 초보도 접하기 쉽게끔 만들어진 언어니까요.
파이썬 입문은 "혼자 공부하는 파이썬" 정도면 충분 하다고 생각되지만,
중학생이시니 금전적 여유가 부족하실 수 있음을 고려하여 독학 가능한 사이트를 추가합니다.
프로그래밍의 활용 분야가 넓어짐에 따라 어떤 직업이 있다고 모두 설명드리긴 어려우나,
컴퓨터 공학에 진학하게 되면, 인공지능 개발자, DB관리자, 서버 관리자, 웹 개발자, 소프트웨어 개발자, 정보보안전문가 등이 대표적인 직업에 속합니다 . 공기업으로는 은행에 주로 취업합니다.
후배님의 발전과 성공을 기원합니다.
좋은 대학 일단 가시고 프로그래밍 공부는 대학진학한다음에 해도 늦지 않습니다.
지금 아무리 프로그래밍 공부해도 대학교가서 배우느니만 못할꺼에요.
프로그래밍 직업은 컴퓨터로 사용하는 프로그램들 게임들, 모바일로 돌리는 어플들 모두 프로그래머가 만드는 거라고 보시면됩니다.
그런것들 만드는 직업이에요.
코딩은 처음 배우시는거라면 기본적인 알고리즘 공부부터 하시는게 좋습니다.
내가 어느정도 코딩에 감이 있다 생각하시면 C언어부터 공부하시고
그게 아니라 코딩 처음하고 코딩에 흥미를 느껴보고 싶다 하시면 파이썬부터 시작하시면 됩니다.
기본적인 언어 몇개를 다룰 줄 알면 그때 자바, 웹 프로그래밍, 앱 개발 등 분야를 구체화시키시면 됩니다.
추천하는 책으로는 점프 투 ~~~(파이썬) 시리즈 이고요.
참고로 코딩 배우는 곳은 책 보다는 인터넷에 올라와있는 오픈소스를 이용하시는게
훨씬 배우기 좋습니다. 이론보단 실전이 좋은 편이죠.
안녕하세요. 답변드립니다.
프로그래밍에 대해 아무것도 모르는 사람들이 이 분야에 호기심을 가질만한
질문이 대부분 뭐부터 해야되냐, 무슨 언어가 좋냐 등의 내용을 물어보시기때문에
공통된 답변을 드리기위해 작성한 글입니다.
0. 프로그래머가 뭐하는 사람이에요?
프로그래머라는 직업은 광범위한 업무내용을 담고 있지만 통상적으로
컴퓨터의 운영체제 위에서 어떠한 목적을 가진 응용프로그램 을 개발하는 사람입니다.
1. 코딩? 프로그래밍?
프로그래밍은 어떠한 데이터를 입력해서 산출하기까지의 전 과정에 대해 설계하고 구축해나가는 행위입니다.
이것을 컴퓨터를 이용한 응용프로그램을 만드는 일을 말합니다.
현대에는 컴퓨터가 발명되어서 널리 쓰이고 있으므로 프로그래밍이라 함은
의도된 루틴에 따라 데이터를 입력하고 컴퓨터가 알아들을 수 있도록 명령어(코드)를 작성해 실행하고
목적하는 결과를 산출하기까지의 행위를 말합니다.
하지만 컴퓨터가 발명되기 전의 과거에도 프로그래밍은 있었습니다.
공학적인 방법론에 의해서 입력과 출력에 관한 설계구축은 어느 분야에나 필요하기 때문에
계산기의 발명을 하던 시절부터 프로그래밍은 있었다고 봐야할 것입니다.
그러므로 프로그래밍이란 행위의 근본적인 이해를 하려면 컴퓨터와 연관짓는 범주를 넘어서서
통합적으로 생각해봐야할 필요가 있습니다.
코딩은 그러한 프로그래밍 행위의 일부인 명령어 실행을 위한 입력 작업입니다.
그러면 코딩을 할줄 알면 프로그래밍을 할줄 아는 것이냐? 라고 생각할 수도 있는데,
프로그래밍은 위에도 말했다시피 더 큰 범주의 작업 행위에 해당하기 때문에
코딩만 할줄안다고 프로그래밍을 할 수있는 건 아닙니다.
물론 코딩을 계속하다보면 프로그래밍에 대한 기본 소양들을 자연스럽게 몸에 익히게 됩니다.
2. 난 스크래치 좀 해봤는데?
프로그래머의 업무에 적합한 소양중에는 프로그래머의 공학적 사고방식이 필수입니다.
학교에서 가르쳐주는 스크래치같은 도구는 그런 프로그래밍에 필요한 사고방식을 익히기 위한 목적의 도구입니다.
그것만으로는 코딩이나 프로그래밍을 했다고 할 수는 없습니다.
3. 그럼 뭐부터 해야되나?
일단 개발언어의 선택이겠죠?
컴퓨터가 세상에 나오고 대중화 되면서, 그 안에 있는 소프트웨어를 만드는 데에 여러 시도가 있었습니다.
위에서도 말했다시피 코딩은 컴퓨터가 알아들을 수 있는 명령어를 작성하는 것이고,
그런 컴퓨터와 대화하는 명령어는 수천개에 달할 정도로 엄청나게 많습니다.
그 수천 개 중에 어떤 개발언어를 익히는지는 순전히 개인의 선택이지만,
국가별로, 산업군별로, 세부 분야별로 선호되는 언어가 있습니다.
본인이 어떤 분야에 관심이 가는지에 따라 추천되는 개발언어는 다르다고 할 수있습니다.
사례를 들어봅시다.
가. 우리나라는 통상적으로 전자정부표준프레임워크라는 것을 도입해서 배포했고,
관공서, 공기업. 일반 기업 등 많은 부문에 퍼져있습니다.
그리고 그것이 자바 언어를 사용하기 때문에 ,
그 수요에 맞춰 자바 개발자를 많이 교육하고 배출했으며
현재 업계에서 자바언어를 다루는 개발자를 많이 찾아볼 수 있습니다.
나. 몇년 전부터 빅데이터, 인공지능이 대두되면서 이 데이터들을 핸들링해서
결과를 도출하는 프로그램을 만드는 데에 쓰이는 언어로서 파이썬이 각광받습니다.
다. 스마트폰이 세상에 나온 뒤로, 득세를 한 것이 안드로이드 운영체제인데, 수년간 자바언어를 써왔습니다.
당연히 그 위에 올라가는 앱도 자바였지만, 여러 사정상 언어를 코틀린으로 바꾸게 되었습니다.
라. 하드웨어에 돌아가는 펌웨어는 CPU에 직접적인 접근을 해서 연산작업이 이루어지기 때문에,
C, C++, C#이 많이 쓰이고 있습니다.
이러한 업계의 수세부분야, 수요와 트렌드에 따라, 필요로하는 언어와 기술 소양은 각기 다릅니다.
그러무로 본인이 뭘 하고 싶은지부터 생각해보고 언어를 선택하는 것이 순서입니다.
그리고 그 선택한 언어데 따라 개발환경, 도구가 모두 상이하므로 이런 언어선택의 방향을 잡는 것이 매우 중요합니다.
4. 프로그래머 돈 많이 버나요? 안정적인가요?
이것도 매우 다양한 답이 돌아옵니다.
하지만 결론부터 말하자면 프로그래머는 안정적인 직업이 아닙니다.
IT기술이 년단위로 크게 변화하고 있고, 그에 맞춰서 업계의 입맛이 바뀌기 때문에
필요로하는 개발자의 소양도 바뀝니다.
저같은 경우 PHP로 시작해서 자바 언어를 다루고있고, 필요에 따라
javascript, node.js, go, python을 더 다루게 되었습니다.
그러니까 '난 이거 한가지로 계속 밥벌어먹고 살아볼테야' 라는 인생전략이 통하지 않는 분야라고 볼 수 있습니다.
수입도 정규직이냐, 프리랜서냐에 따라 다르고, 경력에 따라 또 다릅니다.
그리고 수도권 대기업에서 일하느냐, 지방 중소기업에서 일하느냐에 따라 또 큰 차이가 있구요.
하지만 다른 어느 개발자들을 붙잡고 물어봐도 공통적인 답이 돌아올겁니다.
'이 분야는 계속 공부 안하면 살아남을 수 없다'는 답이요.
5. 영화나 드라마 보면 프로그래머나 해커가 엄청 멋져보이던데...
뭔가 엄청 복잡한 것들이 화면에 나오고 그걸 엄청난 속도의 타자로 처리하는 모습이 일반적으로 나올겁니다.
그리고 그것을 단 몇분만에 처리하구요.
그런 모습을 보고 환상에 젖어 이 분야에 호기심을 갖는 청소년도 있을것으로 압니다.
하지만 그건 영화나 드라마일 뿐이구요, 그런 매체에서 보이는 작업하는 모습은 허구입니다.
실제로 그렇게 타자를 빨리 치는 일도 별로 없으며,
뭔가 복잡해보이는 것은 없습니다. 그 복잡해보이는 것도 결국은 어디선가 누가 만드는 과정이 있었겠죠?
그리고 통상 개발자가 코드를 대하는 화면은 편집기와 콘솔창입니다.
그리고 프로그래머의 속성은 끈기있게 노가대하는 겁니다.
코드 하나를 잘못 작성했거나, 알고리즘이 틀려서 몇날 며칠을 허비하고,
원하는 결과하나를 보기 위해 몇시간을 모니터를 들여다보고 있기도 합니다.
이게 통상적인 프로그래머의 모습이고, 매우매우 지루한 과정을 참아가면서 일하는 겁니다.
그러니까 '프로그래머는 컴퓨터를 가지고 끈기있게 일하는 노동자'이지
무슨 컴퓨터를 지배하는 자가 아님을 말씀드립니다.
호기심을 갖는 것은 좋으나 일단 진지하게 일을 하고 싶은지,
그리고 그러한 과정들을 감내할 수있을지 먼저 생각해보는 것이 좋습니다.
6. 배우기 쉬운 언어좀 가르쳐줘요. C는 어려워.. 더 쉬운것좀..
입문자의 기분은 이해하겠지만 C 이상으로 프로그래밍의 공학적 기본이 잘 잡혀있고 컴퓨터 사이언스에 적합한 언어는 없습니다. 컴퓨터의 발전 역사에서 개발언어의 많은 충족요건의 정수들만 수렴한 결과 나온 언어이기 때문입니다.
꼭C를 배우라는건 아니지만, 최근 업계에서 쓰이고 있는 거의 모든 개발 언어들이 C의 개념에서 크든 작든 영향을 받았습니다. 한마디로 정리해드릴게요.
"C도 못할 정도라면 어떤 다른 언어를 배워도 똑같이 막힌다."
그렇습니다. C가 어렵다고 하면 그 개념을 물려받은 대부분의 다른 언어를 해도 마찬가집니다. C의 개념에 더 확장을 가한 C++, C# 당연히 못합니다. 더 어렵습니다. C의 기본프로토타입을 그대로물려받은 JAVA? 못하겠죠?
그렇다면 여기저기서 주워듣기로 쉽다고 하는 언어는 될까요? 유감스럽게도 이건 언어의 난이도 문제가 아닙니다. 파이썬, php? javascript? ruby? 프로그래밍의 기초 개념부터 안잡혔는데 할수 있으려나요? 설마요.
그냥 프로그래머의 공학적 사고방식이 결여되어있는거입니다. 학교에서 스크래치같은걸 가르친 이유가 그런 사고방식으로 접근하라고 가르치는 겁니다. 개발 언어는 도구에 불과합니다. 중요한건 프로그래머의 논리적이고 공학적인 사고방식을 기르는겁니다.
가벼운 기분으로 더 쉬운언어로 만족할만한 프로그램결과물을 만드려는 생각이라면 그냥 포기하시는게 좋습니다. 그 과정이란게 언어와 상관없이 매우 험난하거든요. 아마 대부분 그런 이유때문에 쉬운언어 없냐고 물어보는 거겠지만. 쉬운언어 찾는건 이미 제대로 도전해볼 생각도 없이 도망칠 궁리를 하고 있다는 겁니다. 기분나쁘게 받아들일수도있겠으나 그게 현실입니다.
우선 코딩의 맛을 아래 링크에서 접해보시기 바랍니다!
https://scratch.mit.edu/ 여기를 추천드리구요
https://scratch.mit.edu/explore/projects/all <== 여기는 다른사람들이 스크래치로 만든 게임등을
플레이할 수 있는곳이데요
나름 재미있을거라 생각합니다
그리고 스크래치에서의 코딩이 자신의 적성과 잘 맞다고 생각되면 그때 프로그램 개발을 어떤 목적으로 할것이냐에
따라서 배워야 할 언어가 틀려지기때문에,
스크래치에서 경험을 쌓은후 다시 재 질문해주시기 바랍니다!
처음 입문이시라면 "자바스크립트"를 추천드립니다.
자바스크립트는 초심자가 가장 재미있게 배우고 다양한곳에 쓸수 있으며 난이도가 어렵지 않습니다.
실제 웹사이트를 제작하는 모든 업체에서 사용하며 다른 분야에서도 점점 많이 쓰는 추세입니다.
웹사이트를 만드는 가장 근간이 되는 언어이며, 이젠 node.js를 이용하여 화면단 뿐만 아니라 서버도 자바스크립트로 구성이 가능합니다!
요즘엔 윈도우 어플리케이션, 서버, 딥러닝 등 모든 분야에 고루 쓸수 있는 언어입니다.
아래 공부하시기 좋은 사이트들 모아서 제공드리니 한번 살펴보시고 공부하시면 좋을것 같습니다^^
https://www.opentutorials.org/course/1가장 유명한 초심자 가이드 생활코딩 사이트입니다.
같은 이름으로 페이스북 페이지에서 많은 개발자들이 신규 개발자를 위하여 조언 및 실질적인 도움을 주니 활용하시면 아주 좋습니다.
유,무료 프로그래밍 강의가 정리되어있는 인프런 사이트 입니다.
이벤트 등으로 유료강의를 저렴하거나 무료로 제공하는 경우도 많고 강의 질이 생각보다 매우 좋습니다.
유저들끼리의 각종 Q&A, 테크에 관련한 것들이 잘 올라오는 커뮤니티 오키 입니다.
관련하여 괜찮은 무료 강의들에 URL이 올라오는 경우도 많습니다.
https://programmers.co.kr/learn/challenges?language=javascript
많은 기업들이 실제 채용에도 반영하는 코딩테스트 및 강좌가 개설되어있는 프로그래머스 입니다.
기본적으로 강좌도 좋지만 실제로 알고리즘을 접목한 문제를 풀어볼수있는 환경을 잘 제공해줍니다.
구름 IDE 로 유명한 구름에 코딩테스트 도구입니다.
사용자가 직접 알고리즘 문제를 만들어서 게시한다던가, 구름IDE와 접목하여 실시간으로
다른 인원들과 채팅하며 코딩을 가능하게 해줍니다.
영어로 짧고 가볍게 들어보고 싶으시다던가.
페이스북, 트위터 등을 실제로 똑같이 만드는 "클론코딩" 등이 해보고 싶으시다면
https://academy.nomadcoders.co/
노마드코더 에서 강의를 들어보시는걸 추천드립니다.
위에 말씀드린 사이트들을 활용하시어 공부하시면 많은 도움이 되실것으로 보입니다!^^
프로그래밍을 처음 배운다면 파이썬 프로그래밍 언어를 배우는 것을 추천합니다.
다른 프로그래밍 언어보다 배우기 쉬운 장점이 있습니다.
처음 프로그래밍을 배울때 여유가 있다면 프로그래밍 학원을 다니는 것이 좋기는 합니다.
기본기를 잡는데는 나쁘지 않지만 학원이라는 한계가 있기 때문에 혼자서 또는 그룹으로 무엇인가 만들면서 배우는 것을 추천합니다.
유튜브에 많은 프로그래밍 강의가 올라와 있습니다.
배우고자 하는 언어를 선택한 후에 강의를 보면서 해보는 것도 나쁘지는 않을 것 같습니다.
물론 처음 혼자 한다면 간단한 오타를 못찾아서 몇시간을 보낼 수도 있기는 하지만 그러면서 배우는 부분도 있긴 합니다.
관련 직업은 웹개발, 모바일 개발, 하드웨어 제어 등 다양한 분야로 취업을 할 수 있습니다.