프로그래밍 언어를 배워보려고하는데요 ??
제가 아직 프로그래밍 언어에 대해 아무것도 모르고 있는데
한번 프로그래밍 언어를 배워보려고 해요.
혹시 쉽게 배울 수 있는 프로그래밍 언어가 있을까요?
게임을 계발하고 싶어서 게임 계발에 쓸 수 있으면서, 쉬운 프로그래밍 언어좀 추천해주시면 감사드리겠습니다.
- 안녕하세요. - 처음 코딩을 시작하시는 분들이 어떤 언어를 배워야할지 고민을 많이 하십니다. - 사실 언어보다는 본인이 무엇을 만들고 싶은지부터 명확히 하는 것이 좋습니다. - 어떤 것을 만들 것이냐에 따라 유리한 언어와 툴이 있기 때문입니다. - 어느 언어 한 언어에 능숙해지면 다른 언어를 공부할 때 진입 장벽이 낮아지기 때문에 - 어떤 것을 먼저 시작해야하는지는 중요하지 않다고 생각합니다. - 게임을 만들고 싶으시다면 C, C++, - 딥러닝, 인공지능, 데이터 관리와 관련된 것을 만들고 싶으시다면 파이썬, - 웹, 프론트엔드, 하이브리드 애플리케이션을 만들고 싶다면 자바스크립트, - 웹, 안드로이드 애플리케이션을 만들고 싶다면 자바를 공부하시는 것을 추천드립니다. - 자바, 파이썬, 자바스크립트에 대한 강의는 생활코딩에서 무료로 보실 수 있습니다. 
- 안녕하세요. - 보통 프로그래밍 입문은 파이썬, 자바, C 로 많이 시작합니다. 그리고 화면 쪽에서 사용하는 언어로 자바스크립트도 있습니다. 게임에 사용되는 언어는 C#이나 C++ 이 사용됩니다. - 파이썬은 데이터통계 등에 많이 사용되고 비교적 쉽게 배울 수 있는 언어이고 자바는 웹이나 안드로이드 등 다양한 분야에 많이 사용 되는 언어입니다. 정부에서 사용하는 전자정부프레임워크에서도 쓰입니다. C는 하드웨어제어나 게임등에 사용되는 언어로 기초를 다지기에 적합한 언어입니다. - 자바스크립트는 제일 배우기 쉬운 언어이기도 하지만 기능이 막강합니다. 또한 간단하게 화면을 만들어서 바로바로 테스트를 해 볼수 있는 장점도 있습니다. - 모든 언어가 알고리즘이나 로직은 다 똑같습니다. 그 로직을 구현하는 문법이 조금씩 다를 뿐이죠. 그 언어를 배우는 것도 좋지만 그 안에 로직이나 알고리즘을 구현하는 연습을 많이 하시면 다른 언어를 배울 때도 큰 도움이 됩니다. 
- 안녕하세요. - 게임 개발에 사용되는 언어로는 c#, c++ 이 있습니다. - 게임 개발시 사용하는 개발툴을 게임엔진이라고 하는데, 언리얼엔진과 유니티엔진이 있습니다. 어떤 엔진을 사용하냐에 따라 사용하는 언어가 다릅니다. - 언리얼엔진을 사용하는 경우에는 c++이 사용되고, 유니티엔진을 사용하는 경우에는 c#이 사용됩니다. 
- C언어 아니면 Python또는 Html을 추천드리겠습니다. - C언어를 배우면 다른언어를 배울때 빨리 배울수 있는 능력을 얻게 됩니다. - Python을 공부하시면 다양한 시각적인것과 데이터처리의 프로그램을 만들수 있어 사무직 직업에 도움이 됩니다. - HTML은 금방 배울수 있으며 시각적으로 보이는 것이 있어 추천드립니다. 
- 게임을 만드시는 게 목적이시라면 게임 개발 엔진 중 하나인 유니티 (unity) 사용을 추천드립니다. - Unity는 Unity Technologies에서 개발된 게임 엔진으로, 다양한 게임을 간편하게 만들 수 있습니다. - 프로그래밍이 처음이시라면 “스타트업 Unity 2D 게임 개발” 책을 추천드립니다. 
- 쉬운 프로그래밍 언어는 파이썬 프로그래밍 언어가 좋습니다. - 하지만 게임 개발을 하고 싶다면 C#언어를 추천합니다. - 이유는 유니티나 언리얼 엔진을 사용해서 게임을 개발하게 되는데 여기서 사용되는 언어가 C#을 많이 사용합니다. - C#을 배우기 위해서는 먼저 C언어를 배우는 것을 추천합니다. - 처음부터 C#을 배워도 되기는 하지만 생각보다 많이 어려울 수 있습니다. - 물론 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 <== 여기는 다른사람들이 스크래치로 만든 게임등을 - 플레이할 수 있는곳이데요 - 나름 재미있을거라 생각합니다 ( 본인이 직접 만들수도 있음 ) - 그리고 스크래치에서의 코딩이 자신의 적성과 잘 맞다고 생각되면 그때 프로그램 개발을 어떤 목적으로 할것이냐에 - 따라서 배워야 할 언어가 틀려지기때문에, - 스크래치에서 경험을 쌓은후 다시 재 질문해주시기 바랍니다!