프로그래밍은 초보에게 어떤부분부터 시작하나요

프로그래밍을 시작하려고 하는 사람입니다.프로그래밍을 시작하는데 앞서 여러 방면으로 알아는 보고 있으나 뒤늦게 시작하는데에 있어서 어디서부터 시작을 해야할지 몰라 이렇게 글을 남기게됩니다.

    13개의 답변이 있어요!

    • 안녕하세요!

      아하 프로그래밍 전문 답변자 컴터넘버원입니다.

      저는 대학 다닐때 그당시 가장 핫한 프로그래밍 언어인

      비주얼베이직 V6.0 을 학원가서 배웠는데

      이게 나중에 회사에서 사용하게 되고

      지금 20년 넘게 잘 사용을 하고

      지금도 비주얼베이직으로 개발을 하고 있습니다.

      이제는 모바일앱 관련 프로그래밍 언어를 배워야

      차후에 많은 도움이 될것 같아요

      기초는 자바 부터 시작하고 PHP , HTML 5.0 , CSS 등등

      그리고 안드로이드 프로그래밍으로

      공부하시는것이 좋을것 같네요~~

      강남쪽에 프로그래밍 관련 학원들 많습니다

      본인이 원하는 분야를 생각하셔서 기초부터 차근차근

      잘 배우시기 바랍니다

      홧팅하세요!!

    • 안녕하세요. 답변드립니다.

      프로그래밍에 대해 아무것도 모르는 사람들이 이 분야에 호기심을 가질만한

      질문이 대부분 뭐부터 해야되냐, 무슨 언어가 좋냐 등의 내용을 물어보시기때문에

      공통된 답변을 드리기위해 작성한 글입니다.


      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? 프로그래밍의 기초 개념부터 안잡혔는데 할수 있으려나요? 설마요.

      그냥 프로그래머의 공학적 사고방식이 결여되어있는거입니다. 학교에서 스크래치같은걸 가르친 이유가 그런 사고방식으로 접근하라고 가르치는 겁니다. 개발 언어는 도구에 불과합니다. 중요한건 프로그래머의 논리적이고 공학적인 사고방식을 기르는겁니다.

      가벼운 기분으로 더 쉬운언어로 만족할만한 프로그램결과물을 만드려는 생각이라면 그냥 포기하시는게 좋습니다. 그 과정이란게 언어와 상관없이 매우 험난하거든요. 아마 대부분 그런 이유때문에 쉬운언어 없냐고 물어보는 거겠지만. 쉬운언어 찾는건 이미 제대로 도전해볼 생각도 없이 도망칠 궁리를 하고 있다는 겁니다.

    • 안녕하세요.

      다양한 방법이 있겠지만 우선 늦게 시작하시는만큼 적성에 맞는지 파악하시는게 중요합니다.

      관심있는 언어에 대해서 우선 유튜브를 통해 한번 접해보시고 본인이 생각하는거와 같은지 파악해보세요.

      늦으신만큼 빠르게 판단하고 판단되면 바로 열심히 공부하셔야 합니다. 자문만 구하는것보다 빠른 실천이 중요하다고 봅니다.

      감사합니다.

    • 알고리즘과 자료구조에 대해 먼저 공부하는것을 추천합니다. 신입이 아닌 경력도 이직할때 알고리즘 테스트를 보기 때문이죠.

      알고리즘 테스트는 프론트개발자는 자바스크립트. 백인드개발자는 자바,파이썬 등으로 봅니다.

      자신이 관심있는 회사의 스킬을 확인하고 알고리즘테스트 및 알고리즘 공부를 추천합니다.

    • 안녕하세요. 아하(a-ha) 프로그래밍 지식 답변자 입니다.

      Microsoft에서 제공하는 Python 첫 번째 단계 수행 코스가 잘 설명 되어 있으므로 해당 교육자료로 시작 하는 것을 추천 드립니다.

      https://docs.microsoft.com/ko-kr/learn/paths/python-first-steps/

      또한 Python을 사용하는 다양한 학습 경로가 준비되어 있습니다.

      https://docs.microsoft.com/ko-kr/learn/browse/?resource_type=learning%20path&terms=python

      또한 Python 코딩도장 책을 구매하여 하나하나 천천히 따라해 보는것도 나쁘지 않습니다.

      https://dojang.io/course/view.php?id=7

      답변이 도움이 됐으면 좋겠습니다. 좋은 하루 되세요!

    • 안녕하세요.

      프로그래밍 언어에 따라 각각의 특징과 용도가 조금씩 차이가 납니다. 각 언어의 특징을 보고 맞는 언어로 공부하시기 바랍니다. 처음하신다면 화면쪽 언어를 추천드립니다. 배우기도 쉽고 재미도 있습니다.

      우선 프로그래밍 언어를 공부하기 전에 프로그래밍에 대한 기초를 좀 공부하시면 더 도움이 됩니다.

      보통 프로그래밍 입문은 서버쪽 언어(백엔드)인 파이썬, 자바, C 로 많이 시작합니다. 그리고 화면 쪽(프론트엔드)에서 사용하는 언어로 HTML, CSS, 자바스크립트가 있습니다.

      파이썬은 데이터통계(빅데이터), 인공지능 쪽에서 많이 사용되고 비교적 쉽게 배울 수 있는 언어입니다. 자바는 웹이나 안드로이드 등 다양한 분야에 많이 사용 되는 언어입니다. 정부에서 사용하는 전자정부프레임워크에서도 쓰입니다. C는 하드웨어제어나 게임등에 사용되는 언어로 기초를 다지기에 적합한 언어입니다.

      HTML, CSS는 단순히 화면을 만들고 디자인 하는데 사용이 되고 실질적인 로직 구현은 자바스크립트를 사용합니다. 자바스크립트는 제일 배우기 쉬운 언어이기도 하지만 기능이 막강합니다. 간단하게 화면을 만들어서 바로바로 테스트를 해 볼수 있는 장점이 있습니다.

      모든 언어가 알고리즘이나 로직은 다 똑같습니다. 그 로직을 구현하는 문법이 조금씩 다를 뿐이죠. 그 언어를 배우는 것도 좋지만 그 안에 로직이나 알고리즘을 구현하는 연습을 많이 하시면 다른 언어를 배울 때도 큰 도움이 됩니다.

      인터넷이나 유튜브 검색해 보면 관련자료가 많이 나와 있습니다. 아래 관련 사이트 참고하시길 바랍니다.

      [기초강의]
      https://youtube.com/playlist?list=PLU9-uwewPMe0ynomccdrAX2CtVbahN4hD

      [생활코딩]
      https://opentutorials.org/course/1

      [인프런-유무료강의]
      https://www.inflearn.com

      [자바]
      https://www.youtube.com/playlist?list=PLuHgQVnccGMCeAy-2-llhw3nWoQKUvQck

      [파이썬]
      https://youtu.be/kWiCuklohdY

      [C언어]
      https://youtube.com/playlist?list=PLVsNizTWUw7EYNg_fyTEFYgd84p2uK-aS

      [커뮤니티]
      https://okky.kr/

      [추천도서]
      프로그래밍 기초를 공부하시려면 "Do it! 첫 코딩(정동균/이지스퍼블리싱)"이란 책을 추천드립니다. 프로그래밍의 개념부터 해서 아주 기초적인 부분을 설명해 주고 있습니다. 뒷부분에는 가장 많이 쓰이는 언어인 자바로 코딩하는 법에 대한 설명도 있습니다.

      C언어를 공부하신다면 "혼자 공부하는 C 언어(서현우/한빛미디어)"란 책을 추천드립니다. 제목처럼 혼자 공부하기에 적합한 책입니다. 챕터별(19개)로 나누어져 있어서 하루에 하나씩 공부하면 될것 같습니다. 각 챕터마다 연습문제도 있어 배운 것을 확인해 볼 수 있습니다. 유튜브에 강의동영상도 있습니다.

      자바 쪽을 공부하시면 "Java의 정석(남궁성/도우출판)" 이란 책을 추천드립니다. 기초부터 심화학습까지 자세히 나와있습니다. 또한 작가가 직접 운영하는 카페, 유튜브 강의도 있어서 하다가 모르는 것이 있으면 물어보면서 더 많이 배울 수 있습니다.

      파이썬언어를 공부하신다면 "혼자 공부하는 파이썬(윤인성/한빛미디어)"란 책을 추천드립니다. 제목처럼 혼자 공부하기에 적합한 책입니다. 초보자도 알기 쉽게 설명이 되어 있어서 배우실 때 어려움 없이 배울 수 있으리라 생각됩니다. 유튜브 강의동영상도 있어서 같이 시청하시면 좋을 것 같습니다.

    • 프로그래밍의 시작은 언어 선택입니다.

      언어 선택은 본인이 어떤 분야를 프로그래밍 하느냐에 따라 달라집니다.

      언어마다 특화된 분야가 있기 때문이죠

      게임, 웹 개발, 어플 개발, 빅 데이터 등 한 분야를 선택하는 것이 언어 선택에 큰 도움이 됩니다.

      분야를 아직 선택하기 어렵다면 파이썬을 추천드립니다.

      초보자가 배우기 쉬운 편이고 다양한 분야에 활용되서 여러 개발자에게 선호되는 언어입니다.

    • 생활코딩 (opentutorials.org) 여기에 가셔서 기본과 개념을 복습하세요.

      그리고나서 GitHub: Where the world builds software · GitHub 여기에 가셔서

      구현하고 싶은 기능에 관련된 소스나 아니면 참고하실만한 소스를 구하셔서 그걸로 연습하세요.

      전혀 아무런 참고할 소스조차 없다면 아무소스나 가져와서 분석하시면서 알고리즘을 학습하세요.

    • 많은 프로그래밍 언어 서적에서 맨 처음 소개하는 예제는 Hello, world!를 출력하는 것입니다.

      1978년에 브라이언 커니핸과 데니스 리치가 쓴 "The C Programming Language" 교재의 첫 번째 예제가 화면에 "Hello, world!"를 출력하는 것이었고, 이것이 유명해지면서 모든 프로그래밍 언어의 첫번째 예제로 굳어지게 되었다.

      별 의미가 없어보이는 기능일 수도 있지만,

      1. 개발환경이 갖추어졌는지 확인과

      2. 프로그래밍 코드의 작성 및 실행이 되는 것을

      확인 할 수 있다는 점에서 프로그래밍 언어를 배우는 첫 번째 단계로 일종의 암묵적인 룰인 셈이죠.

    • 안녕하세요~!!

      프로그래밍을 처음 공부하신다면 파이썬 적극 추천합니다.

      파이썬은 전세계적에서 가장 인기 있는 프로그래밍 언어입니다.

      최근 국내에서도 파이썬으로 프로그래밍 공부를 시작하는 사람들이 늘고 있네요.

      파이썬은 백엔드, 응용프로그램, 웹, 각종 응용 프로그램등 다양하게 쓰이고 있습니다.

      사용 환경에 따라 제한적인 언어들이 많은데 파이썬은 그 활용도가 상대적으로 넓습니다.

      그리고 배우기도 직관적이고 쉽습니다 ^^

      아직 학생이라면 개발툴로

      phcharm(파이참)을 추천드립니다. 학생 인증을 하면 (이메일)

      유료 개발툴을 무료로 이용할 수 있습니다 ^^

      파이참 다운로드 : https://www.jetbrains.com/ko-kr/pycharm/download/#section=windows

      아래 사이트에서 무료로 파이썬과 프로그래밍 기초를 배울 수 있으니

      바로 시작해보세요 ^^

      설명도 친절하게 하고 단순히 따라하기만 하면 된답니다.

      1. 완전 기초 (무료) 학습 사이트 : https://coding.yah.ac/

      2. 인프런 : 유료와 좋은 무료강의가 많아요

      https://www.inflearn.com/

      3. 유튜브 : 배우고자 하는 언어를 검색하시면 무료 강의와 정보가 주르륵

      파이썬 기초강좌 (김왼손님) https://www.youtube.com/channel/UC0h8NzL2vllvp3PjdoYSK4g

      파이썬 외에도 다른 언어를 선택하여 공부를 하셨다면

      알고리즘 사이트에서 문제를 풀면서 코딩 실력을 기르시길 바랍니다.

      1. 알고리즘 공부하기

      아래 사이트에서 코딩 테스트 연습을 꾸준히 해보세요.

      즐겁고 실력도 쑥쑥 늘어난답니다.

      알고리즘 문제들도 많고 다른 사람들이 어떻게 풀었는지도 볼 수 있어서~!! 매우 좋습니다.

      다양한 언어로 해결한 답안들이 많으니

      타 언어에 대한 이해도도 쑥쑥 올라갑니다!!

      1) 백준 온라인 저지

      https://www.acmicpc.net/

      2) 알고스팟

      https://algospot.com/judge/problem/list/

      3) 프로그래머스

      https://programmers.co.kr/learn/challenges

    • 초보자시면 파이썬을 추천드립니다.

      그리고 책으로 공부하시는 것을 좋아하시면 do it 시리즈를 추천합니다.

      https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=259726677

      그리고 혼자 공부하는 파이썬, 모두의 파이썬도 입문자가 보기엔 괜찮습니다.

      https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=193931483

      https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=172819381

      무료 인강을 보고 따라해보는 것이 좋으시면 아래 nomad 인강 추천드립니다.

      https://nomadcoders.co/python-for-beginners

      외국 강사지만 자막이 잘 달려있습니다.

      파이썬 기본부터 시작해서 웹 스크래퍼를 따라 만듭니다.

      이 과정을 클론 코딩이라고 하는데, 이미 개발된 앱/서비스를 직접 자기가 만들어보고

      어떻게 구성되는지 몸에 실제로 익힐 수 있어서 좋습니다.

      그리고 결과물이 남기 때문에 좋습니다.

    • 안녕하세요. A-HA 프로그래밍 전문가입니다.

      초보자 분들에게 가장 추천하는 언어는 C와 자바, 그리고 파이썬입니다. 여기서 현업에서 가장 많이 사용되는 언어는 자바와 파이썬으로 보통 백엔드에서 사용됩니다.

      그 이유는 API도 많고, 범용성도 높기 때문입니다.

      자바는 객체지향 언어, 파이썬은 스크립트 언어라는 특성을 가지고 있습니다. 저는 처음 공부를 시작하신다면 자바를 더 추천합니다.

    • 프로그래밍이 처음이라면 파이썬 프로그래밍을 공부하는 것을 추천합니다.

      다른 프로그래밍 언어에 비해서 쉽기 때문에 처음 배우기 좋은 언어 입니다.

      공부하는 방법으로는 유튜브에서 파이썬 프로그래밍 강의를 듣는 것이 좋을 것 같습니다.

      강의를 듣다가 잘 이해가 가지 않는 부분을 검색해서 여러 사람의 강의를 들으면서 이해하는 것이 좋을 것 같습니다.

      특정 강의가 좋다고 꼭 그사람 강의만 듣는 것보다는 여러사람의 강의를 들어보는 것도 좋은 것 같습니다.