[2020 정보처리기사 실기 - 프로그래밍 언어 활용] 2. 언어 특성 활용...
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
[2020 정보처리기사 실기 - 프로그래밍 언어 활용] 2. 언어 특성 활용...
* 객체지향 프로그래밍 언어
객체지향은 구조적 방식의 문제점을 극복하고 인간이 사고하는 방식대로 프로그램을 개발하려고 탄생
객체라는 실 세계에 존재하거나 또는 개념적인 그 어떤 것을 표현한 것을 이용하여 프로그래밍 하는 방식을 말함
1) 기존 프로그래밍과 비교
- 기능 중심의 프로그램과 달리 기능과 자료가 통합된 객체 단위로 프로그래밍
2)객체 프로그래밍 구성 : 객체, 클래스, 메세지
객체 구성: 개체, 속성, 메소드
3) 대표적인 객체지향 프로그래밍 언어 : JAVA, C#, 델파이, 스위프트
4) 객체지향 프로그램의 특징
- 캡슐화와 정보은닉
캡슐화는 기능과 데이터를 하나로 묶어 객체로 표현하는 것을 말함
클래스 내부의 동작을 모르더라도 클래스가 제공하는 메서드를 사용해서 클래스의 기능을 사용할 수 있음
캡슐화를 통해 정보은닉이 가능해짐
정보은닉 : private, package, protected, public
- 추상화
실체에서 공통되는 속성이나 관심있는 부분만 추출하여 모델링 하는 개념
상속 : 상위 클래스의 속성과 메소드를 상속해서 새로운 클래스를 생성하는 기법
추상화된 클래스를 구체화 시키는 방법으로 사용
- 다형성
동일한 이름의 오퍼레이션이 각 클래스마다 다른 사양으로 정의될 수 있다는 것을 말함
하나의 클래스 안에서 사용되는 오버로딩과 상속관계의 클래스에서 사용되는 오버라이딩이 대표적
오버라이딩은 슈퍼클래스 타입으로 하위클래스에서 오버라이딩 한 메소드에 접근 할 수 있다는 점에서 강력
객체지향 설계의 OCP, LSP, DIP를 구현하기 위한 필수 요소이고, 다형성의 핵심이며, 다양한 디자인 패턴에서 사용
*스크립트 언어
소스코드를 컴파일하지 않고도 실행할 수 있는 프로그래밍 언어를 말함
주로 다른 응용 프로그램에 삽입되어 인터프리터를 통해 해석되고 동작함
인터프리터만 있다면 어떤 운영체제 위에서도 동일하게 동작
1) 스크립트 언어 동작 방식(컴파일 언어와 비교)
컴파일을 통한 실행파일 생성 없이, 인터프리터에 의해 명령어 단위로 해석되고 실행됨
2) 다양한 스크립트 언어
- 자바스크립트 : 미국넷스케이브에서 개발한 스크립트언어, HTML문서에 삽입되어 사용, JAVVA언어 기능상 아무런 관련 없음
- JSP : 사바 서버 페이지의 약자, HTML 페이지 안에 자바코드를 직접 삽입하여 웹 서버에서 동적으로 웹페이지 생성
- PHP : HTML 문서 안에 포함하여 작동하는 서버 측 스크립트 프로그래밍 언어
- ASP : Active Server Pages의 약자, MS 윈도우서버에서 운영되는 스크립트 방식으이 서버측 스크립트 프로그래밍 언어
- 펄 : Practical Extraction and Report Language의 약자, 텍스트 처리에 주안점을 두고 개발된 스크립트 언어로 CGI개발에 사용
- 파이썬 : 플랫폼 독립적이며, 인터프리터식, 객체 지향적, 동적 타이핑의 대화형 언어
3) 대표적인 스크립트 언어 PYTHON
-쉽고 빠르고 사용자가 많음
- 간결한 코딩을 지원
* 선언형 언어
- 특정 선언으로만 프로그램을 동작 시키는 프로그래밍 패러다임
- 어떤 방법으로 해야하는지 나타내기보다 무엇과 같은지 설명하는 방식
1) 유형
- 함수형 언어 : 자료처리를 수학적 함수의 계산으로 취급하고 상태의 가변 데이터를 멀리하는 프로그래밍 패러다임
Haskell, Lisp
- 논리형 언어 : 논리 문장을 이용하여 프로그램을 표현하고 계산을 수행하는 개념 prolog, sql
- 제약형 언어 : 변수 간 관계를 제약 형태로 프로그래밍 기술하는 패러다임, 제약형 프로그래밍에서는 문제를 제약 만족 문제로 품
oz
2) 선언형 언어의 특징
- 참조 투명성 : 프로그램 동작의 변경없이 관련 값을 대쳋할 수 있다면 표현식을 참조상 투명하다고 할 수 있음
- 지연평가 지원 : 계산이 필요한 순간이 오는 경우까지 미룬다는 개념
- 빠른 개발 : 알고리즘에 집중하며 이미 만들어진 것을 선언을 통해 사용
- 적은 버그 : 구체적인 작동순서를 나열하지 않아서 버그가 적음
3) 대표적 선언형 언어
- 하스켈 : 난립하고 있는 함수형 언어들을 통합정리하여 만든 순수함수형 프로그래밍 언어
- sql : DBMS의 데이터를 관리하기위해 설계된 특수 목적 프로그래밍 언어
- 프롤로그 : 논리식을 토대로 오브젝트와 오브젝트 간의 관계에 관한 문제를 해결하기 위해 사용
- XML : 특수한 목적을 갖는 마크업 언어를 만드는 데 사용하도록 권상하는 다목적 마크업 언어
(이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받을 수 있습니다.)
from http://snnchallenge.tistory.com/72 by ccl(A) rewrite - 2020-03-25 08:54:07
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
댓글
댓글 쓰기