TIL 2022/07/02

김병영·2022년 7월 2일
0

TIL

목록 보기
17/19
post-thumbnail

1일1로그 100일완성 IT지식

041 / 042

프로그래밍 언어는 모두 계산을 일련의 단계로 풀어서 상세히 설명하기 위한 표기법으로 몇 가지 기본 아이디어를 공유한다. 모든 프로그래밍 언어가 입력 데이터를 읽고, 산술 연산을 하고, 계산이 진행됨에 따라 중간 값을 저장하고 가져오며, 이전에 계산한 값을 기반으로 어떻게 진행할지 결정하고, 그 과정에서 결과를 표시하고, 계산이 완료되면 결과를 저장하기 위한 방법을 제공한다.

043 / 044 / 045 / 046

자바스크립트를 통해 Hello World 출력하기, 반복문(for), 조건문(if), 구글지도 API를 이용하여 브라우저에 위치표시 하기 예제를 통해 기본적인 javascript 코드를 작성하는 법을 소개한다.

// 구글 API를 사용하여 구글 지도 표시하기 예제
function initMap () {
	var latlong = new google.maps.LatLng(38.89768, -77.0365)
    var opts = {
      zoom: 18,
      center: latlong,
      mapTypeId: google.maps.MapTypeId.HYBRID
    }
    var map = new google.maps.Map(document.getElementById("map"), opts)
    var marker = new google.maps.Marker({
      position: latlong,
      map: map
    })
}

047 자바스크립트는 어떻게 작동할까?

  1. 브라우저가 웹페이지에서 자바스크립트를 발견하면 프로그램의 텍스트를 자바스크립트 컴파일러로 전달한다.

  2. 컴파일러는 프로그램에 에러가 있는지 검사하고, 프로그램을 모형 컴퓨터처럼 만들어 낸 컴퓨터의 어셈블리 언어 명령어로 컴파일한다.

  3. 모형 컴퓨터 같은 시뮬레이터를 실행하여 자바스크립트 프로그램이 수행하기로 되어 있는 모든 기능을 수행하다. 시뮬레이터와 브라우저는 밀접하게 상호작용한다.

048 / 049 / 050

파이썬을 통해 Hello World 출력하기, 반복문(for), 조건문(if), 그래프 그리기 예제를 통해 기본적인 Python 코드를 작성하는 법을 소개한다.

// 시간복잡도 그래프 그리기 예제
import math
import matplotlib.pyplot as plt
log = []; linear = []; nlogn = []; quadratic = []
for n in range(1,21):
  linear.append(n)
  log.append(math.log(n))
  nlogn.append(n * math.log(n))
  quadratic.append(n * n)
plt.plot(linear, label="N")
plt.plot(log, label="log N")
plt.plot(nlogn, label="N log N")
plt.plot(quadratic[0:10], label="N * N")
plt.legend()
plt.show()

051 파이썬은 어떻게 작동할까?

  1. 명령줄 환경에서 python 명령어를 통해서 직접 실행하든 웹페이지에서 제공하는 서비스를 통해 간접적으로 실행하든 프로그램의 텍스트가 파이썬 컴파일러로 전달된다.

  2. 컴파일러는 프로그램에 에러가 있는지 검사하고, 프로그램을 모형 컴퓨터처럼 만들어 낸 컴퓨터의 어셈블리 언어 명령어로 컴파일한다. import문이 있으면 그 라이브러리의 코드도 포함한다.

  3. 파이썬 프로그램이 하기로 되어 있는 모든 동작을 수행하고자 가상 머신을 실행한다. 가상 머신은 키보드나 인터넷에서 데이터를 읽거나 화면에 출력을 표시하는 것 같은 작업을 하기 위해 컴퓨터 환경과 상호작용한다.


오늘의 한줄
오늘은 프로그래밍 언어 중 javascript와 python을 통해 기본적인 프로그래밍 방법을 알아보고
이를 통해 각 프로그래밍 언어가 어떻게 작동하여 사용자와 상호작용 하는지 설명한다.
profile
--- 생각중 ---

0개의 댓글