CS Study 02
17 June, 2020 - Computer Science - 1 min read
프로그래머가 하는 일은 추상화(abstraction)
- 함수(function, routine, procedure, subroutine)
- procedural programming =절차지향
- 객체(object) -> OOP(object - oriented - programming) 객체지향
- 함수에서의 추상화란, -> ‘함수 시그니처(함수이름, 매개변수, 결과값)’ 또는 ‘인터페이스’와 ‘내부구현’을 구분(seperation)하는 것
- Documentation은 함수 시그니처를 모아놓은 것
- 내부구현은 알고리즘으로 이루어져있고, 이를 테스트할 때 O(n)를 이용
함수를 만들 때 유의할 점
- 함수이름은, 누가 보더라도 어떤 용도인지 알 수 있도록 명확하게
- 매개변수, return 등 인터페이스를 동일하게 설계해야 함. 이를 기능명세라고 함.
2진수 정규화(normalization)
- 정규화: 정수부를 1자리수, 0이 아닌 자연수
- 예: 123.82 -> 1.23482 x 10 **2
- mantissa 부분은 정밀도를 의미한다.
Epsilon
언어 추상화
파이썬
mutable object(변경 가능 객체)
- 리스트
- 딕셔너리
- 집합(set)
immutable object(변경 불가능 객체)
- 정수, 상수, 정수
- 문자열
- 튜플