BAK/Problem Solving, Python Programming, and

Coursera 강의,Problem Solving, Python Programming, and Video Games 1주차

게임이 더 좋아 2020. 4. 15. 23:23
반응형
728x170

이 수업의 목표는 4가지이다.

 

Understanding

 

1.computer science

2. problem solving or computational thinking

3. Python programming

4. create video game == > create software application

 

 

Python을 통해서 우리가 배울 것은

1. lexics

2. syntax

3. semantics

4. namespaces

5. control structures

 

 


 

1주차 내용들

 

 

 

IT 용어적으로 설명하자면

 

네이버 사전이 그렇게 말한다.

 

require

장치(unit)나 디바이스(device), 시스템 등이 어떤 목적을 달성하기 위하여 명령하거나 요구하는 것. 예를 들면 콘솔(console) 상의 특정한 키 스위치(key switch)에 인터럽트 신호를 발생하도록 할당해두면 프로그램 실행중에도 이 키 스위치를 누름으로써 인터럽트 요구를 내어 실행(execution)을 중단시킬 수 있다.

 

represent

일을 문자나 수식으로 표현하거나 어떤 심벌을 사용하여 나타내는 것.

 

generate

새로운 것을 만들거나 발생시키는 것. 컴퓨터에서는 특히 골조(骨組)만을 코딩하고 있는 프로그램을 근본으로 하여 몇몇 범용 프로그램(general purpose program)을 호출하고 어떤 범용적 조작의 특별(special)한 경우를 실행(run)하는 프로그램을 생성하는 것을 말한다. 또 이러한 프로그램을 생성 프로그램(generator ; 발생기)이라 한다. 이 조작은 컴파일러(compiler)와 비슷하지만, 특정 타입의 프로그램밖에 만들 수 없는 점에서 차이가 있다.

 

transform

지정된 규칙에 따라 의미를 현저히 바꾸지 않고 데이터의 구조나 구성을 바꾸는 것.

 

communicate

정보(information)와 메시지(message)를 전달하는 것. 컴퓨터 시스템에서는 컴퓨터와 단말 장치(terminal) 사이에서의 데이터의 수신·송신, 통신 시스템에서의 통신, 컴퓨터와 유저 사이에 메시지를 전달해주는 동작을 총칭한다. 통신 시스템과 컴퓨터 시스템에서는 통신 회선을 경유하여 데이터를 전송하는 경우에 통신 방향의 약속이 있는데, 이것을 통신 방식(communicate mode, communication mode)이라고 한다.

 

 

 


 

 

How can we get a computer to perform the appropriate computations? 

One of the final steps in the application programming process is to write 

a computer program that a computer uses to perform the computations for the application. 

 

However, modern programming languages do not contain 

machine instructions that can be directly performed by a computer. 

Instead, the computer program is 

a high level representation of the steps the computer must perform. 

A translator must translate the computer program into machine language instructions, 

which the computer can then use to perform the computation.

 

There are two kinds of translators, compilers and interpreters. 

An interpreter translates one statement of a program 

into machine language by interpreting that line. 

 

Interpretation occurs in real time, 

since an interpreter translates speech, one phrase, 

or a sentence at a time as a speaker is speaking. 

This kind of translation is sometimes called simultaneous interpretation, 

and is analogous to interpretation of computer languages.

 

 


Learning Outcomes and Problem-Based Learning

 

 

 

 

 

 

 

 

 

 

 

 

 


한글 요약

 

연산을 하려면 정보가 필요하다. 계산은 수많은 연산 중 하나이다.

연산은 사용자의 문제를 해결해줄 수 있는 컴퓨터가 할 수 있는 일이다. 

 

알고리즘이란 연산을 위한 일련의 단계를 뜻한다.

 

컴퓨터의 연산을 이용해서 많은 것들을 한다.

계산, 통신, 저장, 관리, 암호화 등

 

알고리즘이 선행되어야 연산할 수 있다.

 

/////////////////////////////////////////

 

컴퓨터에게 연산을 시키려면 컴퓨터의 언어로 말을 해야한다.

우리는 컴퓨터의 말을 할 줄 몰라서 프로그래밍 언어를 쓴다.

 

번역기가 우리말을 컴퓨터언어로 바꿔줄 것이다.

번역기는 2가지가 있다

컴파일러, 인터프리터

 

인터프리터는 프로그래밍 문장을 컴퓨터 언어로 바꿔준다.

실시간으로 진행된다.  한 단위씩 이루어짐. 동시통역 같다.

 

 

컴파일러

인터프리터

개발 편의성

코드를 수정하고 실행하려면 컴파일을 다시 해야 한다. 

코드를 수정하고 즉시 실행할 수 있다. 

실행 속도

빠르다. 

느리다. 

파일 용량

프로그램의 실행 파일 전체를 전송해야 하므로, 용량이 크다. 

프로그램의 코드만 전송하면 실행이 되므로, 용량이 작다. 

 

///////////////////////////////////////////

 

프로그래밍을 배운다는 것은

 

알고리즘으로 문제를 표현할 수 있고 실제로 문제를 수행하는 연산을 설계할 수 있고

또한 다양한 언어로도 문제를 해결할 수 있다. 또한 자신의 알고리즘을 평가하고 개선할 수 있다.

 

728x90
반응형
그리드형