syllabus - master course apmt - chtp hcm - 2008

Upload: anonymous-3ihyqdc

Post on 06-Jul-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 Syllabus - Master Course APMT - CHTP HCM - 2008

    1/4

    Đềcươn môn h c “Các mô hình và k thu t l trình tiên ti ến”

    TRƯỜ NGĐẠI HỌC BÁCH KHOA HÀ NỘIKHOA CÔNG NGHỆ THÔNG TIN

    Cộng hòa xã hội chủ ngh ĩ a Việt namĐộc lập - Tự do - Hạnh phúc

    ---o0o---

    ĐÊ CƯƠ NG, NỘI DUNG VÀ LỊCH TRÌNH GIẢNG DẠYMôn học “Các nguyên lý và mô hình, kỹ thuật lập trình tiên tiến”

    (Hệ cao học, sử dụng trong năm học 2010-2011)

    I. Giáo viên:TS. Cao Tu ấn Dũng, bộ môn CNPM, Khoa CNTT, Phòng 327 nhà C1, ĐHBKEmail: + để trao đổi thông tin [email protected], [email protected]Điện thoại: 04- 38682595; Di động: 0983359425Website cá nhân: www.soict.hut.edu.vn/~dungct

    II. Tài liệu sử dụng chính:

    Sách của môn học:[1] K. Louden. Programming language. MIT, 2004, 2nd Edition.[2] Maurizio Gabbrielli and Simone Martini. “Programming Languages - Principles and

    Paradigm”, 2010[3] Peter Van Roy, Seif Haridi. “Concept Techniques and Models of Computer

    Programming”, The MIT Press, 2004, ISBN-13: 978-0262220699[4] Benjamin C. Pierce. Advanced Topics in Types and Programming Languages. The

    MIT Press, 2004, ISBN 978-0262162289

    Các tài liệu do giáo viên tổng hợ p và biên soạn[5] Các tài li ệu cho t ừng mô hình nêu trong Slides các bài h ọc.[6] Lecture Notes (s ẽ đượ c phát tr ướ c): các file pdf

    III. Lớ p CH CNTT-DHNT-ĐHBK HN (2010-2011)Số sinh viên: 7 sinh viên

    III. Tiến trình, nội dung môn học và xây dự ng tiểu luậnTuần Nội dung ch ươ ng trình h ọc: Nội dung côngviệc tiểu luận

    Ghi chú

    0

    Nhập môn:

    + Giớ i thiệu các tài li ệu tham kh ảo+ Giớ i thiệu các ch ủ đề tiểu luận+ Phân nhóm làm ti ểu luận

    + Danh sách sinhviên trong l ớ p:

    tên, địa ch ỉ email,số điện thoại

    + Thảo luận, đăngký đề tài ti ểu luận

    Tuần 0.

    1

    + Tổng quan v ề các ngôn ng ữ lập trình:lịch sử phát tri ển, phân lo ại,+ Tổng quan v ề nguyên lý ngôn ng ữ lậptrình+ Mô hình ch ươ ng trình d ịch+ Một số k ỹ thuật tiêu bi ểu trong trìnhdịch

    Thảo luận nhóm:+ Định hướ ng đề tài của tiểu luận+ Đăng k í đề tàitiểu luận

    Bài tập 1 –Nguyên lý ngônngữ lập trình vàchươ ng trìnhdich

  • 8/17/2019 Syllabus - Master Course APMT - CHTP HCM - 2008

    2/4

    Đềcươn môn h c “Các mô hình và k thu t l trình tiên ti ến”

    2

    Lập trình dòng lệnh: ImperativeprogrammingCác khái ni ệm cơ bản trong l ập trình dònglệnh

    Mô hình b ộ nhớ trong l ập trình dòng l ệnhCác k ỹ thuật tiêu bi ểu trong l ập trình dònglệnh: K ỹ thuật quản lý b ộ nhớ động, K ỹ thuật quản lý các tr ườ ng h ợ p ngo ại lệ, cáck ỹ thuật lập trình đệ quy và l ặp

    Bài tập 2. K ỹ thuật lập trìnhdòng l ệnh

    3

    Lập trình hướ ng đối tượ ng, hướ ngthành phần, hướ ng dịch vụ:Các khái ni ệm cơ bản trong l ập trìnhhướ ng đối tượ ngCác k ỹ thuật cơ bản trong l ập trình h ướ ngđối tượ ng: K ỹ thuật đóng gói, k ỹ thuật

    thừa k ế, k ỹ thuật liên k ết độngSo sánh đánh giá các ngôn ng ữ lập trìnhhướ ng đối tượ ngPhát tri ển của lập trình h ướ ng đối tượ ng:+ Xây d ựng ph ần mềm hướ ng thành ph ần:nguyên lý, quy trình, ki ến trúc+ Xây d ựng ph ần mềm hướ ng d ịch vụ:nguyên lý, quy trình, ki ến trúc+ Các ki ến trúc h ỗ trợ lập trình h ướ ng đốitượ ng, hướ ng thành ph ần, hướ ng d ịch vụ:COM, COM+, CORBA, .NET, SOA, v.v

    Bài tập 3. K ỹ thuật lập trìnhhướ ng đốitượ ng, hướ ngdịch vụ

    4

    Lập trình hướ ng sự kiện:Tổng quan v ề lập trình H ướ ng sự kiệnMô hình l ập trình H ướ ng sự kiệnCác k ỹ thuật xử lý tươ ng tác ng ườ i dùngtrong l ập trình h ướ ng sự kiệnCác k ỹ thuật lập trình trong l ập trìnhhướ ng sự kiện

    Lập trình Logic:Tổng quan v ề Lập trình LogicCác khái ni ệm cơ bản trong l ập trìnhLogicMô hình l ập trình LogicCác cấu trúc s ử dụng trong l ập trình LogicCác k ỹ thuật tiêu bi ểu trong l ập trìnhLogicPhát tri ển của lập trình Logic: ConstraintLogic Programming (L ập trình lô-gic ràngbuộc)Phát tri ển của lập trình Logic: InductiveLogic Programming (L ập trình lô-gic quynạp)

    + Đề cươ ngnghiên c ứu củatiểu luận ở mứccơ sở + Thảo luận các

    nội dung chi ti ết ở từng ch ươ ng

    Bài tập tuần 4.Kỹ thuật lậptrình s ự kiện,

    lập trình logic

    5 Lập trình Hàm: Bài tập tuần 5.

  • 8/17/2019 Syllabus - Master Course APMT - CHTP HCM - 2008

    3/4

    Đềcươn môn h c “Các mô hình và k thu t l trình tiên ti ến”

    Tổng quan v ề lập trình hàmCác khái ni ệm cơ bản trong l ập trình hàmMô hình l ập trình hàmCác cấu trúc d ữ liệu sử dụng trong l ậptrình hàm

    Các k ỹ thuật tiêu bi ểu trong l ập trình hàm

    Lập trình Hàm.

    6

    Lập trình tươ ng tranh đa luồng và songsong:Tổng quan v ề lập trình t ươ ng tranh và l ậptrình song songMô hình l ập trình t ươ ng tranh và l ập trìnhsong songCác k ỹ thuật xử lý điều khiển tươ ng tranhvà xử lý các ti ến trình song songCác k ỹ thuật tiêu bi ểu trong l ập trìnhtươ ng tranh và l ập trình song song

    Nộp:+ Đề cươ ngnghiên c ứu củatiểu luận

    Bài tập tuần 6.Lập trình t ươ ngtranh, đa luồngvà song song

    7 Một số vấn đề và định hướ ng phát tri ểnhiện nay trong k ỹ thuật lập trình, mô hìnhlập trình và xây d ựng ph ần mềmNộp tiểu luận (nhóm) / Qua email Hạn:

    IV. Tính điểm môn học:Điểm kiểm tra các n ội dung : 30% (s ẽ có 4-5 bài t ập cá nhân)Đánh giá ti ểu luận (nhóm) : 40%Điểm thi cu ối k ỳ : 30%Điều kiện để đạt môn h ọc: cả hai điểm đều phải >=5

    V. Định hướ ng một số đề tài tiểu luận môn học:STT Tênđịnh hướ ng tiểu luận Gợ i ý về nội dung

    1 Lập trình h ướ ng d ịch vụ

    Xây d ựng ph ần mềm hướ ng d ịch vụ: nguyên lý,quy trình, ki ến trúcCác k ỹ thuật tiên ti ến áp d ụngCác Platform điển hình h ỗ trợ : của IBM, c ủaMicroSoft, các công c ụ nguồn mở

    2 Logic Programming

    Các k ỹ thuật tiêu bi ểu (không nh ắc lại các k ỹ thuậtcơ bản đã học trong Slides)Công c ụ điển hìnhỨ ng dụng trong các l ĩ nh vực điển hình (Web

    Semantic, ...)

    3 Constraint Programming Mô hình, các đặc điểm k ế thừa từ LogicProgrammingCác k ỹ thuật tiên ti ến áp d ụngCác công c ụ điển hình

    4 Functional Programming

    Các k ỹ thuật tiêu bi ểu (không nh ắc lại các k ỹ thuậtcơ bản đã học trong Slides)Công c ụ (Python, Lisp, Scheme, Haskell, Miranda,ML...)Ứ ng dụng trong các l ĩ nh vực điển hình

    5 Concurent Programming Các k ỹ thuật tiêu bi ểu (không nh ắc lại các k ỹ thuật

    cơ bản đã học trong Slides)

  • 8/17/2019 Syllabus - Master Course APMT - CHTP HCM - 2008

    4/4

    Đề ế

    Công c ụ (Erlang)Ứ ng dụng trong các l ĩ nh vực điển hình

    6 Parallel ProgrammingCác k ỹ thuật tiêu bi ểu (không nh ắc lại các k ỹ thuậtcơ bản đã học trong Slides)Công c ụ

    Ứ ng dụng trong các l ĩ nh vực điển hình

    7Ruby Programming(www.ruby-lang.orgwww.rubycentral.com)

    Tìm hi ểu đặc điểm, các k ỹ thuật điển hình ứngdụng trong RubySo sánh đánh giá v ớ i các mô hình c ơ bảnCông c ụ Ứ ng dụng minh h ọa trong các l ĩ nh vực điển hình

    8Lập trình Oz trên môi tr ườ ngMozartwww.mozart-oz.org

    Kỹ thuật lập trìnhỨ ng dụng một mô hình l ập trình, minh h ọa bằngcác k ỹ thuật của Mozart

    Ghi chú: Khuyến khích các h ọc viên t ự đề xuất đề tài tiểu luận.