M cđ chun hóa cao vi tính nng này tuy cơng ngh laszlo phát trin mi cho th h web hin đi nh ng đi v i ngi lp trình s làm quen nhanh chóng d a
3.1 S dng các mu qui đnh s nđ sinh mã ng un (template) 1 Gi i thi u
3.1.1 Gi i thi u
M u qui đ nh s n là các tp tin v i n i dung là mã ngu n chu n c a m t trang window form, trang web, user control… Mã ngu n này d ng m t ngôn ng nh t đ nh (C#, VB.NET…) và g n nh là m t mã ngu n hoàn ch nh.
Trong m t m u c n phân bi t n i dung t nh và n i dung đ ng.
N i dung t nh là n i dung b t bi n. Ngh a là b t kì m t đ i t ng nào cùng lo i (ch ng h n m t window form) c ng đ u ph i có n i dung này, vì v y nó đ c s d ng cho t t c nh ng đ i t ng cùng lo i.
N i dung đ ng là n i dung s thay đ i tùy thu c vào các giá tr mà ng i dùng nh p vào. N i dung này đ c đánh d u b ng m t chu i, g i là chu i đánh d u. Các chu i đánh d u đ c thay th b ng n i dung đ c mô t b i ng i dùng trong th i gian th c thi.
hi u rõ cách s d ng m u đ sinh mã ngu n t đ ng, ta xét m t ví d c th . ây là m t m u window form (có l c b m t s dịng mã khơng có tác d ng minh h a), đ c Microsoft Visual Studio s d ng khi thêm m t window form m i vào C# project Các chui đánh d u trong m u đ c in đ m. Thơng tin chính xác s thay th các chu i này và t o ra m t mã ngu n hoàn ch nh cho window form.
using System;
using System.Windows.Forms;
namespace [!output SAFE_NAMESPACE_NAME]
HU
TE
CH
SV Khóa 2001 – Khoa Cơng Ngh Ph n M m Page 20 of 80
/// Summary description for [!output SAFE_CLASS_NAME]. /// </summary>
public class [!output SAFE_CLASS_NAME] :
System.Windows.Forms.Form {
private System.ComponentModel.Container components = null; public [!output SAFE_CLASS_NAME]()
{
InitializeComponent(); }
private void InitializeComponent()
{
this.Size = new System.Drawing.Size(300,300); this.Text = "[!output SAFE_CLASS_NAME]";
} } }
}
Trong th i gian th c thi, ng d ng s l y thông tin g m tên c a namespace và tên l p thay vào chu i đánh d u.
[!output SAFE_NAMESPACE_NAME]=“SampleNamespace” [!output SAFE_CLASS_NAME]=”Samples” Ta có mã ngu n hồn ch nh: using System; using System.Windows.Forms; namespace SampleNamespace { /// <summary>
/// Summary description for Samples /// </summary>
public class Samples : System.Windows.Forms.Form {
private System.ComponentModel.Container components = null; public Samples ()
{
InitializeComponent(); }
private void InitializeComponent()
{
this.Size = new System.Drawing.Size(300,300); this.Text = "Samples";
} } }
HU
TE
CH
Trong gi i pháp này, ta th y vi c sinh mã ngu n th c ch t là đ c t p tin m u, thay th chu i đánh d u b ng nh ng giá tr nh n đ c t ng i dùng.