좀 더 쉽게 프로그래밍을 배울 수 없을까


프로그래밍을 재밌게 배우는 방법이 있을까

사람들은 프로그래밍 자체를 배우고 싶어하지 않는다.
대부분 사람들은 프로그래밍 자체에 흥미가 없다. 그들은 게임을 만들고 인공지능을 만드는 것에 궁금할 뿐이다.
그래서 막상 프로그래밍을 배우면 알 수 없는 명령어들과 해석할 수 도 없는 애러들을 만나 제풀에 지쳐 포기하기 일쑤다. 프로그래밍을 처음 배우는 사람이 흥미를 잃지 않고 나아가기 위해서는 눈에 보이는 결과물을 만들 수 있도록 도와줘야 한다. 시작하기에 어렵지 않고, 눈에 보이는 결과물을 통해, 걸음마를 떼는 아이에게 우리가 그러듯 포기하지 않게끔 도와주는 것이다. 그래서 나는 파이썬으로 시작하는 것을 추천한다. 파이썬은 배우기 쉬우면서도 아름답다. 프로그래밍의 본질, 즉 상상하는 무언가를 만들어내는 과정에 집중하기에 좋은 언어이기 때문이다.

파이썬으로 무엇을 할 수 있을까?

  • 머신러닝과 딥러닝
  • 시스템 유틸리티 제작
  • GUI 프로그래밍
  • 웹 프로그래밍
  • 수치 연산 프로그래밍
  • 데이터베이스 프로그래밍
  • 데이터 분석, 사물 인터넷

그리고 파이썬을 온라인 강의를 통해서 공부할 계획이라면 첫 강의는 짧을 수록 좋다. 최대한 빠르게 문법을 훑고 직접 프로그래밍을 해야 흥미가 생기기 시작할 테니깐.

Python 시작하기

“파이썬 어렵게 가르치는 방법? “

프로그래밍에 쉽게 흥미를 잃게 하기 위해서는 프로그래밍 자체를 가르치는 데에 집중하면 된다. 객체지향이 무엇인지, 파이썬이 왜 객체로 이루어져 있는 언어인지, 개발환경을 제대로 갖추는 것이 얼마나 중요한지에 집중하면 배우는 학습자들은 저절로 나가떨어질 것이다.

나는 작은 프로그램이더라도 본인이 만들어서 뿌듯해 할 수 있는 방식으로 학습하는 것이 가장 좋은 방법이라고 생각한다. 그래서 나는 작은 프로그램을 만드는 방식으로 그리고 다루기 어려운 파란 터미널 말고 쥬피터 랩을 사용해서 프로그래밍 언어에 집중해서 익숙해 질 수 있도록 가르치려고 한다.

처음엔 파이썬에 익숙해지기 위해서 필요한 예제를 중심으로 학습한 뒤에 pygame을 사용해서 재밌는 게임을 만드는 방식으로 학습할 계획이다.

정리

  • python으로 배우자
  • 내가 만든 프로그램이 있어야 한다
  • 터미널, vim보다 쥬피터 랩을 사용하자.

  • 주 교재: tryhelloworld의 Python 입문 강좌

1주 차

오늘의 예제

  • 프린트문 하기. http://inventwithpython.com/invent4thed/chapter2.html#calibre_link-32

  • 파이썬 필요한 문법 알려주기

2주 차

진도

  • 강의 진도 : 챕터 3 - 5 ( 조건문, 함수 , 자료형)

조건문

함수

  • 모든 함수는 반환값이 있습니다.
  • 함수에서 return이 없는 경우는 사실 None을 리턴하는 것입니다.
  • print와 return의 차이점
  • print는 화면에 인출하기 위해서 쓰는 것입니다. 실제 값은 없다고 봐도 됩니다.
  • return은 실제로 함수가 되돌려주는 값입니다.

숫자형

  • 정수형, 실수형
  • 5.0은 int일까요 float일까요.

문자형

  • 문자열 곱셈
  • "*" * 10
  • ' ' * 10
  • 인덱싱과 슬라이싱
  • "Jung Yunsoo"[4]
  • "Jung Yunsoo"[4:]
  • 문자열 포맷팅
  • "{} : {}".format(name, points)
  • "{name} : {points}".format(name=name, points=points)
  • 문자열 함수들
  • string = "I love me", string.find("me")
  • diary = "Yesterday I did laundry job, I eat suisi, I slept a lot" diary.count("I")

입력

  • 입력 타입
  • 입력 타입은 항상 string이다. a = input(); type(a)
  • 숫자 받아보기 number = input(); number = int(number)

실습 예제

  • 문자열 슬라이싱
    1. a = "20010331Rainy" 년, 월, 일로 나누기.
    2. sentence = "Pithon" 에서 오타 인덱스로 수정하기
    3. 숫자를 입력받아 정수인지 소수인지 출력해주는 함수 만들기.
    4. 왼쪽 상단이 직각인 직각 삼각형 별 기호로 출력하기.
  • 난이도 업
    1. 숫자야구 게임
      파이썬 좋은 예제 참고

3주차

  • 강의 진도 : 챕터 6 - 8 ( 리스트, 반복문 , 모듈)

실습 예제

  • 반복문
    1. (문자열 함수 직접 만들기) line = I am student에서 s의 인덱스값 찾는 find함수.
    2. line = "I live in Seoul NaksungDae." 에서 a가 총 몇 번 등장했는지 찾는 count 함수.

오늘의 예제

5일차

  • 개발자가 최고로 좋아했던 툴들
  • http://www.ciokorea.com/news/31645

20일차

  • 슈팅 게임 만들기 https://www.raywenderlich.com/24252/beginning-game-programming-for-teens-with-python





© 2017. by yunsu

Powered by dolphin