강의

멘토링

커뮤니티

NEW
Programming

/

Algorithm & Data Structure

Tư duy máy tính (Phần 1)

Cùng với đọc, viết và tính toán, tư duy máy tính là năng lực mà bất kỳ ai sống trong thời đại AI cũng nhất định phải trang bị. Nói một cách đơn giản, tư duy máy tính có thể được định nghĩa là cách suy nghĩ như một lập trình viên hoặc một nhà khoa học máy tính. Bài giảng này mô phỏng nguyên vẹn một học kỳ thực tế tại trường đại học, bao gồm những nội dung thiết yếu cho những người mới tiếp xúc với lập trình hoặc những người mới bắt đầu muốn theo đuổi chuyên ngành máy tính. Ngoài ra, thông qua bài giảng này, những người không thuộc chuyên ngành máy tính hoặc có nền tảng nhân văn có thể rèn luyện khả năng giao tiếp dễ dàng với các lập trình viên chuyên nghiệp. Ngay cả trong thời đại cần học cách viết câu lệnh (prompt) để lập trình cùng AI, tư duy máy tính vẫn giúp bạn rèn luyện khả năng chỉ thị cho AI một cách chính xác và hiệu quả hơn.

7 học viên đang tham gia khóa học này

Độ khó Nhập môn

Thời gian 6 tháng

  • strandkings
Algorithm
Algorithm
software-design
software-design
Business Problem Solving
Business Problem Solving
Algorithm
Algorithm
software-design
software-design
Business Problem Solving
Business Problem Solving

Bạn sẽ nhận được điều này sau khi học.

  • Bạn có thể học được cách tư duy như một lập trình viên hay một nhà khoa học máy tính.

  • Những người mới bắt đầu học lập trình có thể làm quen với tư duy máy tính.

  • Có thể giải quyết vấn đề bằng cách áp dụng tư duy máy tính vào nhiều lĩnh vực khác nhau.

  • Có thể học các khái niệm cơ bản dành cho lập trình thay vì cú pháp ngôn ngữ lập trình.

Khóa học nhất định phải xem trước khi bắt đầu học lập trình (coding) lần đầu tiên

  • Khóa học phù hợp cho người mới bắt đầu xuất thân từ khối ngành nhân văn muốn tích lũy kiến thức nền tảng về lập trình (coding).

  • Khóa học cần thiết cho những người mới bắt đầu không có kiến thức nền tảng về lĩnh vực lập trình nhưng muốn nhập môn Vibe Coding.

  • Khóa học cực kỳ cần thiết cho những người đã từng học cú pháp ngôn ngữ lập trình nhưng bỏ cuộc giữa chừng vì không thể tiến sâu vào lĩnh vực coding.

  • Nên học Tư duy máy tính (Phần 1) trước rồi sau đó mới học Tư duy máy tính (Phần 2) thì sẽ tốt hơn!!

Nội dung bài giảng đại học đã được chuyển tải nguyên vẹn vào đây.

Ai là người nhất định phải nghe bài giảng Tư duy máy tính?

  • thoughtful 16/10/2024 10:48:33 Khóa học này chuyển tải nguyên vẹn nội dung của một học kỳ đại học (nếu bao gồm cả phần 1 và phần 2), giúp bạn học cách tư duy như một lập trình viên hoặc một nhà khoa học máy tính.

  • Khóa học này bao gồm những nội dung thiết yếu dành cho những người mới bắt đầu tiếp xúc với lập trình hoặc những người mới bắt đầu có ý định theo học chuyên ngành máy tính.

  • Nội dung giải thích một cách dễ hiểu thông qua các ví dụ về những khái niệm cần thiết để những người không chuyên hoặc có nền tảng nhân văn có thể dễ dàng giao tiếp với các lập trình viên chuyên nghiệp.

Giáo trình tham khảo trong bài giảng này

Nội dung học tập

Phần (1) Chương 1 Tư duy máy tính

  • Chúng ta sẽ cùng tìm hiểu về các sự kiện lịch sử đã góp phần vào việc phát minh ra máy tính và phần mềm hiện đại.

  • Tìm hiểu về cỗ máy đầu tiên có khái niệm chương trình và máy tính lập trình được đầu tiên.

  • Hiểu về khái niệm chương trình lưu trữ sẵn và quá trình thực thi chương trình cũng như xử lý dữ liệu.

  • Tìm hiểu về máy tính tương tự đầu tiên và máy tính kỹ thuật số đầu tiên.

  • Tìm hiểu về máy tính kỹ thuật số đầu tiên theo phương thức chương trình lưu trữ.

  • Tìm hiểu về cấu trúc cơ bản và đặc điểm của máy tính hiện đại.

  • Tìm hiểu định nghĩa thực tế của tư duy máy tính, khả năng giải quyết vấn đề thông qua phần mềm.


Phần(2) Chương 2 Thông tin và dữ liệu trong thế giới thực

  • Hiểu về mối quan hệ giữa thông tin và dữ liệu, cũng như sự khác biệt giữa analog và kỹ thuật số.

  • Định nghĩa việc đo lường kích thước dữ liệu và dung lượng cần thiết để lưu trữ thông tin trong thế giới thực.

  • Hiểu cách dữ liệu được mã hóa để biểu diễn dưới dạng chuỗi bit trong hệ thống máy tính.

  • Hiểu về hệ thống số theo vị trí và tìm hiểu cách số nguyên cũng như số thực có thể được mã hóa.

  • Tìm hiểu về phương pháp mã hóa ký tự văn bản thành số nguyên để chuyển đổi chúng thành chuỗi bit.

  • Hiểu phương pháp lấy mẫu cần thiết để mã hóa âm thanh analog thành chuỗi bit kỹ thuật số.

  • Hiểu cách biểu diễn màu sắc và hiểu cách mã hóa hình ảnh thành chuỗi bit kỹ thuật số.

  • Hiểu nguyên lý nén hình ảnh kỹ thuật số thành chuỗi bit nhỏ hơn và ngắn hơn để lưu trữ hoặc truyền tải.


Phần(3) Chương 3 Logic là gì

  • Hiểu rằng logic là cần thiết và hữu ích để có được tư duy đúng đắn và lý tính.

  • Có thể hiểu được logic quy nạp và logic diễn dịch, đồng thời có thể thử thực hiện suy luận logic.

  • Tìm hiểu cách các mệnh đề và logic trong ngôn ngữ tự nhiên được biểu diễn bằng các ký hiệu (symbol) như thế nào.

  • Định nghĩa các giá trị logic, toán tử logic và hiểu về bảng chân trị, hằng đúng và mâu thuẫn.

  • Có thể tạo ra các suy luận logic thông qua phép phủ định và phép kéo theo logic.

  • Tìm hiểu cách logic được áp dụng để giải quyết các vấn đề trong thế giới thực (công cụ tìm kiếm, truy vấn cơ sở dữ liệu, mạch kỹ thuật số, tổng hợp hình ảnh, viết yêu cầu phần mềm, v.v.).


Phần(4) Chương 4 Giải quyết vấn đề

  • Tìm hiểu về các yêu cầu chức năng, vốn là cốt lõi của việc định nghĩa vấn đề trong tin học.

  • Dựa trên các yêu cầu, có thể thực hiện định nghĩa vấn đề để phát triển phần mềm.

  • Phân tích định nghĩa vấn đề thông qua các suy luận logic như suy luận nguyên nhân - kết quả, suy luận diễn dịch và suy luận quy nạp.

  • Có thể giải quyết vấn đề bằng cách chia nhỏ vấn đề phức tạp thành các vấn đề nhỏ hơn thông qua phương pháp chia để trị.

  • Thông qua tìm kiếm nhị phân, có thể hiểu được khái niệm phân tách dữ liệu và chia để trị.

  • Có thể sử dụng trừu tượng hóa điều khiển để đơn giản hóa các vấn đề phức tạp.

  • Có thể sử dụng biểu đồ lớp (class diagram) để trừu tượng hóa dữ liệu.

  • Có thể sử dụng biểu đồ ca sử dụng (use case diagram) để trừu tượng hóa hành vi.


Phần(5) Chương 5 Tư duy thuật toánセクション(5) 第5章 アルゴリズム的思考

  • Hiểu về nguồn gốc của thuật toán và tầm quan trọng của trình tự các thao tác chi tiết trong thuật toán.

  • Hiểu rằng thuật toán cần thiết trong giai đoạn thiết kế chương trình vận hành việc lựa chọn thông qua các câu lệnh điều kiện logic.

  • Hiểu rằng trong thuật toán, biến có thể là không gian bộ nhớ hoặc chính dữ liệu đó tùy thuộc vào vị trí của nó.

  • Hiểu các khái niệm về trạng thái tính toán, sự kiện và phép toán trong tin học.

  • Trong thuật toán, sự thay đổi trạng thái tính toán có nghĩa là trạng thái mà giá trị của biến trong bộ nhớ thay đổi.

  • Hiểu cách biểu diễn việc đặt tên biến, các câu lệnh lựa chọn và lặp lại trong lưu đồ (sơ đồ hoạt động).


  • Trong thuật toán, các hoạt động chi tiết phức tạp có thể được mô đun hóa thông qua trừu tượng hóa điều khiển.

  • Có thể mô hình hóa một thuật toán tuần tự có khoảng 10 trạng thái.


Phần(6) Chương 6 Mô hình hóa giải pháp

  • Hiểu về biểu đồ hoạt động và biểu đồ trạng thái để mô hình hóa thuật toán.

  • Có thể giải thích được biểu đồ hoạt động bao gồm các hành động, điều kiện và luồng điều khiển.

  • Hiểu 3 dạng kiểm soát (tuần tự, lựa chọn, lặp lại) của biểu đồ hoạt động.

  • Có thể sử dụng trừu tượng hóa điều khiển để trừu tượng hóa các hoạt động phức tạp trong biểu đồ hoạt động.

  • Có thể tạo biểu đồ hoạt động cho một thuật toán đã cho.

  • Có thể giải thích được biểu đồ trạng thái thể hiện sự thay đổi của các trạng thái tính toán trong hệ thống máy tính.

  • Có thể nhận biết các trạng thái và sự kiện để thấu hiểu những thay đổi tiềm ẩn bên trong hệ thống.

  • Có thể biểu diễn tổng thể bằng biểu đồ trạng thái đơn giản và thể hiện nội dung chi tiết bằng biểu đồ trạng thái mở rộng.

  • Có thể giải thích được biểu đồ trạng thái bao gồm các hoạt động do, entry và exit.

Lưu ý trước khi học

Kiến thức tiên quyết và lưu ý

  • Sẽ rất hữu ích nếu bạn có hiểu biết về tập hợp, logic cũng như số nguyên và số thực trong chương trình trung học phổ thông.

  • Chất lượng video bài giảng ban đầu (âm thanh/hình ảnh) không tốt nên có thể sẽ được cập nhật sau này.

  • Có thể kiểm tra các thắc mắc thông qua mục Hỏi/Đáp.


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Người mới bắt đầu hoặc người không thuộc chuyên ngành muốn nắm vững các khái niệm thiết yếu trong lĩnh vực máy tính.

  • Người mới bắt đầu làm quen với lập trình nhưng muốn xây dựng nền tảng vững chắc để hướng tới phong cách "vibe coding" trong tương lai.

  • Người không chuyên muốn giao tiếp thuận lợi với các lập trình viên đang triển khai các kịch bản kinh doanh.

Cần biết trước khi bắt đầu?

  • Không cần kiến thức cơ bản đặc biệt nhưng cần có tư duy cởi mở về tư duy máy tính.

Xin chào
Đây là

Từng làm việc tại nhiều nơi như công ty khởi nghiệp, tập đoàn lớn, viện nghiên cứu do chính phủ tài trợ và trường đại học.

Mạng / Bảo mật / Blockchain / Mã hóa / Truyền thông di động / Phát triển phần mềm / Hệ điều hành / Máy tính lượng tử

Chương trình giảng dạy

Tất cả

24 bài giảng ∙ (9giờ 0phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

Ưu đãi có thời hạn, kết thúc sau 04:40:57 ngày

705.360 ₫

38%

1.146.211 ₫

Khóa học khác của strandkings

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!