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

Lập trình và ngôn ngữ lập trình (8)

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

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

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: 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

Chủ đề:
Lưu

Nội dung Text: Lập trình và ngôn ngữ lập trình (8)

  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
2=>2