Lập Trình C# Căn Bản - Khóa Học LTUDQL1 Tại ĐHQG HCM

Chuyên khảo phân tích Ltudql1 hk1 1718 lt 01 csharp net updated 26 9, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên cứu tiếp theo.

Trường đại học

ĐHQG HCM - Trường ĐH Khoa Học Tự Nhiên Khoa Công Nghệ Thông Tin

Chuyên ngành

C# căn bản

Người đăng

Ẩn danh

Thể loại

hướng dẫn

2017

76
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

1. NET Framework

2. C# căn bản

2.1. Giới thiệu

2.2. Hello world

2.3. Bắt đầu với C#

2.4. Cấu trúc lập trình

2.5. Kiểu dữ liệu

2.6. Các kiểu dữ liệu số

2.7. Biến dữ liệu

2.8. Ép kiểu số

2.9. Boxing / Unboxing

2.10. Toán tử

2.11. Cấu trúc điều khiển

2.12. Chuỗi literal

2.13. Escape code

2.14. Định dạng chuỗi – String format

2.15. Kết chuỗi

2.16. Tách chuỗi

2.17. Tìm kiếm chuỗi

2.18. Mảng ký tự

2.19. Bài tập chuỗi

2.20. DateTime

2.21. Chuyển String thành DataTime

2.22. Lớp đối tượng (Class) và Cấu trúc (Struct)

2.23. Ví dụ về Class và Struct

2.24. Thành phần của class/struct

2.25. Các tính chất của class/struct

2.26. Đọc thêm về Class và Struct

2.27. Khai báo và định nghĩa Phương thức

2.28. Tham số đầu vào/đầu ra của phương thức

2.29. Mảng (Array)

2.30. Mảng nhiều chiều (multi-dimensional array)

2.31. Đọc thêm

2.32. Basic coding convention

Tóm tắt

I. Giới thiệu về lập trình C căn bản tại ĐHQG HCM

Lập trình C# là một trong những kỹ năng quan trọng trong lĩnh vực công nghệ thông tin. Tại ĐHQG HCM, chương trình đào tạo C# căn bản giúp sinh viên nắm vững kiến thức và kỹ năng lập trình. C# được phát triển bởi Microsoft và là ngôn ngữ lập trình hiện đại, hướng đối tượng. Chương trình học bao gồm các khái niệm cơ bản như .NET Framework, cấu trúc lập trình và các kiểu dữ liệu.

1.1. Tổng quan về C và .NET Framework

C# ra đời năm 2000, là ngôn ngữ lập trình hướng đối tượng. .NET Framework cung cấp môi trường thực thi cho C#, hỗ trợ nhiều tính năng như quản lý bộ nhớ và giao diện đồ họa.

1.2. Tại sao nên học lập trình C tại ĐHQG HCM

ĐHQG HCM cung cấp chương trình học chất lượng, giảng viên có kinh nghiệm và cơ sở vật chất hiện đại. Học lập trình C# tại đây giúp sinh viên có nền tảng vững chắc cho sự nghiệp.

II. Những thách thức khi học lập trình C căn bản

Học lập trình C# không chỉ đơn thuần là việc nắm vững cú pháp. Sinh viên thường gặp khó khăn trong việc hiểu các khái niệm lập trình hướng đối tượng và cách áp dụng chúng vào thực tế. Ngoài ra, việc làm quen với môi trường phát triển như Visual Studio cũng là một thách thức lớn.

2.1. Khó khăn trong việc nắm bắt khái niệm hướng đối tượng

Lập trình hướng đối tượng là một trong những khái niệm quan trọng trong C#. Sinh viên cần hiểu rõ các khái niệm như lớp, đối tượng, kế thừa và đa hình.

2.2. Thách thức trong việc sử dụng công cụ lập trình

Visual Studio là công cụ chính để lập trình C#. Việc làm quen với giao diện và các tính năng của nó có thể gây khó khăn cho sinh viên mới bắt đầu.

III. Phương pháp học lập trình C hiệu quả tại ĐHQG HCM

Để học lập trình C# hiệu quả, sinh viên cần áp dụng các phương pháp học tập tích cực. Tham gia các buổi thực hành, làm bài tập và tham gia các dự án nhóm là những cách tốt để củng cố kiến thức. Ngoài ra, việc tìm hiểu tài liệu tham khảo và tham gia các khóa học trực tuyến cũng rất hữu ích.

3.1. Tham gia thực hành và dự án nhóm

Thực hành là cách tốt nhất để nắm vững lập trình C#. Tham gia vào các dự án nhóm giúp sinh viên áp dụng lý thuyết vào thực tế.

3.2. Tìm hiểu tài liệu và khóa học trực tuyến

Tài liệu tham khảo và các khóa học trực tuyến cung cấp kiến thức bổ sung. Sinh viên nên tìm kiếm các nguồn tài liệu chất lượng để nâng cao kỹ năng.

IV. Ứng dụng thực tiễn của lập trình C trong ngành công nghệ thông tin

Lập trình C# được ứng dụng rộng rãi trong phát triển phần mềm, đặc biệt là trong các ứng dụng web và desktop. C# cũng được sử dụng trong phát triển game thông qua Unity, một trong những công cụ phát triển game phổ biến nhất hiện nay.

4.1. Phát triển ứng dụng web với ASP.NET

ASP.NET là một framework mạnh mẽ cho việc phát triển ứng dụng web. C# là ngôn ngữ chính được sử dụng trong ASP.NET, giúp xây dựng các ứng dụng web động và tương tác.

4.2. Lập trình game với Unity

Unity là một công cụ phát triển game phổ biến, cho phép lập trình viên sử dụng C# để tạo ra các trò chơi đa nền tảng. Việc học C# giúp sinh viên có cơ hội tham gia vào ngành công nghiệp game.

V. Kết luận và tương lai của lập trình C tại ĐHQG HCM

Lập trình C# là một kỹ năng quan trọng trong ngành công nghệ thông tin. Tại ĐHQG HCM, chương trình đào tạo C# căn bản giúp sinh viên chuẩn bị tốt cho sự nghiệp. Với sự phát triển không ngừng của công nghệ, nhu cầu về lập trình viên C# sẽ tiếp tục tăng cao trong tương lai.

5.1. Tương lai của lập trình viên C

Nhu cầu về lập trình viên C# trong ngành công nghệ thông tin đang gia tăng. Các công ty đang tìm kiếm những người có kỹ năng lập trình C# để phát triển ứng dụng và phần mềm.

5.2. Cơ hội nghề nghiệp cho sinh viên tốt nghiệp

Sinh viên tốt nghiệp với kỹ năng lập trình C# có nhiều cơ hội việc làm trong các lĩnh vực như phát triển phần mềm, phát triển web và lập trình game.

15/07/2025

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

ĐHQG HCM – TRƯỜNG ĐH KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN C# căn bản Lập trình ứng dụng quản lý 1 Ngô Chánh Đức Nội dung .NET Framework C# cơ bản Coding convention Hướng đối tượng Collection Delegate 9/26/2017 C# căn bản - LTUDQL1 2 .NET Framework 9/26/2017 C# căn bản - LTUDQL1 3 Giới thiệu  Ra đời năm 2002 cùng với bộ công cụ lập trình Visual Studio .NET  Sử dụng kỹ thuật hướng đối tượng  Hỗ trợ chuẩn Unicode  Thi hành trên máy ảo CLR (Common Language Runtime)  Bao gồm hơn 5000 lớp đối tượng  Cung cấp bộ trình điều khiển đồ sộ (giao diện đồ họa)  Hỗ trợ dịch vụ quản lý bộ nhớ và nhiều dịch vụ khác 9/26/2017 C# căn bản - LTUDQL1 4 Kiến trúc .NET Framework 9/26/2017 C# căn bản - LTUDQL1 5 Cơ chế thực thi 9/26/2017 C# căn bản - LTUDQL1 6 Kiến trúc .NET Framework 9/26/2017 C# căn bản - LTUDQL1 7 Ứng dụng .NET Framework  Ứng dụng dòng lệnh (Console Application)  Ứng dụng WinForm (Windows Form Application)  Ứng dụng WPF (WPF Application)  Ứng dụng web (ASP.NET Web Form Application)  Thư viện DLL (Class Library) 9/26/2017 C# căn bản - LTUDQL1 8 Đọc thêm  Kiến trúc .NET Framework: http://www.com/UploadFile/puranindia/net-framework- and-architecture/ 9/26/2017 C# căn bản - LTUDQL1 9 C# căn bản 9/26/2017 C# căn bản - LTUDQL1 10 Giới thiệu  Phát triển bởi Microsoft  Xuất hiện năm 2000  Phiên bản mới nhất là C# 7.0  Là ngôn ngữ lập trình cấp cao, hiện đại, hướng đối tượng và an toàn kiểu (type-safe)  Có nguồn gốc từ C Cú pháp có phần quen thuộc với C, C++, Java, …  Tập tin mã nguồn có đuôi mở rộng là .cs  Sử dụng Visual Studio để lập trình 9/26/2017 C# căn bản - LTUDQL1 11 Hello world using System; class Hello { static void Main() { Console.cs } } 9/26/2017 C# căn bản - LTUDQL1 12 Bắt đầu với C#  Biên dịch  Chạy gỡ rối (Debug) và chạy không gỡ rối (Run without debug)  Chế độ Release/Debug  Chạy gỡ rối ▪Breakpoint ▪Step In / Step out / Step over ▪Watch / Auto watch / Local watch 9/26/2017 C# căn bản - LTUDQL1 13 Cấu trúc lập trình  Chương trình (Program)  Tên miền (namespace)  Kiểu dữ liệu (type)  Thành viên (member)  Hợp ngữ (assembly) 9/26/2017 C# căn bản - LTUDQL1 14 Kiểu dữ liệu Kiểu Kiểu tham chiếu giá trị 9/26/2017 C# căn bản - LTUDQL1 15 Các kiểu dữ liệu số Signed Integral ▪sbyte: 8 bits, range from -128 to 127 ▪short: 16 bits, range from -32,768 to 32,767 ▪int : 32 bits, range from -2,147,483,648 to 2,147,483,647 ▪long : 64 bits, range from – 9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 9/26/2017 C# căn bản - LTUDQL1 16 Các kiểu dữ liệu số Unsigned integral ▪byte : 8 bits, range from 0 to 255 ▪ushort : 16 bits, range from 0 to 65,535 ▪uint : 32 bits, range from 0 to 4,294,967,295 ▪ulong : 64 bits, range from 0 to 18,446,744,073,709,551,615 9/26/2017 C# căn bản - LTUDQL1 17 Các kiểu dữ liệu số Floating point ▪float : 32 bits, range from 1.4 × 1038, 7-digit precision ▪double : 64 bits, range from 5.7 × 10308, 15-digit precision Decimal ▪decimal : 128 bits, range is at least –7.9 × 1028, with at least 28-digit precision 9/26/2017 C# căn bản - LTUDQL1 18 Biến dữ liệu int i; // Simple variable // Many variables can have the same type declaration float x, y, z; byte x = 1, y, z = 3; string name = "new name"; // Array: Indexed by an integer from Zero int x[] = {1, 2, 3}; // compile error int[] x = {1, 2, 3}; char[] y = new char[6]; // OK int x1 = x[0]; // 1 // Multi dimension array: same size in all item int [,] x = {{1, 2}, {3, 4}}; int [,] x = {{1, 2}, {3, 4, 5}}; // compile error int x2 = x[1, 0]; // 3 int [,,] x = {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}}; 9/26/2017 C# căn bản - LTUDQL1 19 Ép kiểu số // Smaller type in memory size integral // type to wider one byte b = 5; // implicit int to byte int i = b; // i = 5 // Wider integral type to smaller one int i = 500; byte j = i; // compile error byte j = (byte)i; // i = 244 // No explicit conversion for floating // point number 9/26/2017 C# căn bản - LTUDQL1 20 Boxing / Unboxing  Boxing: chuyển kiểu giá trị  object  Unboxing: trích xuất kiểu giá trị từ object 9/26/2017 C# căn bản - LTUDQL1 21 Toán tử  References:. () [] new ->  Arithmetic: + ++ - -- * / % sizeof  Logical: & | ^ !  Conditional: && (&) || ! == != > >= < <=  Type verification: is as typeof  Bitwise: ~ >> <<  Assignment: = += -= *= /= %= &= |= ^= >>= <<=  Selection: ?: ?? (not null)  Lambda expression definition: => 9/26/2017 C# căn bản - LTUDQL1 22 Toán tử int i = 5; // Selection ?: string x = i == 5 ? "Yes": "No"; int? x = 5; // nullable type int y = x ?? 0; // Selection ?? operator int z = x; // Error: nullable type // cannot assign to non-nullable type // Lambda expression – anonymous method (int x) => x * 2; <=> public int Double(int x){return x * 2} 9/26/2017 C# căn bản - LTUDQL1 23 Cấu trúc điều khiển  Branching ▪Selection: ?: ?? ▪ if… else if … else ▪ switch … case … default  Iteration ▪ for ▪ foreach ▪ do while ▪ while  Ignore & breaking ▪ continue ▪ break 9/26/2017 C# căn bản - LTUDQL1 24 Chuỗi literal // Declaration and initialization // "\" start an "escape" code string s1 = "a\n", s2 = "\"", s3 = @"a\n", s4 = s3; // assignment s2 = s1; // concatenation s3 = s1 + s3; 9/26/2017 C# căn bản - LTUDQL1 25 Escape code \a Bell (alert) \' Single quotation mark \b Backspace \" Double quotation mark \f Formfeed \\ Backslash \n New line \? Literal question mark \r Carriage return \ooo ASCII character in octal notation \t Horizontal tab \x hh ASCII character in hexadecimal notation \v Vertical tab \x hhhh Unicode in herxadeximal 9/26/2017 C# căn bản - LTUDQL1 26 Định dạng chuỗi – String format string header = String.Format( "{0,-12}{1,8}{2,12}{1,8}{2,12}{3,14}\n", // pattern string "City", "Year", "Population", "Change (%)"); // argument list string body = String.Format( "{0,-12}{1,8:yyyy}{2,12:N0}{3,8:yyyy}{4,12:N0}{5,14:P1}", Name, BaseYear, BasePopulation, ObserveYear, ObservePopulation, ObservePopulation – BasePopulation)/ (double) BasePopulation); // Sample output City Year Population Year Population Change (%) ------------------------------------------------------------------ Los Angeles 1940 1,504,277 1950 1,970,358 31.9 % string s = $"{x} - {y}"; 9/26/2017 C# căn bản - LTUDQL1 27 Kết chuỗi  Sử dụng “+”  Sử dụng StringBuilder ▪ https://docs.com/en-us/dotnet/standard/base- types/stringbuilder  Câu hỏi: nên kết bằng dấu “+” hay StringBuilder? 9/26/2017 C# căn bản - LTUDQL1 28 Tách chuỗi  Phương thức String.Split 9/26/2017 C# căn bản - LTUDQL1 29 Tìm kiếm chuỗi  Sử dụng phương thức String.LastIndexOf 9/26/2017 C# căn bản - LTUDQL1 30 Mảng ký tự 9/26/2017 C# căn bản - LTUDQL1 31 Bài tập chuỗi 1. Nhập vào một chuỗi, hãy thống kê số lần xuất hiện của mỗi từ trong chuỗi và in ra màn hình 2. Nhập vào Họ và tên, hãy chuẩn hóa chuỗi này và in ra màn hình.

Chuỗi được chuẩn hóa là choỗi không chứa nhiều hơn một khoảng trắng giữa các từ, không có khoảng trắng ở đầu và cuối chuỗi, ký tự đầu mỗi từ sẽ viết hoa, các ký tự còn lại được viết thường 3. Nhập vào chuỗi đường dẫn tập tin (Vd như: “C:\Documents\Photos\Test. Hãy cho biết a) Thư mục chứa tập tin, b) Tên tập tin, c) Phần mở rộng tập tin 9/26/2017 C# căn bản - LTUDQL1 32 Bài tập chuỗi 4. Viết chương trình cho phép nhập vào một chuỗi ký tự và đếm số lượng các ký tự alphabet, ký số và các ký hiệu đặc biệt khác 5.

Viết chương trình cho phép nhập vào một chuỗi ký tự và đếm số lượng nguyên âm, phụ âm 6. Viết chương trình cho phép nhập vào danh sách chuỗi ký tự và sắp xếp chuỗi ký tự theo giải thuật nổi bọt 7. Viết chương trình cho phép nhập vào 2 chuỗi (A và B) và kiểm tra chuỗi B có nằm trong chuỗi A không 8. Viết chương trình cho phép nhập vào 1 chuỗi là họ và tên, và tách phần Họ và phần Tên ra khỏi chuỗi ban đầu.

9/26/2017 C# căn bản - LTUDQL1 33 DateTime using System; … DateTime a = new DateTime(); // Construction complete with year, month, day, // hour, minute, second, millisecond DateTime b = new DateTime(2013, 06, 15, 15, 28, 31, 927); // Current time DateTime c = DateTime.Now; 9/26/2017 C# căn bản - LTUDQL1 34 Chuyển String thành DataTime string dateTime = "01/08/2008 14:50:50.42"; DateTime dt = Convert.WriteLine("Year: {0}, Month: {1}, Day: {2}, Hour: {3}, Minute: {4}, Second: {5}, Millisecond: {6}", dt.Millisecond); 9/26/2017 C# căn bản - LTUDQL1 35 Chuyển String thành DataTime // Specify exactly how to interpret the string. IFormatProvider culture = new System.CultureInfo("fr-FR", true); // Alternate choice: If the string has been input by an end user, you might want to format it according to the current culture: // IFormatProvider culture = System.CurrentCultur e; DateTime dt2 = DateTime.Parse(dateTime, culture, System.WriteLine("Year: {0}, Month: {1}, Day: {2}, Hour: {3}, Minute: {4}, Second: {5}, Millisecond: {6}", dt2.Millisecond 9/26/2017 C# căn bản - LTUDQL1 36 Lớp đối tượng (Class) và Cấu trúc (Struct)  Đều giúp đóng gói dữ liệu (data) + hành vi (behavior)  Lớp đối tượng (Class)  kiểu tham chiếu  Cấu trúc (Struct)  kiểu giá trị  Nhìn ở góc độ Lập trình hướng đối tượng ▪Class  biểu diễn đối tượng phức tạp ▪Struct  biểu diễn dữ liệu phức tạp 9/26/2017 C# căn bản - LTUDQL1 37 Ví dụ về Class và Struct 9/26/2017 C# căn bản - LTUDQL1 38 Thành phần của class/struct Field Event Constant Finalizer Property Indexer Method Operator Constructor Nested Type 9/26/2017 C# căn bản - LTUDQL1 39 Các tính chất của class/struct Accessbility Inheritance - Polymorphism(class) Abstract class Interface Generic Type Static Type Partial Type 9/26/2017 C# căn bản - LTUDQL1 40 Đọc thêm về Class và Struct  https://docs.com/en- us/dotnet/csharp/programming-guide/classes-and- structs/  https://www.com/csharp/csharp_classes.

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