Ajax (Asynchronous JavaScript and XML) ajax
http://ko.wikipedia.org/wiki/Ajax
대화식 웹 애플리케이션의 제작을 위해 아래와 같은 조합을 이용하는 웹 개발 기법
* 표현 정보를 위한 HTML(Hypertext Markup Language) (또는 XHTML(Extensible HTML)) 과 CSS(Cascading Style Sheet)
* 동적인 화면 출력 및 표시 정보와의 상호작용을 위한 DOM(Document Object Model), 자바스크립트
* 웹 서버와 비동기적으로 데이터를 교환하고 조작하기 위한 XML(Extensible Markup Language), XSLT, XMLHttpRequest
(Ajax 애플리케이션은 XML/XSLT 대신 미리 정의된 HTML 이나 일반 텍스트, JSON(JavaScript Object Notation), JSON-RPC를 이용할 수 있다).
DHTML(Dynamic HTML)이나 LAMP(Linux,Apach,Mysql,PHP,Perl,Python) 처럼 하나의 특정한 기술을 말하는 것이 아니며,
함께 사용하는 기술의 묶음을 지칭하는 용어
실제로 AFLAX와 같이 사실상 Ajax에 바탕을 두고 있는 유사/복합 기술들이 속속 나타나고 있다.
* Ajax 관련 용어
* Ajax : HTML/XHTML,Javascript를 이용한 대화형 웹 개발 방식
* HTML (Hypertext Markup Language)
- CSS (Cascading Style Sheet) : 마크업 언어가 실제 표시되는 방법을 기술하는 언어, HTML, XHTML, XML에서 사용 가능
- XHTML (Extensible HTML) : XML 응용한 HTML 4, 엄격한 문법, 확장성과 이식성이 높다
- SGML (Standard Generalized Markup Language) : 문서용 마크업 언어를 정의하기 위한 메타 언어
- XML (Extensible Markup Language) : SGML을 단순화한 언어, 데이터를 기술하는데 적용
- SAX (Simple API for XML) : XML문서를 어플리케이션에서 사용하기 위한 API, XML 파일을 해석하기 위해 DOM 대신 사용
- XQL (XML Query Language) :
- DOM (Document Object Model) : 구조화된 문서를 표현하는 형식, 브라우저간 호환을 위해 W3C에서 표준 작성
- DHTML (Dynamic HTML) : HTML, JavaScript, CSS를 이용하여 대화형 웹 사이트를 제작하는 기법
- SPA (Single Page Applications) : DHTML로 만든 프로그램
- XSL (Extensible Stylesheet Language) : XML 문서 내에 기술되어 있는 데이터가 사용자에게 어떻게 보여질 것인지를 설명한 스타일시트를 만드는데 사용되는 언어
- XSLT (XSL transformations) : XSL의 확장판, XML 문서 구조를 다른 구조를 갖는 XML 문서로 변환하는 방법을 기술하기 위한 표준적인 방법
- XMLHttpRequest : 마이크로소프트 객체
- JavaScript : 객체 기반의 스크립트 프로그래밍 언어, 썬이나 자바와는 관련 없음, 문법은 비슷
- JSON (JavaScript Object Notation) : 인터넷에서 자료를 주고받을 때 그 자료를 표현하는 방법
컴퓨터 프로그램의 변수값을 표현하는 데 적합, 자바스크립트의 문법 이지만, 프로그래밍 언어나 플랫폼에 독립적
- SOA (Service Oriented Architecture) ; 서비스 지향 아키텍처, 업무중심으로 시스템 전체를 구축해 나가는 방법론
- SOAP (Simple Object Access Protocol) : HTTP,HTTPS,SMTP등을
사용하여 XML기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 형태의 프로토콜, 웹 서비스(Web Service)에서 기본적인
메시지를 전달하는 기반, XML사용
- Middleware : 양 쪽을 연결하여 데이터를 주고 받을 수 있도록 중간에서 매개 역할을 하는 소프트웨어,3계층 클라이언트/서버 구조
예) 데이터베이스 시스템, 텔레커뮤니케이션 소프트웨어, 메시지 및 쿼리 소프트웨어
- 분산 컴퓨팅 (Distributed computing) : 연결된 여러 컴퓨터를 이용하여 거대한 계산 문제를 해결하려는 분산처리 모델
* LAMP (Linux,Apach,Mysql,PHP,Perl,Python)
- PHP (Hypertext Preprocessor) : 웹사이트를 작성하는데 쓰이는 서버 측 스크립트 언어
- Perl : 래리 월이 만든 인터프리터 방식의 프로그래밍 언어. 실용성을 모토로 하고 있어 C나 sed, AWK, 셸 스크립트 등 다른 프로그래밍 언어에서 뛰어난 기능을 많이 도입
- Python : Guido van Rossum이 발표한 언어, 플랫폼 독립적이며 인터프리터식, 객체지향적, 동적 타이핑 대화형 언어
- Ruby : 마쓰모토 유키히로가 만든 동적 객체 지향 프로그래밍 언어,
- Ruby on Rails : 루비로 작성된 모델-뷰-컨트롤러 (MVC) 구조 기반의 오픈 소스 웹 프레임워크, 스프링노트 제작에 쓰임
- Lua : 가벼운 명령형/절차식 언어, 확장 언어로 쓰일 수 있는 스크립팅 언어를 주 목적으로 설계, 게임제작에 사용됨
- RIAs (Rich Internet applications) : 데스크탑 프로그램과 유사한 웹프로그램
- Adobe Flex : 플래시 기반의 RIA(rich Internet applications) 개발툴
- Adobe AIR (Adobe Integrated Runtime) : RIA를 윈한 Adobe의 독립 플랫폼 환경, Flash, Flex, HTML, Ajax
* Java
- Spring Framework : Rod Johnson이 만든 오픈소스 자바 언어용 프레임워크, 웹제작에 용이
- JFC (Java Foundation Classes) : 썬에서 만든 자바용 클래스(프레임워크)
- AWT (Abstract Window Toolkit) : JFC에 포함된 GUI 툴킷, 초기 개발
- Swing : JFC에 포함된 GUI 툴킷, AWT보다 세련됨
- SWT (Standard Widget Toolkit) : IBM에서 만든 자바용 GUI 툴킷
- JMF (Java Multimedia Framework) : 자바용 멀티미디어 라이브러리,
- JVM (Java Virtual Machine) : 자바 가상 머신
- JNI (Java Native Interface) : JVM밖에서 JVM안과 통신할수 있는 자바 인터페이스
RNI (Raw Native Interface) : MS의 JNI, J++에서 사용
- JavaBeans : 자바로 작성된 소프트웨어 컴포넌트,(MS의 COM과 유사)
- EJB (Enterprise JavaBean) : 기업환경의 시스템을 구현하기 위한 서버측 컴포넌트 모델
웹 시스템에서 JSP는 화면 로직을 처리하고, EJB는 업무 로직을 처리하는 역할
- Jini : 썬에서 만든 분산환경에서의 네트웍 구조, 스펙, 도구, 아파치에서 개발
네트웍 상에서 여러 장치들의 접속이나 공유를 단순화
- Java RMI (Java Remote Method Invocation ) : 자바 원격 함수 호출
서로 다른 JVM상에 잇는 객체의 매소드를 호출함, 소켓상의 통신
- JRMP (Java Remote Method Protocol)
- CORBA (Common Object Request Broker Architecture) : 분산환경에서의 소프트웨어 컴포넌트 표준
다양한 시스템에서 각종 프로그래밍 언어로 가능
'Code' 카테고리의 다른 글
FFmpeg 소스 빌드 (0) | 2012.08.29 |
---|---|
WinDbg 와 VirtualPC를 이용한 커널 디버깅 방법 (0) | 2012.08.21 |
_ERROR Log (0) | 2012.08.19 |
윈도우,비주얼 스튜디오 버전, WINVER, _MSC_VER (0) | 2012.08.19 |
Window, Process, Module, Thread 정보 (1) | 2012.08.19 |