본문 바로가기

전체 글

(25)
프로그래밍 언어의 철학 파이썬을 배우기 시작하면서 선생님이 '프로그래밍 언어의 철학'에 대해 알아보고 나랑 가장 잘 맞을 것 같은 언어를 선택하라고 하셨어요. 이전에는 프로그래밍을 배우고 싶다고 하면 대부분 뭘 만들고 싶은지를 물어보셨는데, 이번에는 조금 다른 접근법이라 신선했고, 언어마다 가지고 있는 철학에 대해 알아보는 기회가 되었답니다. 지금 제가 배우고 있는 파이썬을 기준으로 파이썬 이전에 나온 언어 2~3가지의 철학과 그 이후에 나온 언어 몇 가지의 철학에 대해 알아봅시다. 프로그래밍 언어의 탄생 연도는 위키백과를 참고했어요. 프로그래밍 언어의 역사 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 이 문서는 프로그래밍 언어의 역사의 주요 발전에 대하여 논한다. 1940년 이전[편집] 초기의 프로..
[외계어 배우기] 문제#5 Three Cups 이제 문제를 해결해 보자. 문제는 이전에 올린 글 에서 확인할 수 있다. [외계어 배우기] 반복문(문제#5 Three Cups) 어느새 Chapter3 반복문에 대해서 배울 차례이다. 이 책에서 3장의 제목은 "반복문: 한정 루프"이고 4장의 제목은 "반복문: 무한정 루프"이다. '한정', '무한정'이라는 용어 때문에 'limit', 'unlimit'이라 4programmer.tistory.com 루프에서 사용할 변수명은 swap_type이다. 교환 유형을 말하는 것이다. 이처럼 변수명은 누가 봐도 이해할 수 있게 작성해야 합니다. (변수명이나 코드를 표현할 수 없은 도메인에 관한 것들은 주석으로 남긴다.) 우선 책에 있는 코드를 보자. 코드를 보자. 1. 교환에 대한 문자열이 입력된다. 2. 볼은 1번..
[외계어 배우기] 반복문(문제#5 Three Cups) 어느새 Chapter3 반복문에 대해서 배울 차례이다. 이 책에서 3장의 제목은 "반복문: 한정 루프"이고 4장의 제목은 "반복문: 무한정 루프"이다. '한정', '무한정'이라는 용어 때문에 'limit', 'unlimit'이라는 의미를 떠올리기 쉬운데, 여기서 말하는 '한정'이란 'Iteration'을 말한다. 즉, 계획된 혹은 규칙이 있는 루프를 의미하는 것이다. 그렇다면 '무한정'은? 'Recursin', 즉 매번 판정해야 하는 루프를 말하는 것이다. 여하튼, 문제5# Three Cups(야바위)에 대해 알아보자. 야바위라는 말에서 알 수 있듯이, 밖에서 볼 수 없는 엎어진 컵 중 어느 컵 안에 공이 위치했는지 찾는 문제이다. 도전 과제: 불투명한 컵이 3개 있고, 컵은 왼쪽(위치1), 가운데(위치..
[외계어 배우기] Happy or Sad [코딩 테스트로 시작하는 파이썬 프로그래밍] 도서의 "chapter2 조건문"을 복습한 후, 연습문제를 풀면서 영상을 만들어 보았다. 이번 연습문제를 풀면서는 컴퓨터에게 애매하지 않고 정확한 언어(코드)로 이야기하는 것에 다시 한번 생각하게 되었다. 자막도 넣어 보았다. 문제를 조금 더 자세히 보고 싶다면 여기를 참고하길 바란다.
공부하며 생각하기 - 좋은 코드 좋은 코드에 대해서 생각해 봅니다. 프로그래밍을 배우면서 선생님께 가장 많이 듣는 이야기가 가독성 부분입니다. 코드가 가독성이 좋다는 것은 무엇일까요? 제 생각을 공유해 보겠습니다. 일단, 컴퓨터가 읽기 좋은 코드라는 의미일 것입니다. 왜냐하면 우리가 짜는 코드는 결국 우리가 컴퓨터에게 명령하고 싶은 것들을 프로그래밍 언어를 통해 번역한 것이니까요. 그런데 컴퓨터만 이해하기 좋으면 될까요? 사실 해결해야 할 문제를 이해하고 코드를 작성하고 나중에 그 코드를 수정하거나 보완해야 하는 것은 사람의 몫이기 때문에 사람도 읽기 좋아야 할 것입니다. 여기에서 어느 쪽을 더 우선시해야 하냐의 문제가 있을 수 있는데, 이 부분은 당연히 사람이지 않을까요? 사람이 해결하고 싶은 문제를 위해 프로그래밍을 하는 것이니까..

반응형