Microsoft Visual C++ Toolkit2003

Một phần của tài liệu xây dựng phần mềm hỗ trợ môn học kỹ thuật lập trình c (Trang 33 - 88)

Micrsoft Visual C ++ Toolkit 2003 đã đ c thi t k và cho phép ng i phát tri n biên d ch và ki m tra m t ng d ng v i đ y đ các tính n ng c a m t trình biên

HU

TEC

H

dch. Trình biên d ch này ch thích h p cho nh ng ng d ng nh và th t s h u ích đ i v i nh ng ng i m i b t đ u h c l p trình C/C++.

Micrsoft Visual C ++ Toolkit 2003 không có giao di n, nó ch đ n gi n là m t trình biên dch. B n c n m t trình so n th o (notepad,…) và m t c a s Dos (command prompt).

Micrsoft Visual C ++ Toolkit 2003 đ c Microsoft cung c p mi n phí t i đ a

ch we

Khi cài đ t thì Micrsoft Visual C ++ Toolkit 2003 s t c u hình cho b n. Sau khi cài đ t, chú ý t i các th m c bin, include, lib.

kích h at compiler, s d ng file Visual C++ Toolkit 2003 Command Prompt.exe.

Sau đó s có màn hình command prompt hi n lên, mu n biên d ch m t file C/C++, ta dùng cú pháp cl *.c.

Ví d : cl c:\test.c

n u quá trình biên d ch không có l i thì b n s đ c thông báo Microsoft ( R ) Incremental Linker Version 7.10.3077

Copyright ( C ) Microsoft Corporation.All rights reserved /out : test.exe

test.obj

bi t thêm nh ng tham s : cl /help

2.2.6 Công c đã đ c s d ng

HU

TEC

H SharpLibrary

Là t p h p nh ng control b sung cho controlbox c a .NET, đ c cung c p b i SharpLibrary Inc.

ây là nh ng control giúp t o giao di n đ p . Bao gm 52 control, t nh ng control c b n t i nh ng control m r ng.

dockingsuite

Là control giúp thi t k ch ng trình có thêm m t c a s gi ng v i controlbox c a .NET. c vi t b i Tim Dawson.

XPExplorerBar

ây là control t o giao di n gi ng v i Explorer c a Windows XP. c cung c p b i Mathew Hall.

U

TEC

H Cách s d ng :

Trong môi tr ng .NET ta References vào Add Reference … và ch n Browser t i 3 file : sharplibrary.dll, dockingsuite.dll, XPExplorerBar.dll.

Balloon

ây là mt project ng Balloon

HU TEC H CH NG 3 PHÂN TÍCH VÀ THI T K 3.1 Nh ng ch c n ng chính Ch ng trình có nh ng ch c n ng sau: - H tr h c t p Khi s d ng ch ng trình, ng i dùng có th ch n m t bài h c c a s hi n th bài h c. Trong ph n bài h c có nh ng ví d , tên c a nh ng ví d là tên file ch a d li u c n thi t cho vi c ch y debug ví d đó. V i m t bài h c, có m t file t ng ng đ c l u trong th m c c a ch ng trình. Các thông tin còn l i c a bài h c nh tên, đ ng d n t i file ch a d li u đ c l u tr trong c s d li u. Khi ch ng trình ch y thì d li u nh tên bài h c, đ ng d n s đ c l y lên treeView.

- Ch y debug ví d demo

Khi đang bài h c nào mà có ví d thì ng i dùng có th ch n (b ng cách s d ng chu t bôi đen ph n tên ví d ) và nh n chu t ph i đ xem debug c a ví d đó. Khi đó, s có m t form đ hi n th t ng b c ch y cùng v i k t qu . th c hi n debug, ch ng trình có s d ng m t file mô t quá trình ch y debug.

HU

TEC

H - Làm bài t p

M i bài h c s có ph n bài t p riêng. Ng i dùng có th làm bài và l u l i đ có thêm t li u. Bài t p đ c l u ra file trong th m c c a ch ng trình, ph n c s d li u ch l u đ ng d n t i file bài t p đó. Trong bài t p thì có thêm ph n bài gi i, bài gi i c ng đ c l u ra file riêng và trong c s d li u ch l u đ ng d n t i file đó.

Khi làm bài tp có th ch y th ph n v a làm, s có thông báo l i và k t qu c a ch ng ph n bài t p v a làm.

- Làm bài ki m tra

Bài kim tra là cách ng i h c đánh giá l i ki n th c c a mình sau khi đ c xong ch ng. Bài ki m tra đ c th hi n d ng tr c nghi m.

- T o th vi n

Khi ng i dùng đ ng ký thành viên thì có th s d ng thêm tính n ng t o th vi n. Thành viên có th dùng th vi n nh là m t quy n s tay riêng. T t c thông tin đ u mang tính cá nhân. Th vi n có th l u đ c nh ng chú thích ho c đ ng d n t i file ho c th m c. ng th i b n có th l u đ c hình nh đ i di n cho ph n th vi n b n v a m i t o.

3.2 Phân tích UML

HU

TEC

HChon khoa hoc Tao thu vien

Khach

Chon bai hoc

Khach khong dang ky

Chon cach hoc

<<extend>>

<<extend>> Chay Demo Vi du

<<extend>>

Dang ky thanh vien

Lam bai tap Hoc Vien

Bai kiem tra

Quan ly dang nhap

Admin

Quan ly dang ky

- Use case “ ng ký thành viên” : Ngi s d ng đ ng ký (username, password) v i ch ng trình. N u username h p l thì h th ng s c p m t tài kho n. Mà l n sau vào ng i dùng có th s d ng tài kho n đó đ đ ng nh p vào h th ng.

- Use case “To th vi n” : Cho phép ng i dùng (thành viên) t o ra th vi n riêng, ch có th xem khi đ ng nh p vào h th ng.

HU

TEC

H

- Use case “Ch y demo ví d ” : Khi đang xem m t bài h c nào, n u có ph n ví d thì ng i dùng có th xem quá trình ch y debug cho ví d đó.

- Use case “Ch n cách h c” : Ng i dùng có th ch n theo 2 cách h c.

- Use case “Làm bài tp” : X lý vi c th c hi n bài t p c a ng i dùng, bao g m l u, cho xem bài m u và làm bài.

- Use case “Bài ki m tra” : Ng i dùng sau khi đ c xong m t ch ng thì có th làm th bài ki m tra. Là bài tr c nghi m ki m th c thu c m t ch ng nào đó. Khi làm xong bài thì có th l u l i.

- Use case “Qu n lý đ ng nh p” : Khi ng i dùng đ ng nh p vào h th ng thì s ki m tra username và password.

- Use case “Qu n lý đ ng ký” : Khi ng i dùng đ ng ký, c n cung c p username. Use case Quan ly dang ky xem username ng i dùng đ ng ký đã đ c s d ng ch a. N u ch a thì cho đ ng ký. Ng c l i, thông báo cho ng i dùng.

- Mô hình use case cho use case “Tao thu vien”

Them vao thu vien

Cap nhat Thanh vien

HU

TEC

H

- Use case “Thêm vào th vi n” : Khi ng i dùng đang s d ng th vi n, h có th thêm m t tr ng thông tin vào th vi n.

- Use case “C p nh t” : Sau khi ch nh s a xong bao g m nh ng thông tin : ghi chú, đ ng d n t i m t file ho c th m c, hình nh, tên c a tr ng th vi n thì ng i dùng có th c p nh t thông tin.

- Use case “Thay đ i thông tin” : X lý vi c thay đ i tên và n i dung (ghi chú, đ ng d n và hình nh).

3.2.2 Mô hình ho t đ ng (Activity)

Bat Dau

HU

TEC

H

- Mô t : Ng i dùng có th ch n m t trong 2 cách h c là h c theo bài h c ho c là theo khóa h c. N u ch n bài h c thì ch ng trình s không theo dõi. Khi ch n theo khóa h c, ch ng trình s theo dõi quá trình h c và thông báo cho ng i dùng. V i yêu c u là ph i đ ng ký thành viên.

Bat Dau Chon bai

tap

HU

TEC

H

- Mô t : Khi ch n m t bài t p, ch ng trình s l y yêu c u c a bài t p đ c l u trong file th m c c a ch ng trình. Và ng i dùng s có hai s l a ch n, xem bài gi i ho c làm bài (vi t code theo yêu c u c a đ ). N u mu n l u l i đ tham kh o thì có th s d ng ch c n ng l u.

Bat Dau

Nguoi dung chon

HU

TEC

H

- Mô t : ki m tra l i ki n th c, ng i dùng có th ch n là làm bài ho c xem bài gi i.Sauđó n u mu n có th l u l i.

Bat Dau

Cho username va password

HU

TEC

H

cho ng i dùng đ ch n username khác. Còn username là hp l , ch n g trình s thông báo là tài kho nđã đ c t o.

Bat Dau

Nguoi hoc nhap username va passwor

Du khong phai la thanh vien Nhung hoc vien van duoc su dung chuong trinh nhung co su gioi han.

HU

TEC

H

- Mô t : Ng i dùng ph i cung c p username và password, h th ng s ki m tra. N u là username và password đúng thì vào tài kh an, ng c l i thông báo đ ng nh p không thành công cho ng i dùng bi t.

HU

TEC

H

Mô t : Khi ng i dùng mu n t o th vi n thì ph i cung c p username và password. N u đúng ng i dùng có th thao tác trên node c a th vi n, bao g m các thao tác sau : Câp nh t, t o m i, xóa.

HU TEC H CH NG 4 TH C HI N VÀ K T QU 4.1 L P TR U T NG (ABSTRACT) 4.1.1 Business Layer - IBaihoc

Abstract IBaihoc t ng quát hóa các thao tác tr c ti p đ i v i d li u trong c s d li u. Là l p d n su t c a 3 l p : BaihocBusiness, BaitapBusiness, ChuongBusiness.

Bao g m các ph ng th c :

public abstract ArrayList LayDanhSachTen (IBaiHoc ten) : Ly bài h c tùy theo yêu c u c th l p d n su t.

public abstract ArrayList LayBaiHoc () : Ph ng th c tr v m t danh sách các bài h c tùy thu c vào yêu c u c a l p d n xu t.

HU

TEC

H

public abstract Hashtable LayBangBaiHoc () : Ph ng th c thao tác v i ch ng và bài hc. Id c a ch ng trong c s d li u là key s d ng trong Hashtable, t ng element là nh ng bài h c thu c ch ng.

- IHoc

Abstract IHoc là t ng quát hóa c a HocBusiness, thao tác v i d li u trên b ng QUATRINHHOC.

Bao g m các ph ng th c :

public abstract void ThemMoi (Data_Layer.QuaTrinhHoc qt) : Thêm m i m t quá trình h c.

public abstract void CapNhat (Data_Layer.QuaTrinhHoc qt) : C p nh t l i quá trình h c c a m t user.

public abstract ArrayList LayThongTin (string userid) : L y t t c quá trình h c c a m t user.

- INguoidung

HU

TEC

H

Abstract INguoidung là t ng quát hóa c a NguoidungBusiness, thao tác d li u trên b ng NGUOIDUNG.

Bao g m các ph ng th c

public abstract bool ThemNguoiDung(Data_Layer.NguoiDung user) : Ph ng th c này đ m nhi m vi c thêm m i m t ng i dùng.

public Data_Layer.NguoiDung KiemTra(Data_Layer.NguoiDung user) : Ki m tra xem có đúng là ng i dùng đã đ ng ký .

- IThuvien

Abstract IThuvien là tng quá hóa c a ThuvienBusiness, thao tác trên b ng THUVIEN.

Bao g m các ph ng th c:

public abstract void CapNhat (Data_Layer.ThuVien tv) : C p nh t th vi n. public abstract void Them (Data_Layer.ThuVien tv) : Thêm m t tr ng d li u. public abstract void Xoa (int tv) : Xóa theo mã th vi n.

HU TEC H 4.1.2 Data Layer - ILyThuyet

Abstract ILyThuyet là tng quá hóa c a 7 l p : Kiemtra, Baitap, Baihoc, Nguoidung, Chuong, Quatrinhhoc, Thuvien. 7 l p chuyên bi t hóa này có nhi m v là ch a d li u đ c l y lên t c s d li u.

Các thu c tính :

ID : string Là mã dùng đ phân bi t.

Path : string Là đ ng d n t i file ch a d li u. Name : string Tên đ i di n.

4.2 MÔ HÌNH L P (CLASS DIAGRAM)

4.2.1 Bussiness Layer

- Theo dõi quá trình h c

HU

TEC

H Mô t :

L p HocBusiness th a k t l p IHoc. N u ng i dùng đã đ ng ký làm thành viên, khi xem ch ng nào thì ch ng trình s ghi nh n nh ng ch ng đang xem đ có th thông báo cho ng i dùng bi t vào nh ng l n đ ng nh p sau.

Bao g m các ph ng th c :

public override void ThemMoi (Data_Layer.QuaTrinhHoc qt) : Khi ng i dùng đ ng nh p vào h th ng và xem m t bài h c lúc đó ch ng trình s t o m t object QuaTrinhHoc đ l u l i thông tin bao g m (MaQuaTrinhHoc, ID_Chuong, username, NgayHoc, IsKhoaHoc), nh ng thông tin này s đ c l u vào c s d li u khi ng i dùng ch n xem m t ch ng khác.

public override void CapNhat (Data_Layer.QuaTrinhHoc qt) :Khi ng i dùng đ ng nh p vào h th ng và xem m t bài h c lúc đó ch ng trình s t o m t object QuaTrinhHoc đ l u l i thông tin bao g m (MaQuaTrinhHoc, ID_Chuong, username, NgayHoc, IsKhoaHoc), nh ng thông tin này s đ c l u vào c s d li u khi ng i dùng ch n xem m t ch ng khác. Trong ph ng thc này s có ph n ki m tra xem MaQuaTrinhHoc đã t n t i ch a.

public override ArrayList LayThongTin (string userid) : Khi ng i dùng đ ng nh p vào h th ng, ch ng trình s s d ng username đ l y t t c các quá trình h c. M i tr ng d li u quá trình h c s ng v i m t th hi n c a QuaTrinhHoc.

HU

TEC

H Mô t :

L p NguoidungBusiness th a k t l p tr u t ng INguoidung. H tr cho vi c ng i dùng đ ng ký làm thành viên. Mu n đ ng ký, ng i dùng ph i cung c p tên truy c p và m t kh u.

Bao g m các ph ng th c:

public override bool ThemNguoiDung(Data_Layer.NguoiDung user) : Khi ng i dùng ch n đ ng ký, ph ng th c này g i ph ng th c KiemTra. N u ch a ph i thành viên thì ch ng trình s t o tài kho n m i v i username và passwor d ng i dùng đ ng ký, n u trùng username thì s thông đ ng i dùng ch n m t username khác.

public override Data_Layer.NguoiDung KiemTra(Data_Layer.NguoiDung user) : Ki m tra xem có đúng là ng i dùng đã đ ng ký hay ch a.

- Bài t p

HU

TEC

H Mô t :

L p BaitapBusiness th a k t l p IBaihoc. Ng i dùng ch n ch c n ng làm bài t p, ch ng trình ph i l y t t c nh ng bài t p thu c ch ng.

Bao g m các ph ng th c sau :

public abstract ArrayList LayDanhSachTen (IBaiHoc ten) : Ph ng th c này dùng đ l y m t danh sách bài t p tùy thu c vào tham s truy n vào.

public abstract ArrayList LayBaiHoc () : Khi c n l y m t danh sách t t c các bài t p nh ng không phân bi t ch ng nào.

public abstract Hashtable LayBangBaiHoc () : Ph ng th c này đ c g i khi ng i dùng vào ph n bài t p l n đ u ho c l y d li u lên sau khi ch nh s a, toàn b bài t p thu c t t c các ch ng. K t qu tr v là m t danh sách các đ i t ng bài t p. M i đ i t ng là m t tr ng d li u trong c s d li u.

HU

TEC

H Mô t :

L p BaihocBusiness th a k t l p IBaihoc. X lý nh ng thao tác liên quan t i d li u thu c b ng BAIHOC.

Bao g m các ph ng th c sau:

public override ArrayList LayDanhSachTen (IBaiHoc ten) : Ph ng th c này dùng đ l y m t danh sách bài h c tùy thu c vào tham s truy n vào.

public override ArrayList LayBaiHoc () : Khi c n l y m t danh sách t t c các bài h cnh ng không phân bi t ch ng nào.

public override Hashtable LayBangBaiHoc () : Ph ng th c này đ c g i khi ch ng trình load hay là ng i dùng vào xem các bài h c. Ph ng th c này s l y lên m t Hashtable. Bao g m khóa là nh ng mã ch ng và t ng thành ph n c a Hashtable là ArrayList, cha n h ng bài h c. Data_Layer.Baihoc và Business_Layer.ChuongBusiness tham giao vào hàm này.

public Data_Layer.BaiHoc LayBai (string id) : ây là ph ng thc riêng c a l p BaihocBusiness, ph ng th c này nh n m t đ i s là id, mã c a bài h c. Khi ph ng th c đu c g i, k t qu tr v là đ i t ng Data_Layer.Baihoc có cùng mã bài

Một phần của tài liệu xây dựng phần mềm hỗ trợ môn học kỹ thuật lập trình c (Trang 33 - 88)