inflearn logo

Tư duy tính toán (Phần 2) - Giải quyết vấn đề thông qua phần mềm

Cùng với đọc, viết và tính toán, năng lực tư duy máy tính là một kỹ năng mà bất kỳ ai sống trong thời đại AI cũng nhất định phải có. Nói một cách dễ hiểu, tư duy máy tính có thể được định nghĩa là suy nghĩ như một lập trình viên hoặc như một nhà khoa học máy tính. Khóa học này được chuyển thể nguyên vẹn từ một học phần thực tế kéo dài một học kỳ tại trường đại học, cung cấp những nội dung thiết yếu cho người mới làm quen với lập trình hoặc người mới bắt đầu có ý định theo học chuyên ngành máy tính. Ngoài ra, thông qua khóa học, những người không chuyên về máy tính hoặc có nền tảng nhân văn có thể phát triển năng lực 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 prompt để lập trình bằng AI Vibe Coding, khóa học vẫn giúp người học rèn luyện khả năng đưa ra chỉ dẫn cho AI một cách chính xác và hiệu quả hơn nhờ tư duy máy tính.

(5.0) 8 đánh giá

41 học viên

Độ khó Cơ bản

Thời gian 12 tháng

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ách tư duy như một lập trình viên hoặc nhà khoa học máy tính.

  • 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ể áp dụng tư duy máy tính vào nhiều lĩnh vực khác nhau để giải quyết vấn đề.

  • Có thể học các khái niệm cơ bản để lập trình, không phải cú pháp của ngôn ngữ lập trình.

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

  • Dành cho người mới bắt đầu xuất thân từ khối ngành nhân văn, muốn xây dựng kiến thức nền tảng về lập trình (coding).

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

  • Khóa học dành cho những người đã từng học cú pháp ngôn ngữ lập trình nhưng chưa thể bước chân vào lĩnh vực lập trình.

  • Trước khi học Tư duy máy tính (Phần 2), bạn nên học Tư duy máy tính (Phần 1) trước nhé!! first!!

Đây là bài giảng đại học được chuyển nguyên bản

Ai là người nhất định nên học khóa tư duy máy tính?

  • Khóa học này được chuyển thể nguyên vẹn từ một học phần kéo dài một học kỳ tại đại học (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 nhà khoa học máy tính.

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

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


Giáo trình được tham khảo trong khóa học này

Nội dung học tập 📚

Phần (1) Chương 7: Cấu trúc dữ liệu

  • Hiểu được tầm quan trọng của việc đặt tên biến.

  • Hiểu cách dữ liệu được tổ chức và lưu trữ trong bộ nhớ.

  • Hiểu cách sử dụng việc lập chỉ mục (indexing) khi danh sách được lưu trữ trong bộ nhớ dưới dạng mảng.

  • Hiểu cách sử dụng liên kết (linking) khi triển khai danh sách liên kết, thuận tiện cho việc thêm hoặc xóa các mục trong danh sách.

  • Xem xét các ví dụ về việc sử dụng đồ thị trong mạng lưới đường bộ, tuyến tàu điện ngầm, tuyến hàng không, v.v.

  • Định nghĩa đồ thị về mặt toán học và triển khai nó trong bộ nhớ.

  • Thử định nghĩa cây và xem xét các ví dụ đa dạng trong đó cây được sử dụng.

Phần (2) Chương 8 Xử lý dữ liệu

  • Hiểu cấu trúc của máy tính theo mô hình chương trình lưu trữ Von Neumann.

  • Hiểu rằng cấu trúc Von Neumann tương tự với cách thức hoạt động của bảng tính dựa trên ô.

  • Hiểu rằng các phép toán số học, công thức tính, hàm, v.v. trong bảng tính dựa trên ô tương tự với các nguyên lý lập trình.

  • Hiểu cách các chuỗi như địa chỉ e-mail, cách ghi ngày tháng được xử lý trong chương trình.

  • Tìm hiểu các mẫu đa dạng trong chuỗi và nhiều quy tắc mẫu khác nhau.

  • Hiểu cách biểu diễn các mẫu khác nhau bằng biểu thức chính quy và thử áp dụng chúng.

Phần (3) Chương 9: Xác minh và kiểm định phần mềm

  • Hiểu về lý do xảy ra lỗi trong máy tính.

  • Hiểu rằng thiết kế và triển khai phần mềm tương tự như thiết kế và thi công công trình.

  • Hiểu rằng các quy trình xác minh tính chính xác của phần mềm và giám sát thi công xây dựng là tương tự nhau.

  • Hiểu về các yêu cầu đối với phần mềm, kiểm chứng thiết kế và xác nhận sản phẩm.

  • Hiểu được những ưu điểm và hạn chế của việc lập trình bằng AI vibe, đồng thời hiểu rằng cần có hoạt động rà soát và xác minh.

  • Hiểu lý do sử dụng kiểm thử phần mềm để xác minh và thẩm định phần mềm, cũng như những hạn chế của kiểm thử.

  • Hiểu rằng cần có tài liệu, kịch bản, ca kiểm thử và báo cáo kiểm thử cho việc kiểm thử phần mềm.

  • Hiểu sự khác biệt giữa kiểm thử hộp đen và kiểm thử hộp trắng trong kiểm thử phần mềm.

  • Xem xét nhiều ví dụ chi tiết khác nhau về kiểm thử hộp đen và kiểm thử hộp trắng.

Phần (4) Chương 10: Giới hạn của tính toán

  • Hiểu về việc nâng cao hiệu năng máy tính và những giới hạn vật lý của Định luật Moore.

  • Hiểu rằng hiệu năng tính toán có thể được xác định bởi dung lượng lưu trữ và tốc độ xử lý.

  • Hiểu được lý do khiến hiệu năng của các bộ xử lý đa lõi ngày càng khó tiếp tục phát triển.

  • Xem xét các ví dụ sử dụng benchmark để đo hiệu năng của máy tính.

  • Hiểu các phương pháp đánh giá hiệu năng của thuật toán và sự khác biệt về hiệu năng giữa tìm kiếm tuyến tính và tìm kiếm nhị phân (bao gồm cả việc sắp xếp).

  • Hiểu về độ phức tạp thời gian của thuật toán và các thuật toán không thực tế (thời gian hàm mũ).

  • Hiểu rằng các thuật toán cổ điển không thực tế có thể tồn tại dưới dạng giải pháp thực tiễn trên máy tính lượng tử.

  • Hiểu rằng tồn tại những thuật toán không thể tính toán và không bao giờ có thể giải quyết, chẳng hạn như bài toán dừng.

  • Hiểu được Turing Test và CAPTCHA muốn đo lường điều gì liên quan đến trí tuệ nhân tạo.

Phần (5) Chương 11 Hành động đồng thời

  • Trong giải đấu bóng đá, có thể ví các trận đấu bóng đá như các chương trình đang thực thi, và số lượng sân bóng như số lượng CPU.

  • Hiểu rằng việc phân bổ từng trận đấu cho các sân bóng tương tự như tính đồng thời trong việc lập lịch CPU.

  • Hiểu rằng việc xoay nhiều chiếc đĩa cùng một lúc tương tự với khái niệm song song và đồng thời trong máy tính.

  • 정렬 연결망의 작동 과정을 통해 동시성을 활용한 성능 향상 방법을 이해한다.

  • Hiểu các hạn chế cơ bản cấm thực thi đồng thời (sự phụ thuộc và điều kiện tranh chấp).

  • Khảo sát tiềm năng của tính đồng thời trong việc cải thiện hiệu năng và cách các tài nguyên dùng chung hạn chế tính đồng thời.

  • Hiểu cách các tình huống điều kiện tranh chấp (TOCTOU) gây ra lỗi.

  • Có thể nhận biết và giải thích các tình huống bế tắc (deadlock) và khóa sống (livelock).

Phần (6) Chương 12: Bảo vệ thông tin

  • Hiểu các thành phần của an ninh và những hình thức phổ biến của tội phạm mạng (phần mềm độc hại, đánh cắp danh tính, lừa đảo qua mạng, v.v.).

  • Hiểu cách thức hoạt động của công nghệ xác thực và xác thực cá nhân.

  • Hiểu về các khái niệm mật mã học (mã hóa khóa đối xứng, mã hóa khóa công khai, chữ ký, xác thực thông điệp, chứng chỉ, v.v.).

  • Hiểu về các chiến lược giảm thiểu sự cố bảo mật (tường lửa, phần mềm chống vi-rút, cập nhật phần mềm, sao lưu, nhật ký, v.v.).

  • Có thể nhận biết và áp dụng các nguyên lý bảo mật cơ bản của chiến lược giảm thiểu tấn công (bảo vệ các điểm kết nối yếu, thu hẹp bề mặt tấn công, phòng thủ toàn diện, phân chia thành các khu vực, v.v.).

  • Hiểu được tính cởi mở, chẳng hạn như phần mềm mã nguồn mở, đóng góp như thế nào cho bảo mật.

Lưu ý trước khi học khóa học

Kiến thức cần có và lưu ý

  • Có hiểu biết về đồ thị của hàm số bậc n và hàm số mũ trong chương trình trung học phổ thông sẽ rất hữu ích.

  • Chất lượng video bài giảng (âm thanh/hình ảnh) chưa tốt, có thể sẽ được cập nhật trong thời gian tới.

  • Có thể tìm hiểu những điều thắc mắc thông qua phần 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 không chuyên muốn nắm vững các khái niệm thiết yếu trong lĩnh vực điện toán

  • Người mới bắt đầu làm quen với lập trình và muốn xây dựng nền tảng cho việc vibe coding trong tương lai

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

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

  • Không cần kiến thức nền tảng đặc biệt, nhưng cần cởi mở với tư duy máy tính (yêu cầu đã học phần 1 của môn Tư duy máy tính)

Xin chào
Đây là strandkings

Xác minh sự nghiệp

102

Học viên

18

Đánh giá

4.9

Xếp hạng

2

Các khóa học

e-mail: strandnero@gmail.com

Từng làm việc tại các công ty liên doanh, Samsung Electronics, ETRI / Từng làm việc tại các công ty IT ở Thung lũng Silicon (Mỹ) và London / 17 năm làm giáo sư đại học tại Seoul (Khoa Khoa học Máy tính)

Phần mềm hệ thống/Hệ điều hành Linux/Bảo mật máy tính/Truyền thông Internet/Tính toán di động/Mạng thông tin di động/Bảo mật mạng/Bảo mật di động/Tính toán lượng tử/Truyền thông lượng tử/Mật mã lượng tử

Thêm

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

Tất cả

25 bài giảng ∙ (14giờ 12phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

8 đánh giá

5.0

8 đánh giá

  • pk30000002371님의 프로필 이미지
    pk30000002371

    Đánh giá 5

    ∙

    Đánh giá trung bình 5.0

    5

    33% đã tham gia

    • supee12296306님의 프로필 이미지
      supee12296306

      Đánh giá 3

      ∙

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      • phc93142856님의 프로필 이미지
        phc93142856

        Đánh giá 5

        ∙

        Đánh giá trung bình 5.0

        5

        33% đã tham gia

        • jy07533212님의 프로필 이미지
          jy07533212

          Đánh giá 5

          ∙

          Đánh giá trung bình 5.0

          5

          17% đã tham gia

          • jucicoola1462님의 프로필 이미지
            jucicoola1462

            Đánh giá 14

            ∙

            Đánh giá trung bình 5.0

            5

            63% đã tham gia

            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!

            Giảm 25% cho thành viên mới

            1.101.380 ₫

            25%

            1.468.510 ₫