Lecture 9 of Introduction to Computer science

Lecture 9

이 강좌에서는 이 때까지 배운 것들에 대한 리뷰를 진행하였다.




이 강의를 통해 위와 같이 마리오 블럭을 어떤 방식으로 출력할 수 있는지 알아보기도 하고,


가상주식거래사이트를 통해 구매한 내역이 어떻게 저장이 되어 재로그인이 필요가 없는지 알아보기도 했다.


중간에 명언도 날려주시는 David.


Froshim이라는 기숙사 등록 사이트도 html로 구현해보았다.


Week 0에서는


Computer science란 단순히 컴퓨터에 대해 배우는 것이 아닌 어떻게 풀어나갈 것인가(How to solve)에 대한 방법론이며 항상 문제를 input, output, 그리고 algorithm으로 정의한다.


컴퓨터에서 십진법이나 글자, 더 나아가 이모지들까지 어떻게 구분하는지 알아보았고(ASCII)


전화번호부에서 특정인을 찾을 때 3가지 알고리즘 중 log n의 형태로 표현되는 해결법이 가장 이상적인 것을 알았다.


Week 1에는


C를 접하고 hello, world를 출력하였으며


이는 컴파일을 진행했을 때 위와 같이 이진수들의 나열로 변환이 되는 것을 배웠다.


Week 2에서는


header파일을 include하며 함수를 사용했을 때,


각각 컴파일을 통한 어셈블리코드로 변환이 되는 것을 보았고 (main, header, header)


이는 RAM이라고 부르는 하드웨어에서 일어나는 일임을 인지하였다.


Week 3에는


실제로 존재하지 않는 string type이 포인터인 char *로 역할을 한다는 것을 알았고


swap함수에서 포인터를 통해 주소로 접근하여 실질적으로 값을 변환이 가능 한 것을 확인하였다.


Week 4에는


struct type에 대한 정의법을 배웠고 node를 통해 어떻게 list를 포인터로 연결이 가능한지,


그 구성은 위와 같음을 알게되었다.


전화번호부에서 이름을 찾을 때 각각의 이름에 대한 node들의 포인터를 구조화한 모습도 보았다.


Week 5에서는


웹프로그래밍이 어떻게 이루어지는지 배웠으며 위와 같이 IP주소로 요청을하여 Host로 부터 해당 index.html을 받아오는 형식을 확인하였다.


또한 기본적인 구성은 왼쪽과 같으며 이를 layout.html로 공통적으로 묶어 줬었고 이를 도식화하면 오른쪽과 같은 플로우가 된다.


Week 6에서


Python을 활용하여 이전의 예시들을 다시금 구현해보고 list함수 및,


dict type에 대해 다뤄보기도 하였다.


Week 7에서는


MVC에 대한 구조를 보고 그 중 Controller와 View를 html로 짜보았으며,


Week 8에는


MVC 중 Model에 해당하는 SQLite를 활용하여 구현해보기도 하였으며 위의 함수들을 사용했다.

이로써 길게 느껴졌던 짧은 Introduction 강의가 끝마치게 되었다. 최고의 강의였음은 두번말할 필요가 없겠다.

댓글

댓글 쓰기