주요 내용
코스: 컴퓨터 프로그래밍 > 단원 1
단원 17: 더 나은 프로그래머 되기다음으로 배울 것
지금까지의 설명을 다 보고 모든 도전 과제를 완료했나요? 정말 멋져요!
다음에 무엇을 배울 것인지 알아보기 전에 지금까지 배운 JavaScript와 ProcessingJS를 복습해 봅시다.
복습: JavaScript
세상에는 많은 프로그래밍 언어가 있으며 자바스크립트는 가장 인기 있는 프로그래밍 언어 중 하나입니다. 일반적으로 프로그래밍 언어는 컴퓨터 메모리에 데이터를 저장하는 방법, 데이터를 처리하는 방법, 코드를 정리하고 반복해서 실행하는 방법을 포함합니다. 다음을 통해 자바스크립트에서 이 모든 방법을 어떻게 수행하는지를 배웠습니다.
- 변수(Variables): 변수를 할당, 재할당하고 지역 또는 전역 범위로 선언하는 방법
- 데이터형(Data types): 숫자형, 논리형, 문자형, 배열, 객체형
- 함수(Functions): 코드를 함수로 묶는 방법, 함수에 인수를 전달하는 방법, 값을 다시 반환하는 방법
- 조건(Conditionals): if/else문과 논리식을 이용하는 방법
- 반복문(Loops): 코드를 반복 수행하기 위해 while문과 for문를 이용하는 방법
새로운 프로그래밍 언어를 배우게 되면 그러한 언어들이 JavaScript와 많은 부분이 비슷한 것을 알 수 있습니다. 정확한 문법만 다르며 상세사항만 미묘하게 다를 뿐입니다.
복습: ProcessingJS
JavaScript를 재미있게 배우기 위해 여러분에게 ProcessingJS라 하는 그림 및 애니메이션 "라이브러리"를 제공했습니다. 이 라이브러리는 페이지의 배경에 픽셀을 그리는 기능을 제공하는 함수들의 집합이며 이러한 함수를 사용하는 방법을 배웠습니다. 다음은 ProcessingJS에서 사용 방법을 배운 예시입니다.
- 모양(Shapes): rect(), ellipse(), line()
- 색깔(Colors): fill(), stroke(), background()
- 글자(Text): text(), textSize()
- 이벤트(Events): draw(), mousePressed()
- 수학(Math): random(), dist()
ProcessingJS 라이브러리를 로딩하지 않고 JavaScript를 이용하면 이러한 함수에 접근할 수 없습니다. 그러므로 항상 라이브러리를 로딩해야 합니다.
심화 학습
지금까지 배웠던 내용을 좀 더 깊게 살펴보거나 관련된 내용을 배우는 등, 계속해서 프로그래밍을 배울 수 있는 방법은 매우 많습니다.
칸아카데미에서 더 알아보기
칸아카데미에는 글과 응용 예제로 세 개의 심화된 트랙이 있습니다.
- 심화 JS: 게임과 시각화
- 심화 JS: 내추럴 시뮬레이션 (고등학교에서와 같이 기본적인 삼각법과 물리학을 잘 아는 사람들에게 권합니다.)
- 알고리즘 (로그 / 함수를 수행한 사람들에게 권합니다.)
자바스크립트 좀 더 배우기
여전히 자바스크립트에 관해 배울 수 있는 언어적인 내용이 많으며 여러 온라인 소스에서 배울 수 있습니다. 본 수업의 기본적인 내용을 이미 알고 있으면 모르는 내용이 나올 때까지 생략하거나 연습하면서 내용들을 검토합니다.
ProceessingJS 좀 더 배우기
ProcessingJS는 강력한 라이브러리인데 여기에서는 반 정도만 소개하도록 하겠습니다.
큰 규모의 프로젝트 수행하기
때때로 프로그램이 동작하는 방법을 실제로 배우기 위한 가장 좋은 방법은 열정적으로 관심 프로젝트를 수행하는 것입니다.
- 게임, 시뮬레이션 또는 스토리에 대한 아이디어를 내고 이중에서 어려울 수 있지만 너무 어렵지는 않는 것을 선택합니다.
- 의사코드를 이용하거나 종이에 스케치하거나 또는 문서에 기록하여 선택한 것에 관한 상세 계획을 세웁니다.
- 프로그래밍을 시작합니다. 힘든 경우가 생기면 (칸아카데미 토크-스루나 커뮤니티에서) 비슷한 기능을 수행하는 프로그램을 찾아본 후 전문가들에게 질문을 해보세요.
- 완료하면 친구들 및 식구들과 함께 공유하고, 얼마나 많이 배웠는지를 되새겨 보세요.
웹 개발 배우기
웹페이지는 구조를 정의하는 HTML과 다양한 폰트와 색깔로 꾸밀 수 있는 CSS, 그리고 사용자가 클릭할 때 움직이는 것과 같은 상호작용 기능을 제공하는 JavaScript로 만들 수 있습니다. 이미 자바스크립의 기본을 배웠지만, 웹페이지를 만들고 싶다면 다음 온라인 수업을 통해 HTML과 CSS를 배워야 합니다.
일단 HTML과 CSS에 익숙해지면 JavaScript를 이용하여 웹페이지를 처리할 수 있는 라이브러리인 자바스트립트 "DOM API"를 이용하는 방법을 배워야 합니다.
새로운 언어 배우기
여러분이 자바스크립트에 매우 익숙해지면 완전히 새로운 언어를 배우고 싶을 수도 있습니다. 다음은 여러분이 배워 볼 수 있는 언어들입니다.
- 파이썬(Python): 웹 서버와 데이터 처리를 위해 사용됩니다. 이는 Codecademy, Treehouse 또는 interactive online textbook에서 배울 수 있습니다.
- 자바: 안드로이드 앱을 만들기 위해 사용됩니다. Treehouse에서 배울 수 있습니다.
- 오브젝티브 C(Objective C): 아이폰 앱을 만들기 위해 사용됩니다. MakeGamesWithUs나 Treehouse에서 배울 수 있습니다.
- 루비(Ruby): 웹 서버를 생성하기 위해 Rails 프레임워크와 함께 사용됩니다. Codecademy 또는 Treehouse에서 배울 수 있습니다.
- PHP: 웹서버를 위해 사용됩니다. Treehouse 또는 Codecademy에서 배울 수 있습니다.
- 하스켈(Haskell): 함수형 프로그래밍을 위해 사용되며 연구자들에게 인기가 좋습니다. Learn you a Haskell for Great Good에서 배울 수 있습니다.