최신 웹 개발 튜토리얼
 

AppML구조


현대 웹 아키텍처

AppML는 최신 기술과 현대적인 웹 개발의 아이디어를 결합합니다.

속도, 단순성, 저렴한 비용에 초점을 AppML :

  • 서비스 지향 MVC 아키텍처
  • 매우 낮은 대역폭 소비
  • 클라우드 컴퓨팅에 최적화
  • 프리젠 테이션에서 내용의 전체 분리
  • 지능형 선언적 프로그래밍
  • 신속하고 민첩한 웹 개발
  • 확장이 가능하고 시험 가능한
  • 간편한 구성 및 재구성
  • 사용자 계정 및 역할에 대한 스마트 지원

MVC 아키텍처

AppML는 MVC 아키텍처를 사용

MVC는 모델, 뷰, 컨트롤러의 약자

모델은 응용 프로그램을 설명합니다.

보기는 데이터를 표시합니다.

컨트롤러는 응용 프로그램 제어 (of course) .

위키 백과 : 모델, 뷰, 컨트롤러

MVC

모델 - 그냥 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, 클라우드에서 두 데이터베이스와 응용 프로그램을 넣어 매우 쉽습니다.