일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- CD
- 네트워크
- springboot
- sql
- 스프링부트
- 리눅스
- Spring
- libasm
- 42seoul
- JPA
- 다이어리
- swift
- 스프링
- 오블완
- 오라클
- 소켓
- DBMS
- IOS
- MySQL
- 아이패드다이어리
- javascript
- 데이터베이스
- 인공지능
- 스프링부트 웹 소켓
- CI
- Xcode
- jenkins
- AI
- 티스토리챌린지
- 프로그래밍언어론
- Today
- Total
목록sswu/프로그래밍언어론 (4)
Hi yoahn 개발블로그
1. 타입의 정의모든 프로그램 -> 명시적/묵시적 데이터 사용알고리즘 + 자료구조 = 프로그램 가장 원시적인 데이터 = bit 들의 모임- 너무 낮은 수준의 추상화, bit로 데이터, 자료구조 구성 어려움-> 시스템에 내장된 타입의 기초적인 추상화는 기본 제공 데이터 타입= 값들의 집합 & 그 값들에 대해 유효한 연산들의 집합 내장 타입 -> 가능한 연산은 언어 설계자가 제공사용자 정의 타입 -> 가능한 연산은 정의한 사람이 제공해야 함 2. 추상 데이터 타입- 객체 = 성질 + 행위 = 속성 + 동작- 데이터 타입을 정의 할 때 값들이 표현되는 형태와 사용되는 방식을 함께 정의 => Class # 추상 데이터 타입의 장점- 한 구조 내에 데이터 타입의 두 요소 (데이터, 연산)가 함께 표현됨 -> 높은..
1. 프로그래밍 언어 설계의 원칙- 바람직한 언어를 판단- 좋은 프로그래밍 언어를 선택할 수 있다. 1) 효율 Efficiency- 돈, 시간, 공간의 효율 ▶ 최적화 용이성- 실행 효율- 초창기 언어일 수록 중요(컴퓨터가 귀한 자원)- 프로그램이 짧은 시간&적은 메모리로 실행을 완료하려면 실행 파일이 효율적이어야 함 -> 컴파일러가 실행파일을 효율적으로 만들도록 하는 것: 최적화- 최적화가 얼마나 정교하게 높은 수준으로 이루어질 수 있는가 최적화가 쉽게 이루어지려면 언어가 어떻게 설계되어야 하는가-> FORTRAN = 변수 길이 6글자 이하 (word=36bit, 글자인코딩=6bit=1글자) -> 판독성은 떨어지고 인건비는 올라감 ▶ 번역 효율- 컴파일 시간이 빠른 것1. go to 레이블이 go to..
1. 1950년대: 프로그래밍 언어의 여명기1) FORTRAN (FORmula TRANslation): 복잡한 수식을 쓰면, 어셈블리어로 자동으로 번역해 주는 것- John Backus (IBM) -> 포트란 개발, BNF 개발- 목적: 과학/공학 계산 목적- 목표: 결과로 나온 기계어 코드의 효율- 변수 길이 최대 6글자 이하 why? -> 포트란 개발 당시 IBM 컴퓨터의 메모리 워드 사이즈 = 36bit 명령형 패러다임의 시작2) COBOL (COmmon Business-Oriented Language): 비즈니스 지향 언어- 설계자: Grace Hopper- 목적 분야: 관공서, 경영. 행정, 상업분야- 설계 목표: 높은 인간 판독성 -> 영어 문법과 유사 (영어와 유사할 수록 친근하고 쉽게 느낌..