Tiểu luận môn LẬP TRÌNH SYMBOLIC VÀ ỨNG DỤNG Tìm hiểu IDE của Maple

19 769 1
Tiểu luận môn LẬP TRÌNH SYMBOLIC VÀ ỨNG DỤNG Tìm hiểu IDE của Maple

Đ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

MỤC LỤC 1. Giới thiệu lập trình Symbolic 2 2. Giới thiệu Maple 3 3. IDE của Maple 4 3.1. Chức năng Maple Project 6 3.2. Tạo mới một project 6 3.3. Chức năng Archive Explorer 8 3.4. Chức năng Refactoring 9 3.5. Chức năng Running & Debugging 10 3.6. Chức năng đổi màu cú pháp 12 3.7. Chức năng hỗ trợ nội dung 12 3.8. Khung nhìn toàn cảnh 13 3.9. Chức năng chọn mẫu phong cách viết mã 14 3.10. Kiểm tra mã nguồn 14 4. Kết luận 18 5. Tài liệu tham khảo 18 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 2 Tìm hiểu IDE của Maple 1. Giới thiệu lập trình Symbolic Có ba thành phần trong lập trình: Logic – mô tả cấp cao cách giải quyết bài toán, xử lý – làm cách nào điều khiển máy tính ở cấp thấp để tìm giải pháp, và khái niệm – xác định các đối tượng phức tạp bằng các thuộc tính liên quan để giải quyết bài toán. Giải quyết bài toán thực tế là giải quyết 2 vấn đề: logic và khái niệm. Tuy nhiên, do vấn đề hiệu quả, nhiều lần biểu thức kiểm soát tường minh cần thiết. Xử lý có thể diển tả tường minh bởi người lập trình hay ẩn bên trong việc thực thi mô hình ngôn ngữ. Biểu thức xử lý tường minh làm các chương trình khó hiểu và khó duy trì cũng như gỡ rối. Một qui tắc vàng là 80% phần mềm không khó khan về thời gian, và không cần hiệu quả cấp thấp. Khi nhu cầu cho phần mềm được phát triển và phần mềm trở nên ngày càng lớn, điều đó trở nên khẩn thiết là không thể bào trì phần mềm bằng cách sử dụng ngôn ngữ cấp thấp như C. Có nhiều hướng tiếp cận được thực hiện bởi cộng đồng phần mềm: dùng các thư viện lập trình có khả năng tái sử dụng cho lập trình cấp cao, lập trình hướng đối tượng. Các ngôn ngữ lập trình tính toán hình thức – ký hiệu (Symbolic programming languages) hỗ trợ lập trình cấp cao theo cách nhấn mạnh đến mức logic và khái niệm: xử lý được nhúng trong mô hình thực thi ngôn ngữ, và trong suốt với người lập trình. Mã được phát triển theo ngôn ngữ lập trình symbolic như Lisp và Prolog rất có ý nghĩa, dễ hiểu, và dễ bảo trì. Đây cũng là loại ngôn ngữ phù hợp cho Trí tuệ nhân tạo, robotics, đại số máy tính, và các hệ chuyên gia, xử lý văn bản, lúc đó Lisp và Prolog trở nên hữu dụng cho lập trình cấp cao đặc biệt là xử lý nguyên mẫu nhanh. Ngày nay Lisp và Prolog cạnh tranh về mặt tốc độ với các ngôn ngữ cấp thấp như C và Fortran trong việc hiệu quả thực thi không từ bỏ Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 3 lập trình cấp cao, và giao diện tốt với các ngôn ngữ như C, C++ và hệ điều hành như Unix. Lý do chính để học lập trình symbolic là suy nghĩ theo kiểu logic ở cấp cao do các hàm (dùng trong lập trình hàm) và vị từ (dùng trong lập trình logic) là hai loại chính cho thủ tục con đường dùng trong mọi ngôn ngữ. Bên cạnh đó, phong cách trừu tượng trong lập trình dùng ngôn ngữ symbolic đang được mượn trong các ngôn ngữ dựa trên internet thế hệ mới. Như các ngôn ngữ dựa trên internet thế hệ mới đang được phát triển theo cách chung, và lập trình đang theo cách chung. Điều đó trở nên cần thiết rằng lập trình trở nên đơn giản, dễ hiểu, dễ debug. Ngôn ngữ dựa trên internet tương lai sẽ mượn các đặc tính tốt từ các ngôn ngữ symbolic cấp cao, do chúng phải than thiện người dùng, và phải dễ dàng lập trình. Học Prolog và Scheme/Lisp sẽ giúp ta diễn tả logic chính xác và đạt được phong cách lập trình cân bằng. 2. Giới thiệu Maple Maple là một hệ thống tính toán trên các biểu thức đại số và minh hoạ toán học mạnh mẽ của công ty Warterloo Maple Inc. Maple ra đời năm 1991 đến nay đã phát triển đến phiên bản 15. Maple có cách cài đặt đơn giản, chạy được trên nhiều hệ điều hành, có cấu trúc linh hoạt để sử dụng tối ưu cấu hình máy và có trình trợ giúp (help) rất dễ sử dụng. Từ phiên bản 7, Maple cung cấp ngày càng nhiều các công cụ trực quan, các gói lệnh tự học gắn liền với toán học phổ thông và đại học. Ưu điểm đó làm cho nhiều người trên thế giới lựa chọn sử dụng Maple cùng các phần mềm toán học khác áp dụng trong dạy học toán và các công việc tính toán đòi hỏi của thực tiễn và sự phát triển của giáo dục. Có thể nhận thấy rằng ngoài các tính năng tính toán và minh hoạ rất mạnh mẽ bằng các câu lệnh riêng biệt (thường chỉ cho ta kết quả cuối cùng), Maple còn là một ngôn ngữ lập trình hướng thủ tục (procedure). Thủ tục là một dãy các lệnh của Maple theo thứ tự mà người lập trình định sẵn để xử lí một công việc nào đó, sẵn để xử lí một công việc nào đó, khi thực hiện thủ tục này Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 4 Maple sẽ tự động thực hiện các lệnh có trong thủ tục đó một cách tuần tự và sau đó trả lại kết quả cuối cùng. Mapple có các chức năng cơ bản sau: • Là một hệ thống tính toán trên các biểu thức đại số. • Có thể thực hiện được hầu hết các phép toán cơ bản trong chương trình toán đại học và sau đại học. • Cung cấp các công cụ minh họa hình học thuận tiện gồm: vẽ đồ thị động và tĩnh của các đường và mặt được cho bởi các hàm tùy ý và trong các hệ tọa độ khác nhau. • Là một ngôn ngữ lập trình đơn giản và mạnh mẽ, có khả năng tương tác với các ngôn ngữ lập trình khác. • Cho phép trích xuất ra các định dạng khác nhau như word, HTML… • Một công cụ biên soạn giáo án và bài giảng điện tử, thích hợp với các lớp học tương tác trực tiếp. • Một trợ giáo hữu ích cho học sinh sinh viên trong việc tự học. 3. IDE của Maple Maple IDE là công cụ lập trình linh hoạt trong việc giải quyết các bài toán trên máy tính một cách nhanh chóng. Maple IDE bao gồm bộ soạn thảo mã Maple có nhiều đặc điểm hữu dụng như gấp các đoạn mã lại, tô màu cú pháp, định dạng mã và dò tìm lỗi trực tiếp. Ngoài ra Maple còn cung cấp những đặc trưng cao cấp hơn cho việc phát triển các ứng dụng Maple như là: tạo project Maple, Khung nhìn tổng thể, các định dạng mẫu viết mã, các công cụ gỡ rối, v.v. Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 5 Hình 1. Giao diện Maple Maple IDE thích hợp cho mọi tầng lớp người lập trình. Làm việc với Maple IDE sẽ dẫn dắt một người mới lập trình vào con đưởng học ngôn ngữ lập trình Maple nhanh chóng hơn, tập trung vào chủ đề và dung các công cụ lập trình lien quan đến Maple tiện dụng. Các lập trình viên cao cấp có thể tìm thấy đầy đủ các công cụ cho việc lập trình chuyên nghiệp từ bộ soạn thảo đầy đủ chức năng cho đến qui trình build cuối cùng. Không có vấn đề gì nếu ta muốn tạo một ứng dụng nhỏ hay xây dựng hệ thống phần mềm lớn trên Maple. Với Maple IDE ta có thể làm được tất cả. Maple IDE trông rất giống JAVA (xem hình 2) Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 6 Hình 2: Maple IDE rất giống Java 3.1. Chức năng Maple Project Hình 3: Khung project explorer Maple Project cho phép ta nhóm ứng dụng vào trong một chổ gọi là project, cấu hình cài đặt Maple. Đường build của Maple Project mang lại chức năng mạnh để thêm các gói Maple đã có (các thư viện .mla), các thư mục và các Maple projects khác vào trong Maple libname. 3.2. Tạo mới một project Ta có thể tạo các tài nguyên mới bằng cách vào menu File -> New trên thanh menu Studio. Từ đây ta có thể bắt đầu bằng cách tạo Maple Project như sau: Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 7 1. Từ thanh menu, chọn File -> New -> Project để mở wizard New Project. 2. Từ wizard New Project, chọn Maple -> Maple Project, rồi nhấn Next để khởi động New Maple Project wizard: (xem hình 4,5) Hình 4: Dialog New Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 8 3. Ở phần đặt tên của Project, gõ tên mới cho project. Không dùng các ký tự đặc biệt ở đây. Hình 5: New Maple Project 4. Nhấn Finish là xong 1. Click Finish when you are don Nếu nhìn vào khung Package Explorer, ta sẽ thấy bây giờ nó chứa Maple Project mới vừa tạo. Mở và đóng project bắng cách click vào icon cây. Project chứa các thư mục và files. Trong phần tiếp theo ta sẽ xem cách làm việc với các file Maple. 3.3. Chức năng Archive Explorer Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 9 Hình 6: Khung project explorer Maple Project cho phép ta khai thác bất cứ tập tin nén nào đã được thêm vào project. Maple Archive Explorer cung cấp cách thức dễ dàng và nhanh chóng để tìm ký hiệu/thành phần của Maple và mở nó trong bộ soạn thảo Maple. 3.4. Chức năng Refactoring Hình 7: Minh họa refactor Maple IDE cho phép tự động đổi tên hàng loạt các thành phần Maple như là mô đun, thủ tục, v.v. Khi quen với công cụ refactoring của Maple IDE rồi thì đó là một cách thức tốt để cải thiện hiệu quả làm việc. Đổi tên các thành phần trong bộ soạn thảo 1. Trong bộ soạn thảo, đưa con nháy đến thành phần cần đổi tên. Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 10 2. Từ menu ngữ cảch (right-click) chọn Rename hay nhấn Alt-Shift-R. Toàn bộ sự xuất hiện của thành phần được đóng khung và Refactor popup được hiển thị. Hình 8: Minh họa rename 3. Gõ tên mới của thành phần vào. Toàn bộ tên thành phần sẽ đồng loạt cập nhật 4. Nhấn Enter để thực thi chuyển đổi. Một hộp thoại hiện ra nhắc nhở ta cần lưu file trước khi chuyển đổi. 5. Chọn 'Always save all modified resources automatically prior to refactoring' để hộp thoại sẽ không hiển thị lại. 6. Click OK. 7. Thành phần sẽ được đổi tên và toàn bộ các thể hiện cũng được đổi tên theo. 3.5. Chức năng Running & Debugging [...].. .Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Hình 9: Minh họa running &debugging Maple IDE cho phép chạy ứng dụng Maple dễ dàng bằng cách sử dụng Launching Wizards có khả năng tùy biến cao Cách đơn giản nhất để thực thi ứng dụng Maple là chạy nó dùng cấu hình Maple launch Ta có thể chạy Maple files để kiểm tra cú pháp dùng Maple Mint Syntax Checking Kiểm tra Syntax 1 Mở bộ soạn thảo Maple và. .. nào đó Maple IDE có một số công cụ tiện ích cơ bản như:  Chức năng quản lý project  Chức năng Debug  Và các chức năng khác Maple IDE có tích hợp luôn cả SDK (Software Develeopent Kits) và có thể soạn thảo biên dịch độc lập Maple IDE tương đối đầy đủ để cho các người lập trình từ bắt đầu cho đến chuyên nghiệp sử dụng để lập trình tính toán trong các bài toán thuộc lĩnh vực khoa học tự nhiên Maple. .. 17 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn 1* if x < y then 2 a := x; 3 b := y+a else 4 a := y; 5 b := x+a end if; 6 ! a+b+x+y end DBG> quit Warning, computation interrupted 4 Kết luận IDE là môi trường phát triển phần mềm có tích hợp nhiều công cụ hỗ trợ làm tiện ích cho quá trình viết mã Vì vậy tìm hiều IDE là một công việc với người tập trình trước khi tiếp cận một ngôn ngữ lập trình. .. Thanh-CH1101132 Page 14 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Phân tích mã, như dò tìm lỗi, cho phép tìm kiếm lỗi trong mã Maple Chức năng này tìm các lỗi thông thường và các cảnh báo như là các toán tử hay câu lệnh không đầy đủ Khi trình Debugger được gọi, nó hiển thị một biểu thức (trừ khi câu lệnh của debugger trước đó được xác định bằng dấu 2 chấm), câu lệnh tiếp theo được thi hành, và một dấu... giữa khoa học máy tính và khoa học tự nhiên 5 Tài liệu tham khảo Nguyễn Thị Ngọc Thanh-CH1101132 Page 18 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn [1] Tập tài liệu giảng dạy môn Lập trình Symbolic cho Trí tuệ nhân tạo của PGS.TS Đỗ Văn Nhơn – Đại học Công nghệ thông tin – Đại học Quốc gia TP.HCM [2] http://google.com.vn, http://mapplesoft.com [3] Mục Help của chương trình Nguyễn Thị Ngọc... từ vựng và dữ liệu ngữ nghĩa của mã Maple giúp ta có thể thấy những phần khác của mã như là các từ khóa (module, proc, for, if etc.), chuỗi, chú thích, số và v.v Người dùng tự do tùy biến theo cách của mình 3.7 Chức năng hỗ trợ nội dung Nguyễn Thị Ngọc Thanh-CH1101132 Page 12 GVHD: PGS.TS Đỗ Văn Nhơn Lập trình Symbolic và TTNT Hình 11: Minh họa hỗ trợ Chức năng hỗ trợ nội dung có thể chọn và chèn... và các mẫu có khả năng Chức năng hỗ trợ nội dung tang năng suất làm việc của lập trình viên 3.8 Khung nhìn toàn cảnh Hình 12: Minh họa khung nhìn Khung nhìn toàn cảnh được thiết kế để cung cấp tổng quan cấu trúc về mã Maple Khung nhìn toàn cảnh trình bày mã Maple theo dạng cây các thành phần có cấu trúc như là mô Nguyễn Thị Ngọc Thanh-CH1101132 Page 13 GVHD: PGS.TS Đỗ Văn Nhơn Lập trình Symbolic và. .. Explorer 2 Từ pop-up menu của file (right-click), chọn biểu tượng Check Syntax hay click vào biểu tượng lá bạc hà trên thanh công cụ Nguyễn Thị Ngọc Thanh-CH1101132 Page 11 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn 3 Trong khung Console, Maple Mint thực hiện và toàn bộ kết quả sẽ xuất hiện ở đây 3.6 Chức năng đổi màu cú pháp Hình 10: Minh họa đổi màu cú pháp Bộ soạn thảo Maple hỗ trợ đổi màu... hành tiếp tục cho đến khi N thủ tục đã thi hành xong quit, done, hay stop Nguyễn Thị Ngọc Thanh-CH1101132 Page 16 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Việc thi hành kết thúc hoàn toàn, và người dùng được quay về mức cao nhất của Maple (đó là, lệnh nhắc) Ví dụ debug đoạn chương trình sau theo câu lệnh: > f := proc(x,y) local a; global b; if x < y then a := x; b := y + a; else a := y; b :=... Page 15 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn step [N] Thực thi câu lệnh tiếp theo tại bất cứ mức nào Việc thi hành ngừng trước câu lệnh theo sau, nhắm vào liệu đó là mức lồng hiện hành, trong phần than của cấu trúc điều khiển (ví dụ, "if"), hay trong hàm được gọi Nếu N nguyên dương được xác định, việc thi hành tiếp tục cho N câu lệnh tại bất cứ mức nào into [N] Giữa lệnh next và step . Hình 1. Giao diện Maple Maple IDE thích hợp cho mọi tầng lớp người lập trình. Làm việc với Maple IDE sẽ dẫn dắt một người mới lập trình vào con đưởng học ngôn ngữ lập trình Maple nhanh chóng. Kết luận 18 5. Tài liệu tham khảo 18 Lập trình Symbolic và TTNT GVHD: PGS.TS Đỗ Văn Nhơn Nguyễn Thị Ngọc Thanh-CH1101132 Page 2 Tìm hiểu IDE của Maple 1. Giới thiệu lập trình. chóng hơn, tập trung vào chủ đề và dung các công cụ lập trình lien quan đến Maple tiện dụng. Các lập trình viên cao cấp có thể tìm thấy đầy đủ các công cụ cho việc lập trình chuyên nghiệp từ

Ngày đăng: 10/04/2015, 01:31

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan