Lập trình trong môi trường .NET - Visual Studio.NET (Phần 1)
Visual studio.NET là một môi trường tích hợp triển khai phần
mềm(Intergrated Development Environmet, IDE). Nó được thiết kế để lập ra
một tiến trình viết mã, gỡ rối, và biên dịch thành một assembly một cách dễ
dàng. Visual studio.NET cho bạn một ứng dụngmultiple-document-interface
rất tinh vi, trong đó bạn có thể liên kết mọi thứ để phát triển đoạn mã của
bạn.
al studio.NET, bạn sẽ muốn bắt đầu dự án đầu tiên.
Với Visual studio.NET, ít khi bạn bắt đầu với một tâp tin trắng mà bạn sẽ gõ
vào đoạn mã C# từ điểm bắt đầu. Thay vào đó bạn sẽ cho Visual studio.NET
biết loại dự án mà bạn muốn tạo, sau đó nó sẽ tự động tạo ra một đoạn mã
C# để tạo thành một sường outline cho dự án đó. Và bạn chỉ có việc là thêm
mã của bạn vào sường đó. Ví dụ, bạn muốn viết một ứng dụng trên Window
GUI, thì Visual studio.NET sẽ bắt đầu tạo một tập tin chứa đoạn mã nguồn
C# cho phép tạo một form cơ bản. Form này có khả năng giao tiếp với
Window, và tiếp nhận những tình huống. Nó cho phép được thu nhỏ hoặc
phóng to hoặc thay đổi kích thước ... Và lúc này bạn sẽ thêm các chức năng
bạn mong muốn có đối với biểu mẫu. Nếu ứng dụng của bạn được dùng theo
kiểu dòng lệnh thì visual studio.NET sẽ cho bạn một namespace cơ bản, lớp,
và phương thức Main() để bắt đầu. Dĩ nhiên là nếu bạn muốn bắt đầu từ số
không, thì Visual studio.NET cũng cho bạn chọn một ứng dụng rỗng.
Khi bạn tạo ra một dự án, nó sẽ dàn dựng những tuỳ chọn biên dịch cần thiết
để cung cấp cho trình biên dịch C# có hay không để biên dịch một ứng dụng
dòng lệnh, một thư viên, hay một ứng dụng Windown. Ngoài ra, những thư
viện lớp cơ sở nào bạn sẽ cần. Tuy nhiên bạn có thể sửa đổi những cài đặt
này nếu bạn cần.
Khi bạn bắt đầu với visual studio.NET lần đầu tiên, bạn sẽ được thấy một
start page. Đó là một trang HTML chứa các liên kết khác nhau để dẫn bạn
đến với các trang web hữu ích, cho phép bạn tạo dáng và cấu hình của
Visual studio.NET, hoặc mở những dự án hiện hữu hoặc khởi động dự án
mới . Trên giữa màn hình start page, bạn thấy liệt kê môt số dự án mà bạn đã
làm việc gần đây nhất:
Chọn một kiểu dự án:
Bạn có thể tạo một dự án mới bằng việc click trên các liên kết thích hợp trên
trang bắt đầu, hay click trên menu file chọn New/project. Hay bạn có thể
chọn các mẫu trong hộp dialog New project.
Các hộp Dialog này sẽ hỏi bạn muốn loại loại mã sường nào cần được tạo ra,
và những tuỳ chọn biên dịch nào bạn muốn. Những trình biên dịch nào bạn
muốn biên dich mã của bạn: C#, VB.NET hay C++.
Tuy nhiên, trong sách này chỉ đưa ra những tuỳ chọn có thể ứng dụng trong
dự án C#
Nếu bạn chọn .. Bạn sẽ lấy những mã C# và tuỳ chọn biên dịch được
tạo ra
Windows
Application
Một mẫu trống cơ bản
Class Library Một lớp .NET có thể được gọi bởi các mã khác
Windows Control
Library
Một lớp .NET có thể được gọi bởi mã khác và có một
giao diện người dùng
ASP.NET Web
Application
Một ASP.NET site web cơ sở : trang ASP.NET và lớp
C# tạo ra HTML gửi đến trình duyệt từ các trang này
Nếu bạn chọn .. Bạn sẽ lấy những mã C# và tuỳ chọn biên dịch được
tạo ra
ASP.NET Web
Service
Một lớp C# hành động như một Web service trọn vẹn
Web Control
Library
Một control có thể được gọi lên bởi trang ASP.NET, để
tạo ra mã HTML đưa bề mặt của một điều khiển khi
thể hiện trên trình duyệt.
Console Application Một ứng dụng chạy tại chế độ dòng lệnh hay một của
sổ console
Windows Service Một dịch vụ chạy trên nền Windows NT và Windows
2000
Empty Project Không có gì hết. Bạn phải viết tất cả
Empty Web Project Như empty project nhưng các cài đặt biên dịch được
cài vào cấu trúc trình biên dịch đê tạo mã cho trang
AS.NET.
New Project In
Existing Folder
Những tập tin dự án mới cho một empty project
Các dự án console mới:
Khi ta click OK ở hộp dialog trên để tạo một ứng dụng console. Visual
studio.NET sẽ cung cấp một số tập tin, bao gồm một tập tin mã nguồn,
class1.cs chứa mã sường khởi tạo.
Hình dưới sẽ chỉ cho ta thấy những mã mà visual studio.NET viết cho ta:
Ở đây chúng ta có một chương trình C# và chưa có ý nghĩa thực thi nhưng
nó chứa những yêu cầu cơ bản của một chương trình C# như là: một
namespace, một lớp chứa phương thức main(). Đoạn mã này sẳn sàng để
chạy nếu bạn nhấn f5 hay chọn debug/start. Tuy nhiên, trước hết chúng ta
phải thêm một dòng lệnh để chương trình bạn làm gì đó.
static void Main(string[] args)
{
//
// TODO: Add code to start application here
//
Console.WriteLine("Hello from all the editors at Wrox Press");
}
Nếu bạn biên dich hay chạy dự án, bạn sẽ thấy một cửa sổ console xuất hiện
và biến mất chỉ cho bạn một thời gian nhỏ để xem một tin nhắn. Nguyên
nhân của vấn đề này là visual studio.NET nhớ những cài đặt của bạn khi tạo
dự án và sắp xếp chúng lại để biên dịch như một ứng dụng console và chạy
ngay lập tức. Sau đó Windowns nhận ra rằng nó cần chạy một ứng dụng
console nhưng không có một cửa sổ console để chạy. Vì thế, Windows đã
tạo ra một cửa sổ console và chạy chương trình. Ngay khi chương trình vừa
thoát thì Windowns thấy nó không cần cửa sổ console nữa và huỷ nó ngay.
Đó là tất cả tính logic của chương trình nhưng nó không thực sự giúp ta
nhiều nếu ta muốn nhìn thấy kết quả của dự án.
Một cách tốt để giải quyết vấn đề này là chèn thêm một dòng lệnh
Console.Readline() trước khi rời khỏi phương thức main():
static void Main(string[] args)
{
//
// TODO: Add code to start application here
//
Console.WriteLine("Hello from all the editors at Wrox Press");
Console.ReadLine();
}
Theo cách này, chương trình của bạn sẽ chạy và hiển thị kết quả. Sau đó nó
đọc dòng lệnh Console.Readline() và đợi một phím để kết thúc chương trình.
Thực thi chương trình trên
Tạo những tập tin khác:
Tập tin mã nguồn class1.cs không phải là tập tin duy nhất mà visual
studio.NET tạo ra cho bạn. Nếu nhìn vào trong một thư mục nơi mà bạn yêu
cầu Visual studio.NET tạo dự án của bạn thì bạn sẽ không thấy những tập tin
C# mà là một cấu trúc thư mục như sau:
Hai thư mục bin và obj chứa những tập tin biên dịch và trung giang. Những
thư mục con của obj sẽ chứa những tập tin tạm thời và trung giang sẽ được
tạo ra, còn thư mục con của bin chứa assembly được biên dịch.
Những tập tin còn lại trong thư mục main của dự án, baisicConsoleApp,
chứa thông tin về dự án và những tập tin bên trong nó. Như vậy, Visual
studio.NET sẽ biết cách phải biên dịch dự án như thế nào, và cách để đọc lại
nó trong lần tiếp theo khi mở dự án.
Giải pháp(solution) và dự án(project):
Điểm quan trọng ở đây là bạn cần phân biệt giữa giải pháp và dự án:
Một dự án: là một tập hợp các tập tin mã nguồn và tài nguyên(resource) sẽ
được biên dịch đến một asembly đơn. Ví dụ như một dự án phải là một thư
viện lớp hay ứng dụng Window GUI.
Một giải pháp: là một tập hợp tất cả các dự án để tạo thành một gói phần
mềm cụ thể.
Muốn thấy sự khác biệt, chúng tôi thử lấy ví dụ khi bạn phân phối một ứng
dụng cho một người sử dụng, có thể nó gồm nhiều assembly hơn là chỉ là
một. Thí dụ, có thể là một giao diện người dùng; nó sẽ có vài control hay
những thành phần khác được gữi đi như là những thư viện thuộc các phần
của ứng dụng. Kể cả việc có thể có một giao diện khác dành cho những
ngừơi quản lý. Mỗi một thành phần này có thể được chứa thành những
assembly riêng lẽ, và do đó đối với Visual studio.NET như là một dự án
riêng biệt. Tuy nhiên, có thể là bạn thực hiện những dự án này song hành và
phối hợp với nhau giữa các dự án. Do đó, xem ra tiện lợi khi có khả năng
chỉnh sửa chúng như một đơn vị duy nhất trong visual studio.NET. Visual
studio.NET cho phép điều này bằng cách xem tất cả dự án như là một giải
pháp, và đối xử giải pháp như là một đơn vị được đọc vào và cho phép bạn
làm việc trên đó.
Đến bây giờ, ta khá lỏng lẻo về việc tạo một dự án.Trên thực tế, ví dụ ta
đang làm việc, Visual studio.NET có một giải pháp cho chúng ta- một
console đặc biệt chỉ chứa duy nhất một dự án. Chúng ta có thể thấy tình
trạng này trên một cửa sổ của Visual studio.NET là Solution Explorer, nơi
chứa một cấu trúc cây định nghĩa giải pháp của bạn.
Màn hình trên chỉ dự án chứa tập tin nguồn, class1.cs, và tập tin khác,
assemblyInfo.cs chứa thông tin mô tả những assembly và thông tin đến việc
biên dịch dự án. Solution explorer cho biết những assembly mà dự án tham
khảo về.
Nếu bạn thay đổi các cài đặt bạn sẽ tìm thấy solution Explorer trong góc
phải trên đầu màn hình. Nếu không thấy bạn vào view/Solution Explorer để
hiện nó.
Các giải pháp được mô tả bởi một tập tin với đuôi .sln. Vì thế trong trường
hợp trên nó là BasicConsoleApp.sln. Dự án sẽ được mô tả bởi các tập tin
khác nhau trong thư mục main của dự án. Nếu bạn cố sửa những tập tin này
thì bạn sẽ thấy chúng toàn là những tập tin plain text .
Thêm dự án vào một giải pháp:
Chúng tôi muốn cho bạn thấy Visual studio.NET hoạt động như thế nào với
ứng dụng Window cũng như với ứng dụng Console.
Chúng tôi sẽ tạo ra một dự án Window mang tên BasicWindow, nhưng thay
vì đưa vào một giải pháp mới, ta yêu cầu Visual studio.NET đưa nó vào giải
pháp hiện hành BasicConsoleApp. Nghĩa là ta sẽ có một giải pháp với một
ứng dụng Window và một ứng dụng console. Đấy là cách tạo một trình tiện
ích mà bạn muốn chạy trên Window hoặc chạy trên dòng lệnh command
line.
Có hai cách để thực hiện điều này. Cách thứ nhất là click phải lên tên của
giải pháp trên cửa sổ solution explorer, để cho hiện lên trình đơn shortcut rồi
chọn add/new project. Cách thứ 2 là ra lệnh file/new/new project. Cả hai
cách điều hiện lên hộp thoại New Project như sau:
Trên cửa sổ solution explorer này ta có thể thấy Visual studio.NET tự động
đưa một số tham khảo về các lớp cơ bản quan trọng đối với chức năng của
biểu mẫu window nằm trong các spacename System.Drawing,
System.Windows.Forms.
Ngoài ra, bạn cũng sẽ thấy là tên của tập tin giải pháp cũng đổi thành
DemoSolution.sln. Nói chung, nếu bạn muốn thay đổi bất cứ tên tập tin nào
thì solution explorer là nơi tốt nhất để tiến hành những thay đổi, vì Visual
studio.NET sẽ tự động cho cập nhật bất cứ những tham khảo nào về tập tin
trong tất cả các tập tin thuộc dự án. Bạn không nên sử dụng Window
Explorer để thay đổi tập tin dự án vì nó sẽ phá vỡ giải pháp.
File đính kèm:
67_5879.pdf

