ล่าสุดการพัฒนาเว็บบทเรียน
 

AppMLสถาปัตยกรรม


สถาปัตยกรรมเว็บโมเดิร์น

AppML รวมที่สุดเทคนิค up-to-date และความคิดในการพัฒนาเว็บที่ทันสมัย

AppML มุ่งเน้นไปที่ความเร็วความเรียบง่ายและต้นทุนต่ำ:

  • Service Oriented MVC สถาปัตยกรรม
  • การใช้แบนด์วิธต่ำมาก
  • เหมาะสำหรับ Cloud Computing
  • แยกเต็มรูปแบบของการนำเสนอเนื้อหาจาก
  • การเขียนโปรแกรมอัจฉริยะบอกเล่า
  • พัฒนาเว็บอย่างรวดเร็วและคล่องตัว
  • สูงที่ปรับขนาดได้และทดสอบ
  • ตั้งค่าได้ง่ายและเสียใหม่
  • สนับสนุนสมาร์ทสำหรับบัญชีผู้ใช้และบทบาท

MVC สถาปัตยกรรม

AppML ใช้ MVC สถาปัตยกรรม

MVC ยืนสำหรับ Model, View, ควบคุม

รุ่นอธิบายใบสมัครของคุณ

The View แสดงข้อมูลของคุณ

ผู้ควบคุมการควบคุมการใช้งานของคุณ (of course)

วิกิพีเดีย: Model, View, ควบคุม

MVC

รูปแบบ - Just 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"}
]
}

มุมมอง - Just 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 สามารถแสดงข้อมูลตามที่กำหนดไว้ในรูปแบบ
  • AppML สามารถแสดงข้อมูลตามที่กำหนดโดยแอตทริบิวต์ HTML
  • การใช้งาน AppML สามารถทำงานอิสระจาก HTML (hidden)
  • (เลือก) AppML สามารถขอข้อมูลแบบจากเว็บเซิร์ฟเวอร์ (server SQL)
  • ผู้ใช้ (เลือก) AppML สามารถแก้ไขข้อมูล
  • (เลือก) AppML สามารถส่งข้อมูลไปยังเว็บเซิร์ฟเวอร์

สคริปต์เซิร์ฟเวอร์สามารถควบคุมแอพลิเคชันโดย:

  • ได้รับการร้องขอจากลูกค้า (browser)
  • ข้อมูลกลับไปยังลูกค้า
  • ได้รับข้อมูลจากลูกค้า
  • การปรับปรุงข้อมูลบนเซิร์ฟเวอร์
  • การดูแลตรวจสอบและการรักษาความปลอดภัย

ศิลปะของการเขียนโปรแกรม

รักษาขนาดและความซับซ้อนของการประยุกต์ใช้ในระดับต่ำเป็นปัญหาหลักของการเขียนโปรแกรมทั้งหมด

การควบคุมความซับซ้อนของการใช้คอมพิวเตอร์เป็นศิลปะที่แท้จริงของการเขียนโปรแกรม


การเขียนโปรแกรมที่เปิดเผย

การพัฒนาซอฟต์แวร์มักจะแบ่งตามกำหนดเวลาและงบประมาณ ซอฟแวร์สำเร็จรูปมักจะเต็มรูปแบบของรหัสข้อผิดพลาด เพราะนี่คือรหัสคอมพิวเตอร์เป็นเรื่องยากที่จะพัฒนาทดสอบและการบำรุงรักษา

การเข้ารหัสเป็น Out คุณควรอธิบายมากขึ้นสิ่งที่ต้องทำน้อยวิธีที่จะทำมัน

ด้วย AppML คุณประกาศใบสมัครของคุณในรูปแบบและในการดู

ด้วย AppML มีน้อย (sometimes nothing) รหัส

วิกิพีเดีย: การเขียนโปรแกรมการ declarative


อย่างรวดเร็วและคล่องตัวการพัฒนาโปรแกรมประยุกต์

การควบคุมความซับซ้อนของการประยุกต์ใช้คอมพิวเตอร์เป็นศิลปะที่แท้จริงของการเขียนโปรแกรม

รักษาขนาดและความซับซ้อนของการประยุกต์ใช้ภายใต้ภายใต้การควบคุมเป็นปัญหาหลักของการเขียนโปรแกรมทั้งหมด

RAD เป็นวิธีการพัฒนาซอฟแวร์ที่ใช้ในการวางแผนการน้อยที่สุดในความโปรดปรานของการสร้างต้นแบบอย่างรวดเร็ว

AppML มอบต้นแบบได้อย่างรวดเร็วถึง 100 ครั้งเร็วกว่าวิธีการพัฒนาแบบดั้งเดิม

แอพลิเคชันต้นแบบสามารถทำงานได้โดยตรงจากโปรแกรมประยุกต์รูปแบบโดยไม่ต้องมีการเข้ารหัส

วิกิพีเดีย: การประยุกต์ใช้การพัฒนาอย่างรวดเร็ว

การพัฒนาซอฟต์แวร์ Agile เป็นวิธีการที่อยู่บนพื้นฐานของการพัฒนาขั้นตอนโดยขั้นตอนที่การแก้ปัญหาที่ถูกสร้างขึ้นโดยผู้ใช้และนักพัฒนาในการทำงานร่วมกัน

ด้วย AppML การใช้งานสามารถเขียนได้ทีละขั้นตอนทีละน้อยจากต้นแบบเพื่อการใช้งานเต็มรูปแบบ

วิกิพีเดีย: การพัฒนาซอฟต์แวร์ Agile


รหัสแรก

แอพลิเคชันเว็บสามารถที่จะพัฒนาในสองวิธีที่แตกต่างกัน

1. รหัสแรก: การใช้ก่อนโปรแกรมรหัสก่อนการทดสอบการเพิ่มรายละเอียดการประยุกต์ใช้ใหม่เท่านั้น

2. สัญญาครั้งแรก: การเข้ารหัสการประยุกต์ใช้ตั้งแต่เริ่มต้นใช้อธิบายความต้องการโปรแกรมเต็ม

AppML ใช้แนวคิดเหตุผลมากที่สุด: รหัสแรก


บริการสถาปัตยกรรมเชิง (SOA)

Service Oriented Architecture (SOA) เป็นสถาปัตยกรรมสำหรับการสร้างการใช้งานเว็บ

SOA มีค่าใช้จ่ายในการพัฒนาต่ำและมีความยืดหยุ่นสูง

ด้วย SOA การใช้งานที่สามารถสร้างขึ้นจากรอยขีดข่วนหรือจากโครงสร้างพื้นฐานไอทีที่มีอยู่และนำมาใช้โดยการใช้งานที่แตกต่างกันเกี่ยวกับฮาร์ดแวร์และซอฟแวร์

SOA เป็นที่สมบูรณ์แบบสำหรับ MVC และการเขียนโปรแกรมเปิดเผยข้อมูลที่สามารถบริโภคได้อย่างง่ายดายโดยไม่ต้องกังวลเกี่ยวกับวิธีการ


บริการเว็บ

บริการเว็บเป็นอินเตอร์เฟซข้อมูลระบุ URL เช่นเดียวกับหน้าเว็บ

บริการเว็บแตกต่างจากหน้าเว็บเท่านั้นในทางที่จะสื่อสารข้อมูล

บริการเว็บทั่วไปเพียง แต่ให้ข้อมูลไปยังหน้าเว็บ

ด้วย AppML, HTML คืออินเตอร์เฟซผู้ใช้บริการเว็บให้ข้อมูล

บริการเว็บเดิมถูกออกแบบมาให้ใช้มาตรฐาน XML เช่นสบู่ WSDL และ UDDI

บริการเว็บที่ทันสมัยเช่น AppML มีมากง่ายต่อการใช้

  • ง่ายที่จะเข้าใจ - สามารถอ่านได้โดยมนุษย์
  • น้ำหนักเบา - ไม่มีรหัสไม่จำเป็นหรือมาร์กอัป
  • ง่ายต่อการใช้ - เครื่องมือในการพัฒนาไม่จำเป็นต้องใช้

ประโยชน์ของ Web Services

  • บริการเว็บเป็นหน่วยเล็ก ๆ ของรหัส
  • บริการเว็บถูกออกแบบมาเพื่อจัดการกับชุด จำกัด ของงาน
  • บริการเว็บใช้ HTTP โปรโตคอลการสื่อสารตาม
  • บริการเว็บมีความเป็นอิสระของระบบปฏิบัติการ
  • บริการเว็บมีความเป็นอิสระของการเขียนโปรแกรมภาษา
  • บริการเว็บสามารถเชื่อมต่อการใช้งานที่แตกต่างกันระบบและอุปกรณ์
  • Web Services ทำให้ง่ายต่อการแจกจ่ายข้อมูล
  • Web Services โปรดปรานพัฒนาโปรแกรมอย่างรวดเร็ว

ตัวอย่าง: โปรแกรมขนาดเล็กที่ออกแบบมาเพื่อจัดหาโปรแกรมอื่น ๆ ที่มีราคาตลาดหลักทรัพย์

ตารางการบินและระบบการจองตั๋ว: ตัวอย่าง

ตั้งแต่ใช้บริการเว็บ HTTP พวกเขาเป็นอิสระจากระบบปฏิบัติการทั้งสองและการเขียนโปรแกรมภาษา


Cloud Computing

Cloud Computing เป็นส่วนขยายของ SOA: การประยุกต์ใช้-as-a บริการจัดเก็บ as-a-Service ข้อมูล-as-a-Service

สำหรับคนส่วนใหญ่ Cloud Computing เป็นเรื่องเกี่ยวกับการจัดเก็บข้อมูลบนเว็บ:

  • อีเมลและปฏิทิน
  • เอกสารและสเปรดชีต
  • หนังสือบันทึกและการทำรายการ
  • เพลง, ภาพและภาพยนตร์
  • ฐานข้อมูลและการประยุกต์ใช้

เหตุผลที่เห็นได้ชัดสวย:

  • จะมีการเข้าถึงข้อมูลจากทุกที่
  • ที่จะแบ่งปันข้อมูลของฉันกับคนอื่น ๆ
  • เพื่อความอยู่รอดการเปลี่ยนแปลงฮาร์ดแวร์หรือเกิดปัญหา

ด้วย AppML มันเป็นเรื่องง่ายมากที่จะนำทั้งฐานข้อมูลและการใช้งานในระบบคลาวด์