Tài liệu Bài giảng implementation

  • Số trang: 39 |
  • Loại file: PDF |
  • Lượt xem: 62 |
  • Lượt tải: 0
nguyen-thanhbinh

Đã đăng 10809 tài liệu

Mô tả:

Implementation Nội dung z Giới thiệu z Mô hình triển khai USDP z Một số nguyên tắc trong lập trình z Phong cách lập trình z Lập trình trong Java − − − − Triển khai các gói Triển khai các controller Kết nối CSDL Triển khai giao diện 2 Tài liệu z Pressman, Software Engineering, McGraw Hill (chapter 16) Sommerville, Software Engineering, Addison-Wesley (chapter 19) Giáo trình kỹ nghệ phần mềm (chương 4) z Các tài liệu điện tử khác z z 3 Giới thiệu z Triển khai (implementation) # lập trình (programming) − Implementation = triển khai thiết kế chi tiết thành chương trình z z z z Sử dụng lại mã nguồn/các thành phần Lập trình nếu không hoặc khó sử dụng lại Tích hợp các thành phần Mục tiêu − Sản phẩm phần mềm tốt 4 Lập trình hiệu quả S¶n phÈm phÇn mÒm tèt • ph©n tÝch tèt • thiÕt kÕ tèt • lËp trình tèt • kiÓm thö chÆt chÏ kü thuËt lËp trình tèt • chuyªn nghiÖp (tu©n theo c¸c chuÈn) • æn ®Þnh • hiÖu qu¶ 5 Tiến hóa của kỹ thuật lập trình LËp trình hiÖu qu¶ h¬n, s¶n phÈm rÎ tiÒn h¬n • Tèc ®é ph¸t triÓn cao h¬n - năng lùc biÓu diÔn cao h¬n - kh¶ năng sö dông l¹i cao h¬n • DÔ b¶o trì h¬n - dÔ hiÓu, dÔ söa ®æi • ChÊt l−îng cao h¬n - sö dông c¸c cÊu tróc an toµn h¬n ch−¬ng trình cÇn dÔ hiÓu 6 Tốc độ viết mã nguồn • Tèc ®é ph¸t triÓn cao ≠ lµm ng¾n ch−¬ng trình nguån - tèc ®é kh«ng tû lÖ thuËn víi sè dßng lÖnh - c©u lÖnh phøc t¹p lµm gi¶m ®é dÔ hiÓu • Ng«n ngữ møc cao (4GL) - năng lùc biÓu diÔn cao - tèc ®é ph¸t triÓn nhanh 7 Sơ đồ tổng quan của implementation 1. Define coding standards Architecture For each ... framework package ...application package: Requirements For each class: 2. Implement methods -- see section tbd Detailed design 5. Release for integration -- see chpt. 9 - pseudocode? - flowcharts? 3. Inspect class -- see section tbd 4. Perform unit testing -- see chpt. 8 8 Chuẩn bị cho implementation z Xác thực các thiết kế chi tiết bạn phải triển khai − z Hiểu các chuẩn − − z Mã nguồn chỉ được viết từ thiết kế Cho lập trình Cho tài liệu Ước lượng kích cỡ và thời gian − − Dựa vào các dữ liệu trong quá khứ Chia các thành phần có kích cỡ khoảng 100 LOC 9 Mô hình triển khai USDP Mô hình triển khai Mô hình thiết kế Thành phần triển khai Triển khai hệ thống con AnotherClass «trace» Area «file» Area.java File Area.java triển khai lớp Area (có một “trace” giữa chúng) 10 Mô hình triển khai USDP Mô hình thiết kế Mô hình triển khai «compress» «file» impl.jar AnotherClass «trace» Area Triển khai hệ thống con «file» Area.java «file» readme.txt Giao diện được cung cấp bởi lớp thiết kế và thành phần triển khai «compilation» «file» «explain» Area.class 11 Một số nguyên tắc trong lập trình 1. Cố gắng tái sử dụng 2. ENFORCE INTENTIONS z “If your code is intended to be used in particular ways only, write it so that the code cannot be used in any other way”. 12 ENFORCE INTENTIONS z Nếu một phần tử (lớp, hàm, biến, …) không dược sử dụng bởi các chức năng khác − z Định nghĩa chúng là private hoặc protected, … Sử dụng các toán tử như final, abstract, … 13 ENFORCE INTENTIONS z Có cái nhìn tổng thể, chương trình là cục bộ − Xây dựng các phần tử của chương trình: z z • • • … cục bộ nhất có thể … vô hình nhất có thể Các thuộc tính private Truy cập chúng bằng nhiều hàm truy cập (nếu yêu cầu) Các thuộc tính protected 14 Phong cách lập trình ■ Bao gåm c¸c yÕu tè: • c¸ch ®Æt tªn hµm vµ biÕn • c¸ch x©y dùng c©u lÖnh, cÊu tróc ch−¬ng trình • c¸ch viÕt chó thÝch H−íng tíi phong c¸ch lµm cho m· nguån • dÔ hiÓu, dÔ söa ®æi • an toµn (Ýt lçi) Ng−êi kh¸c cã thÓ hiÓu ®−îc, b¶o tri ®−îc 15 Tại sao cần dễ hiểu PhÇn mÒm lu«n cÇn söa ®æi - söa lçi - n©ng cÊp kÐo dµi tuæi thä, n©ng cao hiÖu qu¶ kinh tÕ NÕu kh«ng dÔ hiÓu - b¶o trì tèn thêi gian, chi phÝ cao - t¸c gi¶ ph¶i b¶o trì suèt vßng ®êi cña phÇn mÒm - b¶n th©n t¸c gi¶ còng kh«ng hiÓu 16 Chú thích Mäi ®iÒu ®−îc Chó thÝch trong ch−¬ng trình ■ Môc ®Ých sö dông cña c¸c biÕn ■ Chøc năng cña khèi lÖnh, c©u lÖnh • c¸c lÖnh ®iÒu khiÓn • c¸c lÖnh phøc t¹p ■ Chó thÝch c¸c m« ®un • môc ®Ých, chøc năng cña m« ®un • tham sè, gi¸ trÞ tr¶ l¹i (giao diÖn) • c¸c m« ®un thuéc cÊp • cÊu tróc, thuËt to¸n • nhiÖm vô cña c¸c biÕn côc bé • t¸c gi¶, ng−êi kiÓm tra, thêi gian 17 Đặt tên ĐÆt tªn biÕn, tªn hµm cã nghÜa, gîi nhí ■ Sö dông c¸c ký hiÖu, tõ tiÕng Anh cã nghÜa ■ Lµm cho dÔ ®äc • dïng DateOfBirth hoÆc date_of_birth kh«ng viÕt dateofbirth • ■ Tr¸nh ®Æt tªn qu¸ dµi • kh«ng ®Æt tªn dµi víi c¸c biÕn côc bé ■ Thèng nhÊt c¸ch dïng • tªn líp b¾t ®Çu b»ng chữ hoa, tªn h»ng toµn chữ hoa • tªn biÕn b¾t ®Çu b»ng chữ th−êng • i cho vßng lÆp, tmp cho c¸c gi¸ trÞ t¹m thêi... 18 Câu lệnh ■ C¸c c©u lÖnh ph¶i m« t¶ cÊu tróc • tôt lÒ, dÔ ®äc, dÔ hiÓu ■ Lµm ®¬n gi¶n c¸c lÖnh • • • mçi lÖnh trªn mét dßng triÓn khai c¸c biÓu thøc phøc t¹p h¹n chÕ truyÒn tham sè lµ kÕt qu¶ cña hµm, biÓu thøc printf("%s", strcpy(des, src)); ■ Tr¸nh c¸c cÊu tróc phøc t¹p: • • c¸c lÖnh if lång nhau ®iÒu kiÖn phñ ®Þnh if not 19 Hàm và biến cục bộ ■ Ch−¬ng trình cÇn ®−îc chia thµnh nhiÒu m« ®un (hµm) ■ Kh«ng viÕt hµm qu¸ dµi • Pre và Post conditions • kh«ng qu¸ 2 trang mµn hình • t¹o ra c¸c hµm thø cÊp ®Ó gi¶m ®é dµi tõng hµm ■ Kh«ng dïng qu¸ nhiÒu biÕn côc bé • kh«ng thÓ theo dâi ®ång thêi ho¹t ®éng cña nhiÒu biÕn (vd. kh«ng qu¸ 7 biÕn côc bé) 20
- Xem thêm -