LẬP TRÌNH TRỰC QUAN - PHẦN II VISUAL BASIC - BÀI 17
Số trang: 11
Loại file: pdf
Dung lượng: 280.51 KB
Lượt xem: 6
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
DEBUGBugs là những lỗi của chương trình mà ta phát hiện khi chạy nó. Debug là công việc loại tất cả những lầm trong chương trình để nó chạy êm xuôi trong mọi tình huống. Thông thường muốn sửa một cái bug nào trước hết ta phải tìm hiểu lý do khiến nó xuất hiện. Một khi đã biết được duyên cớ rồi ta sẽ nghĩ ra cách giải quyết. Nói chung, có hai loại bugs : hoặc là chương trình không làm đúng chuyện cần phải làm vì lập trình viên hiểu lầm Specifications hay được cho tin...
Nội dung trích xuất từ tài liệu:
LẬP TRÌNH TRỰC QUAN - PHẦN II VISUAL BASIC - BÀI 17Lập trình trực quan BÀI 17. DEBUG Bugs là những lỗi của chương trình mà ta phát hiện khi chạy nó. Debug là công việc loại tấtcả những lầm trong chương trình để nó chạy êm xuôi trong mọi tình huống. Thông thường muốn sửa một cái bug nào trước hết ta phải tìm hiểu lý do khiến nó xuấthiện. Một khi đã biết được duyên cớ rồi ta sẽ nghĩ ra cách giải quyết. Nói chung, có hai loạibugs : hoặc là chương trình không làm đúng chuyện cần phải làm vì lập trình viên hiểu lầmSpecifications hay được cho tin tức sai lạc, hoặc là chương trình bỏ sót chi tiết cần phải có.Trường hợp này ta giải quyết bằng cách giảm thiểu sự hiểu lầm qua sự nâng cấp khả năngtruyền thông. Chương trình không thực hiện đúng như ý lập trình viên muốn, tức là lập trình viên muốnmột đàng mà bảo chương trình làm một ngã vì vô tình không viết chương trình đúng cách.Trường hợp này ta giải quyết bằng cách dùng những Software Tools (kể cả ngôn ngữ lậptrình) thích hợp, và có những quá trình làm việc có hệ thống. Có nhiều yếu tố ảnh hưởng đến chất lượng của một chương trình như chức năng củachương trình, cấu trúc của các bộ phận, kỹ thuật lập trình và phương pháp debug. Debugkhông hẳn nằm ở giai đoạn cuối của dự án mà tùy thuộc rất nhiều vào các yếu tố kể trên trongmọi giai đoạn triển khai.17.1. Đặc tả chương trình (Program Specifications) Dầu chương trình lớn hay nhỏ, trước hết ta phải xác định rõ ràng và tỉ mỉ nó cần phải làmgì, bao nhiêu người dùng, mạng như thế nào, database lớn bao nhiêu, phải chạy nhanh đếnmức nào .v.v.. Có nhiều chương trình phải bị thay đổi nữa chừng vì lập trình viên hiểu lầm điều kháchhàng muốn. Do đó trong sự liên hệ với khách hàng ta cần phải hỏi đi, hỏi lại, phản hồi vớikhách hàng nhiều lần điều ta hiểu bằng thư từ, tài liệu, để khách xác nhận là ta biết đúng ý họtrước khi xúc tiến việc thiết kế chương trình. Nếu sau này khách đổi ý, đó là quyền của họ,nhưng họ phải trả tiền thay đổi (variation). 136Lập trình trực quan17.1.1 Cấu trúc các bộ phận Chương trình nào cũng có một kiến trúc tương tự như một cỗ máy. Mỗi bộ phận càng đơngiản càng tốt và cách ráp các bộ phận phải như thế nào để ta dễ thử. Trong khi thiết kế ta phảibiết trước những yếu điểm của mỗi bộ phận nằm ở đâu để ta chuẩn bị cách thử chúng. Ta sẽkhông hề tin bộ phận nào hoàn hảo cho đến khi đã thử nó, dù nó đơn giản đến đâu. Nếu ta muốn dùng một kỹ thuật gì trong một hoàn cảnh nào mà ta không biết chắc nó chạykhông thì nên thử riêng rẽ nó trước. Phương pháp ấy được gọi là Prototype. Ngoài ra, ta cũng nên xây dựng những kịch bản test cho những trường hợp đặc biệt, điểnhình là bad data - khi người sử dụng bấm lung tung hay database chứa nhiều rác. Nếu chương trình chạy trong real-time (tức là data thu nhập qua Serial Com Port, DataAcquisition Card hay mạng), chúng ta cần phải lưu ý những trường hợp khác nhau tùy theoviệc gì xảy ra trước, việc gì xảy ra sau. Lúc bấy giờ Logic của chương trình sẽ tùy thuộc vàotrạng thái (State) của data. Tốt nhất là nghĩ đến những Scenarios để có thể thử từng giai đoạnvà tình huống. Ngày nay với kỹ thuật hướng đối tượng, ở giai đoạn thiết kế này là lúc quyết định các DataStructures (tables, records ..v.v.) và con số Forms với Classes. Nhớ rằng mỗi Class gồm cómột Data Structure và những Subs/Functions/Properties làm việc (operate) trên data ấy. Datastructure phải chứa đầy đủ những chi tiết (data fields, variables) ta cần. Kế đó là những cáchchương trình process data. Subs/Functions nào có thể cho bên ngoài gọi thì ta cho nó Public,còn những Subs/Functions khác hiện hữu để phục vụ bên trong class thì ta cho nó Private.17.1.2 Kỹ thuật lập trình Kiến thức cơ bản của lập trình viên và các thói quen của họ rất quan trọng. Nói chung,những người hấp tấp, nhảy vào viết chương trình trước khi suy nghĩ hay cân nhắc chín chắnthì sau này bugs xuất hiện nhiều là điều tự nhiên.17.1.3 Dùng Subs và Functions Nếu ở giai đoạn thiết kế kiến trúc của chương trình ta chia ra từng Class, thì khi lập trình talại thiết kế chi tiết về Subs, Functions .v.v.., mỗi thứ sẽ cần phải thử như thế nào. Nếu ta có thểchia công việc ra từng giai đoạn thì mỗi giai đoạn có thể mà một call đến một Sub. Thứ gì cầnphải tính ra hay lấy từ nơi khác thì có thể được thực hiện bằng một Function. 137Lập trình trực quan Nhớ rằng điểm khác biệt chính giữa một Sub và một Function là Function cho ta một kếtquả mà không làm thay đổi những parameters ta đưa cho nó. Trong khi đó, dầu rằng Subkhông cho ta gì một cách rõ ràng nhưng nó có thể thay đổi trị số (value) của bất cứ parametersnào ta chuyển cho nó ByRef. Nhắc lại là khi ta chuyển một parameter ByVal cho một Sub ...
Nội dung trích xuất từ tài liệu:
LẬP TRÌNH TRỰC QUAN - PHẦN II VISUAL BASIC - BÀI 17Lập trình trực quan BÀI 17. DEBUG Bugs là những lỗi của chương trình mà ta phát hiện khi chạy nó. Debug là công việc loại tấtcả những lầm trong chương trình để nó chạy êm xuôi trong mọi tình huống. Thông thường muốn sửa một cái bug nào trước hết ta phải tìm hiểu lý do khiến nó xuấthiện. Một khi đã biết được duyên cớ rồi ta sẽ nghĩ ra cách giải quyết. Nói chung, có hai loạibugs : hoặc là chương trình không làm đúng chuyện cần phải làm vì lập trình viên hiểu lầmSpecifications hay được cho tin tức sai lạc, hoặc là chương trình bỏ sót chi tiết cần phải có.Trường hợp này ta giải quyết bằng cách giảm thiểu sự hiểu lầm qua sự nâng cấp khả năngtruyền thông. Chương trình không thực hiện đúng như ý lập trình viên muốn, tức là lập trình viên muốnmột đàng mà bảo chương trình làm một ngã vì vô tình không viết chương trình đúng cách.Trường hợp này ta giải quyết bằng cách dùng những Software Tools (kể cả ngôn ngữ lậptrình) thích hợp, và có những quá trình làm việc có hệ thống. Có nhiều yếu tố ảnh hưởng đến chất lượng của một chương trình như chức năng củachương trình, cấu trúc của các bộ phận, kỹ thuật lập trình và phương pháp debug. Debugkhông hẳn nằm ở giai đoạn cuối của dự án mà tùy thuộc rất nhiều vào các yếu tố kể trên trongmọi giai đoạn triển khai.17.1. Đặc tả chương trình (Program Specifications) Dầu chương trình lớn hay nhỏ, trước hết ta phải xác định rõ ràng và tỉ mỉ nó cần phải làmgì, bao nhiêu người dùng, mạng như thế nào, database lớn bao nhiêu, phải chạy nhanh đếnmức nào .v.v.. Có nhiều chương trình phải bị thay đổi nữa chừng vì lập trình viên hiểu lầm điều kháchhàng muốn. Do đó trong sự liên hệ với khách hàng ta cần phải hỏi đi, hỏi lại, phản hồi vớikhách hàng nhiều lần điều ta hiểu bằng thư từ, tài liệu, để khách xác nhận là ta biết đúng ý họtrước khi xúc tiến việc thiết kế chương trình. Nếu sau này khách đổi ý, đó là quyền của họ,nhưng họ phải trả tiền thay đổi (variation). 136Lập trình trực quan17.1.1 Cấu trúc các bộ phận Chương trình nào cũng có một kiến trúc tương tự như một cỗ máy. Mỗi bộ phận càng đơngiản càng tốt và cách ráp các bộ phận phải như thế nào để ta dễ thử. Trong khi thiết kế ta phảibiết trước những yếu điểm của mỗi bộ phận nằm ở đâu để ta chuẩn bị cách thử chúng. Ta sẽkhông hề tin bộ phận nào hoàn hảo cho đến khi đã thử nó, dù nó đơn giản đến đâu. Nếu ta muốn dùng một kỹ thuật gì trong một hoàn cảnh nào mà ta không biết chắc nó chạykhông thì nên thử riêng rẽ nó trước. Phương pháp ấy được gọi là Prototype. Ngoài ra, ta cũng nên xây dựng những kịch bản test cho những trường hợp đặc biệt, điểnhình là bad data - khi người sử dụng bấm lung tung hay database chứa nhiều rác. Nếu chương trình chạy trong real-time (tức là data thu nhập qua Serial Com Port, DataAcquisition Card hay mạng), chúng ta cần phải lưu ý những trường hợp khác nhau tùy theoviệc gì xảy ra trước, việc gì xảy ra sau. Lúc bấy giờ Logic của chương trình sẽ tùy thuộc vàotrạng thái (State) của data. Tốt nhất là nghĩ đến những Scenarios để có thể thử từng giai đoạnvà tình huống. Ngày nay với kỹ thuật hướng đối tượng, ở giai đoạn thiết kế này là lúc quyết định các DataStructures (tables, records ..v.v.) và con số Forms với Classes. Nhớ rằng mỗi Class gồm cómột Data Structure và những Subs/Functions/Properties làm việc (operate) trên data ấy. Datastructure phải chứa đầy đủ những chi tiết (data fields, variables) ta cần. Kế đó là những cáchchương trình process data. Subs/Functions nào có thể cho bên ngoài gọi thì ta cho nó Public,còn những Subs/Functions khác hiện hữu để phục vụ bên trong class thì ta cho nó Private.17.1.2 Kỹ thuật lập trình Kiến thức cơ bản của lập trình viên và các thói quen của họ rất quan trọng. Nói chung,những người hấp tấp, nhảy vào viết chương trình trước khi suy nghĩ hay cân nhắc chín chắnthì sau này bugs xuất hiện nhiều là điều tự nhiên.17.1.3 Dùng Subs và Functions Nếu ở giai đoạn thiết kế kiến trúc của chương trình ta chia ra từng Class, thì khi lập trình talại thiết kế chi tiết về Subs, Functions .v.v.., mỗi thứ sẽ cần phải thử như thế nào. Nếu ta có thểchia công việc ra từng giai đoạn thì mỗi giai đoạn có thể mà một call đến một Sub. Thứ gì cầnphải tính ra hay lấy từ nơi khác thì có thể được thực hiện bằng một Function. 137Lập trình trực quan Nhớ rằng điểm khác biệt chính giữa một Sub và một Function là Function cho ta một kếtquả mà không làm thay đổi những parameters ta đưa cho nó. Trong khi đó, dầu rằng Subkhông cho ta gì một cách rõ ràng nhưng nó có thể thay đổi trị số (value) của bất cứ parametersnào ta chuyển cho nó ByRef. Nhắc lại là khi ta chuyển một parameter ByVal cho một Sub ...
Tìm kiếm theo từ khóa liên quan:
cơ sở dữ liệu microsoft access giáo trình công nghệ kỹ thuật lập trình quản trị dữ liệuGợi ý tài liệu liên quan:
-
62 trang 401 3 0
-
Đề thi kết thúc học phần học kì 2 môn Cơ sở dữ liệu năm 2019-2020 có đáp án - Trường ĐH Đồng Tháp
5 trang 377 6 0 -
Đáp án đề thi học kỳ 2 môn cơ sở dữ liệu
3 trang 309 1 0 -
Giáo trình Cơ sở dữ liệu: Phần 2 - TS. Nguyễn Hoàng Sơn
158 trang 292 0 0 -
13 trang 291 0 0
-
Phân tích thiết kế hệ thống - Biểu đồ trạng thái
20 trang 285 0 0 -
PHÂN TÍCH THIẾT KẾ HỆ THỐNG XÂY DỰNG HỆ THỐNG ĐẶT VÉ TÀU ONLINE
43 trang 281 2 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 262 0 0 -
Tài liệu học tập Tin học văn phòng: Phần 2 - Vũ Thu Uyên
85 trang 255 1 0 -
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 244 0 0