Phát Triển Ứng Dụng Ngôn Ngữ Lập Trình C#

Khám phá cách phát triển phần mềm ứng dụng ngôn ngữ lập trình C, từ cơ bản đến nâng cao, giúp tối ưu hóa hiệu suất và khả năng mở rộng.

Trường đại học

Trường Đại Học

Chuyên ngành

Ngôn Ngữ Lập Trình

Người đăng

Ẩn danh

Thể loại

Hướng Dẫn
63
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

1. Ngôn ngữ lập trình C#

2. Giới thiệu .Net Framework

3. Tạo ứng dụng Console

4. Cấu trúc chương trình C#

5. Vùng tên - Namespaces

6. Câu lệnh

8. Kiểu dữ liệu số nguyên

9. Kiểu dữ liệu số thập phân

10. Các ký tự lệnh – Escape Sequence

11. Chuyển đổi kiểu dữ liệu

15. Các lệnh điều khiển

16. Các lệnh điều khiển

17. Một số hàm thông dụng

18. Một số hàm thông dụng (tt)

19. Một số hàm thông dụng (tt)

20. Một số hàm thông dụng (tt)

21. Một số hàm thông dụng (tt)

22. Một số hàm thông dụng (tt)

23. Một số hàm thông dụng (tt)

24. Bài tập – dữ liệu kiểu chuỗi

25. Mảng 1 chiều

26. Mảng 1 chiều

27. Mảng 1 chiều

28. Mảng 2 chiều

29. Mảng ArrayList

30. Kiểm tra dữ liệu nhập

31. Kiểm tra dữ liệu nhập (tt)

32. Kiểm tra dữ liệu nhập (tt)

33. Quản lý lỗi

34. Tạo ứng dụng Windows Form

35. Windows control - Form

36. Giao diện làm việc – Windows Form

37. Windows control - Form

38. Windows control - Form

39. Thuộc tính của Form

40. Cửa sổ viết code

41. Label control

42. TextBox control

43. TextBox control

44. TextBox control

45. Button control

46. ListBox control

47. ListBox control

48. ListBox control

49. ListBox control

50. ListBox control

Tóm tắt

I. Tổng Quan Về Phát Triển Ứng Dụng Với Ngôn Ngữ Lập Trình C

Ngôn ngữ lập trình C# là một trong những ngôn ngữ phổ biến nhất hiện nay, được phát triển bởi Microsoft. Nó kết hợp các tính năng của C++Java, mang lại khả năng lập trình hướng đối tượng mạnh mẽ. C# hỗ trợ phát triển nhiều loại ứng dụng khác nhau như ứng dụng console, ứng dụng desktop và ứng dụng web. Việc nắm vững C# sẽ giúp lập trình viên có thể phát triển ứng dụng hiệu quả và tối ưu hơn.

1.1. Lợi Ích Của Việc Sử Dụng Ngôn Ngữ Lập Trình C

Sử dụng C# mang lại nhiều lợi ích như khả năng phát triển nhanh chóng, dễ bảo trì và hỗ trợ tốt cho việc xử lý ngoại lệ. Điều này giúp lập trình viên tiết kiệm thời gian và công sức trong quá trình phát triển ứng dụng.

1.2. Các Ứng Dụng Phổ Biến Của C

Ngôn ngữ C# được sử dụng rộng rãi trong phát triển ứng dụng desktop, ứng dụng web và cả game. Các ứng dụng như C# ứng dụng desktopC# ứng dụng web đang ngày càng trở nên phổ biến trong ngành công nghiệp công nghệ thông tin.

II. Những Thách Thức Khi Phát Triển Ứng Dụng Với C

Mặc dù C# có nhiều ưu điểm, nhưng cũng tồn tại một số thách thức trong quá trình phát triển ứng dụng. Các lập trình viên có thể gặp khó khăn trong việc tối ưu hóa hiệu suất ứng dụng, đặc biệt khi làm việc với các ứng dụng lớn hoặc phức tạp. Ngoài ra, việc nắm vững các khái niệm về .NET Framework cũng là một thách thức không nhỏ.

2.1. Khó Khăn Trong Việc Tối Ưu Hóa Hiệu Suất

Tối ưu hóa hiệu suất ứng dụng C# đòi hỏi lập trình viên phải có kiến thức sâu về cách thức hoạt động của .NET Framework và các công cụ hỗ trợ. Việc này có thể gây khó khăn cho những người mới bắt đầu.

2.2. Nắm Vững Các Khái Niệm Cơ Bản Về .NET Framework

Để phát triển ứng dụng hiệu quả, lập trình viên cần hiểu rõ về .NET Framework và cách thức hoạt động của nó. Điều này bao gồm việc nắm vững các thành phần như Common Language Runtime (CLR)Framework Class Library (FCL).

III. Hướng Dẫn Phát Triển Ứng Dụng Console Bằng C

Phát triển ứng dụng console là bước khởi đầu lý tưởng cho những ai mới bắt đầu với C#. Bài viết này sẽ hướng dẫn cách tạo một ứng dụng console đơn giản, từ việc cài đặt môi trường phát triển đến việc viết mã và chạy ứng dụng.

3.1. Cài Đặt Môi Trường Phát Triển

Để bắt đầu, cần cài đặt Visual Studio, một IDE mạnh mẽ hỗ trợ phát triển ứng dụng C#. Sau khi cài đặt, người dùng có thể tạo một project mới và chọn loại ứng dụng console.

3.2. Viết Mã Cho Ứng Dụng Console

Mã nguồn cho ứng dụng console rất đơn giản. Chỉ cần định nghĩa một lớp và phương thức Main, sau đó sử dụng các câu lệnh để thực hiện các tác vụ như in ra màn hình hoặc nhận dữ liệu từ người dùng.

IV. Phương Pháp Phát Triển Ứng Dụng Desktop Với C

Phát triển ứng dụng desktop bằng C# mang lại trải nghiệm người dùng tốt hơn với giao diện đồ họa. Bài viết này sẽ hướng dẫn cách tạo một ứng dụng Windows Form đơn giản, từ việc thiết kế giao diện đến xử lý sự kiện.

4.1. Thiết Kế Giao Diện Ứng Dụng

Sử dụng Windows Forms, lập trình viên có thể kéo thả các control như button, textbox vào form để thiết kế giao diện. Việc này giúp tạo ra một ứng dụng thân thiện với người dùng.

4.2. Xử Lý Sự Kiện Trong Ứng Dụng

Khi người dùng tương tác với ứng dụng, các sự kiện sẽ được kích hoạt. Lập trình viên cần viết mã để xử lý các sự kiện này, như khi người dùng nhấn nút hoặc nhập dữ liệu vào textbox.

V. Ứng Dụng Thực Tiễn Của C Trong Phát Triển Game

Ngôn ngữ C# không chỉ được sử dụng trong phát triển ứng dụng thông thường mà còn rất phổ biến trong phát triển game. Nhiều game nổi tiếng được phát triển bằng C#, nhờ vào khả năng tích hợp tốt với các engine game như Unity.

5.1. Tại Sao Chọn C Để Phát Triển Game

C# cung cấp một cú pháp dễ hiểu và mạnh mẽ, giúp lập trình viên dễ dàng phát triển các tính năng phức tạp trong game. Hơn nữa, việc sử dụng Unity với C# giúp tiết kiệm thời gian và công sức.

5.2. Các Công Cụ Hỗ Trợ Phát Triển Game

Unity là một trong những công cụ phát triển game phổ biến nhất hiện nay, cho phép lập trình viên sử dụng C# để viết mã cho các game 2D và 3D. Công cụ này cung cấp nhiều tính năng mạnh mẽ giúp tối ưu hóa quy trình phát triển.

VI. Kết Luận Và Tương Lai Của Ngôn Ngữ Lập Trình C

Ngôn ngữ C# đã chứng minh được giá trị của mình trong nhiều lĩnh vực phát triển ứng dụng. Với sự phát triển không ngừng của công nghệ, C# sẽ tiếp tục là một lựa chọn hàng đầu cho lập trình viên trong tương lai.

6.1. Xu Hướng Phát Triển C Trong Tương Lai

Với sự phát triển của công nghệ điện toán đám mây và trí tuệ nhân tạo, C# sẽ tiếp tục được cải tiến để đáp ứng nhu cầu ngày càng cao của thị trường.

6.2. Cơ Hội Nghề Nghiệp Cho Lập Trình Viên C

Nhu cầu về lập trình viên C# đang gia tăng, đặc biệt trong các lĩnh vực phát triển ứng dụng web và game. Điều này mở ra nhiều cơ hội nghề nghiệp hấp dẫn cho những ai nắm vững ngôn ngữ này.

27/07/2025

Trích đoạn nội dung tài liệu

PHÁT TRIỂN PMHĐT Ngôn ngữ lập trình C# Số tín chỉ: 2 tc Số tiết Lý thuyết: 20 tiết, Thực hành: 20 tiết 1 Ngôn ngữ lập trình C# • Là sự kết hợp C++ và Java • Hướng đối tượng • Hỗ trợ kiểm soát và xử lý ngoại lệ (exception) tốt. • Các loại ứng dụng: Console, Windows Forms, Web Forms, Windows Services, Web Services CLR trên Linux Hello.exe CLR trên Hello.cs C# Compiler hoặc Windows Hello.dll MSIL CLR trên MacOS 2 Giới thiệu .Net Framework • Có các ngôn ngữ lập trình cơ bản: C#, VB.Net, C++ • Tất cả các chương trình phát triển trên .NET sẽ được chuyển về mã trung gian - Microsoft Intermediate Language (MSIL) – Bước 1: Dịch mã nguồn  MSIL – Bước 2: MSIL  mã CLR thực thi • CLR: Common Language Runtime • FCL: Framework Class Library 3 Tạo ứng dụng Console 4 Cấu trúc chương trình C# • Phần chú thích (option) // Chương trình C# đầu tiên • Phần khai báo dùng namespace (option) using System; using System.Generic; using System.Text; • Phần định nghĩa namespace, lớp và các phương thức namespace HelloWorld { class Program { static void Main(string[] args){ { Console.ReadLine(); } } } 5 Vùng tên - Namespaces • Namespace là một nhóm các lớp có mối liên quan VD: using System; using System.Data; using System.Forms; • Namespace System chứa nhiều lớp giao tiếp với hệ thống • Từ khóa using dùng để khai báo namespace VD: using System.OleDb; 6 Câu lệnh • Các câu lệnh được viết trong thân của phương thức (ở đây là phương thức Main) • Thực hiện một công việc nào đó • Kết thúc bởi dấu chấm phẩy (;) namespace HelloWorld { class Program Phương thức Main { static void Main(string[] args) { Các câu lệnh Console.Write("Hello World!"); // Xuất ra câu chào Console.ReadLine(); // Chờ nhấn Enter } } } 8 Kiểu dữ liệu số nguyên Name Common Type System Description Range (min:max) sbyte System.SByte 8-bit signed integer -128:127 (-27:27-1) short System.Int16 16-bit signed integer -32,768:32,767 (-215:215-1) - int System.Int32 32-bit signed integer 2,147,483,648:2,147,483,6 47 (-231:231-1) - 9,223,372,036,854,775,808 long System.Int64 64-bit signed integer : 9,223,372,036,854,775,807 (-263:263-1) byte System.Byte 8-bit signed integer 0:255 (0:28-1) ushort System.UInt16 16-bit signed integer 0:65,535 (0:216-1) uint System.UInt32 32-bit signed integer 0:4,294,967,295 (0:232-1) 0:18,446,744,073,709,551, ulong System.UInt64 64-bit signed integer 615(0:264-1) 9 Kiểu dữ liệu số thập phân Name Common Type System Description Range (approximate) float System.9 × 1028 Kiểu Boolean bool System.Boolean true or false Kiểu Ký tự, Chuỗi char System.Char 16-bit (Unicode) character string System.String Unicode character string Kiểu đối tượng The root type, from which all other object System.Object types in the CTS derive 10 Các ký tự lệnh – Escape Sequence Escape Sequence Character \' Single quote \" Double quote \\ Backslash \0 Null \a Alert \b Backspace \f Form feed \n Newline \r Carriage return \t Tab character \v Vertical tab 11 Chuyển đổi kiểu dữ liệu • Số thành chuỗi int so = 10; string chuoi = so.ToString(); • Chuỗi thành số string chuoi = “12345”; double n = double.Parse(chuoi); double n = Convert.ToDouble(chuoi); int n = double.3}; do{ i--; foreach (double temp in arr) { Console.WriteLine(" " + i); sum += temp; } while(i>5); //thoat: false } 15 Các lệnh điều khiển • Lệnh goto: goto Label1; Console.WriteLine(“Câu lệnh 2"); Label1: Console.WriteLine(“Câu lệnh 3"); • Lệnh break: dùng câu lệnh break khi muốn thoát khỏi vòng lặp for (int i = 0; i < 10; i++) { if (i > 5) break; Console.WriteLine(" " + i); } 16 Các lệnh điều khiển • Lệnh continue: được dùng trong vòng lặp khi muốn thi hành tiếp vòng lặp nhưng không thi hành các lệnh còn lại trong vòng lặp, các lệnh sau lệnh continue. for (int i = 0; i < 10; i++) { if (i < 5) continue; Console.WriteLine(" " + i); } • Lệnh return: dùng để thoát khỏi một hàm, nếu hàm có một kiểu dữ liệu trả về thì return phải trả về một kiểu dữ liệu này. 17 Một số hàm thông dụng • Thông qua lớp Math – Lấy giá trị tuyệt đối int x = Math.Abs(-10); // kết quả x = 10 – Lũy thừa int x = Math.Pow(2,3); // kết quả x = 2^3 – Lấy căn double x = Math.Sqrt(4); // kết quả x = 2 – Làm tròn double x = Math.12 18 Một số hàm thông dụng (tt) • Lớp ký tự - char – bool char.IsDigit(char c) : có phải là ký số – bool char.IsLetter(char c) : có phải là ký tự – bool char.IsLetterOrDigit(char c) : có phải là ký tự hoặc ký số – bool char.IsLower(char c) : có phải là ký tự thường – bool char.IsUpper(char c) : có phải là ký tự hoa – char char.ToUpper(char c) : trả về ký tự hoa – char char.ToLower(char c) : trả về ký tự thường Ví dụ: string str = “123”; Console.

Do dai: “ + str.Length); bool b1 = char.WriteLine(b1); // true //Kiểm tra tất cả các ký tự của chuỗi có phải là ký tự số ? 19 Một số hàm thông dụng (tt) static void Main(string[] args) { int a = 5; int b = 10; Console.WriteLine("Truoc ham: a = " + a.WriteLine("Sau ham: a = " + a.WriteLine("Trong ham: a = " + a.ToString()); } 20 Một số hàm thông dụng (tt) • Lớp chuỗi – string – Length : Chiều dài chuỗi (số ký tự) – IndexOf(): Vị trí xuất hiện đầu tiên của một chuỗi con trong chuỗi – LastIndexOf(): Vị trí xuất hiện cuối cùng của một chuỗi con trong chuỗi – ToUpper(): Trả về chuỗi chữ hoa – ToLower(): Trả về chuỗi chữ thường – Replace(): Thay thế chuỗi con trong chuỗi bằng một chuỗi con khác – Split(): Cắt một chuỗi thành nhiều chuỗi con – SubString(): Lấy một chuỗi con 21 Một số hàm thông dụng (tt) • Ví dụ 1: string str1 = “Hello world”, str2; char c = str1[0]; // c='H'; int i = str1.Length; // i = 10 int i = str1.IndexOf(“wo”); // i = 6 str2 = str1.Replace(“w”, “W”); // str2=”Hello World” str2 = str1.ToLower(); // str2 = “hello world” str2 = str1.ToUpper(); // str2 = “HELLO WORLD” 22 Một số hàm thông dụng (tt) • Ví dụ 2: int a = 1, b = 2, tong = a+b; string str = "Tong " + a.ToString() + " la " + tong.WriteLine(str); str = string.WriteLine(str); // ----------------------------------------------------------------------------------- string str = “2,15,678”; string[] arrStr = str.Split(',') ; for (int i=0; i<arrStr.Length;i++) { sum += Convert.ToInt32(arrStr[i]); } 23 Một số hàm thông dụng (tt) • Ví dụ 3: Hàm kiểm tra MSSV có phải là 7 ký tự số không? private bool KiemTraMSSV(string mssv) { // Kiem tra mssv chi co 7 ky tu if (mssv.Length != 7) return false; // Kiem tra cac ky tu phai la chu so for (int i = 0; i < mssv.Length; i++) { if (char.IsDigit(mssv[i]) == false) return false; } return true; } 24 Bài tập – dữ liệu kiểu chuỗi • Viết hàm tách tên. Tham số truyền vào là họ và tên, hàm sẽ trả về tên. • Viết hàm tách họ. Tham số truyền vào là họ và tên, hàm sẽ trả về họ và chữ lót.

• Viết hàm chuẩn hóa chuỗi họ tên: – Không có khoảng trắng trước và sau tên – Không có hơn 1 ký tự khoảng trắng giữa các ký tự – Ký tự đầu của các từ phải viết hoa – Ví dụ: “Nguyen Y Van” là hợp lệ • Viết hàm đếm số từ trong chuỗi. – Ví dụ: “Truong Dai hoc Dong Thap”  5 • Viết hàm chuyển đổi số thành chữ. – Ví dụ: 12345  Mười hai nghìn ba trăm bốn mươi lăm 25 Mảng 1 chiều • Cú pháp: type [ ] array_name; • Ví dụ: int [ ] arrInt; // mảng kiểu số nguyên arrInt = new int[20]; // tạo mảng có 20 phần tử int [ ] arrInt = new int[20]; arrInt[0] = 30; // phần tử đầu tiên có giá trị 30 string[] arrStr = {"Hồng", "Lan", "Cúc"}; int Ien = arrStr.Length; // len = 3 26 Mảng 1 chiều • Ví dụ: class Program { static void Main(string[] args) { int [ ] mang = { 5, 4, 3, 6, 7, 2 }; Array.Reverse(mang); //sắp xếp giảm dần Console.ReadLine(); } static void hienthi(int [] a) { for (int i = 0; i < a.Write(“ “ + a[i]); } } 27 Mảng 1 chiều Bài tập: tính tổng các số nguyên của mảng int [ ] mang = {1, 5, 2, 4, 3}; • Dùng vòng lặp for ? • Dùng vòng lặp while ? • Dùng vòng lặp foreach ? 28 Mảng 2 chiều • Cú pháp: type [ , ] array_name; • Ví dụ: int[,] m = new int[2,3]; //mảng m có 2 dòng, 3 cột int[,] m = new int[,] { {1,2}, {3,4}, {5,6}, {7,8} }; Một loại thứ 2 của mảng nhiều chiều trong C# là Jagged array. Jagged là một mảng mà mỗi phần tử là một mảng với kích thước khác nhau.

Những mảng con này phải đuợc khai báo từng mảng con một. int[][] a = new int[3][]; a[0] = new int[4]; a[1] = new int[3]; a[2] = new int[1]; 29 Mảng ArrayList • Một số thao tác – Add(): Thêm phần tử vào cuối mảng – Toán tử []: Lấy phần tử trong mảng – Insert(): Chèn phần tử vào vị trí đã chọn – Count: Số lượng phần tử • Ví dụ: using System.Collections; int tong = 0; ArrayList mang = new ArrayList(); for (int i=0; i<mang.Count; i++) { int so = (int)mang[i]; mang.Add(1); tong = tong + so; mang.WriteLine(‘’Tong= ‘’ + tong.Add(4); // mang = {1, 2, 3, 4} 30 Kiểm tra dữ liệu nhập int so1, so2, tong; if (int.Text, out so1) == false) { MessageBox.Focus(); } else if (int.Text, out so2) == false) { MessageBox.Focus(); } else { tong = so1 + so2; txtTong.ToString(); } // Hãy viết bằng cách tách ra từng lệnh if riêng 31 Kiểm tra dữ liệu nhập (tt) if (KiemTraMSSV(txtMSSV.Text) == false) { MessageBox.Focus(); } else if (KiemTraHoTen(txtHoTen.Text) == false) { MessageBox. } 32 Kiểm tra dữ liệu nhập (tt) private bool KiemTraMSSV(string mssv) { // Kiem tra mssv chi co 7 ky tu if (mssv.Length != 7) return false; // Kiem tra cac ky tu phai la chu so for (int i = 0; i < mssv.Length; i++) { if (char.IsDigit(mssv[i]) == false) return false; } return true; } 33 Quản lý lỗi • C# quản lý lỗi và các trạng thái bất thường bằng biệt lệ (exception) double so1; try { so1 = Convert.Text); } catch { MessageBox.Show("Khong phai la so"); } 34 Tạo ứng dụng Windows Form Tạo project: Windows App 35 Windows control - Form • Tất cả các thành phần trên form đều là đối tượng • Các control: – System. object • Các controls là instance của các lớp trên.

object object object object 36 Giao diện làm việc – Windows Form Windows App do 2 Visual Studio khởi tạo 1 3 1: form ứng dụng 2: control toolbox 3: solution explorer 4 4: form properties 37 Windows control - Form Form1.cs Lớp Form cơ sở Control kiểu Label Thiết kế form & control Add control vào form Chạy ứng dụng với Form1 làm form chính 38 Windows control - Form • Nhóm thuộc tính hiển thị – BackColor (Màu nền) this.White; – ForeColor (Thiết lập màu chữ) this.Black; – BackgroundImage this.BackgroundImage = new Bitmap("background.jpg"); – Text (Tiêu đề của Form) this.Text = “Quan ly Hoc sinh”; – FormBorderStyle this.None; – StartPosition this.CenterScreen; – WindowState this.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ