Cơ sở lập trình

HTTT 3183

3 tín chỉ, 45 tiết

Cập nhật ngày 14 tháng 02 năm 2019

Mô tả môn học

Cơ sở lập trình là một trong những môn học nền tảng của Ngành Hệ thống Thông tin Quản lý. Môn học này cung cấp những kiến thức cơ bản và toàn diện về ngôn ngữ lập trình cùng những kỹ năng lập trình cơ bản. Mục tiêu chính của môn học là giúp người học hình thành nên tư duy lập trình và nắm vững phương pháp giải quyết vấn đề - bài toán thông qua việc sử dụng thành thạo ngôn ngữ lập trình, cụ thể là ngôn ngữ lập trình C#. Sau khi hoàn thành môn học này, sinh viên sẽ có đủ những kiến thức cần thiết để theo học những học phần tiếp theo về lập trình, như: Lập trình Hướng đối tượng, Lập trình nâng cao, Cấu trúc dữ liệu và giải thuật, Lập trình web, Lập trình ứng dụng trong quản lý,... những môn học thuộc chương trình khung của chuyên ngành.

Nội dung môn học

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

Chủ đề 1 - Tổng quan lập trình

Slide

Hour of Code

Tham khảo:

        1. Giáo trình Kỹ thuật lập trình 1 (Đặng Quế Vinh): Ch. 1 : Những khái niệm cơ bản của lập trình
        2. Lập trình Visual C# thế nào ? - Tập 1 : C# Căn bản và Visual Studio .NET IDE (Dương Quang Thiện): Ch. 1 : Visual C# và .NET Framework
        3. Pro C# 7: With .NET and .NET Core (Andrew Troelsen): Ch. 1 : The Philosophy of .NET

Chủ đề 2 - Thuật toán

Slide, Bài thực hành 1

Tham khảo:

        1. Giáo trình Kỹ thuật lập trình 1 (Đặng Quế Vinh): Ch. 1 : Những khái niệm cơ bản của lập trình

Chủ đề 3 - Cơ bản Ngôn ngữ lập trình C#

Slide, Bài thực hành 2

Tham khảo:

        1. Lập trình Visual C# thế nào ? - Tập 1 : C# Căn bản và Visual Studio .NET IDE (Dương Quang Thiện): Ch. 2 và Ch. 4
        2. Pro C# 7: With .NET and .NET Core (Andrew Troelsen): Ch. 2 và Ch. 3
        3. Lập trình C# - Từ cơ bản đến nâng cao (Phạm Công Ngô): Ch. 1 và Ch. 2
        4. Các phần Giới thiệu, C# cơ bản, Biến, Kiểu logic trên Dạy C Sharp

Chủ đề 4 - Các cấu trúc điều khiển

Slide 1, Slide 2, Slide 3, Bài thực hành 3

Tham khảo:

        1. Lập trình Visual C# thế nào ? - Tập 1 : C# Căn bản và Visual Studio .NET IDE (Dương Quang Thiện): Ch. 3 và Ch. 4
        2. Pro C# 7: With .NET and .NET Core (Andrew Troelsen): Ch. 3
        3. Lập trình C# - Từ cơ bản đến nâng cao (Phạm Công Ngô): Ch. 3
        4. Các phần Lệnh if else, Vòng lặp, Kiểu liệt kê trên Dạy C Sharp

Chủ đề 5 - Hàm

Slide, Bài thực hành 4

Tham khảo:

        1. Lập trình Visual C# thế nào ? - Tập 1 : C# Căn bản và Visual Studio .NET IDE (Dương Quang Thiện): Mục 2.2.1 (tr. 69), 5.1.2 (tr. 212), 5.3.1 (tr. 221), 5.5 (tr. 227), 5.6 (tr. 232)
        2. Pro C# 7: With .NET and .NET Core (Andrew Troelsen): Ch. 4
        3. Lập trình C# - Từ cơ bản đến nâng cao (Phạm Công Ngô): Ch. 4
        4. Phần Hàm trên Dạy C Sharp

Chủ đề 6 - Mảng

Slide, Bài thực hành 5

Tham khảo:

        1. Lập trình Visual C# thế nào ? - Tập 1 : C# Căn bản và Visual Studio .NET IDE (Dương Quang Thiện): Ch. 10 và Ch. 11
        2. Pro C# 7: With .NET and .NET Core (Andrew Troelsen): Ch. 4
        3. Lập trình C# - Từ cơ bản đến nâng cao (Phạm Công Ngô): Ch. 1, mục 1.12, Ch. 5, mục 5.3 và Ch. 9
        4. Các phần Mảng, Chuỗi trên Dạy C Sharp

Chủ đề 7 - Các cấu trúc lưu trữ khác

Slide, Bài thực hành 6

Tham khảo:

        1. Lập trình Visual C# thế nào ? - Tập 1 : C# Căn bản và Visual Studio .NET IDE (Dương Quang Thiện): Ch. 10
        2. Pro C# 7: With .NET and .NET Core (Andrew Troelsen): Ch. 4 và Ch. 9
        3. Lập trình C# - Từ cơ bản đến nâng cao (Phạm Công Ngô): Ch. 8
        4. Phần Cấu trúc trên Dạy C Sharp

Chủ đề 8 - Tìm kiếm và sắp xếp

Slide

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:
      • Đặng Quế Vinh, Giáo trình Kỹ thuật lập trình 1, Nhà xuất bản Thống kê, năm 2005. (Thư viện)
      • Dương Quang Thiện, Lập trình Visual C# thế nào ? - Tập 1 : C# Căn bản và Visual Studio .NET IDE, Nhà xuất bản Tổng hợp TP.HCM, năm 2005. (Thư viện) (PDF)
      • Dương Quang Thiện, Lập trình Visual C# thế nào ? - Tập 2 : C# và .NET Framework, Nhà xuất bản Tổng hợp TP.HCM, năm 2005. (Thư viện)
      • Phạm Công Ngô, Lập trình C# - Từ cơ bản đến nâng cao, Nhà xuất bản Giáo dục, năm 1999. (Thư viện)
      • Nguyễn Ngọc Bình Phương & Thái Thanh Phong, Các giải pháp lập trình C#, Nhà xuất bản Giao thông Vận tải, năm 2006. (PDF)
      • Andrew Troelsen & Philip Japikse, Pro C# 7: With .NET and .NET Core, Eighth edition, Apress, 2017. (PDF) (Source code)
    2. Học trực tuyến:
    3. Các playlist trên Youtube:
    4. Trang blog, web:
    5. Bài tập:
      • w3resource - hàng trăm bài tập C# có lời giải
      • C# examples - các ví dụ được phân loại theo chủ đề
      • Sanfoundry - 1000 ví dụ được phân loại theo chủ đề
      • Bài tập lập trình C# căn bản (có đáp án)
      • Project Euler - các thử thách lập trình mà bạn có thể thử khi kiến thức về C# của bạn đã vững
      • freeCodeCamp - vào phần Coding Interview Prep
      • Codewars - cải thiện kỹ năng của bạn bằng cách giải quyết các vấn đề thực tế
    6. Từ điển Thuật ngữ Lập trình Anh - Việt
    7. Đề thi tham khảo

Phần mềm

Bạn có thể sử dụng phần mềm Microsoft Visual Studio Community 2017 để soạn thảo và biên dịch chương trình.

Hướng dẫn cài đặt và sử dụng Visual Studio Community 2017.

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 kiểm tra, bài tập và bài thi cuối khoá với trọng số như sau:

  1. Đối với sinh viên Chuyên ngành Tin học Kinh tế
    • Kiểm tra vở ghi, bài thực hành: 10%
    • Kiểm tra: 20% (2 bài)
    • Bài tập: 10%
    • Thi kết thúc học phần: 60%
  2. Đối với sinh viên Chuyên ngành Thống kê Kinh doanh
    • Kiểm tra vở ghi, bài thực hành: 10%
    • Kiểm tra: 30% (2 bài)
    • Thi kết thúc học phần: 60%
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 C# và phần mềm Microsoft Visual Studio Community 2017 để biê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 đó.

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

Sinh viên còn có thể lấy thêm điểm thưởng thông qua việc hoàn thành các kata trong Codewars. Cách quy đổi: 1 kata = 1 điểm thưởng. Hãy xem Hướng dẫn sử dụng Codewars để biết cách kiếm điểm thưởng.

Bài tập

Bài tập (có thể gọi là Bài tập lớn) được sử dụng để giúp sinh viên Chuyên ngành Tin học Kinh tế làm quen với việc lập trình ứng dụng hoàn chỉnh. Trong bài tập này, sinh viên được khuyến khích vận dụng tất cả kiến thức đã được học để thiết kế, xây dựng một chương trình đơn giản, nhưng hoàn thiện cả đầu vào, đầu ra và xử lý như một ứng dụng thực tế.

Để hoàn thành và nộp bài đúng quy định, sinh viên nên đọc kỹ và tuân thủ Quy định nộp bài tập.

Sinh viên có thể tham khảo các bài tập và đáp án của các năm trước tại thư mục Bài tập trong github.com/manleviet/CSLT. Hãy xem Hướng dẫn sử dụng GitHub để biết cách lấy các bài tập và đáp án.

Lịch học

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

Nhóm N01

Học kỳ thu, 2018 - 2019

Nhóm N01

Học kỳ thu, 2017 - 2018

Nhóm N01, N02

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_hce

Địa chỉ email: cslt_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.