Tìm hiểu công nghệ Design By Contract và Xây dựng công cụ hỗ trợ cho C# khác với những trường hợp còn lại. 16.2.2.7 Lớp Extra Hình 16-9: Lớp Extra Danh sách hàm thành phần: STT Tên Tham số Kết quả bool Xử lý Kiểm tra xem dòng Line 1 IsContractor string Line có phải là khai báo của một contructor không. Kiểm tra xem dòng s có chứa một trong những từ 2 IsAccessibilityL evelFound string s bool khóa {private, public, protected, internal,protected internal, static } 3 IsContain string large, string small bool Kiểm tra chuỗi large có chứa chuỗi small. 109 Tìm hiểu công nghệ...
Tìm hiểu cơng nghệ Design By Contract Xây dựng công cụ hỗ trợ cho C# khác với trường hợp cịn lại 16.2.2.7 Lớp Extra Hình 16-9: Lớp Extra Danh sách hàm thành phần: STT Tên Kết Tham số Xử lý Kiểm tra xem dòng Line IsContractor string Line bool có phải khai báo contructor khơng Kiểm tra xem dịng s có chứa từ IsAccessibilityL evelFound string s bool khóa {"private", "public", "protected", "internal","protected internal", "static" } IsContain string large, string small bool 109 Kiểm tra chuỗi large có chứa chuỗi small Tìm hiểu cơng nghệ Design By Contract Xây dựng công cụ hỗ trợ cho C# Kiểm tra hàm điểm IsHaveContract EditPoint e, TextDocument t EditPoint e, văn bool TextDocument t có chứa PreCondition PostCondition GetReturnType string FuncName string Lấy kiểu trả FuncName Từ khai báo hàm (vd: string GetFuncName FuncDec,int public int A(int x) ), trả string Flag IsHaveVar string FName bool dạng: ¾ Flag=1: A(x) ¾ Flag=2: A(int x) Kiểm tra FName có tham số khơng Sửa tên hàm FName(…) thành FName_[Type](…), đó, Type FixFuncName string FName, string Type string PreCondition, PostCondition, Invariant hay BasePreCondition, BasePostCondition, BaseInvariant OLDVar mảng biến AddOLDVar string FName1, kiểu liệu tương ứng, string FName2, sửa đổi FName1 string[][] FName2 cách thêm OLDVar thông tin OLDVar vào tham số 110 Tìm hiểu cơng nghệ Design By Contract Xây dựng công cụ hỗ trợ cho C# KẾT LUẬN Sau nghiên cứu đề tài, chúng em hiểu rõ công nghệ Design By Contract khả ứng dụng lập trình hướng đối tượng Đồng thời, để phục vụ cho yêu cầu đề tài giúp cho việc hồn thiện kiến thức tìm hiểu được, chúng em xây dựng công cụ hỗ trợ Design By Contract dạng Add-In cho C# 111 Tìm hiểu cơng nghệ Design By Contract Xây dựng công cụ hỗ trợ cho C# HƯỚNG PHÁT TRIỂN − Xây dựng công cụ hỗ trợ Design By Contract cho môi trường lập trình khác − Mở rộng khả kiểm tra cơng cụ, kiểm tra điều kiện thiết thực − Mở rộng kiểu liệu kiểm tra cơng cụ, kiểm tra kiểu đối tượng không dừng lại kiểu liệu sở 112 Tìm hiểu cơng nghệ Design By Contract Xây dựng công cụ hỗ trợ cho C# TÀI LIỆU THAM KHẢO [1] B Meyer, Object-Oriented Software Construction, Prentice Hall, 2nd edition, 1997 [2] Eiffel Software, Design By Contract http://www.eiffel.com/doc/manuals/technology/contract/ [3] ResolveCorp, eXtensible C# - Design by contract Add-In for C# http://www.mmsindia.com/JMSAssert.html [4] Man Machine Systems, Design by contract tool for Java—JMSAssert http://www.mmsindia.com/JMSAssert.html [5] Kevin McFarlane, Design by Contract Framework for C# http://www.codeproject.com/csharp/designbycontract.asp [6] Parasoft Corp, Jcontract home page http://www.parasoft.com/jsp/products/home.jsp?product=Jcontract [7] R Kramer, iContract home page http://www.reliable-systems.com/tools/iContract/iContract.htm 113 Tìm hiểu cơng nghệ Design By Contract Xây dựng công cụ hỗ trợ cho C# Ý KIẾN CỦA GIÁO VIÊN PHẢN BIỆN ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… 114 ... vụ cho yêu cầu đề tài giúp cho việc hoàn thiện kiến thức tìm hiểu được, chúng em xây dựng công cụ hỗ trợ Design By Contract dạng Add-In cho C# 111 Tìm hiểu cơng nghệ Design By Contract Xây dựng. .. OLDVar thông tin OLDVar vào tham số 110 Tìm hiểu cơng nghệ Design By Contract Xây dựng công cụ hỗ trợ cho C# KẾT LUẬN Sau nghiên cứu đề tài, chúng em hiểu rõ công nghệ Design By Contract khả ứng dụng... Design By Contract Xây dựng công cụ hỗ trợ cho C# HƯỚNG PHÁT TRIỂN − Xây dựng công cụ hỗ trợ Design By Contract cho mơi trường lập trình khác − Mở rộng khả kiểm tra công cụ, kiểm tra điều kiện thiết