+ Kỹ thuật lập trình hướng đối tượng với C#.NET + Các cấu trúc dữ liệu cơ bản và các cấu trúc dữ liệu tổng quát nâng cao.+ Các kỹ thuật và phương pháp phát triển ứng dụng trên Windows Fo
Trang 1HỌC VIỆN KỸ THUẬT QUÂN SỰ
KHOA CÔNG NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN
NGÔN NGỮ LẬP TRÌNH 2 (DotNet)
1 Thông tin về giáo viên
TT Họ tên giáo viên Học hàm Học vị Đơn vị công tác (Bộ môn)
Thời gian, địa điểm làm việc: Bộ môn Công nghệ phần mềm, khoa Công nghệThông tin
Địa chỉ liên hệ: Bộ môn Công nghệ phần mềm, Khoa Công nghệ Thông tin,Học viện Kỹ thuật Quân sự, 236 Hoàng Quốc Việt, Từ Liêm, Hà Nội
Điện thoại, email: 0975 639 757, anhpv@mta.edu.vn
Các hướng nghiên cứu chính: Hệ quản trị cơ sở dữ liệu, Xử lý ảnh, Tính toántiến hóa
2 Thông tin chung về học phần
- Tên học phần: Ngôn ngữ lập trình 2
- Mã học phần: 77CX
- Số tín chỉ: 2
- Học phần (bắt buộc hay lựa chọn):
- Các học phần tiên quyết: Lập trình cơ bản, Lập trình hướng đối tượng
- Các yêu cầu đối với học phần (nếu có):
- Giờ tín chỉ đối với các hoạt động:
Nghe giảng lý thuyết: 30
Trang 2- Kỹ năng: Sử dụng thành thạo bộ IDE (Integrated Development
Environment) phát triển ứng dụng Windows Form và ứng dụng CSDL
trên bộ Visual Studio Net
- Thái độ, chuyên cần: Lên lớp đầy đủ và chuẩn bị cho giờ lên lớp theo yêucầu của giáo viên
4 Tóm tắt nội dung học phần (khoảng 150 từ)
- Học phần cung cấp cho sinh viên các kiến thức sau:
+ Công nghệ lập trình trên bộ Visual Studio.Net
+ Xây dựng ứng dụng với Console
+ Kỹ thuật lập trình hướng đối tượng với C#.NET
+ Các cấu trúc dữ liệu cơ bản và các cấu trúc dữ liệu tổng quát nâng cao.+ Các kỹ thuật và phương pháp phát triển ứng dụng trên Windows Form
Giáo trình, Tài liệu tham khảo (Ghi TT của TL ở mục 6)
Ghi chú
Chương 1 Các khái niệm cơ bản 3 [1,4]
1 Các khái niệm cơ bản
- Giới thiệu Microsoft.Net-Tính năng của bộ VS.NET-Không gian tên (namespace)-Cấu trúc của chương trình C#
-Biên dịch và thực thi chương trình-Kiểu dữ liệu, từ khoá, định danh, biến, hằng…
-Chuyển đổi giữa các kiểu dữ liệu-Nhập/ xuất dữ liệu
-Các toán tử-Các cấu trúc điều khiển-Chú thích
Trang 32 Thao tác dữ liệu
-Mảng, xâu ký tự, ngày giờ
-Kiểu liệt kê (enum)-Kiểu cấu trúc (struct)
Chương 2 Lập trình hướng đối tượng trong
C#
-Định nghĩa lớp-Khai báo lớp-Các từ khóa định nghĩa truy cập
-Khai báo và sử dụng đối tượng
-Từ khóa this
-Phương thức và phạm vi truy cập-Hàm tạo (constructor) và hàm hủy (destructor)
-Nạp chồng phương thức-Ý nghĩa truyền tham số cho phương thức với các từ khóa ref, out và params
-Cơ chế ủy quyền (Delegates) và sựkiện Events
-Phương thức vô danh (Anonymousmethod)
-Giới thiệu trường dữ liệu-Đóng gói dữ liệu với thuộc tính (property)
-Thuộc tính tĩnh-Sử dụng đối tượng như mảng (indexer)
-Ý nghĩa của nạp chồng toán tử-Danh sách các toán tử có thể nạp chồng trong C#
-Cú pháp nạp chồng toán tử
Trang 4-Chi tiết về nạp chồng toán tử: toán
tử một ngôi, toán tử 2 ngôi, định nghĩa toán tử chuyển kiểu
-Ý nghĩa của kế thừa-Khai báo kế thừa-Gọi Constructor của lớp cơ sở-Nghiêm cấm kế thừa (từ khóa sealed)
-Gọi lớp cơ sở (từ khóa base)-Ghi đè (từ khóa virtual và override)
-Chuyển đổi kiểu dữ liệu từ lớp dẫnxuất thành lớp cơ sở, tính đa hình
6 Lớp trừu tượng và giao diện
-Lớp trừu tượng (abstract class)-Giao diện (Interface)
-Ý nghĩa của giao diện
-Xây dựng lớp cài đặt giao diện-Các giao diện thông dụng trong NetFramework: khả liệt kê (IEnumerable), khả so sánh (IComparable), khả tuần tự (Serializable), khả sao chép (IClonableable)
Chương III Cấu trúc dữ liệu trong C# 6 [1, 6]
1 Lập trình tổng quát trong C#
-Giới thiệu lập trình tổng quát-Lớp tổng quát (Generic Class)-Phương thức tổng quát (Generic Method )
-Cấu trúc tổng quát (Generic Struct)
2 Một số cấu trúc dữ liệu trong C#:
-Danh sách liên kết
Danh sách liên kết đơn
Danh sách liên kết kép
- Ngăn xếp và hàng đợi
Trang 5Chương 4 Lập trình Windows Form 18 [1,2, 3, 4]
1 Các kiến thức chung về ứng dụng
windows form-Chức năng của Windows Form
- Sử dụng các công cụ để thiết kế giao diện cho Form
-Tìm hiểu về sự kiện-Các thuộc tính, phương thức, sự kiện cơ bản của Form
2 Các kiến thức chung về điều khiển
(Control) trong ứng dụng windows form
-Các nhóm điều khiển (Control):
Basic control, Value setting, Selection List, Grouping, …-Các thuộc tính, phương thức,sự kiện thông dụng của các điều khiển
-Thêm điều khiển vào Form sử dụng Windows Forms Designer and Toolbox, tìm hiểu mã lệnh trong Windows Forms Designer
-Thêm điều khiển vào Form lúc thực thi
3 Các điều khiển thông dụng
-Các điều khiển cơ bản: Button, Label, TextBox, …
-Các điều khiển lựa chọn giá trị:
CheckBox, RadioButton
-Các điều khiển chọn giá trị từ danh
Trang 6sách: ListBox, ComboBox.
-Các điều khiển đồ họa (Graphic Control) và điều khiển có thể chứa điều khiển khác (Grouping
Control) : PictureBox, Panel, GroupBox, SplitContainer
-Các điều khiển nhập giá trị thời gian: Timer, MonthCalendar, DateTimePicker,
4 Các điều khiển nâng cao:
-ListView
- RichTextBox-TreeView-ProgressBar
-Các hộp thoại:
Chọn đường dẫn mở file:OpenFileDialog
Chọn đường dẫn lưu file: SaveFileDialog
Chọn màu: ColorDialog
Chọn font chữ:
FontDialog
5 Ứng dụng đa tài liệu (Multiple
Document Interface – MDI)
- Thiết lập Form cha, form con-Xây dựng ứng dụng có nhiều cửa sổ
-Tìm tất cả các Form, Form đang hoạt động trong ứng dụng MDI-Trình đơn (Menu):
Menu chính (Main Menu) và menu ngữ cảnh (Context Menu)
Liên kết menu ngữ cảnh vào điều khiển (Control)
Sử dụng một phần menu chính làm cho menu ngữ cảnh
Trang 7Chương 5 Lập trình kết nối cơ sở dữ liệu 9 [1,5]
1 Các kiến thức chung về ADO.NET
-Tìm hiểu kiến trúc của ADO.NET
- Mô hình ứng dụng đa tầng, đa lớp-Công nghệ ADO.NET
-Các đặc tính của ADO.NET-Mô hình truy cập dữ liệu-Các lợi ích của công nghệ ADO.NET
2 Tìm hiểu các Provider dùng để kết nối
tới các hệ quản trị CSDL khác nhau
-.Net Framework data cho SQL Server
-.Net Framework data cho OLE DB-.NET Framework data cho ODBC-.NET Framework cho Oracle
3 Sử dụng ADO.NET để kết nối ứng
dụng với CSDL-Tìm hiểu các lớp Data, DataSet-Tạo Connection để kết nối đến CSDL
-Tạo Command để thực thi câu lệnhthao tác CSDL
-Sử dụng DataAdapter để lấy dữ liệu từ CSDL nguồn vào DataSet-Đọc từng bản ghi với DataReader-Nạp dữ liệu vào các control
6 Giáo trình, tài liệu tham khảo
1 Giáo trình 1 (Giáo trình bắt buộc ghi theo
thứ tự ưu tiên: tên sách, tên tác giả, nhà
xuất bản, năm xuất bản, ).
Có ở thư viện (website)
Giáo viên hoặc khoa có
Đề nghị mua mới
Đề nghị biên soạn mới
Trang 8Ngọc Bình Phương, Thái Thanh
Phong, Nhà xuất bản Giao thông vận
tải, 2005
3 Windows Forms Programming With
C#, Erik Brown, Manning, 2004 X
4 Teach Yourself the C# Language in
21 days, Dradley L Jones, 2004 X
5 Mastering C# Database
Programming, Jason Price, Sybex,
2003
X
6 Pro C#.NET 2008 and the NET
platform – four edition, Andrew
Tự học, tự ng.cứu
Lý thuyết
Bài tập Thảo luận
Trang 9Chương 1: Các khái niệm cơ bản
1 Các khái niệm cơ bản
- Giới thiệu Microsoft.Net
-Tính năng của bộ VS.NET
-Không gian tên (namespace)
-Cấu trúc của chương trình C#
-Biên dịch và thực thi chương
2 Thao tác dữ liệu với
-Mảng, xâu ký tự, ngày giờ
-Kiểu liệt kê (enum)
Kiểu cấu trúc (struct)
-Ý nghĩa truyền tham số cho
phương thức với các từ khóa
Trang 10ref, out và params
-Cơ chế ủy quyền (Delegates) và
sự kiện Events
-Phương thức vô danh
(Anonymous method)
3 Thuộc tính
-Giới thiệu trường dữ liệu
-Đóng gói dữ liệu với thuộc tính (property)
-Cú pháp nạp chồng toán tử-Chi tiết về nạp chồng toán tử: toán tử một ngôi, toán tử 2 ngôi,định nghĩa toán tử chuyển kiểu
5 Kế thừa và đa hình
-Ý nghĩa của kế thừa
-Khai báo kế thừa
-Gọi Constructor của lớp cơ sở-Nghiêm cấm kế thừa (từ khóa sealed)
-Gọi lớp cơ sở (từ khóa base)-Ghi đè (từ khóa virtual và override)
Chuyển đổi kiểu dữ liệu từ lớp dẫnxuất thành lớp cơ sở, tính đa hình
6 Lớp trừu tượng và giao diện-Lớp trừu tượng (abstract class)-Giao diện (Interface)
-Ý nghĩa của giao diện
-Xây dựng lớp cài đặt giao diện-Các giao diện thông dụng
Trang 11trong NetFramework: khả liệt
-Giới thiệu lập trình tổng quát
-Lớp tổng quát (Generic Class)
-Phương thức tổng quát (Generic
Trang 12-Các thuộc tính, phương thức, sựkiện cơ bản của Form
2 Các kiến thức chung về điều khiển (Control) trong ứng dụng windows form
-Các nhóm điều khiển (Control):Basic control, Value setting, Selection List, Grouping, …-Các thuộc tính, phương thức,sự kiện thông dụng của các điều khiển
-Thêm điều khiển vào Form sử dụng Windows Forms Designerand Toolbox, tìm hiểu mã lệnh trong Windows Forms
-Các điều khiển lựa chọn giá trị: CheckBox, RadioButton
-Các điều khiển chọn giá trị từ danh sách: ListBox,
ComboBox
-Các điều khiển đồ họa (GraphicControl) và điều khiển có thể chứa điều khiển khác (GroupingControl) : PictureBox, Panel, GroupBox, SplitContainer.-Các điều khiển nhập giá trị thời gian: Timer, MonthCalendar, DateTimePicker,
4 Các điều khiển nâng cao:
-ListView
- RichTextBox
Trang 135 Ứng dụng đa tài liệu (Multiple
Document Interface – MDI)
- Thiết lập Form cha, form con
-Xây dựng ứng dụng có nhiều
cửa sổ
-Tìm tất cả các Form, Form đang
hoạt động trong ứng dụng MDI
Trang 14-Các đặc tính của ADO.NET
-Mô hình truy cập dữ liệu
-Các lợi ích của công nghệ
-Tìm hiểu các lớp Data, DataSet
-Tạo Connection để kết nối đến
+ Nắm được ý nghĩa, yêu cầu, các nội dung của môn học
+ Nắm được cấu trúc của một chương trình C# đơn giản
+ Nắm được cách sử dụng IDE của Visual Studio để soạn thảo, biên dịch và thực thi chương trình
Trang 15+ Nắm được các kiểu dữ liệu cơ bản trong C# và NetFramework, chuyển đổi giữa các kiểu dữ liệu.
+ Viết chương trình nhập, xuất dữ liệu, thực hiện một số toán tử toán học, hiển thị kiểu dữ liệu ngày giờ, thao tác với xâu ký tự
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
1.1 Các khái niệm cơ bản (1 tiết)
1.2 Thao tác dữ liệu (2 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước tài liệu [1] tập 1, tài liệu 4 từ trang 7 - 211
Bài giảng 2: Lập trình hướng đối tượng trong C#
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
2.1 Lớp và đối tượng + 2.2 Phương thức (1 tiết)
2.3 Thuộc tính (1 tiết)
2.4 Nạp chồng toán tử (1 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước tài liệu [1] chương 1, 2, 3, 4
Tự làm bài tập giáo viên giao cuối chương 2
Trang 16Bài giảng 3: Lập trình hướng đối tượng trọng C# (Tiếp)
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết.
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
2.5 Kế thừa và đa hình (1 tiết)
2.6 Lớp trừu tượng và giao diện (2 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước tài liệu [1] chương 5, 6
Đọc tài liệu [4] từ trang 357 - 473
Tự làm bài tập cuối chương 2
Bài giảng 4: Lập trình hướng đối tượng trong C# - Bài tập
Tiết thứ: 4 - 6 Tuần thứ: 4
- Mục đích, yêu cầu:
+ Nắm chắc các kiến thức về lập trình hướng đối tượng
+ Làm các bài tập cuối chương 2
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 0; Bài tập: 3 tiết Tự học, tự nghiên cứu:
3 tiết
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
+ Bài tập xây dựng lớp (1 tiết).
+ Bài tập kế thừa (1 tiết)
+ Hiện thực giao diện khả tuần tự hóa, giao diện khả so sánh (1 tiết)
- Yêu cầu SV chuẩn bị:
Trang 17+ Nắm chắc lý thuyết chương 2.
+ Làm các bài tập giáo viên giao về nhà
Bài giảng 5: Cấu trúc dữ liệu trong C# + Bài tập
3.1 Lập trình tổng quát trong C# (1 tiết)
3.2 Một số cấu trúc dữ liệu trong C#(1 tiết)
Bài tập (1 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước và làm các ví dụ trong tài liệu [1] tập 1
Đọc tài liệu [6] chương 10 trang 309 - 339
+ Áp dụng cấu trúc dữ liệu tổng quát, làm các bài tập chương 3
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, thực hành, tự học, tự nghiên
Trang 183.3 Các cấu trúc tập hợp trong C# (1 tiết)
Bài tập chương 3 (2 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước và làm các ví dụ trong tài liệu [1] tập 1
+ Nắm được chức năng của ứng dụng windows form
+ Nắm được các công cụ thiết kế giao diện: Thanh ToolBox, thanh Layout.+ Hiểu được mã lệnh thiết kế form
+ Nắm được phương pháp thêm điều khiển vào form lúc thực thi
+ Nắm được cơ chế ủy quyền và sự kiện
+ Nắm được các thuộc tính, phương thức, sự kiện thường dùng của Form
+ Nắm được vai trò của các điều khiển, các nhóm điều khiển, các thuộc tính, phương thức, sự kiện thường dùng của điều khiển
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
4 1 Các kiến thức chung về ứng dụng Windows Form (2 tiết)
4.2 Các kiến thức chung về điều khiên (Control) trong ứng dụng Windows Form (1 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước tài liệu [1], tập 2 chương 1 và 2
Đọc và làm bài tập trong tài liệu [4] từ trang 540 - 575
Tự đọc ví dụ trong tài liệu
Bài giảng 8: Lập trình Windows Form (tiếp)
+ Biết cách điều khiển sự kiện của các điều khiển
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết
Trang 19- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
4.3 Các điều khiển cơ bản (3 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước tài liệu [1] tập 2, chương 3, 6
Đọc và làm bài tập trong tài liệu [3] phần 2, từ mục 9 (trang 263) – mục 13 (trang 410)
Tự đọc ví dụ trong tài liệu
Bài giảng 9: Lập trình Windows Form (tiếp )
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
4.4 Các điều khiển nâng cao (3 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước tài liệu [1] tập 2, chương 4, 7
Đọc và làm ví dụ trong tài liệu [3] mục 3 từ trang 437 - 603
Bài giảng 10: Lập trình Windows Form – Bài tập
Chương 4
Tiết thứ: 4 - 6 Tuần thứ: 10
- Mục đích, yêu cầu:
+ Ôn tập các kiến thức về lập trình Windows Form
+ Sử dụng các điều khiển cơ bản, xây dựng giao diện người dùng
+ Xây dựng ứng dụng Windows Form để nhập và hiển thị thông tin, sử dụng đa dạng các điều khiển
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, thực hành
- Thời gian: Lý thuyết, thảo luận: 0; Thực hành: 3 tiết
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
Trang 20- Xây dựng ứng dụng Windows Form để nhập liệu và hiển thị thông tin (3tiết).
- Yêu cầu SV chuẩn bị:
+ Ôn tập, nắm vững các kiến thức về lập trình Windows Form
+ Làm bài tập cuối chương 4
Bài giảng 11: Lập trình Windows Form (tiếp)
Chương 4, mục 4.5
Tiết thứ: 4 - 6 Tuần thứ: 11
- Mục đích, yêu cầu:
+ Nắm được phương pháp thiết lập, hiển thị Form cha, Form con
+ Cách điều khiển hoạt động các Form trong ứng dụng đa tài liệu
+ Xây dựng được trình đơn chình (Main Menu) cho ứng dụng
+ Xây dựng menu ngữ cảnh, liên kết menu ngữ cảnh vào điều khiển
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu
- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết
- Địa điểm: Giảng đường do P2 phân công.
- Nội dung chính:
4.5 Ứng dụng đa tài liệu (Multiple Document Interface – MDI) (3 tiết)
- Yêu cầu SV chuẩn bị:
Đọc trước tài liệu [1] chương 5
Đọc tài liệu [2] mục 6.4, 6.5, 6.11, 6.12
Tự đọc ví dụ trong tài liệu
Bài giảng 12: Lập trình Windows Form - Bài tập
Chương 4
Tiết thứ: 4 - 6 Tuần thứ: 12
- Mục đích, yêu cầu:
+ Ôn tập các kiến thức về lập trình Windows Form
+ Sử dụng các điều khiển nâng cao để thiết kế các giao diện phức tạp
+ Xây dựng được ứng dụng đa tài liệu, điều khiển hoạt động của các Form trong ứng dụng đa tài liệu
- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, thực hành, tự học, tự nghiên