Cơ sở lập trình

Dành cho Ngành Thương mại điện tử

HTTT 3183

3 tín chỉ, 45 tiết

Cập nhật ngày 22 tháng 05 năm 2019

Mô tả môn học

Môn học này được thiết kế dành riêng cho Ngành Thương mại điện tử nhằm cung cấp những kiến thức cơ bản về lập trình và những kỹ năng lập trình cơ bản. Môn học giúp sinh viên hiểu được vai trò của tính toán trong việc giải quyết vấn đề bài toán và cũng như có khả năng viết các chương trình nhỏ cho phép hoàn thành các mục tiêu hữu ích. Môn học này sử dụng ngôn ngữ lập trình Python 3.6.

Khoá học này sử dụng các tài nguyên của khoá học Introduction to Computer Science and Programming in Python và khoá học Introduction to Computational Thinking and Data Science của MIT Open Coursewave.

Nội dung môn học

Nội dung môn học được chia làm 10 chủ đề:

Chủ đề 1 - Hour of code

Chủ đề 2 - Giới thiệu về lập trình và Ngôn ngữ lập trình Python

Slide 1, Slide 2

Code 1, Code 2

Bài thực hành 1

Tham khảo :

        1. Introduction to Computation and Programming Using Python: With Application to Understanding Data (John Guttag): Ch. 1, 2 và 3.1 - 3.2

Chủ đề 3 - Các phương pháp cơ bản giải quyết bài toán trên máy tính và Hàm

Slide 1, Slide 2

Code 1, Code 2

Bài thực hành 2

Tham khảo :

        1. Introduction to Computation and Programming Using Python: With Application to Understanding Data (John Guttag): Ch. 3.3-3.5 và 4

Chủ đề 4 - Một số cấu trúc dữ liệu

Slide 1, Slide 2

Code 1, Code 2

Bài thực hành 3

Tham khảo :

        1. Introduction to Computation and Programming Using Python: With Application to Understanding Data (John Guttag): Ch. 5

Chủ đề 5 - Kiểm thử chương trình

Slide 1, Slide 2

Code 1, Code 2

Bài thực hành 4

Tham khảo :

        1. Introduction to Computation and Programming Using Python: With Application to Understanding Data (John Guttag): Ch. 6 và 7

Chủ đề 6 - Lập trình hướng đối tượng

Slide 1, Slide 2

Code

Bài thực hành 5

Tham khảo :

        1. Introduction to Computation and Programming Using Python: With Application to Understanding Data (John Guttag): Ch. 8

Chủ đề 7 - Tìm kiếm và Sắp xếp

Slide, Code

Bài thực hành 6

Tham khảo :

        1. Introduction to Computation and Programming Using Python: With Application to Understanding Data (John Guttag): Ch. 10

Chủ đề 8 - Trực quan hoá dữ liệu

Slide, Code

Tài liệu tham khảo

Các tài liệu tham khảo cho môn học này gồm:

    1. Sách:
      • Guttag, John. Introduction to Computation and Programming Using Python: With Application to Understanding Data Second Edition. MIT Press. (PDF 2013, EPUB 2016)
      • McKinney, Wes. Python for Data Analysis. O'Reilly Media, Inc. 2013. (PDF)
      • McKinney, Wes. Python for Data Analysis. 2nd Edition. O'Reilly Media, Inc. 2018. (PDF)
      • Severance, Charles. Python for Everybody: Exploring data in Python 3. (PDF, Interactive HTML)
      • Segaran, Toby. Programming Collective Intelligence: Building Smart Web 2.0 Applications. O'Reilly Media, Inc. 2007. (PDF)
    2. Khoá học online:
    3. Các playlist trên Youtube :
    4. Tài liệu khác:
    5. Jupyter Notebook dạy Python
    6. Các bài tập để luyện tập
    7. Từ điển Thuật ngữ Lập trình Anh - Việt

Phần mềm

Để lập trình Python, bạn có thể sử dụng một trong 3 phần mềm sau:

    • (Khuyên dùng) PyCharm Edu - đây là một sản phầm của JetBrains. Phiên bản này chính là phiên bản PyCharm Community kết hợp với tính năng học qua tương tác. Do đó, thông qua PyCharm Edu, bạn có thể vừa học Python, vừa có thể lập trình các dự án phần mềm với Python.

Hướng dẫn cài đặt và sử dụng PyCharm Edu.

    • Jupyter Notebook - là một sản phẩm thuộc dự án Jupyter, dự án nhằm tạo ra một ứng dụng web cho phép bạn tạo và chia sẻ các tài liệu với mã nguồn, biểu thức, hình hoạ,... Bạn có thể tương tác với các thành phần này, biên dịch nó và xem kết quả trực tiếp ngay trên tài liệu.
    • Jupyter Lab - là giao diện người dùng thế hệ mới cho dự án Jupyter.

Hướng dẫn cài đặt và sử dụng Jupyter Notebook và Jupyter Lab.

Phương pháp đánh giá

Kết quả học tập được đánh giá dựa vào các bài thực hành, bài tập và bài thi cuối khoá với các trọng số như sau:

  • Hour of Code: 5%
  • Bài thực hành: 15%
  • Bài tập: 20%
  • Thi kết thúc học phần: 60%

Bên cạnh đó, hình thức điểm thưởng / phạt sẽ được áp dụng để đánh giá chuẩn bị bài, trả lời câu hỏi. Cứ mỗi 10 điểm thưởng / phạt, sinh viên sẽ được cộng / bị trừ 1 điểm vào điểm quá trình (40%). Điểm danh chuyên cần sẽ trở thành điểm trừ và được trừ vào điểm quá trình (40%) với cách quy đổi là vắng 1 buổi trừ 1/40 điểm.

Bài thực hành và Bài tập

Môn học này sử dụng các Exercises, Problem Set và Exams của khoá học 6.00.1x Introduction to Computer Science and Programming Using Python, 6.00.2x Introduction to Computational Thinking and Data Science để làm Bài thực hành và Bài tập. Exercises sẽ là các Bài thực hành. Problem set và Exams là các Bài tập. Bên cạnh đó, các bài trong Khoá học Introduction to Python của phần mềm PyCharm Edu cũng sẽ được sử dụng để làm Bài thực hành trong môn học này.

Bài thực hành sẽ được làm chủ yếu tại lớp, nếu không đủ thời gian thì sẽ được làm tại nhà. Bài tập sẽ được làm tại nhà. Bài thực hành và bài tập đều được kiểm tra kết quả tại lớp.

Chú ý:

  • Tất cả các bài thực hành và bài tập của môn học này đều là bài làm cá nhân và phải sử dụng ngôn ngữ lập trình Python và phần mềm PyCharm Edu hoặc Jupyter Notebook hoặc Jupyter Lab để phiên dịch chương trình.
  • Hành vi sao chép là không được phép. Nếu bị phát hiện, người sao chép và người cho sao chép sẽ bị điểm 0 đối với bài tập đó

Đọc kỹ hướng dẫn của edX để có kết quả làm bài tốt nhất.

Lịch học

Học kỳ xuân, 2018 - 2019

Nhóm N02

Học kỳ xuân, 2017 - 2018

Nhóm N01

Thảo luận

Hãy đăng ký vào Nhóm mail Cơ sở lập trình để nhận thông báo, trao đổi, thảo luận về nội dung môn học này.

Địa chỉ web: https://groups.google.com/d/forum/cslt_tmdt_hce

Địa chỉ email: cslt_tmdt_hce@googlegroups.com

Cách đăng ký và sử dụng, xem tại Hướng dẫn sử dụng Nhóm mail.

Nhóm mail Cơ sở lập trình

Bạn phải đăng ký thành viên, sử dụng tài khoản Google (tài khoản email của Google), để có thể nhận thông báo, trao đổi, thảo luận trong nhóm mail này.