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

bài giảng nguyên lý ngôn ngư lập trình

6 662 7

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

THÔNG TIN TÀI LIỆU

Nội dung

BM Khoa học Máy tính BM Khoa học máy tính Chương 1: Mở đầu- Giới thiệu an toàn bảo mật thông tin Chương 1: Giới thiệu ngôn ngữ lập trình CHƯƠNG 1: GIỚI THIỆU VỀ NGÔN NGỮ LẬP TRÌNH Các ngôn ngữ Assembly Fortran Cobol Ngôn ngữ lập trình PASCAL Ngôn ngữ lập trình C Ngôn ngữ lập trình C++ Ngôn ngữ lập trình JAVA VISUAL BASIC Assembly Ngôn ngữ Assembly bước tiến vượt khỏi với ngôn ngữ máy khó hiểu Ngôn ngữ xuất vào năm 1950, thiết kế để máy tính trở nên thân thiện với người sử dụng Assembly đưa khái niệm biến (variable), nhờ mà ta gán ký hiệu cho vị trí nhớ mà viết lại địa dạng nhị phân lần sử dụng Assembly chứa vài "phép toán giả", tức ta biểu diễn mã phép toán dạng lệnh (statement) thay dạng nhị phân Sau viết chương trình Assembly, lập trình viên phải chạy thông qua Assembler Assembler chương trình biên dịch (compiler), dịch chương trình Assembly sang ngôn ngữ máy Fortran Fortran ngôn ngữ lập trình cấp cao cổ nhất, phát triển vào năm 1950 Fortran tên viết tắt Formula Translator Nó có nhiều phiên khác Fortran IV lấy làm chuẩn vào năm 1966 Fortran 77 sau có thêm nhiều đặc điểm Gần Fortran 90 phát triển Ngoài chuẩn Fortran kể có số "dị bản" khác, ví dụ F pha trộn Fortran với ngôn ngữ hướng module, hay High Performance Fortran (HPF) dùng cho cluster Fortran chẳng có đặc sắc Nó không sử dụng nhiều ngoại trừ giới khoa học, nơi cần thực nhiều tính toán toán học Fortran có logic lập trình hay nên sử dụng để dạy lập trình trường học Cobol Cobol tên viêt tắt Common Business Oriented Language Nó phát triển cuối năm 1950 ngôn ngữ cấp cao cổ thứ nhì (sau Fortran) Cobol hướng vào giới thương mại Nó ngôn ngữ dài dòng Chương trình Cobol thường dài chương trình viết ngôn ngữ khác Dù vậy, ngôn ngữ tốt dễ đọc Dù cổ Cobol sử dụng phổ biến giới thương mại Ngôn ngữ lập trình Pascal Đây ngôn ngữ giáo sư Niklaus Wirth thiết kế vào năm 1970 với mục đích giảng dạy ý niệm lập trình có cấu trúc Nhưng sau thời gian tính ưu việt nên Pascal sử dụng rộng rãi Pascal ngôn ngữ lập trình bậc cao Trước Pascal phát triển việc lập trình thực ngôn ngữ cấp thấp, lập trình viên khó khăn việc xây dựng chương trình lớn Pascal dùng ngôn ngữ sát với ngôn ngữ tự nhiên thân thiện với người lập trình Do giảm bớt công việc nặng nhọc cho người lập trình Trần Văn Dũng- An toàn bảo & mật thông tinTrần Văn Dũng – Nguyên lý ngôn ngữ lập trình BM Khoa học Máy tính BM Khoa học máy tính Chương 1: Mở đầu- Giới thiệu an toàn bảo mật thông tin Chương 1: Giới thiệu ngôn ngữ lập trình Pascal kết hợp đặc tính gọn, dễ nhớ, khả truy cập cấp thấp, cấu trúc giữ liệu đa dạng Pascal hỗ trợ khả đưa chương trình viết ASSEMBLER vào chương trình bạn, khả đồ hoạ hướng đối tượng Pascal ngôn ngữ lập trình có cấu trúc Tính cấu trúc Pascal thể qua yếu tố: cấu trúc liệu, cấu trúc toán tử cấu trúc công cụ thủ tục • Tính cấu trúc liệu thể qua phần mô tả Cũng ngôn ngữ lập trình khác, Pascal có số kiểu liệu định nghĩa sẵn phép toán kiểu liệu Từ kiểu liệu đó, người lập trình xây dựng kiểu liệu phức tạp Sau để khai báo đối tượng thuộc kiểu liệu phức tạp ta không cần trình bày lại cấu trúc thiết lập, mà cần tham chiếu đến kiểu • Tính cấu trúc toán tử thể chỗ bên toán tử thực động tác, có toán tử thực nhiều động tác, song quan trọng Pascal toán tử hợp thành Toán tử hợp thành xây dựng khoá BEGIN, sau đến dãy toán tử thành phần kết thúc từ khoá END • Tính cấu trúc công cụ thủ tục thể thông qua khả phân tích chương trình thành modul độc lập lời gọi đệ quy thủ tục Pascal ngôn ngữ khó học ngôn ngữ dành cho người bắt đầu làm quen với lập trình (BASIC) lại tỏ có đặc tính cấu trúc hoá tốt cú pháp mang lỗi Pascal không phân biệt chữ hoa chữ thường, người lập trình thoải mái việc viết câu lệnh đặt tên cho đối tượng Việc dịch chương trình viết Pascal thực trình biên dịch Khi chương trình chứa lỗi cú pháp mã máy không sinh Còn lỗi sau dịch xong nhận mã đối tượng Với chương trình lớn dùng ngôn ngữ lập trình có cấu trúc để quản lý khó khăn, để đáp ứng nhu cầu người lập trình phiên Pascal sau có hỗ trợ lập trình hướng đối tượng Do mục đích ban đầu Pascal đặc điểm nó, Pascal thích hợp dùng để giảng dạy nhà trường cho người bắt đầu học lập trình Còn toán ứng dụng thực tế Pascal sử dụng Ngôn ngữ lập tình C Ngôn ngữ C phát triển từ ngôn ngữ B máy UNIX Đến ANSI ban hành chuẩn C Cũng giống PASCAL, C ngôn ngữ lập trình có cấu trúc Nhưng nói chặt chẽ mặt kỹ thuật C ngôn ngữ lập trình có cấu trúc cống C không cho phép khối giống (chẳng hạn bạn khai báo hàm hàm khác) C ngôn ngữ cấp trung cho phép thao tác bit, byte, địa C kết hợp yếu tố mềm dẻo ngôn ngữ bậc cao khả điều khiển mạnh ASSEMBLER Do vậy, C tỏ thích hợp với lập trình hệ thống Chương trình viết C tập hợp hàm riêng biệt, giúp cho việc che giấu mã liệu trở nên dễ dàng Hàm viết người lập trình khác không ảnh hưởng đến biên dịch riêng biệt trước ráp nối thành chương trình So với PASCAL C thoáng hơn, chẳng hạn C không kiểm tra kiểu chạy, điều người lập trình đảm nhiệm C tỏ gắn bó so với ngôn ngữ bậc cao, C lại thực tế so với ngôn ngữ khác Một đặc điểm bật C C có tính tương thích cao Chương trình viết C cho loại máy hệ điều hành chuyển dễ dàng sang loại máy hệ điều hành khác Hiện hầu hết loại máy tính có trình biên dịch C Một chương trình viết C dễ tối ưu, chạy với tốc độ cao tiết kiệm nhớ Tuy vậy, C thích hợp với chương trình hệ thống chương trình đòi hỏi tốc độ Còn với toán lớn phức tạp PASCAL, C khó kiểm soát chương trình Ngôn ngữ C++ Trần Văn Dũng- An toàn bảo & mật thông tinTrần Văn Dũng – Nguyên lý ngôn ngữ lập trình BM Khoa học Máy tính Chương 1: Mở đầu- Giới thiệu an toàn bảo mật thông tin BM Khoa học máy tính Chương 1: Giới thiệu ngôn ngữ lập trình Ngôn ngữ C++ phát triển từ ngôn ngữ C Có thể coi C++ cải tiến C Nó mang đầy đủ đặc tính C Một chương trình viết C biên dịch trình biên dịch C++ Ớ phiên đầu tiên, thực chất mã nguồn C++ dịch sang mã nguồn C, từ mã nguồn C tiếp tục biên dịch tiếp C++ ngôn ngữ lập trình hướng đối tượng, có đầy đủ tính chất ngôn ngữ lập trình hướng đối tượng: tính kế thừa, tính đóng kín tính đa dạng Nhưng C++ ngôn ngữ hướng đối tượng hoàn toàn mà ngôn ngữ "đa hướng" Vì C++ hỗ trợ lập trình hướng mệnh lệnh lập trình hướng đối tượng C++ kết hợp ý tưởng hay lập trình có cấu trúc với việc phân chia toán thành nhóm nhỏ có quan hệ với nhau, nhóm đối tượng chứa lệnh liệu riêng C++ đưa vào khái niệm hàm ảo, tải đè hàm, tải đè toán tử cho phép tạo kiểu liệu trừu tượng, hỗ trợ thừa kế bội Mục tiêu C++ tiếp cận ý tưởng phương pháp luận hướng đối tượng trừu tượng liệu Các đặc tính C ++ cho phép người lập trình xây dựng thư viện phần mềm có chất lượng cao phục vụ đề án lớn C++ ngôn ngữ thích hợp cho việc xây dựng chương trình lớn hệ soạn thảo, chương trình dịch, hệ quản trị sở liệu, hệ truyền thông, Ngôn ngữ lập trình JAVA JAVA tạo trước năm 1990 nhóm nhà phát triển Sun Microsystem có nhiệm vụ phải viết phần mềm hệ thống để nhúng vào sản phẩm điện tử khách hàng Họ khắc phục số hạn chế C++ để tạo ngôn ngữ lập trình JAVA Do phát triển từ C++ nên JAVA giống C++ Nhưng JAVA ngôn ngữ hướng đối tượng hoàn toàn, C++ ngôn ngữ đa hướng JAVA ngôn ngữ lập trình mạnh hội tụ yếu tố sau: • JAVA ngôn ngữ hướng đối tượng (object oriented programming): Các ngôn ngữ lập trình hướng đối tượng có modul thay đổi xác định trước mà người lập trình gọi để thực nhiệm vụ cụ thể Trong JAVA modul gọi lớp (class) chúng lưu trữ thư viện lớp tạo nên sở công cụ phát triển JAVA (Java Development Kit) Trong JAVA tất hàm biến phải thành phần lớp • Đơn giản (simple): Mặc dù dựa sở C++ JAVA lược bỏ tính khó C++ làm cho ngôn ngữ dễ dùng Do việc đào tạo lập trình viên JAVA ngắn JAVA trở nên thân thiện với người sử dụng Trong JAVA trỏ, không hỗ trợ toán tử Overloading, tiền xử lý Tất đối tượng chương trình JAVA tạo heap toán tử new - chúng không tạo stack JAVA ngôn ngữ gom rác (garbage - collected language), không cần đếm new với delete - nguồn nhớ chung dễ thất thoát chương trình C++ Trong thực tế toán tử delete JAVA • Đa luồng (multithread): Có nghĩa JAVA cho phép xây dựng trình ứng dụng, đó, nhiều tiến trình xảy đồng thời Tính đa luồng cho phép nhà lập trình biên soạn phần mềm đáp ứng tốt hơn, tương tác thực theo thời gian thực • JAVA độc lập với cấu trúc máy: Đây thuộc tính đặc sắc JAVA Có nghĩa JAVA không phụ thuộc vào hệ máy, ứng dụng JAVA dùng máy tính Có thể nói JAVA ngôn ngữ lập trình cho Web: • Hiểu mạng: JAVA viết để hoạt động mạng có thủ tục để quản lý giao thức TCP/IP, FTP, HTTP Nói cách khác JAVA xây dựng để hoàn toàn tương thích Internet • JAVA cho phép tạo trang Web động, ứng dụng nhúng • An toàn: Đặc tính an toàn ngôn ngữ lập trình bắt nguồn từ việc có phần hạn chế cài đặt sẵn nhằm đề phòng chương trình JAVA thực chức ghi vào ổ cứng cho phép vi rút xâm Trần Văn Dũng- An toàn bảo & mật thông tinTrần Văn Dũng – Nguyên lý ngôn ngữ lập trình BM Khoa học Máy tính BM Khoa học máy tính Chương 1: Mở đầu- Giới thiệu an toàn bảo mật thông tin Chương 1: Giới thiệu ngôn ngữ lập trình nhập vào từ mạng Visual Basic Visual Basic môi trường lập trình phát triển Microsoft nhằm cung cấp cho người lập trình phương pháp phát triển ứng dụng Windows nhanh dễ Visual Basic cung cấp cho người lập trình môi trường tích hợp, nơi mà người lập trình sử dụng công cụ để tạo giao diện người sử dụng cách nhanh chóng dễ dàng tạo mã để trả lời lại tác động từ phiá người sử dụng Visual Basic cung cấp cho người lập trình kỹ thuật lập trình hướng kiện kỹ thuật lập trình hướng đối tượng Môi trường phát triển Visual Basic có công cụ soạn thảo gỡ rối tinh vi, cho phép người lập trình gắn mã với giao diện cách nhanh chóng cho kiện Visual Basic cung cấp cho bạn giao diện nhanh bù lại bạn phải phải trả giá tốc độ Do yêu cầu toán cần đến tốc độ bạn nên dùng C++ Các ngôn ngữ khác Còn có nhiều ngôn ngữ khác với đặc điểm khác nhau, thiết kế cho vài mục đích đặc biệt đó, ví dụ: Perl, SQL, HTML ngôn ngữ thông dụng Tổng hợp từ nhiều nguồn Trần Văn Dũng- An toàn bảo & mật thông tinTrần Văn Dũng – Nguyên lý ngôn ngữ lập trình BM Khoa học Máy tính BM Khoa học máy tính Chương 1: Mở đầu- Giới thiệu an toàn bảo mật thông tin Chương 1: Giới thiệu ngôn ngữ lập trình NGÔN NGỮ KỊCH BẢN Một ngôn ngữ kịch hay ngôn ngữ lập trình kịch (tiếng Anh: scripting language hay script language) ngôn ngữ lập trình hỗ trợ viết kịch (script) Các chương trình viết cho ngôn ngữ kịch thực thi thông qua lời gọi từ tác vụ thay chạy thủ công người dùng Kịch viết thực "on-the-fly", tức không cần biên dịch (compile) liên kết (linked) Khác với ngôn ngữ thông thường, chương trình viết cần biên dịch thành mã máy trước đến tay người dùng, chương trình viết ngôn ngữ kịch thường chạy trực tiếp từ mã nguồn bytecode, người sử dụng hoàn toàn xem đổi với mã nguồn chương trình JavaScript, theo phiên hành, ngôn ngữ lập trình kịch dựa đối tượng phát triển từ ý niệmnguyên mẫu Ngôn ngữ dùng rộng rãi cho trang web, dùng để tạo khả viết script sử dụng đối tượng nằm sẵn ứng dụng Nó vốn phát triển Brendan Eich Hãng truyền thông Netscapevới tên Mocha, sau đổi tên thành LiveScript, cuối thành JavaScript Giống Java, JavaScript có cú pháp tương tự C, gần với Self Java .js phần mở rộng thường dùng cho tập tin mã nguồn JavaScript Phiên JavaScript phiên 1.5, tương ứng với ECMA-262 ECMAScript phiên chuẩn hóa JavaScript Trình duyệt Mozilla phiên 1.8 beta có hỗ trợ không đầy đủ cho E4X - phần mở rộng cho JavaScript hỗ trợ làm việc với XML, chuẩn hóa ECMA-35 JavaScript ngôn ngữ lập trình dựa nguyên mẫu với cú pháp phát triển từ C Giống C, JavaScript có khái niệmtừ khóa, đó, JavaScript gần mở rộng Cũng giống C, JavaScript xử lý xuất/nhập (input/output) riêng Trong C sử dụng thư viện xuất/nhập chuẩn, JavaScript dựa vào phần mềm ngôn ngữ gắn vào để thực xuất/nhập Trần Văn Dũng- An toàn bảo & mật thông tinTrần Văn Dũng – Nguyên lý ngôn ngữ lập trình BM Khoa học Máy tính BM Khoa học máy tính Chương 1: Mở đầu- Giới thiệu an toàn bảo mật thông tin Chương 1: Giới thiệu ngôn ngữ lập trình Trên trình duyệt, nhiều trang web sử dụng JavaScript để thiết kế trang web động số hiệu ứng hình ảnh thông qua DOM JavaScript dùng để thực số tác vụ thực với HTML kiểm tra thông tin nhập vào, tự động thay đổi hình ảnh, Ở Việt Nam, JavaScript ứng dụng để làm gõ tiếng Việt giống gõ sử dụng trang Wikipedia tiếng Việt Tuy nhiên, trình duyệt áp dụng JavaScript khác không tuân theo chuẩn W3C DOM, nhiều trường hợp lập trình viên phải viết nhiều phiên đoạn mã nguồn để hoạt động nhiều trình duyệt Một số công nghệ bật dòng JavaScript để tương tác với DOM bao gồm DHTML,Ajax SPA Bên trình duyệt, JavaScript sử dụng tập tin PDF Adobe Acrobat Adobe Reader Điều khiển Dashboard hệ điều hành Mac OS X phiên 10.4 có sử dụng JavaScript Công nghệ kịch linh động (active scripting) Microsoft có hỗ trợ ngôn ngữ JScript làm ngôn ngữ kịch dùng cho hệ điều hành JScript NET ngôn ngữ tương thích với CLI gần giống JScript có thêm nhiều tính lập trình hướng đối tượng Mỗi ứng dụng cung cấp mô hình đối tượng riêng cho phép tương tác với môi trường chủ, với phần lõi ngôn ngữ lập trình JavaScript gần giống Trần Văn Dũng- An toàn bảo & mật thông tinTrần Văn Dũng – Nguyên lý ngôn ngữ lập trình

Ngày đăng: 03/04/2016, 20:28

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w