Khóa học Lập trình ứng dụng Windows Form C#.NET – tự tay xây dựng phần mềm và game thực tế
Khóa học giúp bạn tự tay xây dựng phần mềm chạy trên máy tính – phần mềm quản lý, bán hàng, công cụ hỗ trợ công việc và cả game. Mỗi kiến thức đều đi kèm project thực tế từ nhỏ đến lớn, được hướng dẫn cặn kẽ từng bước để bạn hiểu và làm được.
Vì sao nên bắt đầu lập trình ứng dụng với C#?
Web, mobile, game hay desktop đều chung tư duy: thiết kế giao diện, cơ sở dữ liệu, mô hình client – server. Làm được một phần mềm hoàn chỉnh với C# thì sang mảng khác bạn chỉ cần làm quen công nghệ mới.
Cùng nền tảng máy tính, cùng Visual Studio quen thuộc từ các môn C/C++. Bạn đi từ kiến thức cơ bản đến ứng dụng trên cùng một môi trường trước khi mở rộng sang nền tảng khác.
Từ C# bạn có thể đi tiếp: lập trình web với ASP.NET, ứng dụng di động đa nền tảng với .NET MAUI (trước đây là Xamarin), làm game 2D/3D với Unity.
Lộ trình kiến thức của khóa học
Đề cương chi tiết bên dưới là các chương hiện có trong khóa học – phần nền tảng C# với hơn 184 giờ video, phần quan trọng nhất vì đi từ con số 0 và làm cơ sở cho các phần sau. Liên hệ thầy để biết nội dung cập nhật mới nhất.
Các project thực tế bạn sẽ làm
Đề cương chi tiết
Bấm vào từng chương để xem các bài học. Các bài có nhãn ▶ Học thử (4 chương đầu) có thể xem ngay.
1Làm quen C# Windows Form
Chương 1: Giới thiệu tổng quan về khóa họcCó học thử7 bài · 3 giờ 23 phút
- Bài 1Giới thiệu về giảng viên ▶ Học thử13 phút · 1 video
- Bài 2Giới thiệu về phương pháp dạy mới áp dụng trong khóa học ▶ Học thử6 phút · 1 video
- Bài 3Giới thiệu sơ lược về C#1 giờ 06 phút · 2 video
- Bài 4Giới thiệu nội dung của khóa học ▶ Học thử19 phút · 1 video
- Bài 5Điểm nhấn mạnh của khóa học ▶ Học thử12 phút · 1 video
- Bài 6Hướng dẫn cách học đạt hiệu quả ▶ Học thử31 phút · 1 video
- Bài 7Giới thiệu thông tin về Project lớn số 1 ▶ Học thử58 phút · 1 video
Chương 2: Làm Quen Với Lập Trình C# Window FormCó học thử1 bài · 1 giờ 33 phút
- Bài 1Lý Thuyết Về Lập Trình Giao Diện GUI - Lập Trình Visual Studio Hiểu Rõ Tính Chất, Cấu Trúc Và Sử Dụng - Các Vấn Đề Cần Lưu Ý ▶ Học thử1 giờ 33 phút · 3 video
Xem 3 video của bài
- Lý Thuyết về lập trình giao diện GUI - Lập trình Visual Studio .NET - Tạo Project C# đầu tiên và vấn đề lưu ý về FrameWork (29 phút) ▶ Học thử
- Tìm hiểu các thành phần ứng dụng Winform C#.NET - Giới thiệu tổng quan các Control, cách sử dụng và hiểu rõ bản chất (32 phút) ▶ Học thử
- Tìm hiểu chi tiết các thành phần cấu trúc của Project - Xử lý các trường hợp lỗi hay xảy ra khi thiết kế giao diện (32 phút) ▶ Học thử
2Các control nền tảng & ứng dụng
Chương 3: Tổng Quan Kiến Thức Về Các Control - Kiến Thức Về Các Control Form, Label, TextBox, ButtonCó học thử9 bài · 11 giờ 41 phút
- Bài 1Tổng Quan Kiến Thức Về Các Control ▶ Học thử1 giờ 07 phút · 2 video
- Bài 2Kiến Thức Về Control Form ▶ Học thử56 phút · 2 video
- Bài 3Kến Thức Về Control Label, TextBox ▶ Học thử1 giờ 08 phút · 2 video
- Bài 4Kiến Thức Về Control Button ▶ Học thử36 phút · 1 video
Xem nội dung video
- Tìm hiểu Thuộc Tính, Phương Thức và Sự Kiện của Control Button - Cơ chế chuyển đổi từ chuỗi số sang số - Demo thực tế
- Bài 5Bài Tập Ứng Dụng Tổng Hợp: Tạo Form Đăng Nhập - Tạo Form Đăng Ký Tài Khoản - Tính Điểm Trung Bình Xếp Loại - Máy Tính Calculator ▶ Học thử42 phút · 1 video
Xem nội dung video
- Tầm quan trọng ứng dụng thực tế - Mô tả chức năng - Gợi ý hướng dẫn tự làm cho các ứng dụng
- Bài 6Giải Bài Tập: Xây Dựng Ứng Dụng Tạo Form Đăng Nhập ▶ Học thử1 giờ 34 phút · 3 video
Xem 3 video của bài
- Quy trình 4 bước xây dựng phần mềm ứng dụng nhỏ - Xây dựng hoàn tất ứng dụng với đầy đủ các chức năng (32 phút) ▶ Học thử
- Hoàn tất thiết kế giao diện cho ứng dụng (Giao diện Form, iCon ứng dụng trên Form, iCon trên Desktop) (30 phút) ▶ Học thử
- Bổ sung viết class xử lý cho ứng dụng thay vì viết trực tiếp trên Form - Hiểu rõ lý do tầm quan trọng và tầm vực xử lý của Form và Class (30 phút) ▶ Học thử
- Bài 7Giải Bài Tập: Xây Dựng Ứng Dụng Tạo Form Đăng Ký Tài Khoản ▶ Học thử3 giờ 32 phút · 6 video
Xem 6 video của bài
- Thiết kế giao diện cơ bản và hoàn tất chức năng yêu cầu cơ bản của ứng dụng (37 phút) ▶ Học thử
- Hoàn tất chức năng bổ sung (Họ tên chỉ có chữ, Phone chỉ có số) và nâng cao của ứng dụng (Kiểm tra Email đúng định dạng quy định) (47 phút) ▶ Học thử
- Xây dựng chức năng nâng cao: Chuẩn hóa họ tên người dùng đăng ký ở bước kiểm tra cuối cùng - Gợi ý xây dựng TextBox chuẩn hóa tên. (32 phút) ▶ Học thử
- Xây dựng chức năng nâng cao: Tạo TextBox tự chuẩn hóa họ tên người dùng ngay khi vừa gõ xuống với các quy tắc ràng buộc (29 phút) ▶ Học thử
- Xây dựng chức năng nâng cao: Kiểm tra tuần tự từng thông tin dữ liệu trực tiếp trong các TextBox (41 phút) ▶ Học thử
- Tính năng bổ sung nhấn Enter xác nhận mật khẩu tự động đăng ký - Sửa lỗi phát sinh - Thiết kế giao diện hoàn chỉnh - Hoàn thiện ứng dụng (26 phút) ▶ Học thử
- Bài 8Giải Bài Tập: Xây Dựng Ứng Dụng Xếp Loại Học Sinh ▶ Học thử2 giờ 11 phút · 3 video
Xem 3 video của bài
- Tầm quan trọng ứng dụng - Thiết kế giao diện và xử lý tính năng cơ bản Tính điểm trung bình và Xếp loại học lực (39 phút) ▶ Học thử
- Xử lý tính năng bổ sung kiểm tra các điều kiện của dữ liệu phải hợp lệ - Cách 1: Xử lý sự kiện Key Press ràng buộc dữ liệu ngay khi nhập vào (44 phút) ▶ Học thử
- Viết class xử lý cho ứng dụng - Cách 2: Sử dụng try catch để bắt lỗi ngoại lệ - Thiết kế giao diện hoàn chỉnh và Hoàn tất ứng dụng (49 phút) ▶ Học thử
- Bài 9Giải Bài Tập: Xây Dựng Ứng Dụng Máy Tính Calculator (Đây là bài tập rèn luyện vì thế các Bạn hãy cố gắng tự làm và Trao đổi thảo luận trên group)
Chương 4: Kiến Thức Về Control PictureBox - Kỹ Thuật Random Trong Lập Trình C# - Tọa Độ Đối Tượng Trên Form (Location)Có học thử4 bài · 10 giờ 57 phút
- Bài 1Kiến Thức Về Control PictureBox Và Ứng Dụng ▶ Học thử2 giờ 23 phút · 4 video
Xem 4 video của bài
- Giới thiệu Control PictureBox và ứng dụng thực tế - Thuộc tính cơ bản của PictureBox - Gán hình ảnh trực tiếp và đọc từ tập tin trên máy tính (36 phút) ▶ Học thử
- Demo ứng dụng thực tế: Load danh sách ảnh BabyGirl - Thiết kế giao diện cơ bản và chức năng cơ bản (37 phút) ▶ Học thử
- Demo ứng dụng thực tế: Load danh sách ảnh BabyGirl - Lập trình tính năng nâng cao - Thiết kế giao diện hoàn chỉnh - Hoàn thiện ứng dụng (37 phút) ▶ Học thử
- Tìm hiểu sự kiện thông dụng của PictureBox và Tầm quan trọng ứng dụng thực tế - Demo: Tạo nút nhấn New Game với các hiệu ứng (32 phút) ▶ Học thử
- Bài 2Kỹ Thuật Random Trong Lập Trình C# Và Ứng Dụng - Kiến Thức Về Tọa Độ Đối Tượng Trên Form (Location) ▶ Học thử2 giờ 22 phút · 4 video
Xem 4 video của bài
- Kỹ thuật Random trong Lập Trình C# và Tầm quan trọng ứng dụng thực tế - Demo ứng dụng: Vợ tương lai của Bạn là ai? (39 phút) ▶ Học thử
- Hoàn thành các tính năng nâng cao của Ứng Dụng: Vợ tương lai của Bạn là ai? - Thiết kế giao diện - Hoàn tất ứng dụng (47 phút) ▶ Học thử
- Kiến thức về tọa độ đối tượng trên Form (Location) và Tầm quan trọng ứng dụng thực tế - Demo ứng dụng: Tỏ Tình (45 phút) ▶ Học thử
- Sửa lỗi Demo kiến thức tọa độ của Video 3 - Nâng cấp lại Demo: Ứng Dụng Tỏ Tình (10 phút) ▶ Học thử
- Bài 3Bài Tập Ứng Dụng Tổng Hợp: Game Đuổi Hình Bắt Chữ ▶ Học thử41 phút · 1 video
Xem nội dung video
- Cho xem game thực tế - Mô tả và Phân tích các chức năng - Gợi ý hướng dẫn tự làm
- Bài 4Giải Bài Tập: Xây Dựng Game Đuổi Hình Bắt Chữ ▶ Học thử5 giờ 32 phút · 10 video
Xem 10 video của bài
- Phân tích và Xây dựng chức năng: Hiển thị hình ảnh Random không trùng nhau trong 1 lượt chơi kèm theo dữ liệu đáp án (44 phút) ▶ Học thử
- Phân tích và Xây dựng chức năng: Phát sinh tự động các ô đáp án - Tìm hiểu về vòng lặp Foreach (36 phút) ▶ Học thử
- Phân tích và Xây dựng chức năng: Phát sinh tự động các nút nhấn gợi ý đáp án (39 phút) ▶ Học thử
- Phân tích và Xây dựng chức năng: Xử lý phát sinh ngẫu nhiên các nút nhấn Button chứa ký tự gợi ý đáp án - Bước 1: Tạo mảng các ký tự gợi ý đáp án (32 phút) ▶ Học thử
- Phân tích và Xây dựng chức năng: Xử lý phát sinh ngẫu nhiên các nút nhấn Button chứa ký tự gợi ý đáp án - Bước 2: Trộn lẫn mảng và đọc lên các nút nhấn Button (25 phút) ▶ Học thử
- Phân tích và Xây dựng chức năng: Xử lý chọn đáp án và Kiểm tra đúng sai - Bước 1: Xử lý chọn Button ký tự điền vào TextBox đáp án và Kiểm tra đúng sai (39 phút) ▶ Học thử
- Phân tích và Xây dựng chức năng: Xử lý chọn đáp án và Kiểm tra đúng sai - Bước 2: Xử lý chọn TextBox để hủy bỏ đáp án và hoàn thiện chức năng (17 phút) ▶ Học thử
- Xử lý các trường hợp phát sinh lỗi và Gợi ý các tính năng bổ sung tự phát triển thêm (43 phút) ▶ Học thử
- Thiết kế giao diện hoàn chỉnh cho Game (32 phút) ▶ Học thử
- Tạo nút nhấn New Game và đánh số thứ tự câu hỏi - Hoàn tất Game (24 phút) ▶ Học thử
Chương 5: Kiến Thức Về Control ComboBox4 bài · 4 giờ 05 phút
- Bài 1Giới Thiệu Control ComboBox Với Tầm Quan Trọng Ứng Dụng - Tìm Hiểu Các Thuộc Tính, Phương Thức, Sự Kiện Của Control57 phút · 3 video
Xem 3 video của bài
- Giới thiệu Control ComboBox với tầm quan trọng ứng dụng - Lý thuyết về Thuộc Tính, Phương Thức, Sự Kiện của Control ComboBox (18 phút)
- Demo thực tế làm quen với Thuộc Tính và Phương Thức của Control ComboBox (30 phút)
- Demo thực tế làm quen với Sự Kiện của Control ComboBox - Vấn đề về Custom Control (Tạo ra Control mới về giao diện + xử lý) (9 phút)
- Bài 2Xây Dựng Ứng Dụng Thực Tế: Tạo Form Mua Hàng Giống TheGioiDiDong.com1 giờ 27 phút · 4 video
Xem 4 video của bài
- Mô tả ứng dụng (4 phút)
- Xây dựng tính năng: Cho phép người dùng chọn lựa màu sắc cho điện thoại muốn mua (32 phút)
- Hai ComboBox tương tác qua lại với nhau - Xây dựng tính năng: Cho phép người dùng chọn thông tin địa chỉ giao hàng (30 phút)
- Xây dựng tính năng: Chọn số lượng muốn mua và Hiển thị thông tin số tiền phải trả - Thiết kế giao diện và Hoàn tất ứng dụng hoàn chỉnh (20 phút)
- Bài 3Tính Năng AutoComplete Của Control ComboBox Và TextBox47 phút · 2 video
Xem 2 video của bài
- Giới thiệu về tính năng AutoComplete với tầm quan trọng ứng dụng thực tế - Demo hiện thực AutoComplete trên Control TextBox (30 phút)
- Demo hiện thực AutoComplete trên Control ComboBox - Sự khác biệt so với AutoComplete trên TextBox và Vận dụng thực tế (16 phút)
- Bài 4Chuyên Mục Nâng Cao Kiến Thức: Tự Xây Dựng AutoComplete Riêng Theo Cách Chúng Ta Quy Định55 phút · 3 video
Xem 3 video của bài
- Vấn đề còn hạn chế của AutoComplete mặc định - Lý do phải tạo ra AutoComplete riêng - Yêu cầu cụ thể đề ra với AutoComplete tự tạo (7 phút)
- Hướng dẫn tự xây dựng chức năng AutoComplete riêng trên Control ComboBox (40 phút)
- Yêu cầu phát triển tiếp tính năng - Gợi ý hướng dẫn xây dựng - Nói thêm về tầm quan trọng ứng dụng thực tế sau này của ComboBox (8 phút)
Chương 6: Kiến Thức Về Control CheckBox, RadioButton, GroupBox Trong C# - Xây Dựng Các Ứng Dụng Thực Tế8 bài · 24 giờ 10 phút
- Bài 1Giới Thiệu Tổng Quan Về 3 Control Với Tầm Quan Trọng Và Ứng Dụng Thực Tế13 phút · 1 video
Xem nội dung video
- Giới thiệu tổng quan về 3 Control - Tầm quan trọng và ứng dụng thực tế
- Bài 2Kiến Thức Về Control CheckBox Với Các Thuộc Tính Và Sự Kiện Thông Dụng32 phút · 2 video
Xem 2 video của bài
- Các thuộc tính thông dụng của Control CheckBox (14 phút)
- Các sự kiện thông dụng của Control CheckBox (17 phút)
- Bài 3Tạo Tự Động Danh Sách Control CheckBox - Lý Do Và Tầm Quan Trọng - Vận Dụng Thực Tế Với Ứng Dụng: Điểm Danh Học Sinh Đi Học Mỗi Ngày43 phút · 2 video
Xem 2 video của bài
- Giới thiệu và mô tả ứng dụng - Hướng dẫn gợi ý tự làm (12 phút)
- Hướng dẫn từng bước xây dựng hoàn chỉnh ứng dụng (31 phút)
- Bài 4Xây Dựng Ứng Dụng Thực Tế: Tính Tiền Phụ Thu Khách Sạn14 giờ 59 phút · 28 video
Xem 28 video của bài
- Mô tả các tính năng ứng dụng với tầm quan trọng thực tế - Hướng dẫn gợi ý tự làm (37 phút)
- Xem demo ứng dụng thực tế hoàn chỉnh để dựa theo làm và có bổ sung thêm một số chức năng cho ứng dụng (39 phút)
- Xây dựng tính năng cơ bản của ứng dụng: Tính kết quả tiền thối lại và chuẩn hóa dữ liệu xuất ra (41 phút)
- Xây dựng tính năng CheckBox Chuẩn Hóa Dữ Liệu Tiền - Phần 1: Xử lý trực tiếp dữ liệu đang có sẵn (24 phút)
- Xây dựng tính năng CheckBox Chuẩn Hóa Dữ Liệu Tiền - Phần 2: Xử lý khi người dùng tương tác gõ từng phím xuống TextBox (36 phút)
- Xây dựng tính năng CheckBox Đọc Tiền Thành Chữ theo cách 1: Xử lý trực tiếp trên dữ liệu số - Phần 1: Xử lý đọc số hàng tỷ (40 phút)
- Xây dựng tính năng CheckBox Đọc Tiền Thành Chữ theo cách 1: Xử lý trực tiếp trên dữ liệu số - Phần 2: Xử lý đọc số có độ lớn bất kỳ (36 phút)
- Tính năng Đọc Tiền Thành Chữ - Phần 3: Tối ưu code xử lý và Xử lý đọc khi người dùng tương tác gõ từng phím xuống TextBox (17 phút)
- Xây dựng tính năng CheckBox Kiểm Tra Tiền Thối Lại và tính năng CheckBox Hiển Thị Text Gợi Ý Số Tờ Tiền Thối Lại Theo Phương Án Tối Ưu (41 phút)
- Xây dựng tính năng CheckBox Hiển Thị Hình Tờ Tiền Thối Lại: Hiển thị hình ảnh tờ tiền và số lượng đi kèm lên giao diện (41 phút)
- Xây dựng tính năng bổ sung: Load danh sách các sản phẩm lên giao diện và xử lý tương tác cập nhật lại tiền phải trả (Phần 1) (35 phút)
- Hoàn tất tính năng bổ sung: Load danh sách các sản phẩm lên giao diện và xử lý tương tác cập nhật lại tiền phải trả (Phần 2) (30 phút)
- Tối ưu hóa lại code xử lý cho các tính năng đã xây dựng (Phần 1) (30 phút)
- Tối ưu hóa lại code xử lý cho các tính năng đã xây dựng (Phần 2) (29 phút)
- Tối ưu lại tính năng đọc tiền thành chữ hiển thị ra trong TextBox nằm dưới mỗi ô TextBox tiền phải trả, tiền khách đưa, tiền thối lại (20 phút)
- Xử lý người dùng tương tác nhấn từng phím xuống TextBox làm thay đổi nội dung sẽ tự cập nhật lại đọc tiền thành chữ (27 phút)
- Xây dựng chức năng nút nhấn In Hóa Đơn (29 phút)
- Tối ưu lại chức năng Đọc Tiền Thành Chữ theo cách 2 tốt hơn: Xử lý trên dữ liệu chuỗi đầu vào - Mô tả gợi ý (38 phút)
- Xây dựng chức năng Đọc Tiền Thành Chữ theo cách 2 - Xử lý đọc đúng theo định dạng tiền Việt Nam (Phần 1) (37 phút)
- Xây dựng chức năng Đọc Tiền Thành Chữ theo cách 2 - Xử lý đọc đúng theo định dạng tiền Việt Nam (Phần 2) (33 phút)
- Xây dựng chức năng Đọc Tiền Thành Chữ theo cách 2 - Xử lý đọc đúng theo định dạng tiền Việt Nam (Phần 3) (33 phút)
- Xây dựng chức năng Đọc Tiền Thành Chữ theo cách 2 - Xử lý đọc đúng theo định dạng tiền Việt Nam (Phần 4) (29 phút)
- Xử lý kết quả số tờ tiền thối lại nằm trong ô TextBox và luôn nằm dưới TextBox tiền thối lại + TextBox đọc tiền thành chữ (40 phút)
- Hoàn tất tính năng tạo tự động ô TextBox chứa thông tin số tờ tiền thối lại (22 phút)
- Kiểm tra toàn bộ các tính năng của chương trình và tiến hành kiểm tra, sửa lỗi (25 phút)
- Thiết lập giao diện cho ứng dụng - Xử lý code tọa độ các chức năng xuất hiện Control trên Form (31 phút)
- Xử lý hiển thị giao diện hình ảnh tờ tiền thối lại - Tạo CheckBox cho phép check Full chức năng ứng dụng (36 phút)
- Hoàn tất toàn bộ giao diện và kết thúc ứng dụng (21 phút)
- Bài 5Kiến Thức Về Control RadioButton, GroupBox Với Các Thuộc Tính Và Sự Kiện Thông Dụng - Công Dụng Thực Tế41 phút · 1 video
Xem nội dung video
- Kiến thức về Control RadioButton và GroupBox
- Bài 6Ứng Dụng Thực Tế Vận Dụng Kiến Thức Control RadioButton, GroupBox: Game Show Thi Trắc Nghiệm6 giờ 36 phút · 12 video
Xem 12 video của bài
- Mô tả tính năng ứng dụng - Xem ứng dụng demo - Gợi ý xây dựng các tính năng (40 phút)
- Phân tích tính năng và Thiết kế giao diện cơ bản cho ứng dụng (31 phút)
- Load câu hỏi lên chương trình và Kiểm tra đúng/sai với đáp án của người chơi (39 phút)
- Xử lý với kết quả đúng/sai của người chơi sẽ qua câu mới hoặc kết thúc - Load danh sách RadioButton câu hỏi lên chương trình (37 phút)
- Xử lý sự kiện chọn các RadioButton câu hỏi để hiển thị lại câu đã làm - Hiển thị hình gái đẹp sau mỗi câu trả lời đúng (46 phút)
- Sử dụng ToolTip để mô tả chú thích cho các Control và ứng dụng vào chương trình - Tối ưu lại code tránh việc khởi tạo nhiều đối tượng (30 phút)
- Tối ưu bộ nhớ của mảng đáp án người chơi - Gom nhóm thành 1 hàm chung hiển thị màu sắc đáp án người chơi chọn và đáp án đúng (39 phút)
- Xử lý nếu hình ảnh gái đẹp không load lên được thì chương trình vẫn chạy bình thường - Có thể chọn trực tiếp vào TextBox đáp án (36 phút)
- Tối ưu lại hiển thị hình ảnh gái đẹp không bị vỡ khung ảnh bằng cách Resize trực tiếp trên ảnh ban đầu hoặc tự động thông qua code (19 phút)
- Thiết kế nút New Game để bắt đầu chơi hoặc chơi lại từ đầu khi người chơi đã kết thúc Game (trả lời đúng hết hoặc trả lời sai 1 câu) (35 phút)
- Xử lý các lỗi phát sinh khi tạo nút nhấn New Game - Tiến hành tối ưu lại code toàn chương trình (35 phút)
- Thiết kế giao diện và hoàn tất ứng dụng (8 phút)
- Bài 7Bài Tập Phát Triển Lên Tiếp Tính Năng Từ Ứng Dụng Thực Tế: Game Show Thi Trắc Nghiệm (Tự Làm Trước Sẽ Sửa Sau)12 phút · 1 video
Xem nội dung video
- Mô tả bài tập với các chức năng yêu cầu - Gợi ý xây dựng
- Bài 8Bài Tập Rèn Luyện Tổng Quan Các Kiến Thức Đã Học: Phần Mềm Ứng Dụng Thực Tế Tính Tiền Bán Thẻ Cào Của Đại Lý (Tự Làm Trước Sẽ Sửa Sau)15 phút · 1 video
Xem nội dung video
- Mô tả bài tập với các chức năng yêu cầu - Gợi ý xây dựng
3Timer & ứng dụng diễn hoạt
Chương 7: Kiến Thức Về Control Timer Và Vận Dụng Xây Dựng Các Ứng Dụng Thực Tế10 bài · 53 giờ 22 phút
- Bài 1Giới Thiệu Về Chức Năng Của Control Timer Với Tầm Quan Trọng Và Ứng Dụng Thực Tế58 phút · 2 video
Xem 2 video của bài
- Mô tả chi tiết chức năng và vận dụng xây dựng ra các ứng dụng thực tế từ chức năng đó (Lý thuyết) (30 phút)
- Đi xem các ứng dụng thực tế vận dụng Control Timer sẽ xây dựng trong chương học này (28 phút)
- Bài 2Kiến Thức Về Control Timer Với Thuộc Tính - Phương Thức - Sự Kiện29 phút · 1 video
Xem nội dung video
- Kiến thức về Control Timer - Demo hiển thị thời gian từ đồng hồ máy tính lên ứng dụng
- Bài 3Vận Dụng Control Timer Tạo Ứng Dụng Hiển Thị Đồng Hồ Đo Thời Gian59 phút · 2 video
Xem 2 video của bài
- Hiển thị đồng hồ lên chương trình và xử lý định dạng giờ phút giây (29 phút)
- Xử lý các chức năng Play/Pause/Reset và hoàn tất giao diện ứng dụng (30 phút)
- Bài 4Vận Dụng Control Timer Và Kiến Thức Tọa Độ (Location) Tạo Ứng Dụng Diễn Hoạt Thông Tin Tác Giả41 phút · 1 video
Xem nội dung video
- Mô tả và xây dựng hoàn tất ứng dụng - Giao bài tập thử thách phát triển tiếp chức năng cho ứng dụng
- Bài 5Hiểu Đúng Bản Chất Của Control Timer - Lỗi Thường Gặp Và Những Lưu Ý Khi Sử Dụng Control Timer1 giờ 06 phút · 2 video
Xem 2 video của bài
- Hiểu đúng bản chất của Control Timer (30 phút)
- Lỗi thường gặp và những lưu ý khi sử dụng Control Timer (37 phút)
- Bài 6Ứng Dụng Thực Tế Với Control Timer: Nâng Cấp Game Show Thi Trắc Nghiệm8 giờ 39 phút · 21 video
Xem 21 video của bài
- Mô tả tính năng ứng dụng - Xem ứng dụng demo - Gợi ý xây dựng các tính năng (30 phút)
- Sao chép Project Game Show Trắc Nghiệm sang Project Nâng Cấp Game Show Trắc Nghiệm (10 phút)
- Xử lý hiển thị đồng hồ lên cho mỗi câu hỏi và đếm lùi về 0 với thời gian quy định cho mỗi câu hỏi (33 phút)
- Xử lý kết thúc game nếu hết thời gian mà vẫn chưa có đáp án cuối cùng từ người chơi (22 phút)
- Xử lý nếu người chơi trả lời sau khi đã hết thời gian thì không tính (vẫn bị hiện MessageBox xác nhận đáp án cuối cùng sau khi đã hết giờ nhưng chọn thì không tính) (25 phút)
- Tận dụng MessageBox tự tắt sau 1 khoảng thời gian của cộng đồng và tư duy để ráp nó vào xử lý vấn đề chủ động tắt MessageBox lựa chọn cuối cùng khi đã hết thời gian trả lời (hướng dẫn tư duy và tự làm) (15 phút)
- Chủ động tắt MessageBox lựa chọn cuối cùng khi đã hết thời gian trả lời bằng việc giả lập tự động gọi tới phím Enter xác nhận lựa chọn Yes (Sử dụng SendKeys trong lập trình C#) (31 phút)
- Nói qua về SendKeys trong lập trình C# với cách sử dụng và ứng dụng thực tế từ nó - Giao bài tập thử thách về SendKeys: Tạo bàn phím ảo windows (14 phút)
- Tư duy để có thể tạo ra MessageBox tự động tắt sau 1 khoảng thời gian quy định bằng cách vận dụng các kiến thức đã học từ đầu đến giờ (9 phút)
- Hoàn thành Project MessageBox tự động tắt sau 1 khoảng thời gian quy định - Giao thử thách: Đóng gói tất cả xử lý thành 1 class AutoClosingMessageBox (11 phút)
- Tạo class AutoClosingMessageBox và demo phương thức Show của MessageBox - Ôn tập lại các kiến thức về Hướng Đối Tượng (thuộc tính, phương thức, namepsace, tầm vực private - public) - Học kiến thức mới của C#: Tham số tùy biến (Auto Parameter) (30 phút)
- Nâng cấp phương thức Show có thể trả về - Cài đặt MessageBox tự tắt sau khoảng thời gian quy định và có thể liên tục hiển thị thời gian còn lại trước khi đóng lên Control bất kỳ trên Form - Ôn lại tính đóng gói trong lập trình hướng đối tượng (30 phút)
- Học kiến thức mới của C#: Tự động tạo properties đóng gói các thuộc tính (Auto Property) - Ôn lại kiến thức về static trong lập trình hướng đối tượng để khai báo thuộc tính/phương thức thuộc về lớp để có thể trực tiếp lớp truy xuất đến không cần thông qua đối tượng ứng dụng đa tình huống. (40 phút)
- Mô tả - Phân tích tính năng: "Hình ảnh gái chỉ hiện lên trong một khoảng thời gian quy định" (17 phút)
- Xử lý tính năng: "Hình ảnh gái chỉ hiện lên trong một khoảng thời gian quy định" theo cách 1: Tạo ra 1 Timer mới và xử lý (30 phút)
- Xử lý tính năng: "Hình ảnh gái chỉ hiện lên trong một khoảng thời gian quy định" theo cách 2: Tận dụng lại Timer cũ - Phân tích cả 2 cách về mặt tối ưu (Tốc Độ & Bộ Nhớ) qua đó đúc kết lời khuyên kinh nghiệm (28 phút)
- Xử lý tính năng: "Kết thúc game sẽ hiện ra tổng thời gian người chơi từ đầu đến giờ" theo cách 1: Tạo 1 Timer liên tục đếm thời gian và diễn hoạt lên chương trình (30 phút)
- Xử lý tính năng: "Kết thúc game sẽ hiện ra tổng thời gian người chơi từ đầu đến giờ" theo cách 2: Xử dụng lớp DateTime để tính khoảng cách giữa 2 thời gian - Phân tích 2 cách về mặt ứng dụng qua đó đúc kết lời khuyên kinh nghiệm (39 phút)
- Xử lý lỗi trước đó: Nếu không có hình gái thì bị mất đi danh sách câu hỏi RadioButton bên tay phải (23 phút)
- Xử lý lỗi phát sinh: Nếu không có hình gái thì đồng hồ cho mỗi câu hỏi mãi đứng yên sau câu đầu tiên - Xử lý hiện lại nút New Game sau khi Game Over (40 phút)
- Vấn đề thử thách tự xử lý: Nếu không có dữ liệu hình ảnh nút New Game thì làm sao người chơi vẫn có thể bắt đầu chơi được? (15 phút)
- Bài 7Ứng Dụng Thực Tế Với Control Timer: Làm Game Đua Xe Speed King (Lấy từ bài học của khóa Lập Trình Hướng Đối Tượng)3 giờ 40 phút · 5 video
Xem 5 video của bài
- Giới thiệu về Game - Thiết kế giao diện Game (đường đua - xe Player - xe Computer) - Kiến thức về tọa độ (Location) của đối tượng trên Form (45 phút)
- Tương tác chuột di chuyển đối tượng trên Form (Mouse Down - Mouse Move - Mouse Up) - Sử dụng Control Timer tạo chuyển động cho xe (45 phút)
- Kể chuyện 3 con heo (Nên nghe và suy ngẫm) - Phân tích xử lý việc va chạm giữa 2 xe bằng kiến thức tọa độ (Lý thuyết) (45 phút)
- Xử lý tính năng va chạm giữa xe Player và xe Computer - Cài đặt điểm số cho game (46 phút)
- Xử lý cho xe Player bắn ra đạn - Xử lý va chạm giữa đạn và xe Computer - Hoàn tất Game - Giao bài tập thử thách phát triển tiếp Game (39 phút)
- Bài 8Ứng Dụng Thực Tế Với Control Timer: Làm Game Flappy Bird (Lấy từ bài học của khóa Lập Trình Hướng Đối Tượng)2 giờ 23 phút · 4 video
Xem 4 video của bài
- Giới thiệu về Game - Chuẩn bị giao diện cho game (ống cống, hình nền, con chim) (30 phút)
- Hiện thực thiết kế giao diện cho Game lên Form (31 phút)
- Tạo chuyển động cho các ống cống trong Game và liên tục lặp lại thay đổi vị trí khoảng cách giữa 2 ống (ống trước ống sau - ống trên ống dưới) (41 phút)
- Xử lý va chạm giữa chim với ống cống - Hoàn tất Game - Giao bài tập thử thách phát triển tiếp Game (41 phút)
- Bài 9Ứng Dụng Thực Tế Với Control Timer: Phần Mềm Mô Phỏng Quá Trình Chạy Của Các Thuật Toán Sắp Xếp17 giờ 14 phút · 31 video
Xem 31 video của bài
- Giới thiệu phần mềm với tầm quan trọng ứng dụng thực tế và Phân tích các chức năng cụ thể - Các Bạn nắm thông tin và khuyến khích tự làm (35 phút)
- Phân tích hướng dẫn tự làm chức năng chính: Tạo diễn hoạt quá trình sắp xếp dãy số - Các Bạn xem gợi ý hướng dẫn và cố gắng tự làm (38 phút)
- Phân tích hướng dẫn tự làm các chức năng bổ sung và 1 số chức năng cải tiến thêm - Các Bạn xem gợi ý hướng dẫn và cố gắng tự làm (50 phút)
- Xây dựng chức năng chính: Tạo quá trình diễn hoạt thuật toán sắp xếp Interchange Sort - Hiện thực giai đoạn 2: Quá trình đổi chỗ 2 Button - Phân tích về mặt lý thuyết quá trình thực thi xử lý (28 phút)
- Xây dựng chức năng chính: Tạo quá trình diễn hoạt thuật toán sắp xếp Interchange Sort - Hiện thực giai đoạn 2: Quá trình đổi chỗ 2 Button - Hiện thực từ lý thuyết vào chương trình và hoàn tất chức năng - Giao bài tập thử thách tự làm (35 phút)
- Xây dựng các chức năng bổ sung: Nút nhấn Play/Pause quá trình diễn hoạt - Thay đổi tốc độ quá trình diễn hoạt - Tạo quá trình diễn hoạt như trên không dùng Timer mà dùng Thread.Sleep và lời khuyên lưu ý khi sử dụng (17 phút)
- Xây dựng chức năng chính: Tạo quá trình diễn hoạt thuật toán sắp xếp Interchange Sort - Hiện thực giai đoạn 1: Xác định các cặp phần tử cần so sánh - Bước 1: Tạo dãy số Button và các chỉ số index hiển thị lên Form dùng làm dữ liệu để diễn hoạt quá trình sắp xếp (46 phút)
- Xây dựng chức năng chính: Tạo quá trình diễn hoạt thuật toán sắp xếp Interchange Sort - Hiện thực giai đoạn 1: Xác định các cặp phần tử cần so sánh - Bước 2: Tạo quá trình diễn hoạt chọn lựa cặp phần tử theo ý tưởng thuật toán Interchange Sort - Hoàn tất giai đoạn 1 (35 phút)
- Xây dựng chức năng chính: Tạo quá trình diễn hoạt thuật toán sắp xếp Interchange Sort - Kết hợp giữa giai đoạn 1: Xác định các cặp phần tử cần so sánh và giai đoạn 2: Quá trình đổi chỗ 2 Button để hoàn tất chức năng (20 phút)
- Xây dựng chức năng chính: Chạy mô phỏng dòng code tương ứng với quá trình diễn hoạt - Phần 1: Phân tích chức năng và vấn đề gặp phải khi làm - Các Bạn xem và suy nghĩ cách giải quyết rồi cố gắng tự làm (46 phút)
- Xây dựng chức năng chính: Chạy mô phỏng dòng code tương ứng với quá trình diễn hoạt - Phần 2: Gợi ý hướng giải quyết cho vấn đề gặp phải - Các Bạn xem gợi ý rồi cố gắng tự làm nhé (21 phút)
- Xây dựng chức năng chính: Chạy mô phỏng dòng code tương ứng với quá trình diễn hoạt - Phần 3: Hiện thực thành công ra giải pháp (42 phút)
- Xây dựng chức năng chính: Chạy mô phỏng dòng code tương ứng với quá trình diễn hoạt - Phần 4: Xây dựng chế độ Debug từng bước và nhờ đó hoàn thiện chức năng chính: Chạy mô phỏng dòng code tương ứng với quá trình diễn hoạt (32 phút)
- Xây dựng hoàn tất chức năng bổ sung: Nút nhấn Play/Pause quá trình diễn hoạt - Thay đổi tốc độ quá trình diễn hoạt (24 phút)
- Xây dựng chức năng bổ sung: Người dùng chủ động nhập dữ liệu - Phần 1: Dữ liệu dãy số được khởi tạo ngẫu nhiên theo số lượng truyền vào - Ôn lại kiến thức về Random - Cách dùng TryParse thay cho TryCatch để kiểm tra kiểu dữ liệu hợp lệ (46 phút)
- Xây dựng chức năng bổ sung: Người dùng chủ động nhập dữ liệu - Phần 2: Dữ liệu dãy số được nhập vào từ bàn phím - Ôn lại kiến thức về xử lý chuỗi - Khái niệm về Collection và thao tác sử dụng với Collection: List trong lập trình C# (57 phút)
- Xây dựng chức năng bổ sung: Người dùng chọn lựa thuật toán sắp xếp và hướng sắp xếp sẽ hiển thị lên ý tưởng thuật toán và source code demo thuật toán - Ghi nhận lại hiện trạng dãy số thay đổi theo từng giai đoạn hoán vị - Phần 1: Phân tích tổng quan các chức năng và hoàn thành chức năng hiển thị tự động danh sách các RadioButton thuật toán sắp xếp có trong chương trình lên giao diện. (45 phút)
- Xây dựng chức năng bổ sung: Người dùng chọn lựa thuật toán sắp xếp và hướng sắp xếp sẽ hiển thị lên ý tưởng thuật toán và source code demo thuật toán - Ghi nhận lại hiện trạng dãy số thay đổi theo từng giai đoạn hoán vị - Phần 2: Xử lý sự kiện tương tác với danh sách các RadioButton thuật toán sắp xếp khi chọn vào sẽ hiển thị ý tưởng thuật toán tương ứng và source code demo thuật toán tương ứng với hướng sắp xếp. (32 phút)
- Xây dựng chức năng bổ sung: Người dùng chọn lựa thuật toán sắp xếp và hướng sắp xếp sẽ hiển thị lên ý tưởng thuật toán và source code demo thuật toán - Ghi nhận lại hiện trạng dãy số thay đổi theo từng giai đoạn hoán vị - Phần 3: Ghi nhận lại hiện trạng dãy số thay đổi theo từng giai đoạn hoán vị. Xây dựng hoàn tất chức năng bổ sung: Cho phép người dùng hủy bỏ quá trình sắp xếp hoặc hủy bỏ cả dãy số. (50 phút)
- Xây dựng chức năng cải tiến: Dòng text ghi nhận lại hiện trạng dãy số thay đổi theo từng giai đoạn hoán vị được tô đỏ những số ở vị trí xảy ra việc hoán vị để người dùng dễ dàng theo dõi sự thay đổi - Phần 1: Phân tích vấn đề và giải pháp xử lý - Tìm hiểu và thao tác với Control RichTextBox trong lập trình C# (26 phút)
- Xây dựng chức năng cải tiến: Dòng text ghi nhận lại hiện trạng dãy số thay đổi theo từng giai đoạn hoán vị được tô đỏ những số ở vị trí xảy ra việc hoán vị để người dùng dễ dàng theo dõi sự thay đổi - Phần 2: Tiến hành xây dựng và hoàn thành chức năng theo giải pháp đã đề ra. (35 phút)
- Xây dựng chức năng cải tiến: Cho phép tạo ra nhiều Button dãy số không bị giới hạn số lượng hoặc tùy theo số lượng nhất định mà thay đổi động kích cỡ Size của các Button được tạo ra (27 phút)
- Bài tập thử thách vận dụng kiến thức Control RichTextBox và Control Timer: Xây dựng ứng dụng đo tốc độ gõ máy - Mô tả ứng dụng và Gợi ý hướng dẫn. Các Bạn hãy cố gắng tự lực làm bài tập thử thách này nhé để kiểm chứng kiến thức Bạn học được từ đầu tới giờ. (17 phút)
- Xây dựng chức năng cho phép người dùng chọn lựa hướng sắp xếp tăng/giảm thì quá trình diễn hoạt diễn ra theo như vậy - Kinh nghiệm tối ưu hàm sắp xếp theo 2 tình huống tăng/giảm chỉ viết 1 lần (48 phút)
- Kiến thức về tham chiếu (ref & out) trong lập trình C# - Kiến thức về Generic (Collection & Generic) trong lập trình C# - Vận dụng xây dựng hàm hoán vị áp dụng với đa kiểu dữ liệu (49 phút)
- Tối ưu code toàn bộ chương trình (26 phút)
- Tối ưu quá trình thao tác xử lý với phần mềm ứng dụng: Phải có đủ dữ liệu bao gồm dữ liệu dãy số cần sắp xếp, lựa chọn thuật toán sắp xếp, hướng sắp xếp tăng/giảm đầy đủ hết tất cả dữ liệu thì mới cho phép bắt đầu quá trình diễn hoạt. (11 phút)
- Tối ưu quá trình thao tác xử lý với phần mềm ứng dụng: Xử lý nhấn phím Enter cho TextBox nhập dữ liệu dãy số là tự động thực hiện tạo dữ liệu - Xử lý khi hủy quá trình hoặc hủy bỏ dãy số là reset trạng thái của nút Play và xóa bỏ các dữ liệu hoán vị đã ghi trước đó. (10 phút)
- Tối ưu quá trình thao tác xử lý với phần mềm ứng dụng: Xử lý sự kiện trong 1 tình huống chỉ được chọn Play hoặc Debug và Xử lý cho phép người dùng có thể chạy luân phiên Play/Debug trong quá trình diễn hoạt thuật toán mà vẫn đảm bảo việc diễn hoạt không gặp vấn đề gì (49 phút)
- Tối ưu quá trình thao tác xử lý với phần mềm ứng dụng: Xử lý đang trong quá trình chạy thì người dùng không thể thay đổi lại hướng sắp xếp. (7 phút)
- Thiết kế giao diện hoàn tất phần mềm ứng dụng - Lời nhắn nhủ Anh gửi đến các Bạn (31 phút)
- Bài 10Ứng Dụng Thực Tế Với Control Timer: Làm Game Runaway Robot17 giờ 12 phút · 38 video
Xem 38 video của bài
- Giới thiệu Game và Phân tích các thành phần chức năng cụ thể - Phần 1: Xem qua Game thực tế và phân tích các thành phần chức năng sơ lược (29 phút)
- Giới thiệu Game và Phân tích các thành phần chức năng cụ thể - Phần 2: Phân tích các thành phần chức năng cụ thể (42 phút)
- Giới thiệu Game và Phân tích các thành phần chức năng cụ thể - Phần 3: Thống nhất xây dựng Game theo quy tắc Anh đưa ra - Clip 1: Quy tắc về Map Game (19 phút)
- Giới thiệu Game và Phân tích các thành phần chức năng cụ thể - Phần 3: Thống nhất xây dựng Game theo quy tắc Anh đưa ra - Clip 2: Quy tắc về chướng ngại vật, danh sách nước đi (41 phút)
- Hướng dẫn gợi ý xây dựng Game - Phần 1: Xây dựng map game và hiển thị Robot lên map (25 phút)
- Hướng dẫn gợi ý xây dựng Game - Phần 2: Hiển thị chướng ngại vật lên map (12 phút)
- Hướng dẫn gợi ý xây dựng Game - Phần 3: Hiển thị danh sách nước đi - Hoàn tất Phần 1: Thiết Kế Giao Diện (14 phút)
- Hướng dẫn gợi ý xây dựng Game - Phần 4: Xử lý tính năng người chơi có thể tương tác chọn nước đi cho Robot (15 phút)
- Hướng dẫn gợi ý xây dựng Game - Phần 5: Xử lý tính năng tạo diễn hoạt cho Robot di chuyển đúng theo các nước đi đã chọn và mỗi lần Robot đi sẽ hiển thị nước đi tương ứng trên danh sách các nước đi (26 phút)
- Hướng dẫn gợi ý xây dựng Game - Phần 6: Xử lý tính năng lưu lại đường đi của Robot trên map và kiểm tra tính thắng/thua của Game - Hoàn tất Phần 2: Xử Lý Tính Năng (16 phút)
- Hướng dẫn gợi ý xây dựng Game - Phần 7: Xử lý tính năng lưu lại level của người chơi để lần chơi sau có thể tiếp tục và người chơi có thể đi xuống các level thấp hơn chơi lại nhưng không được đi lên level cao hơn - Hoàn tất Phần 3: Xử Lý Ngoài Lề - Các Bạn cố gắng dựa theo sự phân tích và gợi ý ở trên cố gắng nỗ lực tự xây dựng Game. (23 phút)
- Xem qua sản phẩm thực tế Game Runaway Robot code C# để dựa theo đối chiếu trong quá trình tự làm - Khuyến khích các Bạn cố gắng tự nỗ lực xây dựng game rồi mới nên xem các video giải ở dưới để học hỏi thêm (38 phút)
- Xây dựng giao diện map game (mảng 2 chiều các Button) (44 phút)
- Xử lý canh chỉnh kích cỡ map vừa đủ trên form với mọi kích thước n - Hiển thị Robot lên map (34 phút)
- Xây dựng chức năng hiển thị các chướng ngại vật lên map - Phần 1: Phát sinh số lượng boom và hiển thị ngẫu nhiên vị trí các quả boom lên map trong đúng phạm vi những ô được phép hiển thị (25 phút)
- Xây dựng chức năng hiển thị các chướng ngại vật lên map - Phần 2: Xử lý điều kiện mỗi 1 vị trí chỉ hiển thị đúng 1 quả boom và đảm bảo tất cả boom đều được hiển thị (28 phút)
- Xây dựng chức năng hiển thị danh sách các nước đi - Phần 1: Phát sinh số lượng nước đi và hiển thị danh sách nước đi lên giao diện (45 phút)
- Xây dựng chức năng hiển thị danh sách các nước đi - Phần 2: Canh chỉnh kích thước danh sách các nước đi luôn vừa đủ trên giao diện và thể hiện nước đi tối thiểu có thể bắt đầu để đi (21 phút)
- Xây dựng chức năng xử lý cho phép người chơi tương tác chọn nước đi cho Robot - Phần 1: Hiển thị các nút điều khiển lên giao diện (mũi tên qua phải, mũi tên xuống dưới, nút nhấn delete, nút nhấn go, vòng lặp loop) (48 phút)
- Xây dựng chức năng xử lý cho phép người chơi tương tác chọn nước đi cho Robot - Phần 2: Xử lý cho phép người dùng tương tác chọn thêm/xóa các nước đi trên danh sách các nước đi và hiển thị nút Go khi đủ số nước đi quy định (21 phút)
- Xây dựng chức năng xử lý cho Robot đi theo danh sách nước đi đã quy định - Phần 1: Tạo diễn hoạt quá trình Robot di chuyển trên bản đồ theo các nước đi quy định (29 phút)
- Xây dựng chức năng xử lý cho Robot đi theo danh sách nước đi đã quy định - Phần 2: Hiển thị kết quả thắng khi Robot về đích hoặc thua khi đụng chướng ngại vật (22 phút)
- Xây dựng chức năng xử lý cho Robot đi theo danh sách nước đi đã quy định - Phần 3: Hiển thị nước đi tương ứng của Robot trong danh sách các nước đi để người chơi thấy rõ (25 phút)
- Xây dựng chức năng xử lý cho Robot đi theo danh sách nước đi đã quy định - Phần 4: Lưu lại các nước đi của Robot trên bản đồ để người chơi thấy rõ (16 phút)
- Xây dựng chức năng xử lý cho Robot đi theo danh sách nước đi đã quy định - Phần 5: Xử lý với kết quả thắng thì qua level mới, với kết quả thua thì chơi lại level cũ (28 phút)
- Kiến thức về xử lý tập tin văn bản - Phần 1: Giới thiệu tầm quan trọng ứng dụng của tập tin, Lý thuyết đọc/ghi tập tin, Thực hành ghi dữ liệu từ chương trình xuống tập tin và đọc lên lại chương trình (42 phút)
- Kiến thức về xử lý tập tin văn bản - Phần 2: Đọc hết dữ liệu trong tập tin khi không biết trước số lượng dòng cụ thể, Ghi chèn dữ liệu mới vào sau dữ liệu đã có sẵn trong tập tin (25 phút)
- Kiến thức về xử lý tập tin văn bản - Phần 3: Bản chất kiểu dữ liệu được lưu trong tập tin, Bóc tách dữ liệu trên 1 dòng của tập tin khi đọc vào chương trình, Sử dụng using để tự động đóng tập tin lại khi không dùng tới (29 phút)
- Xử lý tính năng lưu trữ lại level mới của người chơi mỗi khi chiến thắng và đọc dữ liệu level lên khi bắt đầu game để người chơi có thể tiếp tục chơi từ level trước đó đang đứng (28 phút)
- Xử lý tính năng không cho phép người chơi đi lên level cao hơn khi chưa vượt qua được level hiện tại mà chỉ có thể đi xuống các level thấp hơn (34 phút)
- Xử lý người chơi có thể quay xuống các level thấp hơn để chơi nhưng vẫn luôn nhớ được level hiện tại đang đứng để có thể quay trở lại chơi tiếp tục (18 phút)
- Khắc phục vấn đề nước đi cuối cùng của Robot khi thắng/thua không được cập nhật lại trên danh sách nước đi. (20 phút)
- Vấn đề lưu trữ level game trong tập tin có thể dẫn đến việc người chơi hack level (thay đổi giá trị level trong tập tin) và cách để đối phó xử lý tránh game bị hack (11 phút)
- Tối ưu việc người chơi tương tác với ô nhập level sao cho tiện dụng và Tối ưu code xử lý chọn nước đi viết thành 1 hàm duy nhất cho 2 xử lý qua phải, xuống dưới (30 phút)
- Tối ưu code xử lý tạo các nút điều khiển (right, down, delete, go) thành 1 hàm duy nhất - Tối ưu code xử lý cho Robot di chuyển và kiểm tra thắng/thua thành 1 hàm duy nhất (25 phút)
- Tối ưu code xử lý cho phép tương tác (Enabled) với các nút điều khiển (right, down, delete, go) - Tối ưu code hiển thị boom, Robot, vụ nổ bigbang thành 1 hàm duy nhất (14 phút)
- Tối ưu code xử lý tính năng lưu lại level xuống tập tin gom thành 1 hàm duy nhất là ghi file - Tối ưu code xử lý tính năng đọc level lên game gom thành 1 hàm duy nhất là đọc file - Tối ưu 2 hàm đọc/ghi file có thể áp dụng cho tất cả trường hợp (34 phút)
- Sửa lỗi cuối cùng của hàm đọc File và chính thức hoàn tất Game - Xem sản phẩm cuối cùng hoàn thiện - Lời khuyên gửi đến các Bạn - Bài tập thử thách cho các Bạn phát triển tiếp game (cố gắng làm nhé) (40 phút)
4Hiển thị & quản lý dữ liệu
Chương 8: Kiến Thức Về Control ListView5 bài · 28 giờ 11 phút
- Bài 1Chức Năng Và Ứng Dụng Thực Tế của Control ListView35 phút · 1 video
- Bài 2Các Thuộc Tính Quan Trọng Của Control ListView - Xây Dựng Ứng Dụng Hiển Thị Danh Sách Ca Sĩ4 giờ 38 phút · 11 video
Xem 11 video của bài
- Giới thiệu các thuộc tính quan trọng cần biết (30 phút)
- Tạo ListView danh sách ca sĩ thông qua cửa sổ Properties - Làm quen các thuộc tính Name, Columns, Item, SubItem, View, GridLine, FullRowSelect, AllowColumnReoder, MultiSelect (33 phút)
- Tạo ListView danh sách ca sĩ thông qua code - Phân tích 2 cách tạo trên (37 phút)
- Thuộc tính View - hiển thị hình ảnh các ca sĩ lên ListView nhờ Control ImageList và các chế độ hiển thị item trên ListView thông qua cửa sổ Properties (28 phút)
- Thuộc tính View - hiển thị hình ảnh các ca sĩ lên ListView thông qua code - Phân tích 2 cách tạo trên (36 phút)
- Thuộc tính Group - Tầm quan trọng ứng dụng thực tế - Thực hành gom nhóm các ca sĩ trên ListView theo 2 nhóm giới tính Nam/Nữ thông qua 2 cách Properties và Code (39 phút)
- Thuộc tính Group - Cách duyệt qua những item trong một group - Cách lấy giá trị từng cột trong 1 item thông qua 2 cách dùng chỉ số index và dùng key name - Kinh nghiệm khi lập trình (15 phút)
- Thuộc tính Sorting - Tầm quan trọng ứng dụng thực tế - Thực hành sắp xếp danh sách ca sĩ tăng dần/giảm dần theo cột đầu tiên: Họ Tên (20 phút)
- Thuộc tính Checkboxes - Tầm quan trọng ứng dụng thực tế - Thực hành xuất thông tin các ca sĩ đã được check - Xây dựng nút Check/Bỏ Check tất cả ca sĩ (24 phút)
- Thuộc tính HideSelection - Tầm quan trọng ứng dụng thực tế - Demo trên ListView cho thấy rõ (5 phút)
- Thuộc tính LabelEdit - Tầm quan trọng ứng dụng thực tế - Demo trên ListView cho thấy rõ (12 phút)
- Bài 3Các Sự Kiện và Phương Thức Quan Trọng Của Control ListView2 giờ 38 phút · 5 video
Xem 5 video của bài
- Giới thiệu tổng quan qua các sự kiện và phương thức quan trọng cần nắm được của ListView - Chức năng ứng dụng thực tế của từng cái (18 phút)
- Demo thực tế Sự kiện Click, MouseDown, SelectedIndexChanged của Control ListView - Phương thức Thêm, Xóa, Lấy Thông Tin Item Được Chọn, Lấy Thông Tin Các Cột Của Item Được Chọn trên ListView (41 phút)
- Demo thực tế sự kiện AfterLabelEdit và BeforeLabelEdit của Control ListView - Tầm quan trọng và ứng dụng thực tế (30 phút)
- Demo thực tế sự kiện ColumnClick, DoubleClick, ItemCheck/ItemChecked của Control ListView - Tầm quan trọng và ứng dụng thực tế (37 phút)
- Demo thực tế sự kiện ItemMouseHover với tầm quan trọng ứng dụng thực tế - Nói thêm những kiến thức nâng cao về sự kiện MouseDown và demo thực tế (31 phút)
- Bài 4Hoàn Chỉnh Ứng Dụng Quản Lý Danh Sách Ca Sĩ17 giờ 44 phút · 37 video
Xem 37 video của bài
- Xem ứng dụng thực tế đã hoàn chỉnh: Xem các tính năng Thêm/Xóa/Sửa ca sĩ trong danh sách và gợi ý cố gắng tự làm (36 phút)
- Xem ứng dụng thực tế đã hoàn chỉnh: Xem các tính năng sắp xếp/tìm kiếm/chọn ca sĩ yêu thích/lọc nhóm và gợi ý cố gắng tự làm (29 phút)
- Xem ứng dụng thực tế đã hoàn chỉnh: Tổng kết các tính năng và Lời chia sẻ đến với các Bạn (16 phút)
- Tính năng thêm ca sĩ mới vào danh sách - Phân tích chức năng và thiết kế giao diện (21 phút)
- Tính năng thêm ca sĩ mới vào danh sách - Xử lý thêm thông tin ca sĩ vào ListView và lưu trữ trong List - Xây dựng chức năng load danh sách ca sĩ từ List - Lưu ý về mối tương quan giữa Form và Class (33 phút)
- Tính năng thêm ca sĩ mới vào danh sách - Xử lý kiểm tra thông tin dữ liệu ca sĩ phải hợp lệ thì mới được thêm - Ôn lại kiến thức về Control ErrorProvider (20 phút)
- Làm quen với Control DateTimePicker trong lập trình C# với các thuộc tính, sự kiện và phương thức thường gặp (23 phút)
- Tính năng thêm ca sĩ mới vào danh sách - Ứng dụng Control DateTimePicker để nhập thông tin ngày sinh - Ràng buộc dữ liệu phải nhập hợp lệ thông qua sự kiện Validating của TextBox (27 phút)
- Tính năng xóa ca sĩ trong danh sách - Xử lý hoàn tất chức năng xóa - Áp dụng cho cả trường hợp xóa nhiều dòng được chọn trên ListView (29 phút)
- Tính năng xóa ca sĩ trong danh sách - Xây dựng chức năng lựa chọn có muốn đồng bộ danh sách dữ liệu ca sĩ xóa trên ListView với danh sách dữ liệu ca sĩ được lưu trữ trong List (21 phút)
- Tính năng sửa thông tin ca sĩ trong danh sách - Bước 1: Xử lý chọn 1 ca sĩ trên ListView thì thông tin ca sĩ đó được hiển thị lên GroupBox Thông Tin Ca Sĩ (21 phút)
- Tính năng sửa thông tin ca sĩ trong danh sách - Bước 2: Xử lý nhấn nút cập nhật thì các thông tin trên GroupBox Thông Tin Ca Sĩ được cập nhật xuống ca sĩ tương ứng ở trên ListView (13 phút)
- Tính năng sửa thông tin ca sĩ trong danh sách - Bước 3: Xử lý cập nhật không chỉ trên ListView mà cập nhật cho cả thông tin ca sĩ được lưu trữ trong List (22 phút)
- Tính năng sắp xếp danh sách ca sĩ trên ListView tăng dần/giảm dần theo ngày sinh: Tầm quan trọng ứng dụng thực tế - Phân tích tính năng (33 phút)
- Tính năng sắp xếp danh sách ca sĩ trên ListView tăng dần/giảm dần theo ngày sinh: Xây dựng hoàn tất tính năng theo những gì đã phân tích (38 phút)
- Tính năng sắp xếp danh sách ca sĩ trên ListView tăng dần/giảm dần theo ngày sinh: Cách 2: Sắp xếp trực tiếp trên ListView (Part 1) (41 phút)
- Tính năng sắp xếp danh sách ca sĩ trên ListView tăng dần/giảm dần theo ngày sinh: Cách 2: Sắp xếp trực tiếp trên ListView (Part 2) (26 phút)
- Tính năng sắp xếp danh sách ca sĩ trên ListView tăng dần/giảm dần theo ngày sinh: Đo thời gian sắp xếp của Cách 1 và Cách 2 - Tối ưu lại Cách 2 (39 phút)
- Tính năng sắp xếp danh sách ca sĩ trên ListView tăng dần/giảm dần theo ngày sinh: Tối ưu thêm Cách 2 - Rút ra kết luận cuối cùng - Tổng kết (36 phút)
- Tính năng tìm kiếm ca sĩ theo nghệ danh: Phân tích và hoàn tất tính năng cơ bản - Nâng cấp tính năng chuẩn hóa dữ liệu người dùng nhập vào (42 phút)
- Tính năng tìm kiếm ca sĩ theo nghệ danh: Nâng cấp tính năng tìm kiếm bằng việc cài đặt AutoComplete cho TextBox tìm kiếm - Bài tập thử thách ôn lại bài cũ (45 phút)
- Tính năng tìm kiếm ca sĩ theo nghệ danh: Cách 2: Tìm kiếm trên Collection List - Đo thời gian giữa 2 cách và kết luận - Tổng kết tính năng (28 phút)
- Tính năng chọn ca sĩ yêu thích (38 phút)
- Tính năng lọc danh sách ca sĩ: Phần 1: Ôn lại tính năng lọc group trên ListView và tiến hành lọc danh sách ca sĩ theo giới tính Nam/Nữ (29 phút)
- Tính năng lọc danh sách ca sĩ: Phần 2: Lọc danh sách ca sĩ theo năm sinh, tháng sinh (33 phút)
- Tính năng lọc danh sách ca sĩ: Phần 3: Lọc tự động theo năm sinh: Sinh năm nào thì có group tương ứng chứ không phải tạo sẵn chỉ 4 group 6x, 7x, 8x, 9x (26 phút)
- Tính năng lọc danh sách ca sĩ: Phần 4: Lọc tự động theo giới tính: Giới tính nào thì có group tương ứng chứ không phải tạo sẵn chỉ 2 group Nam/Nữ (23 phút)
- Tính năng lọc danh sách ca sĩ: Phần 5: Lời khuyên lưu ý về việc tạo group tự động - Tổng kết tính năng (31 phút)
- Tổng kết ứng dụng: Tối ưu hóa ứng dụng (Part 1) (27 phút)
- Tổng kết ứng dụng: Tối ưu hóa ứng dụng (Part 2) (25 phút)
- Tổng kết ứng dụng: Tối ưu hóa ứng dụng (Part 3) (31 phút)
- Tổng kết ứng dụng: Tối ưu hóa ứng dụng (Part 4) (24 phút)
- Tổng kết ứng dụng: Tối ưu hóa ứng dụng (Part 5) (40 phút)
- Tổng kết ứng dụng: Tối ưu hóa ứng dụng (Part 6) (29 phút)
- Thiết kế giao diện hình ảnh cho ứng dụng: Phần 1: Tầm quan trọng của giao diện hình ảnh và Chuẩn bị dữ liệu hình ảnh phù hợp (15 phút)
- Thiết kế giao diện hình ảnh cho ứng dụng: Phần 2: Thiết kế hình ảnh và Canh chỉnh giao diện cho ứng dụng (37 phút)
- Thiết kế giao diện hình ảnh cho ứng dụng: Phần 3: Tạo giao diện file chạy phần mềm và Tổng kết ứng dụng (17 phút)
- Bài 5Nâng Cấp Ứng Dụng Quản Lý Danh Sách Ca Sĩ2 giờ 40 phút · 6 video
Xem 6 video của bài
- Mô tả giới thiệu các tính năng nâng cấp - Gợi ý hướng dẫn cố gắng tự làm (43 phút)
- Sửa lỗi từ ứng dụng trước đó: Sửa lỗi tính năng thêm ca sĩ vào khi group đang lọc nhóm - Phần 1: Sửa lỗi khi thêm vào khi group đang lọc nhóm theo giới tính - Cảnh báo các lỗi nguy cơ tiềm ẩn và khắc phục (35 phút)
- Sửa lỗi từ ứng dụng trước đó: Sửa lỗi tính năng thêm ca sĩ vào khi group đang lọc nhóm - Phần 2: Sửa lỗi khi thêm vào khi group đang lọc nhóm theo năm sinh, tháng sinh (12 phút)
- Sửa lỗi từ ứng dụng trước đó: Sửa lỗi tính năng thêm ca sĩ vào khi group đang lọc nhóm - Phần 3: Tổng kết (11 phút)
- Sửa lỗi từ ứng dụng trước đó: Sửa lỗi tính năng sửa ca sĩ khi group đang lọc nhóm - Phần 1: Hoàn tất tính năng (39 phút)
- Sửa lỗi từ ứng dụng trước đó: Sửa lỗi tính năng sửa ca sĩ khi group đang lọc nhóm - Phần 2: Cảnh báo cho những Bạn lười làm cách chộp giật (19 phút)
Chương 9: Kiến Thức Về Control DataGridView5 bài · 26 giờ 01 phút
- Bài 1Giới thiệu Control DataGridView27 phút · 1 video
Xem nội dung video
- Chức năng và ứng dụng thực tế của Control DataGridView
- Bài 2Tìm hiểu Thuộc tính - Sự kiện - Phương thức của Control DataGridView thông qua ứng dụng Quản Lý Học Sinh12 giờ 30 phút · 21 video
Xem 21 video của bài
- Thêm dữ liệu lên DataGridView (49 phút)
- Giới thiệu qua các thuộc tính của Control DataGridView (36 phút)
- Giới thiệu qua các sự kiện của Control DataGridView - Tương tác với dữ liệu trên DataGridView qua tính năng: Click chọn 1 ô trên DataGridView dữ liệu dòng được chọn sẽ hiển thị lên các ô TextBox (59 phút)
- Xây dựng chức năng Load danh sách dữ liệu từ List Học Sinh lên DataGridView - Xây dựng chức năng Thêm mới 1 học sinh vào List Học Sinh đồng thời hiển thị lên DataGridView theo cách cơ bản thông qua các ô TextBox nhập liệu bên ngoài (56 phút)
- Xây dựng chức năng Xóa các học sinh được chọn trên DataGridView (có thể chọn nhiều học sinh cần xóa và xóa hết) (1 giờ 20 phút)
- Gợi ý xây dựng chức năng Sửa thông tin của 1 học sinh bất kỳ chọn trên DataGridView (29 phút)
- Xây dựng chức năng Sửa thông tin của 1 học sinh bất kỳ chọn trên DataGridView - Giao bài tập thử thách tối ưu ứng dụng thông qua việc phát sinh tự động các cặp Label - TextBox (Thông tin của 1 học sinh) ứng với các cột có trên DataGridView (1 giờ 07 phút)
- Giải quyết bài tập thử thách đã đặt ra ở video trước đó (1 phút)
- Gợi ý thử thách xây dựng lại 3 chức năng Thêm - Xóa - Sửa bằng cách tương tác trực tiếp trên DataGridView mà không cần thông qua TextBox - Button bên ngoài (17 phút)
- Xây dựng chức năng Thêm mới 1 học sinh vào List Học Sinh bằng cách thêm trực tiếp trên DataGridView. Giao 3 vấn đề thử thách tối ưu chương trình đến các Bạn. (2 phút)
- Giải quyết vấn đề thử thách 1: Tối ưu việc xét duyệt kiểm tra đã nhập đầy đủ thông tin sau mỗi lần nhập xong dữ liệu cho 1 ô không cần phải chạy vòng lặp duyệt qua hết tất cả các ô của học sinh đó mà chỉ cần 1 bước kiểm tra duy nhất (53 phút)
- Gặp lỗi phát sinh khi giải quyết vấn đề thử thách 1 (37 phút)
- Đưa ra các phương án khắc phục lỗi phát sinh khi giải quyết vấn đề thử thách 1 - Chọn phương án mỗi lần chỉ được nhập trực tiếp trên DataGridView thông tin của 1 học sinh và làm bằng cách chủ động tạo ra và quản lý dòng được thêm vào (1 phút)
- Giải quyết vấn đề mỗi lần chỉ được nhập trực tiếp trên DataGridView thông tin của 1 học sinh đã làm ở video clip trước theo cách không cần chủ động tạo ra và quản lý dòng mới mà vẫn sẽ dùng chính thuộc tính AllowUserToAddRow có sẵn của DataGridView chỉ là canh khi nào bật/tắt nó cho hợp lý (53 phút)
- Thử thách bản thân quay lại vấn đề lỗi phát sinh ban đầu khi giải quyết vấn đề thử thách 1: Xử lý cho phép người dùng có thể nhập trực tiếp trên DataGridView thông tin của nhiều học sinh 1 lúc theo thứ tự bất kỳ và kiểm tra tính hợp lệ của dữ liệu (đủ dữ liệu và mã số không được trùng) sau đó thêm vào List Học Sinh (1 phút)
- Giải quyết vấn đề thử thách 2 và 3: Dữ liệu thông tin học sinh nhập vào trong từng ô phải xét tính hợp lệ (không được bỏ trống - nếu là cột mã số thì mã số đó không được trùng với những mã số hiện đang có) nếu không hợp lệ thì không cho đi ra nhập ô khác mà phải nhập đến khi nào hợp lệ thì mới thôi. Nếu mã số không hợp lệ thì bôi đen dữ liệu đang có để người dùng có thể xóa nhanh chóng. Qua đó học cách tương tác với sự kiện CellValidating của control DataGridView (1 phút)
- Xây dựng chức năng Sửa thông tin của 1 học sinh đang có trên DataGridView bằng cách sửa trực tiếp trên DataGridView và cập nhật lại thông tin mới của học sinh đó trong List Học Sinh. Sửa 1 lỗi có nguy cơ xảy ra trong chức năng Thêm đã làm trước đó (2 phút)
- Xây dựng chức năng Xóa các học sinh được chọn trên DataGridView (có thể chọn nhiều học sinh cần xóa và xóa hết) bằng cách nhấn phím Delete trên bàn phím (46 phút)
- Xây dựng chức năng Tìm Kiếm thông tin của 1 học sinh trên DataGridView. Thông tin tìm kiếm người dùng có thể chọn lựa 1 trong số các thuộc tính của học sinh đó (Tìm kiếm theo Mã Số hay Họ Tên hay Lớp) (1 phút)
- Xây dựng chức năng Sắp Xếp danh sách học sinh trên DataGridView theo cột bất kỳ. Giao bài tập thử thách tình huống sắp xếp (1 giờ 22 phút)
- Xây dựng chức năng phân trang dữ liệu trên DataGridView (ý nghĩa của việc tại sao phải phân trang? phân tích lý thuyết và tiến hành làm). Học cách sử dụng Control NumericUpDown. Giao bài tập thử thách yêu cầu bổ sung (1 giờ 16 phút)
- Bài 3Data Binding trong C# và vận dụng vào ứng dụng Quản Lý Học Sinh5 giờ 18 phút · 10 video
Xem 10 video của bài
- Giới thiệu về Data Binding (Khái niệm, Lợi ích, Phân loại) (21 phút)
- Thực hành làm quen với Data Binding loại đơn giản (17 phút)
- Thực hành làm quen với Data Binding loại phức tạp - Load danh sách học sinh từ nguồn dữ liệu Collection List lên DataGridView và tiến hành các chức năng Thêm - Xoá - Sửa - Sắp Xếp bằng cách dùng Data Binding. (44 phút)
- Xử lý tính năng sắp xếp theo tình huống nếu không cho sắp xếp trực tiếp trên DataGridView - Xây dựng tính năng chọn 1 dòng trên DataGridView thì dữ liệu tự động hiển thị vào các ô TextBox (Mã số, Họ tên, Lớp) tương ứng (16 phút)
- Đo tốc độ load dữ liệu từ nguồn dữ liệu danh sách học sinh so sánh giữa cách làm truyền thống và cách dùng Data Binding từ đó rút ra kết luận (14 phút)
- Gắn kết nguồn dữ liệu danh sách học sinh với nhiều Control hiển thị trong 1 lần (DataGridView, ComboBox, ListBox, TextBox) và sự đồng bộ giữa các Control (10 phút)
- Cải tiến của Data Binding bằng cách dùng Binding Source làm trung gian trong việc gắn kết với dữ liệu nguồn (32 phút)
- Cách để hiển thị tập dữ liệu danh sách nguồn lên đối tượng control đơn giản và duyệt qua từng dòng record - Làm quen với các thuộc tính, phương thức hỗ trợ xử lý của Binding Source: MoveNext, MovePrevious, MoveLast, MoveFrist, Position, AddNew, EndEdit, RemoveCurrent (1 giờ 09 phút)
- Sử dụng Binding Navigator có sẵn để tương tác thuận tiện hơn với các record thay vì tự xây dựng (22 phút)
- Các phương thức quan trọng hỗ trợ xử lý dữ liệu mà Binding Source cung cấp tiêu biểu: Sort (sắp xếp), Filter (lọc dữ liệu), Find (tìm kiếm). Kết thúc phần Data Binding và lời chia sẻ sau cùng (1 giờ 15 phút)
- Bài 4Giải quyết các bài tập thử thách đã giao trước đó (Tính năng sắp xếp nâng cao với nhiều tiêu chí lồng ghép nhau và Tính năng cho phép người dùng quyết định số lượng học sinh trên mỗi trang chứ không cần gán sẵn)3 giờ 04 phút · 4 video
Xem 4 video của bài
- [Thử thách] Làm tính năng sắp xếp nâng cao đã giao trước đó - (Phần 1) Phân tích tính năng (56 phút)
- [Thử thách] Làm tính năng sắp xếp nâng cao đã giao trước đó - (Phần 2) Bóc tách dữ liệu từ chuỗi sắp xếp để tạo thành bảng thống kê cụ thể sau đó đi kiểm tra tính hợp lệ của chuỗi sắp xếp (56 phút)
- [Thử thách] Làm tính năng sắp xếp nâng cao đã giao trước đó - (Phần 3) Tiến hành sắp xếp danh sách trên DataGridView theo đúng tiêu chí của bảng sắp xếp (40 phút)
- [Thử thách] Làm tính năng phân trang nâng cao đã giao trước đó - Cho phép người dùng quyết định số học sinh hiển thị trên 1 trang là bao nhiêu từ đó cập nhật lại số lượng trang và danh sách tương ứng (32 phút)
- Bài 5Các kiểu dữ liệu cột trên DataGridView hỗ trợ sẵn và Cách sử dụng (TextBox, ComboBox, Image, Link, Button, CheckBox)4 giờ 43 phút · 5 video
Xem 5 video của bài
- Cột có kiểu dữ liệu là CheckBox (1 giờ 46 phút)
- Cột có kiểu dữ liệu là ComboBox (59 phút)
- Cột có kiểu dữ liệu là Button (18 phút)
- Cột có kiểu dữ liệu là Link (52 phút)
- Cột có kiểu dữ liệu là Image - Tổng kết chia sẻ sau cùng (47 phút)
Chương 10: Tạo và truyền dữ liệu giữa các Form với nhau - TabControl Trong Lập Trình C# và Ứng Dụng1 bài · 8 giờ 27 phút
- Bài 1Tạo và truyền dữ liệu giữa các Form với nhau8 giờ 27 phút · 7 video
Xem 7 video của bài
- Tạo ra các Form con (1 giờ 22 phút)
- [Truyền dữ liệu giữa các Form con] Phần 1: Lý thuyết tại sao phải truyền dữ liệu giữa các Form - 2 cơ chế truyền dữ liệu giữa các Form (truyền 1 chiều, truyền 2 chiều) - 4 giải pháp để truyền dữ liệu giữa các Form (Contructor, Properties, Delegate, Static) (26 phút)
- [Truyền dữ liệu giữa các Form con] Phần 2: Demo truyền dữ liệu giữa các Form con với cách dùng Contructor, Properties, Static - Giao bài tập thực tế vận dụng (1 giờ 26 phút)
- [Truyền dữ liệu giữa các Form con] Phần 3: Giải bài tập vận dụng thực tế truyền dữ liệu giữa các Form để xem thông tin chi tiết của 1 học sinh và có thể cập nhật lại, có thể thêm 1 học sinh mới vào danh sách (1 giờ 35 phút)
- [TabControl trong C# và ứng dụng] - Phần 1: Lý thuyết: Công dụng của TabControl - Đi xem thực tế các phần mềm ứng dụng sử dụng TabControl - Tìm hiểu thuộc tính, sự kiện, phương thức của TabControl (57 phút)
- [TabControl trong C# và ứng dụng] - Phần 2: Thực hành: Thêm, Xóa, Chuyển TabPage (1 giờ 35 phút)
- [TabControl trong C# và ứng dụng] - Phần 3: Mẹo ứng dụng TabControl thay cho việc tạo mới các Form và không cần phải truyền dữ liệu giữa các Form (1 giờ 09 phút)
Chương 11: Control thuộc nhóm Menus & Toolbars: MenuStrip, ContextMenuStrip, ToolStrip, StatusStrip2 bài · 8 giờ 03 phút
- Bài 1Control MenuStrip5 giờ 25 phút · 5 video
Xem 5 video của bài
- Giới thiệu về control với tầm quan trọng ứng dụng thực tế - Kéo thả tạo control trên form thông qua cửa sổ Properties hoặc chỉnh sửa trực tiếp trên giao diện (1 giờ 01 phút)
- Làm quen với các thuộc tính thông dụng - Xem code được sinh ra khi tương tác tạo Menu trên giao diện (57 phút)
- Tìm hiểu các sự kiện của control MenuStrip - Xử lý sự kiện thông dụng nhất khi người dùng Click chọn vào chức năng cụ thể (33 phút)
- Tầm quan trọng và ứng dụng thực tế của Menu động - Demo cách tạo và xử lý trên Menu động đọc dữ liệu từ file txt (2 giờ 03 phút)
- Tạo Menu động (Phần 2) (49 phút)
- Bài 2Control ContextMenuStrip2 giờ 39 phút · 2 video
Xem 2 video của bài
- Giới thiệu (1 giờ 04 phút)
- Bài tập vận dụng (1 giờ 38 phút)
5Lập trình game trên WinForm
Chương 12: Lập Trình Game Trên Winform1 bài · 4 giờ 36 phút
- Bài 1Game Đánh Cờ Caro 2 Người4 giờ 36 phút · 3 video
Xem 3 video của bài
- Game Caro CSharp Winform - Part 1 (1 giờ 45 phút)
- Game Caro CSharp Winform - Part 2 (1 giờ 29 phút)
- Game Caro CSharp Winform - Part 3 (1 giờ 23 phút)
Học thử miễn phí
Học thử trọn 4 chương đầu (khoảng 28 giờ video) trích từ khóa học chính thức, trong đó có cả project “Game Đuổi hình bắt chữ” để bạn thấy cách thầy hướng dẫn từng bước.
Sản phẩm học viên làm trong khóa
▶Phần Mềm Quản Lý Quán Karaoke - đệ tử Từ Gia Lộc - khóa Lập Trình Ứng Dụng C#
▶Phần Mềm Gửi Tin Nhắn SMS Marketing - học viên Lâm Đình Duy - khóa học Lập Trình C#
▶Game Đuổi Hình Bắt Chữ - học viên Phan Duy Hùng - khóa Lập Trình Ứng Dụng C#
▶Game Ai Là Triệu Phú - học viên Lê Kim Phòng - khóa Lập Trình Ứng Dụng C#
▶Game Đua Ngựa Version WinForm
▶Game Runaway Robot - học viên Đoàn Đình Minh - khóa Lập Trình Ứng Dụng C#
▶Phần Mềm Quản Lý Ca Sĩ - học viên Đoàn Đình Minh - khóa Lập Trình Ứng Dụng C#
▶Tổng Hợp Các Sản Phẩm Trong Khóa Lập Trình Ứng Dụng C# của học viên Đoàn Đình Minh (Part 1)
▶Tổng Hợp Các Sản Phẩm Trong Khóa Lập Trình Ứng Dụng C# của học viên Đoàn Đình Minh (Part 2)
▶Tổng Hợp Các Sản Phẩm Trong Khóa Lập Trình Ứng Dụng C# của học viên Đoàn Đình Minh (Part 3)Hình thức học
Lộ trình học
Bạn có thể đăng ký từng khóa theo nhu cầu, hoặc học trọn cả 4 khóa để trải nghiệm cả hai mảng trước khi quyết định đi sâu vào một lĩnh vực. Thầy sẽ tư vấn lộ trình phù hợp với mục tiêu và quỹ thời gian của bạn.
Về giảng viên
Khóa học do thầy Nguyễn Việt Nam Sơn trực tiếp biên soạn và giảng dạy. Video dưới đây là phần thầy giới thiệu về bản thân, về hành trình đào tạo lập trình và những thành quả của học viên.
Học viên nói gì?
Hơn 1.000 bạn đã học các khóa lập trình của thầy – phần lớn là sinh viên CNTT các trường đại học trên cả nước và du học sinh. Có bạn lấy lại toàn bộ kiến thức đã hổng và bắt kịp trường học, có bạn vào làm ở các công ty phần mềm lớn ngay khi chưa ra trường, có bạn tự lập nhóm khởi nghiệp.
Xem câu chuyện, ảnh đánh giá và sản phẩm của học viên →
Các khóa học của thầy
Học phí và các ưu đãi hiện hành không đăng công khai trên trang. Bạn vui lòng nhắn trực tiếp cho thầy Nguyễn Việt Nam Sơn để được tư vấn chi tiết, nhận tài khoản học thử và lộ trình phù hợp.
Nhận xét
Đăng nhận xét