Tham khảo tài liệu ''giáo trình phân tích khả năng truy cập các thành phần tùy biến trong mảng có kích thước khác nhau p6'', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
h a n g e Vi e y bu k lic c Trong ví dụ minh họa 1.2 đối tượng Console bị hạn chế namespace việc sử dụng mã lệnh: System.Console.WriteLine(); Tốn tử ‘.’ Trong vídụ 2.2 dấu ‘.’ sử dụng để truy cập đến phương thức hay liệu lớp (trong trường hợp phương thức WriteLine()), ngăn cách tên lớp đến namespace xác nhận (namspace System lớp Console) Việc thực theo hướng từ xuống, mức namespace System, lớp Console, cuối truy cập đến phương thức hay thuộc tính lớp Trong nhiều trường hợp namespace chia thành namespace gọi subnamespace Ví dụ namespace System có chứa số subnamesapce Configuration, Collections, Data, nhiều nữa, namespace Collection chia thành nhiều namesapce Namespace giúp tổ chức ngăn cách kiểu Khi viết chương trình C# phức tạp, phải tạo kiến trúc namespace riêng cho mình, khơng giới hạn chiều sâu phân cấp namespace Mục đích namespace giúp chia để quản lý kiến trúc đối tượng phức tạp Từ khóa using Để làm cho chương trình gọn hơn, không cần phải viết namespace cho đối tượng, C# cung cấp từ khóa using, sau từ khóa namespace hay subnamespace với mơ tả đầy đủ cấu trúc phân cấp Ta dùng dịng lệnh : using System; đầu chương trình chương trình có dùng đối tượng Console khơng cần phải viết đầy đủ : System.Console mà cần viết Console thơi Ví dụ 2.3: Dùng khóa using using System; class ChaoMung { static void Main() { //Xuat man hinh chuoi thong bao Console.WriteLine(“Chao Mung”); } } Ngôn Ngữ C# 27 d o m o o c u -tr a c k C m C lic w w w d o to Ngơn Ngữ Lập Trình C# k to bu y w w w w N N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c h a n g e Vi e y bu k lic c Kết quả: Chao Mung Lưu ý phải đặt câu using System trước định nghĩa lớp ChaoMung Mặc dù định sử dụng namespace System, không giống ngôn ngữ khác, định sử dụng đối tượng System.Console Ví dụ 2.4: Không hợp lệ C# using System.Console; class ChaoMung { static void Main() { //Xuat man hinh chuoi thong bao WriteLine(“Chao Mung”); } } Đoạn chương trình biên dịch thông báo lỗi sau: error CS0138: A using namespace directive can only be applied to namespace; ‘System.Console’ is a class not a namespace Cách biểu diễn namespace làm giảm nhiều thao tác gõ bàn phím, khơng đem lại lợi ích làm xáo trộn namespace có tên khơng khác Giải pháp chung sử dụng từ khóa using với namespace xây dựng sẵn, namespace tạo ra, namespace nắm sưu liệu Cịn namespace hãng thứ ba cung cấp khơng nên dùng từ khóa using Phân biệt chữ thường chữ hoa Cũng giống C/C++, C# ngôn ngữ phân biệt chữ thường với chữ hoa, điều có nghĩa hai câu lệnh writeLine khác với WriteLine khác với WRITELINE Đáng tiếc C# không giống VB, môi trường phát triển C# không tự sửa lỗi này, viết hai chữ với cách khác đưa vào chương trình gỡ rối tìm lỗi Để trách việc lãnh phí thời gian cơng sức, người ta phát triển số qui ước cho cách đặt tên biến, hằng, hàm, nhiều định danh khác Qui ước giáo trình dùng cú pháp lạc đà (camel notation) cho tên biến cú pháp Pascal cho hàm, hằng, thuộc tính Ví dụ : Ngôn Ngữ C# 28 d o m o o c u -tr a c k C m C lic w w w d o to Ngơn Ngữ Lập Trình C# k to bu y w w w w N N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c N O W ! PD y bu to Biến myDictionary theo cách đặt tên cú pháp lạc đà Hàm DrawLine, thuộc tính ColorBackground theo cách đặt tên cú pháp Pascal Từ khóa static Hàm Main() ví dụ minh họa có nhiều cách thiết kế Trong minh họa hàm Main() khai báo với kiểu trả void, tức hàm không trả giá trị Đôi cần kiểm tra chương trình có thực hay khơng, người lập trình khai báo hàm Main() trả giá trị để xác định kết thực chương trình Trong khai báo ví dụ có dùng từ khóa static: static void Main() { } Từ khóa hàm Main() gọi mà khơng cần phải tạo đối tượng ChaoMung Những vấn đề liên quan đến khai báo lớp, phương thức, hay thuộc tính trình bày chi tiết chương Phát triển chương trình minh họa Có tối thiểu hai cách để soạn thảo, biên dịch thực thi chương trình sách này: Sử dụng mơi trường phát triển tích hợp (IDE) Visual Studio NET Sử dụng chương trình soạn thảo văn Notepad dùng biên dịch dòng lệnh Mặc dù phát triển phần mềm bên ngồi Visual Studio NET, IDE cung cấp nhiều tiện ích hỗ trợ cho người phát triển như: hỗ trợ phần soạn thảo mã nguồn canh lề, màu sắc, tích hợp tập tin trợ giúp, đặc tính intellisense, Nhưng điều quan trọng IDE phải có cơng cụ debug mạnh số công cụ trợ giúp phát triển ứng dụng khác Trong sách giả sử người đọc sử dụng Visual Studio NET Phần trình tập trung vào ngơn ngữ platform cơng cụ phát triển Chúng ta chép tất mã nguồn ví dụ vào chương trình soạn thảo văn Notepad hay Emacs, lưu chúng dạng tập tin văn bản, biên dịch chúng trình biên dịch dịng lệnh C#, chương trình phân phối NET Framework SDK Trong chương cuối xây dựng ứng dụng Windows Web, sử dụng công cụ Visual Studio NET để tạo Windows Form Web Form, nhiên viết tay Notepad định sử dụng cách làm tay thay dùng công cụ thiết kế Sử dụng Notepad soạn thảo 29 Ngôn Ngữ C# d o m o c w k m w o c u -tr a c k h a n g e Vi e lic O W N y bu to C lic k Ngôn Ngữ Lập Trình C# w w d o XC er w w w F- w C h a n g e Vi e ! XC er PD F- c u -tr a c k c N O W ! PD y bu to Đầu tiên mở chương trình Notepad soạn thảo chương trình minh họa trên, lưu ý ta sử dụng trình soạn thảo văn không thiết Notepad Sau soạn thảo xong lưu tập tin xuống đĩa tập tin có phần mở rộng *.cs, ví dụ chaomung.cs Bước biên dịch tập tin nguồn vừa tạo Để biên dịch ta dùng trình biên dịch dịng lệnh C# (csc.exe) chương trình chép vào máy q trình cài NET Framework Để biết csc.exe nằm xác vị trí đĩa ta dùng chức tìm kiếm Windows Để thực biên dịch mở cửa sổ dòng lệnh đánh vào lệnh theo mẫu sau: csc.exe [/out: ] Ví dụ: csc.exe /out:d:\chaomung.exe d:\chaomung.cs Thường biên dịch ta cần hai phần tên trình biên dịch tên tập tin nguồn mà thơi Trong mẫu có dùng nhiều tùy chọn biên dịch /out, theo sau tên chương trình thực thi kết biên dịch tập tin nguồn Các tham số tùy chọn có nhiều muốn tìm hiểu dùng lệnh: csc.exe /? Lệnh xuất hình tồn tùy chọn biên dịch hướng dẫn sử dụng Hai hình sau minh họa trình nhập mã nguồn chương trình C# trình soạn thảo văn đơn giản Notepad Windows Và sau biên dịch tập tin mã nguồn vừa tạo chương trình csc.exe trình biên dịch dòng lệnh C# Kết tập tin thực thi tạo ta chạy chương trình Hình 2.2: Mã nguồn soạn thảo Notepad 30 Ngôn Ngữ C# d o m o c w k m w o c u -tr a c k h a n g e Vi e lic O W N y bu to C lic k Ngôn Ngữ Lập Trình C# w w d o XC er w w w F- w C h a n g e Vi e ! XC er PD F- c u -tr a c k c h a n g e Vi e N bu to k lic c Hình 2.3: Biên dịch thực thi chương trình Sử dụng Visual Studio NET để tạo chương trình Để tạo chương trình chào mừng IDE, lựa chọn mục Visual Studio NET menu Start icon desktop, sau khởi động xong chương trình, chọn tiếp chức File New Project menu Chức gọi cửa sổ New Project (hình 2.4 bên dưới) Nếu chương trình Visual Studio NET chạy lần đầu tiên, cửa sổ New Project xuất tự động mà khơng cần phải kích hoạt Để tạo ứng dụng, ta lựa chọn mục Visual C# Projects cửa sổ Project Type bên trái Lúc nhập tên cho ứng dụng lựa chọn thư mục nơi lưu trữ tập tin Cuối cùng, kích vào OK chuyện khởi tạo chấm dứt cửa sổ xuất (hình 2.4 bên dưới), nhập mã nguồn vào Lưu ý Visual Studio NET tạo namespace dựa tên project mà ta vừa cung cấp (ChaoMung), thêm vào dẫn sử dụng namespace System lệnh using, chương trình mà viết cần sử dụng kiểu liệu chứa namespace System 31 Ngôn Ngữ C# d o m o o c u -tr a c k C w w w d o Ngơn Ngữ Lập Trình C# m C lic k to bu y w w w w y N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c ... hai phần tên trình biên dịch tên tập tin nguồn mà thơi Trong mẫu có dùng nhiều tùy chọn biên dịch /out, theo sau tên chương trình thực thi kết biên dịch tập tin nguồn Các tham số tùy chọn có nhiều... với cách khác đưa vào chương trình gỡ rối tìm lỗi Để trách việc lãnh phí thời gian công sức, người ta phát triển số qui ước cho cách đặt tên biến, hằng, hàm, nhiều định danh khác Qui ước giáo trình. .. giá trị Đơi cần kiểm tra chương trình có thực hay khơng, người lập trình khai báo hàm Main() trả giá trị để xác định kết thực chương trình Trong khai báo ví dụ có dùng từ khóa static: static void