intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Công nghệ phần mềm: Chương 8 - Nguyễn Thanh Bình

Chia sẻ: Fgnfffh Fgnfffh | Ngày: | Loại File: PDF | Số trang:11

58
lượt xem
8
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 8 Lập trình và ngôn ngữ lập trình thuộc bài giảng Công nghệ phần mềm trình bày các kiến thức cơ bản như: cơ bản về ngôn ngữ lập trình, tính chất của ngôn ngữ lập trình, đặc điểm chung của ngôn ngữ lập trình, các phương pháp lập trình cơ bản.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Công nghệ phần mềm: Chương 8 - Nguyễn Thanh Bình

  1. L p trình và ngôn ng l p trình (8) Nguy n Thanh Bình Khoa Công ngh Thông tin Trư ng ð i h c Bách khoa ð i h c ðà N ng L p trình k năng cá nhân năng l c cá nhân hi u bi t các công c l p trình l p trình viên c n nguyên t c l p trình kinh nghi m l p trình viên t t vi t chương trình • ñúng ñ n • d hi u • d b o trì, phát tri n 2 1
  2. Ngôn ng l p trình Có nhi u phương pháp l p trình khác nhau nhi u ngôn ng l p trình khác nhau ði m chung c a các ngôn ng l p trình (NNLT) d di n ñ t d hi u d th c thi trên máy tính M t s tính ch t c a NNLT ki u và ki m tra ki u mô-ñun hóa 3 Ki u H u h t các NNLT ñ u có khái ni m ki u ki u s , ki u lô-gíc... m t bi n có ki u d li u xác ñ nh Ki m tra ki u ñ m b o m t toán t /hàm ch áp d ng cho nh ng toán t /tham s có ki u cho phép 4 2
  3. Ki u Ngôn ng ñ nh ki u (types languages) có h th ng ki u cho phép ki m tra s d ng ki u phù h p mà không c n th c thi chương trình • ki m tra tĩnh Ngôn ng ñ nh ki u cho phép phát hi n s m m t s l i liên quan ñ n ki u Ngôn ng ñ nh ki u C, Java, C++... 5 ða hình Ưu ñi m c a h th ng ki u và ki m tra ki u ch t ch d ki m tra Tuy nhiên h th ng ki u ph i m m d o trong s d ng • ña hình 6 3
  4. ða hình M t s tình hu ng ña hình Vi t hàm áp d ng cho các m ng có s ph n t khác nhau • ki u m ng ñư c ki m tra khi biên d ch • s ph n t c a m ng ñư c ki m tra khi th c thi Áp d ng hàm cho các ki u d li u khác nhau • xây d ng nhi u phiên b n c a hàm tương ng v i các ki u khác nhau • ho c ch xây d ng m t phiên b n c a hàm, x lý khác nhau ñư c th c hi n khi th c thi • template (C++), generic (Java) 7 ða hình M t s tình hu ng ña hình Vi t hàm áp d ng cho các m ng có s ph n t khác nhau • ki u m ng ñư c ki m tra khi biên d ch • s ph n t c a m ng ñư c ki m tra khi th c thi Áp d ng hàm cho các ki u d li u khác nhau • xây d ng nhi u phiên b n c a hàm tương ng v i các ki u khác nhau • ho c ch xây d ng m t phiên b n c a hàm, x lý khác nhau ñư c th c hi n khi th c thi • template (C++), generic (Java) • ho c s d ng ki u con/l p con • ña hình trong ngôn ng l p trình hư ng ñ i tư ng 8 4
  5. Mô-ñun hóa Xu t hi n vào nh ng năm 70 ðóng vai trò quan tr ng ñ t o ra ph n m m ch t lư ng Thi t k hư ng mô-ñun ph n m m = t p h p các mô-ñun và quan h gi a chúng H u h t các NNLT ñ u h tr mô-ñun hóa 9 Mô-ñun hóa M t mô-ñun g m hai ph n Ph n giao di n • giao ti p v i bên ngoài mô-ñun ay mô- ñun khác Ph n thân • n i dung c a mô-ñun • c c b ñ i v i m i mô-ñun, che d u ñ i v i mô-ñun khác 10 5
  6. Mô-ñun hóa Các mô-ñun ch trao ñ i d li u qua ph n giao di n không s d ng bi n toàn c c N u thay ñ i ph n thân thì ít nh hư ng (ho c không nh hư ng) ñ n các mô-ñun khác Trong ngôn ng l p trình c u trúc mô-ñun = hàm Trong ngôn ng l p trình hư ng ñ i tư ng mô-ñun = l p / phương th c 11 Các phương pháp l p trình cơ b n L p trình th t c/c u trúc (procedural programming) L p trình hư ng ñ i tư ng (object-oriented programming) L p trình hàm (functional programming) L p trình lô-gíc (logic programming) 12 6
  7. L p trình th t c ñư c s d ng ph bi n l p trình có c u trúc phù h p v i thi t k hư ng ch c năng NNLT th t c Fortran, Ada, Pascal, C... 13 L p trình hư ng ñ i tư ng khái ni m cơ b n ñ i tư ng, l p ñóng gói th a k ña hình xu hư ng phát tri n c a các NNLT hi n ñ i NNLT hư ng ñ i tư ng Smalltalk, C++, Java, Delphi... 14 7
  8. L p trình hàm tính toán các bi u th c hàm tính toán d a trên các giá tr c a tham s thao tác trên danh sách áp d ng lĩnh v c tính toán trí tu nhân t o NNLT hàm LISP, Scheme... 15 L p trình lô-gíc th c hi n các bi u th c lô-gíc khái ni m h p gi i (resolution) • tìm ki m giá tr c a các bi n sao cho bi u th c lô- gíc có giá tr ñúng ng d ng xây d ng h chuyên gia x lý ngôn ng t nhiên NNLT lô-gíc Prolog 16 8
  9. Ch n NNLT quy t ñ nh quan tr ng trong phát tri n ph n m m gi m chi phí mã ngu n ch t lư ng d b o trì, phát tri n 17 Ch n NNLT d a vào nhi u y u t (1) yêu c u c a khách hàng • khách hàng t b o trì s n ph m chương trình d ch • c n có chương trình d ch có ch t lư ng t t công c h tr • d dàng quá trình l p trình, b o trì kinh nghi m c a l p trình viên • ch n NNLT mà l p trình làm ch 18 9
  10. Ch n NNLT d a vào nhi u y u t (2) yêu c u tính kh chuy n (portability) • th c hi n trên nhi u máy tính/plaform khác nhau lĩnh v c ng d ng • h th ng nhúng: C, Assembly... • h th ng qu n lý: .NET, VB, C++... • h chuyên gia: Prolog • m ng: Java, .NET... • website: PHP, ASP... • không t n t i ngôn ng ña năng cho m i ng d ng 19 Phong cách l p trình C n có chương trình d hi u ph thu c vào ñ c ñi m NNLT phong cách c a ngư i l p trình Phong cách l p trình không do l p trình viên t ñ t ra mà do t ch c/doanh nghi p/d án ñ t ra các lu t l p trình các quy ư c l p trình M c ñích mã ngu n d hi u, d ki m th , d b o trì ít l i 20 10
  11. Phong cách l p trình M t s nguyên t c l p trình ñ t tên • có ý nghĩa, g i nh trình bày • r ràng, d hi u chú thích • ñ yñ ,d ñ c h n ch s d ng c u trúc khó hi u • break, continue, goto... ví d • quy ư c l p trình C++ 21 11
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
3=>0