본문 바로가기

CS(Computer Science)/프로그래밍언어14

프로그래밍 언어 총정리 프로그래밍 언어란? 기계가 읽을 수 있고, 사람이 읽을 수 있는 형태로 계산된 표현 체계 언어 설계의 기본 원칙 1) 효율성 : 목적 코드의 효율성 (실행 속도) , 번역의 효율성 (컴파일 속도) , 구현의 효율성 (알고리즘이 얼마나 쉬운가) , 프로그래밍의 효율성 (프로그램 작성이 얼마나 쉬운가) , 비용(돈) 문제 (개발비 / 디버깅 유지보수 / 구현 및 실행 비용) 2) 일반성 : 관련 있는 여러 개념들을 일반적인 하나의 개념으로 통합하여 얻는 성질 3) 직교성 : 언어의 구성자들이 각각 서로 독립적인 의미를 가진 채 조합하는 성질 4) 획일성 : 유사한 것은 유사하게, 상이한 것은 서로 다르게 표현 기타 설계 원칙 - 간결성, 안전성, 표현력, 정확성, 확장성 , 기계 독립성 , 제약성 , 부분성.. 2023. 6. 7.
14. 객체지향 프로그래밍 객체 지향 (object-oriented) - 객체, 클래스, 상속을 제공하는 기술 또는 프로그래밍 언어의 속성 - 정보 은닉(캡슐화) , 자료 추상화 , 메시지 전달, 다형성 , 동적바인딩, 상속 S/W 모듈 재사용 1. 자료와 연산의 확장 / 제한 2. 하나 이상의 연산을 재정의 3. 두 개의 부품에 사용되는 비슷한 연산들을 하나의 새 부품으로 추상화 4. 다형성 또는 연산에 적용할 자료형의 확장 모듈의 독립성을 위하여 모듈 내부 자료들은 정보 은닉(캡슐화)를 하고 이에 접근하는 연산을 정의하였다. 객체(Object) - 연산의 효과를 저장하고 유지하는 연산들과 자료의 집합 - 객체의 상태 : 객체 자신의 내부적, 또는 지역적인 것 / 객체의 부분 / 선언된 지역 변수들에 의해 표현 메소드(Metho.. 2023. 6. 7.
12. 예외 처리 Procedure의 종료 - return (정상), goto - overflow, underflow, range error -> system interrupt - EOF 등 예외조건 (예상 가능한 조건) 예외 조건 제어 불가능 언어 : 오류 시 약속된 값을 반환 (Programmer가 매번 check) , 오류 처리 루틴으로 즉시 제어 이동(정상 제어를 파괴) 예외 조건 제어 가능 언어 : 사용자가 제어 가능 - PL/I : 최초 제공 언어 - Mesa, CLU, Ada, C++, Java : 우아한 방법 제공 예외 처리 1) 프로시저들 사이의 정보 교환 2) 예외는 오류가 아님 3) 초기 예외 처리 : H/W interrupt routine을 사용 , system에서 제공 (처리 루틴) 4) 고려사항 .. 2023. 6. 4.
11. 추상 자료형 자료 추상화 , 자료 캡슐화 - 자료를 연산과 함께 선언한다 - 정보 은닉 개념 -> readability 증가 - class, cluster, flavor, form, modula, package, structure ... 추상화(Abstraction) - 일부 속성 만으로 작업/객체들을 필요한 정도만 묘사하고 나머지는 숨기거나 삭제 - 유사성만 표현, 차이점은 삭제 - 기계에서 일이 수행되는 구체적이고 상세한 것을 모르고도 컴퓨터의 수행작업을 쉽게 이해하도록 해줌 자료형 : 객체들의 집합 + 객체에 작용하는 연산 집합(실체화, 구축, 소멸, 분리연산) 자료 추상화(Data abstraction) : 자료형 + 연산들을 캡슐화(encapsulation) - 강 자료형을 지원 - 객체들에 적용되는 연산들.. 2023. 6. 4.
728x90