파이썬 강좌 – 코드를 작성하는 사람의 의도

  1. 프롤로그
  2. 개발 첫걸음
    1. 컴퓨터 구성요소 - 컴퓨터는 어떤 걸 할 수 있나?
    2. 개발과 관련된 용어
    3. 파이썬의 선택 - 왜 파이썬인가?
    4. 파이썬 설치 - Hello World 출력하기
    5. Visual Studio Code 의 편리한 기능
    6. REPL과 콘솔 창 - 파이썬 동작시키기
  3. 파이썬 기초
    1. 기초 입출력 - 소통하기
    2. 변수와 대입 - 기억하기
    3. 연산자 - 계산하기
    4. 조건문 - 분기를 만들기
    5. 반복문 - 비슷한 작업을 반복하기
    6. 변수와 리스트 - 비슷한 변수들을 묶기
    7. for, range - 리스트의 항목을 다루기
    8. 파이선 기초 꿀팁
      1. 함수와 메소드의 호출 - 편리한 기능 이용하기
      2. 모듈 설치와 사용 - 유용한 기능 끌어다 쓰기
      3. 문자열 - 텍스트 다루기
  4. 파이썬 중급
    1. 정규표현식 - 문자열을 검색하고 치환하기(작성중)
    2. 함수를 직접 만들기 - 자주 쓰는 기능을 묶기
    3. 딕셔너리, 튜플, 세트 - 변수를 다양한 방법으로 묶기
    4. 클래스와 객체 - 변수를 사람으로 진화시키기
    5. 상속 - 클래스를 확장하기
    6. 파이썬 중급 꿀팁
      1. 코드를 작성하는 사람의 의도(작성중)
      2. 정체성과 동질성 - 객체의 성질(작성중)
      3. 명령문, 표현식 - 문법을 이루는 것들 (작성중)
      4. 슬라이싱 - 리스트를 갖고 놀기
  5. 파이썬 고급
    1. 예외와 에러 - 예상치 못한 상황에 대응하기
    2. 특별 메소드와 연산자 - 파이썬의 내부 작동방식 이해하기
    3. 다양한 함수 인수 - 유연한 함수 만들기
    4. 시퀀스와 반복자 - 반복과 순회를 자유자재로 다루기
    5. 변수의 범위 - 이름 검색의 범위
  6. 파이썬 심화
    1. 제너레이터와 코루틴 -
    2. async와 await
    3. 데코레이터 - 함수의 기능을 강화하기
    4. 객체로서의 클래스 - 클래스를 동적으로 정의하기
  7. 실전 (파이썬 외적인 것들)
    1. 유니코드 - 컴퓨터에서 문자를 표기하는 방법
    2. html, css, 인터넷 - 자동화 첫 걸음 내딛기
    3. 네트워크 - 인터넷으로 통신하는 방법
    4. 문서 - 문맥을 읽어보기

의도가 담긴 코드

프로그래머라는 직업의 역사로 따지면 다른 직업보다야 그렇게 거창하지는 않습니다. 하지만 최신 기술과, 더 나은 세상으로 나아가는 새로운 방법론과, 논리적인 놀잇감으로서 프로그래밍은 폭발적으로 발전해왔고 그와 동시에 개발자들 사이에서도 일정한 문화가 생겨났습니다. 특히 코딩 방법론은 논쟁의 주잿거리로서 아주 인기가 많지요. 사람마다 코딩 스타일이 다른 건 누구나 인정하겠지만, 그러한 자유로움 속에서 어느 정도 약속된 스타일의 필요성 또한 인정되었습니다. 개발자들 간의 의사소통을 더 원활하게 해준다는 점에서 효율성과 직결되기 때문입니다.

개발자 유머. 코드 까먹음 이 코드를 작성했을 때에는 오직 신과 나만이 그 의도를 알았다. 이제는 신만 아신다.

어떤 코드가 어떻게 작동하는지는 코드를 읽을 수 있는 자라면 누구나 알 수 있습니다. 다만 시간이 걸릴 뿐이겠죠. 문제는 그 코드를 수정하거나 개선하게 되었을 때 입니다. 그 때에는 단순히 코드가 어떻게 동작하는지만 알면 안 됩니다. 하나를 수정하게 되면 주위의 모든 것들에게 영향을 줍니다. 그러므로 이 코드의 최종 역할이 무엇인지, 무엇을 건드리고 무엇을 건드리면 안 되는지, 그리고 추후 이 코드를 또 다시 수정할 누군가에게 이러한 일관성을 어떻게 전달할 것인지에 대해 고민해야 합니다.

그래서 소스 코드에 코드를 작성하는 사람의 의도를 담아야 합니다. 코드의 기능 뿐만이 아니라 코드의 목적이나 개선 방향까지 담아야 합니다. 그래서 문제를 잘게 쪼개어 캡슐화하고, 변수와 속성과 메소드와 클래스에 유의미한 이름을 짓고, 실수할 여지를 줄이기 위한 장치를 만들며, 설명이 필요하면 주석을 자세하게 답니다. 이러한 것 하나하나에 코드를 작성하는 사람의 의도가 담깁니다.

이러한 의도를 담는 방법은 코딩 방법론에 포함되어서 열렬히 논의되었습니다. 일정한 약속이 생겨났고, 생소한 약속이라면 미리 언어 차원에서 친절하게 가이드라인을 제시해줍니다. 특히 파이썬 같은 경우에는 언어의 설계 철학과 코딩 스타일에 대해서 심사숙고한 언어입니다. 그래서 상대적으로 다른 언어에 비해 일관성을 쉽게 유지할 수 있고 쉽게 배울 수 있는 것입니다.


문법의 의미

while(True): 일단 무한 반복하고,

이름 짓기

  • 변수명은 소문자로 시작합니다.

  • 클래스명은 대문자로 시작합니다.

  • 클래스 정의에서, 속성, 메서드

  • 클래스 정의에서, 비공개 속성인 경우 언더바(_)로 시작합니다.

  • 파이썬에서는 앞뒤로 언더바 두 개 (예: __init__)는 특별 메소드(special method)입니다.

어노테이션

주석

각종 에러

  • raise NotImplementedError()
  • return NotImplemented : 연산자 작동에 대해서

c++과 자바같은 경우는 정적 타입 기반 프로그래밍 언어는 컴파일 시점에 모든 것이 결정됩니다. 실제 실행

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

Scroll to top