Bài giảng môn học Công nghệ phần mềm: Phần 2 - Nguyễn Chánh Thành
Số trang: 61
Loại file: pdf
Dung lượng: 877.59 KB
Lượt xem: 9
Lượt tải: 0
Xem trước 7 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Nối tiếp phần 1 của "Bài giảng môn học Công nghệ phần mềm" mời các bạn cùng tìm hiểu phần 2 để nắm bắt một số vấn đề cơ bản về lập trình; xác minh và thẩm định; quản lý dự án phát triển phần mềm;... Cùng tìm hiểu để nắm bắt nội dung thông tin tài liệu.
Nội dung trích xuất từ tài liệu:
Bài giảng môn học Công nghệ phần mềm: Phần 2 - Nguyễn Chánh ThànhCHƯƠNG 4. LẬP TRÌNH4.1. Ngôn ngữ lập trình Ngôn ngữ lập trình là phương tiện ñể liên lạc giữa con người và máy tính. Tiến trìnhlập trình - sự liên lạc thông qua ngôn ngữ lập trình - là một hoạt ñộng con người. Lậptrình là bước cốt lõi trong tiến trình công nghệ phần mềm.4.1.1. ðặc trưng của ngôn ngữ lập trình Cách nhìn công nghệ phần mềm về các ñặc trưng của ngôn ngữ lập trình tập trungvào nhu cầu xác ñịnh dự án phát triển phần mềm riêng. Mặc dầu người ta vẫn cần các yêucầu riêng cho chương trình gốc, có thể thiết lập ñược một tập hợp tổng quát những ñặctrưng công nghệ:- dễ dịch thiết kế sang chương trình,- có trình biên dịch hiệu quả,- khả chuyển chương trình gốc,- có sẵn công cụ phát triển,- dễ bảo trì. Bước lập trình bắt ñầu sau khi thiết kế chi tiết ñã ñược xác ñịnh, xét duyệt và sửa ñổinếu cần. Về lý thuyết, việc sinh chương trình gốc từ một ñặc tả chi tiết nên là trực tiếp.Dễ dịch thiết kế sang chương trình ñưa ra một chỉ dẫn về việc một ngôn ngữ lập trìnhphản xạ gần gũi ñến mức nào cho một biểu diễn thiết kế. Một ngôn ngữ cài ñặt trực tiếpcho các kết cấu có cấu trúc, các cấu trúc dữ liệu phức tạp, vào/ra ñặc biệt, khả năng thaotác bit, và các kết cấu hướng sự vật sẽ làm cho việc dịch từ thiết kế sang chương trình gốcdễ hơn nhiều (nếu các thuộc tính này ñược xác ñịnh trong thiết kế). Mặc dầu những tiến bộ nhanh chóng trong tốc ñộ xử lý và mật ñộ nhớ ñã bắt ñầu làmgiảm nhẹ nhu cầu chương trình siêu hiệu quả, nhiều ứng dụng vẫn còn ñòi hỏi cácchương trình chạy nhanh, gọn (yêu cầu bộ nhớ thấp). Các ngôn ngữ với trình biên dịchtối ưu có thể là hấp dẫn nếu hiệu năng phần mềm là yêu cầu chủ chốt. Tính khả chuyểnchương trình gốc là một ñặc trưng ngôn ngữ lập trình có thể ñược hiểu theo ba cách khácnhau:- Chương trình gốc có thể ñược chuyển từ bộ xử lý này sang bộ xử lý khác và từ trình biên dịch nọ sang trình biên dịch kia với rất ít hoặc không phải sửa ñổi gì.- Chương trình gốc vẫn không thay ñổi ngay cả khi môi trường của nó thay ñổi (như việc cài ñặt bản mới của hệ ñiều hành). 56- Chương trình gốc có thể ñược tích hợp vào trong các bộ trình phần mềm khác nhau với ít hay không cần thay ñổi gì vì các ñặc trưng của ngôn ngữ lập trình. Trong số ba cách hiểu về tính khả chuyển này thì cách thứ nhất là thông dụng nhất.Việc ñưa ra các chuẩn (do tổ chức tiêu chuẩn quốc tế IFO hay Viện tiêu chuẩn quốc giaMĩ - ANSI) góp phần làm nâng cao tính khả chuyển. Tính sẵn có của công cụ phát triểncó thể làm ngắn bớt thời gian cần ñể sinh ra chương trình gốc và có thể cải thiện chấtlượng của chương trình. Nhiều ngôn ngữ lập trình có thể cần tới một loạt công cụ kể cảtrình biên dịch gỡ lỗi, trợ giúp ñịnh dạng chương trình gốc, các tiện nghi soạn thảo cósẵn, các công cụ kiểm soát chương trình gốc, thư viện chương trình con mở rộng trongnhiều lĩnh vực ứng dụng, các trình duyệt, trình biên dịch chéo cho phát triển bộ vi xử lý,khả năng bộ xử lý macro, công cụ công nghệ ngược và những công cụ khác. Trong thựctế, khái niệm về môi trường phát triển phần mềm tốt (bao hàm cả các công cụ) ñã ñượcthừa nhận như nhân tố ñóng góp chính cho công nghệ phần mềm thành công. Tính dễ bảo trì của chương trình gốc có tầm quạn trọng chủ chốt cho tất cả các nỗ lựcphát triển phần mềm không tầm thường. Việc bảo trì không thể ñược tiến hành chừng nàongười ta còn chưa hiểu ñược phần mềm. Các yếu tố của cấu hình phần mềm (như tài liệuthiết kế) ñưa ra một nền tảng cho việc hiểu biết, nhưng cuối cùng thì chương trình gốcvẫn phải ñược ñọc và sửa ñổi theo những thay ñổi trong thiết kế. Tính dễ dịch thiết kế sang chương trình là một yếu tố quan trọng ñể dễ bảo trì chươngtrình gốc. Bên cạnh ñó, các ñặc trưng tự làm tài liệu của ngôn ngữ (như chiều dài ñượcphép của tên gọi, ñịnh dạng nhãn, ñịnh nghĩa kiểu, cấu trúc dữ liệu) có ảnh hưởng mạnhñến tính dễ bảo trì.4.1.2. Lựa chọn ngôn ngữ lập trình Các ñặc trưng của ngôn ngữ lập trình sẽ quyết ñịnh miền ứng dụng của ngôn ngữ.Miền ứng dụng là yếu tố chính ñể chúng ta lựa chọn ngôn ngữ cho một dự án phần mềm.C thường là một ngôn ngữ hay ñược chọn cho việc phát triển phần mềm hệ thống. Trong các ứng dụng thời gian thực chúng ta hay gặp các ngôn ngữ như Ada, C, C++và cả hợp ngữ do tính hiệu quả của chúng. Các ngôn ngữ này và Java cũng ñược dùngcho phát triển phần mềm nhúng. Trong lĩnh vực khoa học kỹ thuật thì FORTRAN với khả năng tính toán với ñộ chínhxác cao và thư viện toán học phong phú vẫn còn là ngôn ngữ thống trị. Tuy vậy,PASCAL và C cũng ñược dùng rộng rãi. COBOL là ngôn ngữ cho ứng dụng kinh doanh và khai thác CSDL lớn nhưng cácngôn ngữ thế hệ thứ tư ñã dần dần chiếm ưu thế. 57 BASIC vẫn ñang ...
Nội dung trích xuất từ tài liệu:
Bài giảng môn học Công nghệ phần mềm: Phần 2 - Nguyễn Chánh ThànhCHƯƠNG 4. LẬP TRÌNH4.1. Ngôn ngữ lập trình Ngôn ngữ lập trình là phương tiện ñể liên lạc giữa con người và máy tính. Tiến trìnhlập trình - sự liên lạc thông qua ngôn ngữ lập trình - là một hoạt ñộng con người. Lậptrình là bước cốt lõi trong tiến trình công nghệ phần mềm.4.1.1. ðặc trưng của ngôn ngữ lập trình Cách nhìn công nghệ phần mềm về các ñặc trưng của ngôn ngữ lập trình tập trungvào nhu cầu xác ñịnh dự án phát triển phần mềm riêng. Mặc dầu người ta vẫn cần các yêucầu riêng cho chương trình gốc, có thể thiết lập ñược một tập hợp tổng quát những ñặctrưng công nghệ:- dễ dịch thiết kế sang chương trình,- có trình biên dịch hiệu quả,- khả chuyển chương trình gốc,- có sẵn công cụ phát triển,- dễ bảo trì. Bước lập trình bắt ñầu sau khi thiết kế chi tiết ñã ñược xác ñịnh, xét duyệt và sửa ñổinếu cần. Về lý thuyết, việc sinh chương trình gốc từ một ñặc tả chi tiết nên là trực tiếp.Dễ dịch thiết kế sang chương trình ñưa ra một chỉ dẫn về việc một ngôn ngữ lập trìnhphản xạ gần gũi ñến mức nào cho một biểu diễn thiết kế. Một ngôn ngữ cài ñặt trực tiếpcho các kết cấu có cấu trúc, các cấu trúc dữ liệu phức tạp, vào/ra ñặc biệt, khả năng thaotác bit, và các kết cấu hướng sự vật sẽ làm cho việc dịch từ thiết kế sang chương trình gốcdễ hơn nhiều (nếu các thuộc tính này ñược xác ñịnh trong thiết kế). Mặc dầu những tiến bộ nhanh chóng trong tốc ñộ xử lý và mật ñộ nhớ ñã bắt ñầu làmgiảm nhẹ nhu cầu chương trình siêu hiệu quả, nhiều ứng dụng vẫn còn ñòi hỏi cácchương trình chạy nhanh, gọn (yêu cầu bộ nhớ thấp). Các ngôn ngữ với trình biên dịchtối ưu có thể là hấp dẫn nếu hiệu năng phần mềm là yêu cầu chủ chốt. Tính khả chuyểnchương trình gốc là một ñặc trưng ngôn ngữ lập trình có thể ñược hiểu theo ba cách khácnhau:- Chương trình gốc có thể ñược chuyển từ bộ xử lý này sang bộ xử lý khác và từ trình biên dịch nọ sang trình biên dịch kia với rất ít hoặc không phải sửa ñổi gì.- Chương trình gốc vẫn không thay ñổi ngay cả khi môi trường của nó thay ñổi (như việc cài ñặt bản mới của hệ ñiều hành). 56- Chương trình gốc có thể ñược tích hợp vào trong các bộ trình phần mềm khác nhau với ít hay không cần thay ñổi gì vì các ñặc trưng của ngôn ngữ lập trình. Trong số ba cách hiểu về tính khả chuyển này thì cách thứ nhất là thông dụng nhất.Việc ñưa ra các chuẩn (do tổ chức tiêu chuẩn quốc tế IFO hay Viện tiêu chuẩn quốc giaMĩ - ANSI) góp phần làm nâng cao tính khả chuyển. Tính sẵn có của công cụ phát triểncó thể làm ngắn bớt thời gian cần ñể sinh ra chương trình gốc và có thể cải thiện chấtlượng của chương trình. Nhiều ngôn ngữ lập trình có thể cần tới một loạt công cụ kể cảtrình biên dịch gỡ lỗi, trợ giúp ñịnh dạng chương trình gốc, các tiện nghi soạn thảo cósẵn, các công cụ kiểm soát chương trình gốc, thư viện chương trình con mở rộng trongnhiều lĩnh vực ứng dụng, các trình duyệt, trình biên dịch chéo cho phát triển bộ vi xử lý,khả năng bộ xử lý macro, công cụ công nghệ ngược và những công cụ khác. Trong thựctế, khái niệm về môi trường phát triển phần mềm tốt (bao hàm cả các công cụ) ñã ñượcthừa nhận như nhân tố ñóng góp chính cho công nghệ phần mềm thành công. Tính dễ bảo trì của chương trình gốc có tầm quạn trọng chủ chốt cho tất cả các nỗ lựcphát triển phần mềm không tầm thường. Việc bảo trì không thể ñược tiến hành chừng nàongười ta còn chưa hiểu ñược phần mềm. Các yếu tố của cấu hình phần mềm (như tài liệuthiết kế) ñưa ra một nền tảng cho việc hiểu biết, nhưng cuối cùng thì chương trình gốcvẫn phải ñược ñọc và sửa ñổi theo những thay ñổi trong thiết kế. Tính dễ dịch thiết kế sang chương trình là một yếu tố quan trọng ñể dễ bảo trì chươngtrình gốc. Bên cạnh ñó, các ñặc trưng tự làm tài liệu của ngôn ngữ (như chiều dài ñượcphép của tên gọi, ñịnh dạng nhãn, ñịnh nghĩa kiểu, cấu trúc dữ liệu) có ảnh hưởng mạnhñến tính dễ bảo trì.4.1.2. Lựa chọn ngôn ngữ lập trình Các ñặc trưng của ngôn ngữ lập trình sẽ quyết ñịnh miền ứng dụng của ngôn ngữ.Miền ứng dụng là yếu tố chính ñể chúng ta lựa chọn ngôn ngữ cho một dự án phần mềm.C thường là một ngôn ngữ hay ñược chọn cho việc phát triển phần mềm hệ thống. Trong các ứng dụng thời gian thực chúng ta hay gặp các ngôn ngữ như Ada, C, C++và cả hợp ngữ do tính hiệu quả của chúng. Các ngôn ngữ này và Java cũng ñược dùngcho phát triển phần mềm nhúng. Trong lĩnh vực khoa học kỹ thuật thì FORTRAN với khả năng tính toán với ñộ chínhxác cao và thư viện toán học phong phú vẫn còn là ngôn ngữ thống trị. Tuy vậy,PASCAL và C cũng ñược dùng rộng rãi. COBOL là ngôn ngữ cho ứng dụng kinh doanh và khai thác CSDL lớn nhưng cácngôn ngữ thế hệ thứ tư ñã dần dần chiếm ưu thế. 57 BASIC vẫn ñang ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng môn học Công nghệ phần mềm Môn học Công nghệ phần mềm Công nghệ phần mềm Thiết kế phần mềm Ngôn ngữ lập trình Quản lý dự án phát triển phần mềmGợi ý tài liệu liên quan:
-
62 trang 401 3 0
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 271 0 0 -
Bài thuyết trình Ngôn ngữ lập trình: Hệ điều hành Window Mobile
30 trang 263 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 262 0 0 -
Giáo trình Lập trình cơ bản với C++: Phần 1
77 trang 231 0 0 -
Giáo trình Công nghệ phần mềm nâng cao: Phần 2
202 trang 226 0 0 -
Bài giảng Một số hướng nghiên cứu và ứng dụng - Lê Thanh Hương
13 trang 221 0 0 -
Giáo án Tin học lớp 11 (Trọn bộ cả năm)
125 trang 214 1 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 203 0 0 -
Giáo trình Công nghệ phần mềm nâng cao: Phần 1
151 trang 196 0 0