현대 웹 아키텍처
AppML는 최신 기술과 현대적인 웹 개발의 아이디어를 결합합니다.
속도, 단순성, 저렴한 비용에 초점을 AppML :
- 서비스 지향 MVC 아키텍처
- 매우 낮은 대역폭 소비
- 클라우드 컴퓨팅에 최적화
- 프리젠 테이션에서 내용의 전체 분리
- 지능형 선언적 프로그래밍
- 신속하고 민첩한 웹 개발
- 확장이 가능하고 시험 가능한
- 간편한 구성 및 재구성
- 사용자 계정 및 역할에 대한 스마트 지원
MVC 아키텍처AppML는 MVC 아키텍처를 사용 MVC는 모델, 뷰, 컨트롤러의 약자 모델은 응용 프로그램을 설명합니다. 보기는 데이터를 표시합니다. 컨트롤러는 응용 프로그램 제어 (of course) . 위키 백과 : 모델, 뷰, 컨트롤러 |
모델 - 그냥 JSON
이 모델은 응용 프로그램을 설명합니다.
이 모델은 서로 다른 하드웨어 및 소프트웨어 플랫폼에서 재사용 (Server, PC, iPhone, Tablets, etc.) .
이 모델은 프레젠테이션 또는 사용자 인터페이스와 관련없는 (UI) .
이 모델은 JSON 기록한다 :
모델
{
"rowsperpage" : 10,
"database" : {
"connection" : "localmysql",
"sql" : "SELECT
CustomerName, City, Country FROM Customers",
"orderby" : "CustomerName"
},
"filteritems" : [
{"item" : "CustomerName", "label" : "Customer"},
{"item" : "City"},
{"item" : "Country"}
],
"sortitems" : [
{"item" : "CustomerName", "label" : "Customer"},
{"item" : "City"},
{"item" : "Country"}
]
}
보기 - 그냥 HTML
뷰는 UI이다 (User Interface) 표시 (and input) 데이터.
뷰는 HTML 및 CSS로 작성된 것입니다 :
HTML보기
<!DOCTYPE html>
<html lang="en-US">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<script src="http://www.w3ii.com/appml/2.0.3/appml.js"></script>
<body>
<div class="container" appml-data="local?model=model_customers">
<h1>Customers</h1>
<div appml-include-html="inc_listcommands.htm"></div>
<div appml-include-html="inc_filter.htm"></div>
<table class="table table-striped table-bordered">
<tr>
<th>Customer</th>
<th>City</th>
<th>Country</th>
</tr>
<tr appml-repeat="records">
<td>{{CustomerName}}</td>
<td>{{City}} </td>
<td>{{Country}} </td>
</tr>
</table>
</div>
</body>
</html>
»스스로를보십시오 컨트롤러 - 클라이언트 및 / 또는 서버 스크립트
웹 페이지에 클라이언트 스크립트는 응용 프로그램을 제어 할 수 있습니다 :
- 모델에 정의 AppML 데이터를 표시 할
- HTML 속성에 의해 정의 된 AppML 데이터를 표시 할 수 있습니다.
- AppML 응용 프로그램은 HTML 독립적으로 실행할 수 있습니다 (hidden)
- (선택적) AppML는 웹 서버 (SQL 서버)에서 모델 데이터를 요청할 수 있습니다
- (선택적) AppML 사용자가 데이터를 편집 할 수 있습니다
- (선택적) AppML는 웹 서버에 데이터를 보낼 수 있습니다
서버 스크립트하여 응용 프로그램을 제어 할 수 있습니다 :
- 클라이언트로부터 요청을 수신 (browser)
- 클라이언트에 데이터를 반환
- 클라이언트에서 데이터 수신
- 서버에서 데이터를 업데이트
- 인증 및 보안 사용시주의 사항
프로그래밍의 예술
응용 프로그램의 크기와 낮은 복잡도를 유지, 모든 프로그램의 주요 문제이다.
컴퓨터 응용 프로그램의 복잡성을 제어, 프로그래밍의 진정한 예술이다.
선언적 프로그래밍
소프트웨어 개발은 종종 마감 시간과 예산을 나누기. 완성 된 소프트웨어 코딩 오류를 종종 가득 차있다. 컴퓨터 코드 개발, 테스트 및 유지하기 어렵 기 때문이다.
코딩은 아웃이다. 당신은 그것을 수행하는 방법, 무엇을해야하는지 더 적은을 설명한다.
AppML 사용하면 모델과 뷰에서 응용 프로그램을 선언합니다.
AppML 적은 없다 (sometimes nothing) 코드.
위키 백과 : 선언적 프로그래밍
신속하고 민첩한 애플리케이션 개발
컴퓨터 응용 프로그램의 복잡성을 제어하는 것은 프로그래밍의 진정한 예술이다.
통제하에 응용 프로그램의 크기와 복잡성을 유지하는 것은 모든 프로그램의 주요 문제이다.
RAD는 신속한 프로토 타입에 찬성 최소한의 계획을 사용하는 소프트웨어 개발 방법이다.
AppML 최대 100 배 빠른 전통적인 개발 방법보다, 초고속 프로토 타입을 제공합니다.
응용 프로그램 프로토 타입 코딩없이 애플리케이션 모델에서 직접 실행할 수 있습니다.
애자일 소프트웨어 개발 솔루션이 공동으로 사용자와 개발자에 의해 만들어집니다 단계별 개발을 기반으로하는 방법입니다.
AppML으로, 응용 프로그램은 프로토 타입에서 전체 응용 프로그램을 작은 단위로, 단계적으로 쓸 수 있습니다.
코드 첫 번째
웹 응용 프로그램은 두 가지 방법으로 개발 될 수있다 :
1. 코드 첫째에만 새 응용 프로그램에 대한 설명을 추가, 미리 프로그램, 사전 테스트 코드를 사용.
2. 계약 첫째 : 전체 응용 프로그램 요구 사항에 대한 설명을 사용하여 처음부터 응용 프로그램을 코딩.
코드 첫째 : AppML 가장 합리적인 개념을 사용한다.
서비스 지향 아키텍처 (SOA)
서비스 지향 아키텍처 (SOA) 웹 애플리케이션 구축을위한 아키텍처이다.
SOA는 낮은 개발 비용과 높은 유연성을 제공합니다.
SOA로, 응용 프로그램은 처음부터, 또는의 IT 인프라를 기존에서 생성 될 수 있으며, 다른 하드웨어와 소프트웨어에 다른 응용 프로그램에서 사용할 수.
SOA는 데이터를 쉽게하는 방법에 대한 걱정없이 소비 할 수있는 MVC 및 선언적 프로그래밍을위한 완벽한 적합합니다.
웹 서비스
웹 서비스는 웹 페이지처럼 URL에 의해 확인 된 데이터에 대한 인터페이스입니다.
웹 서비스는이 정보를 통신하는 방법으로, 웹 페이지에서 다르다.
일반적인 웹 서비스는 웹 페이지에 데이터를 제공합니다.
AppML으로, HTML 사용자 인터페이스는 웹 서비스가 데이터를 제공합니다.
원래 웹 서비스는 SOAP, WSDL, UDDI와 같은 XML 표준을 사용하도록 설계되었다.
AppML 같은 현대 웹 서비스를 사용하는 것이 훨씬 쉽다.
- 이해하기 간단한 - 인간이 읽을 수 있습니다
- 경량 - 불필요한 코드하거나 마크 업
- 필요하지 개발 툴 - 구현하지 쉬운
웹 서비스의 장점
- 웹 서비스는 코드의 작은 단위
- 웹 서비스는 제한된 작업을 처리 할 수 있도록 설계되어 있습니다
- 웹 서비스 사용 HTTP 기반의 통신 프로토콜
- 웹 서비스는 운영 체제와 무관
- 웹 서비스는 프로그래밍 언어에 독립적
- 웹 서비스는 서로 다른 응용 프로그램, 시스템 및 장치를 연결할 수 있습니다
- 웹 서비스는 정보를 배포하는 것을 쉽게
- 웹 서비스는 신속한 애플리케이션 개발을 선호
예 : 증권 거래소 가격으로 다른 응용 프로그램을 제공하도록 설계된 작은 프로그램입니다.
예 : 비행 스케줄과 티켓 예약 시스템.
웹 서비스는 HTTP를 사용하기 때문에, 그들은 운영 체제 및 프로그래밍 언어 모두 독립적입니다.
클라우드 컴퓨팅
클라우드 컴퓨팅은 SOA의 확장 : 응용 프로그램-같은 서비스, 저장 서비스로서의, 데이터 서비스로서의.
대부분의 사람들에게, 클라우드 컴퓨팅은 웹에서 데이터를 저장에 관한 것입니다 :
- 이메일 및 캘린더
- 문서 및 스프레드 시트
- 책, 메모, 할 목록
- 음악, 사진 및 동영상
- 데이터베이스와 응용 프로그램
그 이유는 아주 명백하다 :
- 사방에서 데이터에 액세스하려면
- 다른 사람과 내 데이터를 공유하려면
- 하드웨어를 변경하거나 충돌을 생존하려면
AppML, 클라우드에서 두 데이터베이스와 응용 프로그램을 넣어 매우 쉽습니다.