선언형 언어
선언형 언어의 개요와 실행 절차
ex. HTML, LISP, PROLOG, XML 등
개요
-
프로그램이 수행해야 할 문제를 기술함
- '어떤 방법으로' 가 아닌, '무엇과 같은지'를 설명하는 언어임
- 제목, 글꼴, 표, 그림과 같이 '무엇'을 나타내야 하는 지 묘사함
-
결과에 대한 목표를 명시함
-
함수 언어(Functional Language)와 논리언어(Logic Language)가 포함됨
- 함수언어: 함수로 프로그램 구성
- 논리언어: 기호논리기반 언어
선언형 언어의 특징
- 명령형 언어의 반대 개념임
- 가독성이 좋음
- 재사용성이 좋음
- 프로그램이 수행해야하는 문제를 기술함
- 목표를 명시하고, 알고리즘은 명시하지 않음
선언형 언어의 종류
종류 | 내용 |
---|---|
HTML | - Hyper Text Markup Language의 약자 - 웹페이지를 위한 마크업 언어 의 일종- 제목, 단락 목록 등 본문의 구조적 의미뿐 아니라 링크, 인용 등을 지원하여 구조적 문서 를 만들 수 있도록 함 |
LISP | - List Processing의 약자 - 실용적 목적 하에 컴퓨터프로그램을 활용하여 수학 표기법을 나타내기 위해 만들어졌으며 LISP 코드는 그 자체로 하나의 리스트임 |
XML | - Extensible Markup Language의 약자 - W3C 에서 개발된 특수한 목적을 갖는 마크업 언어 - 다른 종류의 시스템끼리 데이터를 쉽게 주고 받을 수 있도록 함 |
PROLOG | - programmation en logique(논리 프로 그래밍) - 논식을 토대로 오브젝트와 오브젝트 간 관계에 관한 문제를 해결함 |
마크업 언어
: 화면에 표시되는 형식이나 데이터의 논리적인 구조를 명시하는 언어
종류별 특징
HTML
인터넷 표준 문서인 하이퍼텍스트문서 제작용 언어
- 특별한 데이터 타입이 없음
- 호환성이 좋고 사용이 편리함
LISP
- 인공지능 분야에 사용됨
- 연결리스트가 기존 자료구조임
- 재귀호출이 많이 사용됨
USE-VALUE :R1 Input a value to be used instead.
ABORT :R2 Abort main loop
Break 1 [5]
PROLOG
- 논리학 기초의 고급언어
- 인공지능 분야에서 사용함(논리적 추론, 리스트 처리)
XML
- HTML의 단점을 보완하여 구조화된 다양한 문서를 상호 교환할 수 있음
- 구조화가 가능함
HTML
가장 단순한 Web 페이지 작성 언어
HTML
- Active-X, 플래시 등 여러 플러그인을 통하여 사용
- PC에서만 지원
HTML5
- 별도의 플러그인 필요 없음
- 다양한 기기를 통하여 지원됨
HTML5의 특징 (HTML 4.01 대비)
- 표준화된 웹 자원으로 사용
- HTML 4.01의 상위버전
- 2014년 웹 표준화 기구인 W3C에 의해 웹표준으로 선정
- 별도의 플러그인 설치 없이 다양한 멀티미디어 콘텐츠와 앱 사용 가능
- Active-X, 플러그인, 플래시 등 비표준 기술을 지양
- PC,모바일 단말기 등에서 모두 사용
- 시맨틱 태그를 사용함
- 각 태그를 통해 문서의 구조와 의미를 내포
- 레이아웃 태그를 사용함
- 페이지, 섹션 등 레이아웃을 구분
<header>
,<nav>
,<main>
,<article>
,<section>
,<aside>
,<footer>