Tạo cácứngdụng .Net trên Linux và Mac
OS X
Mono là một triển khai nguồn mở của .NET Framework xây dựng trên Linux, Solaris,
Mac OS X, Windows và Unix. Nếu đang phát triển trên nền Windows, bạn có thể xây
dựng cácứngdụng Mono dùng Visual Studio hoặc SharpDevelop. Cả hai IDE này đều
không thể chạy trên Linux hoặc Mac OS X. MonoDevelop khởi đầu giống như một cổng
của SharpDevelop IDE, nhưng sau đó phát triển độc lập thành Mono IDE dành riêng cho
máy để bàn Linux sử dụng GNOME.
Bắt đầu
MonoDevelop yêu cầu một phiên bản Linux đang chạy trên nền GNOME. (Ở đây chúng
ta sẽ lấy ví dụ với Red Hat Fedora Core 5). Cách dễ nhất để chạy MonoDevelop là sử
dụng bộ cài Mono 1.1.15_2 (bạn có thể tải về từ mono-project.com, dưới đầu đề "Linux
Installer for x86"). Bộ cài Mono bao gồm tất cả các phụ thuộc có liên quan và bản thân
MonoDevelop. Sau khi hoàn thành quá trình cài đặt, bạn sẽ thấy có một biểu tượng Mono
trên màn hình. Kích đích vào nó để mở thư mục chứa thực thi MonoDevelop. Bạn cũng
có thể chạy MonoDevelop trên Mac OS X, hoặc dùng một phiên bản dành cho Fink
(sourceforge.net), hay theo hướng dẫn được post trên monodevelop.com.
Sử dụng MonoDevelop
Khi khởi động MonoDevelop, bạn sẽ thấy IDE và màn hình Welcome như trong Hình 1
bên dưới.
Hình 1: Trang giới thiệu của MonoDevelop
Nếu đã từng sử dụng Visual Studio hay SharpDevelop , bạn sẽ thấy một số cái rất quen.
Ở bên trái là khung Solution Explorer, bên phải là màn hình chính, phía dưới là Task
List, nơi hiển thị lỗi, cảnh báo, thông báo. Để tạo một chương trình mới (ở đây gọi là
solution - giải pháp), đơn giản chỉ cần vào New → New Project, tương tự như trong Hình
2.
Hình 2: Hộp thoại New Solution.
Ở bên trái, bạn có thể thấy vô số tuỳ chọn cho các giải pháp MonoDevelop. Cùng với
những lựa chọn thông thường của C# và Visual Basic, bạn sẽ thấy một cặp giải pháp thú
vị. Bên dưới tiêu đề Boo là các dự án làm việc với ngôn ngữ non-Microsoft .NET, lấy
cảm hứng từ Python, gọi là Boo. Bên dưới NUnit, bạn có thể tạo một dự án chứa các bài
test NUnit. Phần ILAsm thực tế cho phép bạn tạo một dự án Console viết trực tiếp trong
Intermediate Language (IL). Ví dụ, bạn có thể tạo một dự án Gtk# 2.0 Project (trong môi
trường C#).
Gtk# là framework UI xây dựng trong Mono. Bạn có thể tạo cácứngdụng Mono chạy
trên Linux, Windows và Mac OS X. Dự án mới có thể thấy như trên hình 3.
Hình 3: Một giải pháp Gtk# mới.
Bây giờ, tất cả trông thậm chí còn quen thuộc hơn. Các file được sắp xếp ở bên trái, trong
Solution Explorer, giống như ở các IDE khác. Thư mục References bao gồm một danh
sách các bộ phận giải pháp này tham chiếu tới. Thư mục Resources chứa tất cả các file tài
nguyên nằm trong giải pháp. Nhóm thư mục User Interface tập hợp tất cả màn hình
(screen) hiện thời trong giải pháp. Chọn một màn hình đơn trong thư mục đưa lên cho
trình thiết kế có dạng như Hình 4.
Hình 4: Trình thiết kế UI của MonoDevelop
Mặt thiết kế được đưa lên màn hình chính. Widgets Palette ở bên phải bao gồm tất cả các
Widget có thể dùng, và cửa sổ Properties bên dưới hiển thị các thuộc tính Widget cho bạn
lựa chọn. Bạn có thể kéo Widget vào trình thiết kế một cách dễ dàng. Nếu cố gắng thêm
vào một Widget chọn file (File Chooser Widget), ứngdụng chạy sẽ có dạng như hình 5:
Hình 5: Một ứngdụng chạy Gtk#.
Chạy một ứngdụng Gtk# trong MonoDevelop khá nhanh và dễ. Có một điểm đáng kinh
ngạc là bạn có thể chuyển ứngdụng này ngay vào Windows hoặc Mac OS X, cho đến
chừng nào Mono Framework vẫn còn được cài đặt.
Sử dụng cơ chế hoàn chỉnh mã
MonoDevelop tăng cường hiệu suất với một cơ chế hoàn chỉnh mã, đẩy nhanh tốc độ gõ
máy cho bạn. Nó không thể được gọi là IntelliSense, một thương hiệu trên thị trường,
nhưng cũng khá giống như thế. MonoDevelop sẽ đưa ra một số số gợi ý dựa trên cái bạn
đã gõ vào cửa sổ viết mã, như trong hình 6.
Hình 6: Hoàn chỉnh mã trong MonoDevelop.
Tích hợp Nunit
MonoDevelop hỗ trợ thông minh cơ chế tích hợp thành phần kiểm tra. NUnit add-in có
dạng như trong hình 7.
Hình 7: NUnit add-in.
Ở phía trên bên trái là hệ thống cây xem màu đỏ, xanh, vàng truyền thống của các phần
test trên NUnit, hiển thị cái nào được, cái nào không. Bên dưới, bạn có thể thấy sơ đồ đề
mục đã kiểm tra trước đó. Từ sơ đò, bạn sẽ biết lần đầu chỉ có một kiểm tra qua, sau đó là
ba được, rồi hai được và một hỏng. Chuyển sang bên phải, bên dưới mục “Test result”
(kết quả kiểm tra), bạn có thể thấy một danh sách các phần kiểm tra với kết quả cái nào
được, cái nào không. Trình tích hợp NUnit của MonoDevelop rõ ràng là một trong các
thành phần mạnh.
Hỗ trợ
Bạn có thể tìm thấy hỗ trợ MonoDevelop trực tuyến trong IRC hoặc qua danh sách thư
điện tử, hoặc khả năng truy cập qua các liên kết trên trang chủ của công cụ.
MonoDevelop trong một Nutshell
MonoDevelop đang được phát triển rất tích cực. Hai phiên bản mới đã được phát hành
trong năm nay. MonoDevelop không phải là Visual Studio, nhưng khá giống IDE, với
một số ngoại lệ như hỗ trợ NUnit. Nó rất có giá trị nếu bạn đang phát triển trên platform
Linux hoặc Mac OS X.
Tổng quan về MonoDevelop
Công cụ MonoDevelop
Phiên bản giới
thiệu
.11
Trang chủ http://www.monodevelop.com
Trang công cụ hỗ
trợ mạnh
http://www.windevpowertools.com/tools/65
Tóm tắt
Một IDE nguồn mở cho Linux chạy GNOME và
Mac OS X
Kiểu bản quyền GPL
Tài nguyên trực
tuyến
FAQ
Hỗ trợ
Framework
NET 1.0, 1.1, 2.0; Mono 1.0, 2.0
Công cụ có liên quan trong sách này: SharpDevelop, NUnit.
. Widget chọn file (File Chooser Widget), ứng dụng chạy sẽ có dạng như hình 5:
Hình 5: Một ứng dụng chạy Gtk#.
Chạy một ứng dụng Gtk# trong MonoDevelop khá nhanh. đề Boo là các dự án làm việc với ngôn ngữ non-Microsoft .NET, lấy
cảm hứng từ Python, gọi là Boo. Bên dưới NUnit, bạn có thể tạo một dự án chứa các bài