1. Trang chủ
  2. » Công Nghệ Thông Tin

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

11 356 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 69,77 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

L ậ p trình và ngôn

Khoa Công nghệ Thông tin

Trường ðại hc Bách khoa

ðại hc ðà Nng

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 ể

Trang 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ễ 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

4

Ki ể u

 H ầ u h ế t các NNLT ñề u có khái nim

kiu

ki ể u s ố , ki ể u lô-gíc

m ộ t bi ế n có ki ể u d ữ li ệ u xác ñị nh



 Kim tra kiu

ñả 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

Trang 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++

ð 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

Trang 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)

8

ð 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 nhiu phiên bn ca hàm tươ ng ứ ng v ớ i các

ki ể u khác nhau

• ho ặ c ch ỉ xây d ựng mt phiên bn ca 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 kiu con/lp con

• ñ a hình trong ngôn ng ữ l ậ p trình h ướ ng ñố i t ượ ng

Trang 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

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

Trang 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

12

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)

Trang 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

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

Trang 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

16

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

Trang 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

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 ủ

Trang 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

20

Phong cách l ậ p trình

 C ầ n có chương tr ình d ễ hi ể

 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

Trang 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 ể

 chú thích

• ñầ y ñủ , d ễ ñọ c

 h n ch ế s ử d ng c ấ u trúc khó hi ể

• break, continue, goto

 ví d ụ

• quy ướ c l ậ p trình C++

Ngày đăng: 15/05/2014, 10:25

TỪ KHÓA LIÊN QUAN

w