ASP.NET MVC(C#)
ตอนที่ 1 รู้จัก MVC
MVC ย่อมาจาก Model – View –
Controller 3 ตัวนี้ มีความหมายและหน้าที่ของมัน
Model คือ
ส่วนสำหรับใช้ติดต่อฐานข้อมูล ส่วนใหญ่ Developer จะใช้เก็นคำสั่งพวกก
Insert,Update,Delete, Select ลงใน Folder นี้โดยแยกเป็น Class สำหรับติดต่อฐานข้อมูลโดยเฉพาะและ
Object ที่ใช้สำหรับ Insert สู่ ตารางต่างๆ
โดยส่วนตัวตรงนี้ผมชอบผลักให้ไปกับ Entity Framework เพราะทำให้การ
Manage ง่ายดี
View คือ ส่วนสำหรับหน้าจอแสดงผล ใน ASP.net
MVC ที่ใช้ RAZOR จะเป็น .cshtml ใน Visual Studio จะไม่มีหน้า Design ให้เหมือนกับ Web Form
Controller คือส่วนของการเชื่อมเพื่อแสดงผลระหว่าง
Model และ View โดยใน ASP.net
MVC จะอยู่ใน Folder Controller และสามารถ Add
Controller ได้เลย ภายใน Controller จะมี Action
อยู่ภายใน แต่ละAction จะเชื่อมต่อกับ View
1 View
อ่านเพิ่มเติมได้ ที่นี่
MVC คือ Pattern หนึ่งในการดีไซน์และพัฒนา Software โดยส่วนใหญ่จะเน้นการพัฒนาผ่านบนเว็บ
MVC ไม่ได้ถูกจำกัดแค่อยู่บน .NET เท่านั้นแต่สามารถใช้ได้กับหลายภาษา
เท่าที่ผมรู้ก็จะมี PHP ที่มี Framework MVC จำนวนมาก JAVA ก็ไม่น้อย และ.NET ที่มี .NET Framework คอย Provide ไว้ให้
ASP.net
Web Form VS ASP.NET MVC
Topic
|
Web Form
|
MVC
|
โครงสร้าง Solution
|
มีแค่ Designer กับ C#
|
มี 3 แบบคือ Model,
View, Controller
|
รูปแบบภาษา
|
ใช้ได้ทั้ง VB.net แล C#.net
|
ใช้ได้ทั้ง VB.net แล C#.net
|
การติดต่อฐานข้อมูล
|
ไม่จำกัด Tool ขึ้นอยู่กับ Tool
ที่ใช้กับ .net ได้
|
ไม่จำกัด Tool ขึ้นอยู่กับ Tool
ที่ใช้กับ .net ได้ แต่ว่าโดยส่วนใหญ่จะเก็บไว้ที่
Folder Model
|
Html
Design
|
มีหน้า HTML Design ให้ใน Visual
Studio
|
ไม่มีหน้า Designer สำหรับ HTMLให้
|
การ Include File
|
จะต้องสร้างเป็น user Control(.asmx) แล้วลากเข้ามาใส่ในดีไซน์
|
สามารถสร้างเป็น Shared หรือ Partial
จากนั้น ใส่คำสั่งในการ Include เข้ามาได้
ตาม Syntax
|
ASP.NET
CONTROL FORM
|
สามารถลากวางใช้ จากหน้า Designer ได้เลย
|
สำหรับ MVC ไมโครซอฟฟท์
จัดให้หลายชุดคำสั่งมากและง่ายต่อการดึงมาใช้ แต่ต้องพิมพ์เอา
|
Javascript
Ajax
|
เขียนปกติ
|
เขียนปกติ
|
Ajax
Tookit
|
มีให้
|
ไม่มีให้
|
เวลาในการพัฒนาสำหรับเริ่มใหม่
|
Bad
|
Normal
|
เวลาในการพัฒนาสำหรับผู้เป็น .Net WebForm
|
Fast
|
Normal
|
หลาย Developer
|
Bad
|
Good
|
การวาง Pattern ในการพัฒนา
|
ยาก
|
ง่าย สาเหตุเพราะ มี Pattern พื้นฐานได้ส่วนนึง แค่ตั้งชื่อและติดต่อฐานข้อมูลให้พร้อม
|
RESTful
Service
|
No
|
Yes
|
ViewState
|
Yes
|
No
|
ViewBag
|
No
|
Yes
|
Performance
|
Good
|
Normal
|
Server
Support ในไทย
|
มีครบทั่วเพราะเป็นพื้นฐาน
|
ต้องสอบถามบางที่
|
Learning
Curve
|
Normal
|
Good
|
Upgrade
Version
|
Easy
|
Easy
|
นี่คือเปรียบเทียบเบื้องต้น
จากประสบการณ์ในการพัฒนาโดยตรงและหาข้อมูลเพิ่มเติมครับ
สาเหตุที่ต้องพัฒนาด้วย MVC
- ข้อได้เปรียบสำหรับเริ่มโปรเจคใหม่คือ Pattern ในการพัฒนาที่ชัดเจนกว่า Web Form กับการวาง Pattern แบบ Model, View, Controller เปรียบเสมือนการวาง ครบเป็น Module ที่ง่ายต่อการ จัดการพัฒนาหลายๆคนพร้อมกับ
- ยืนหยุ่นกับ Developer มาก ทำให้การพัฒนาเร็ว และแม้จะไม่ชำนาญด้านการพัฒนาสำหรับ .Net ก็สามารถจัดการส่งต่อให้ผู้เชี่ยวชาญได้ง่าย
- หากวาง Style ในการเขียนและตั้งชื่อตัวแปร แล้ว ผู้ต่อนั้นง่ายมาก
- เรียนรู้ง่ายและไว
- สามารถ Plug กับ Pattern อื่นได้ง่ายเช่น Repository, Invention of Control หรือ อื่นๆ
- เขียน RESTful Service ได้ดี ง่ายต่อการเขียนติดต่อกับ Cross Platform
ลิงค์เพิ่มเติมสำหรับ Asp.net MVC
http://sinosoi.wordpress.com/2011/07/14/asp-net-mvc-01-%E0%B8%A1%E0%B8%B1%E0%B8%99%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3/
http://www.microsoft.com/thailand/msdn/ASPNET_MVC3_HTML5_Vol1.aspx
It was such a useful blog! The narration of the facts and figures is very nice. In struggling to hire my remote developers, I discovered Eiliana.com, an emerging freelancing portal, and I found they have a superb talent pool. I hired a few experts from there, and I'm blessed.
ตอบลบWorld777 is an eSports fantasy justice game played by roughly 13 million people. It has a total standing of3.9/ 5 and has been installed till date. In this game, the player can form a platoon of 11 members by opting them from a pool of 25 or 30 players. The performance of the 11 players on your platoon earns you the points just as the live match begins. Your final score gives you a ranking at the end.
ตอบลบ