# Khoa học máy tính

## Tổng quan lộ trình

💡 Cùng với sự bùng nổ của khoa học công nghệ và cách mạng 4.0, hiểu biết về khoa học máy tính ngày càng trở nên phổ biến và cần thiết trong công việc và cuộc sống giống như các chuyên ngành Toán, Vật Lý, Hóa Học. Kiến thức căn bản về khoa học máy tính còn là nền tảng của tất cả chuyên ngành về công nghệ thông tin như Kỹ Nghệ Phần Mềm, Phân tích dữ liệu, Trí Tuệ Nhân Tạo, Đồ Họa Máy Tính ...vvv.

Lộ trình **Computer Scientist** cung cấp cho học viên kiến thức về các thuật toán trong ngành Khoa học máy tính và Khoa học dữ liệu. Vận dụng những kiến thức này vào việc thu thập - phân tích - xử lý dữ liệu, học viên có thể đưa ra các quyết định về việc vận hành tổ chức/cộng đồng dựa trên dữ liệu cũng như xây dựng được sản phẩm số có các thuật toán thu thập và phân tích dữ liệu phức tạp. Học viên được kết hợp làm việc độc lập và cả làm việc theo nhóm để đảm bảo được trau dồi cả về lập trình lẫn kỹ năng mềm. Sau khóa học, học viên sẽ có được cái nhìn tổng quan về khóa học máy tính cũng như hình thành những tư duy logic trong lập trình.

{% tabs %}
{% tab title="Level" %} <img src="https://2157902150-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2imXTLzYOm6RrXuhyoWW%2Fuploads%2FKzaeE8n02rkTUG4RmQqe%2Fimage.png?alt=media&#x26;token=7ae1a437-dea3-476e-9535-ccd76e259f9d" alt="" data-size="line"> 3 LEVEL: BASIC - ADVANCED - INTENSIVE
{% endtab %}

{% tab title="TỔNG SỐ BUỔI HỌC CỦA LỘ TRÌNH" %}
📖 42 BUỔI HỌC

Tương ứng: 14 BUỔI HỌC / 1 KHÓA
{% endtab %}

{% tab title="TỔNG SỐ GIỜ HỌC" %} <img src="https://2157902150-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2imXTLzYOm6RrXuhyoWW%2Fuploads%2F57Kg6KuxyMFAK1geWLVf%2Fimage.png?alt=media&#x26;token=f5cfc210-9543-4996-a8a0-f84763c7cb03" alt="" data-size="line">84 GIỜ HỌC

Tương ứng: 2 GIỜ/BUỔI
{% endtab %}
{% endtabs %}

## Mục tiêu lộ trình

<details>

<summary>Khám phá bản thân</summary>

Cơ hội trải nghiệm giúp học sinh nhận thức và khám phá bản thân, từ đó có thể tự định hướng về khả năng của mình và tự định hướng trong lĩnh vực lập trình.

</details>

<details>

<summary>Tư duy lập trình</summary>

Khóa học cung cấp các kiến thức cơ bản về Khoa học máy tính. Vận dụng kiến thức để đưa ra các đánh giá phân tích hợp lý cho những vấn đề xoay quanh.

</details>

<details>

<summary>Kỹ năng mềm</summary>

Học sinh tự tin giao tiếp, thuyết trình trước đám đông. Tích cực, hoà đồng và có trách nhiệm.

</details>

<details>

<summary>Tạo ra sản phẩm</summary>

Đưa ra các ý tưởng khả thi và phát triển thành các sản phẩm có ích, mang lại lợi ích cho bản thân và cả cộng đồng

</details>

## Ai phù hợp với khóa học này?

* **Điều kiện tiên quyết** để bạn có thể thành công đó chính và *sự quyết tâm* và *niềm đam mê*. Học lập trình không phải là một việc dễ dàng, nó đòi hỏi rất nhiều công sức và sự thực hành để có thể thành thạo.
* Độ tuổi: 14 - 17 tuổi
* Lộ trình *Computer Science* dành cho tất cả các bạn đang là **học sinh Trung học**, có định hướng về ngành CNTT hoặc KHMT sau khi vào Đại học. Lộ trình nằm trong "Chuỗi lộ trình 3 năm dành cho học sinh Trung học" vì vậy học viên bắt buộc phải tốt nghiệp lộ trình khóa học "Lập trình Ứng dụng Web" hoặc có kiến thức tương đương.

## Hình thức học tập

Mô hình học tập và phương pháp giảng dạy của mindX vô cùng đổi mới và sáng tạo nhưng vẫn giữ lại những ưu điểm to lớn của mô hình học tập truyền thống dựa theo hai yếu tố chính: **project-driven, mentor sessions (Mentorship)** và **online self-learning**.

{% tabs %}
{% tab title="Projects" %}
Tại mindX, học sinh sẽ được học tập và tiếp thu kiến thức bằng việc thực hành dựa trên các dự án, bài tập mẫu vô cùng dễ hiểu và trực quan, giúp học sinh dễ dàng tiếp cận và thực sự hiểu vấn đề, tránh nhắc tới những khái niệm lập trình khô khan và khó hiểu bằng cách trực quan hoá thông qua dự án mẫu.
{% endtab %}

{% tab title="Mentorship" %}
Những buổi học tại trung tâm, học sinh nhận được sự hỗ trợ nhiệt tình, cẩn thận và tỉ mì từ chính giảng viên lớp học. Ngoài ra, tính kết nối còn nhân lên thông qua các kênh giao tiếp (group trao đổi, group chat) giúp học sinh và giảng viên dễ dàng trao đổi và nắm bắt tình hình học tập, cải thiện kiến thức.
{% endtab %}

{% tab title="Online Self-learning" %}
**Online Self-learning** là hình thức học và làm bài tập trực tuyến dưới sự kiểm soát của giảng viên. Sau mỗi buổi học tại trung tâm, học sinh sẽ chọn thêm một buổi học cố định để ôn tập và kiểm tra lại kiến thức của buổi học theo hình thức học trực tuyến. Từ đó, chúng tôi đưa ra [***mô hình học tập kết hợp***](https://www.google.com/url?q=https%3A%2F%2Fsites.google.com%2Fmindx.edu.vn%2Fonline-self-learning\&sa=D\&sntz=1\&usg=AOvVaw2GbCc9Z-aZSR-9Ql0zz6cU).
{% endtab %}
{% endtabs %}

## Nội dung lộ trình

{% tabs %}
{% tab title="CS Basic" %}
Tìm hiểu cấu tạo máy tính (Computer Architecture) và ngôn ngữ lập trình Python

### **Mục tiêu khóa học**

✓ Học viên học và hiểu được cấu tạo của máy tính (Computer Architecture) và các thành phần cơ bản của máy tính.

✓ Tìm hiểu ngôn ngữ lập trình Python - Syntax và các ứng dụng của Python trong thực tế.

✓ Các kiến thức căn bản trong lập trình như Biến, Hàm, Vòng lặp, câu điều kiện, Modules...vvv và thực hành làm project theo mẫu.

✓ GUI và giao diện người dùng. Các components thường dùng trong phần mềm.

### Chất lượng khoá học

* Học viên nắm vững các khái niệm cơ bản của lập trình, thành thạo Python - ngôn ngữ hàng đầu được lựa chọn bởi các trường công nghệ uy tín trên thế giới làm ngôn ngữ nền tảng để học về Computer Science
* Bên cạnh kiến thức, học viên được học cách sử dụng các công cụ, làm chủ command-line, sử dụng text-editor hiệu quả, tận dụng tối đa version control system, tìm lỗi và phân tích hiệu suất thay vì chỉ chăm chăm code.
* Học viên được kết hợp làm việc độc lập và cả làm việc theo nhóm để đảm bảo được trau dồi cả về lập trình lẫn kỹ năng mềm. Sau khóa học, học viên sẽ có được cái nhìn tổng quan về khóa học máy tính cũng như hình thành những tư duy logic trong lập trình.
  {% endtab %}

{% tab title="CS Advanced" %}
Lập trình hướng đối tượng, cơ sở dữ liệu và mô hình hoá dữ liệu

### **Mục tiêu khóa học**

✓ Kiến thức về lập trình hướng đối tượng OOP

✓ Tìm hiểu về Database, phân tích và xử lý data bằng SQL và pandas

✓ Thực hành với Data Visualization để mô hình hóa dữ liệu trực quan cho việc phân tích dữ liệu

### Chất lượng khoá học

* Học viên được thể hiện tư duy logic bằng việc ứng dụng Python để phân tích và xây dựng các ứng dụng như **Crawl Dữ liệu**, **Xếp hạng Website**, phần mềm **tính toán xác suất thống kê**, **trực quan hóa dữ liệu.**
* Học viên được kết hợp làm việc độc lập và cả làm việc theo nhóm để đảm bảo được trau dồi cả về lập trình lẫn kỹ năng mềm. Sau khóa học, học viên sẽ tham gia buổi thuyết trình sản phẩm và thể hiện được điểm mạnh của bản thân, qua đó tìm được thế mạnh của mình để phát huy và điểm chưa tốt cần cải thiện.
  {% endtab %}

{% tab title="CS Intensive" %}
Cấu trúc dữ liệu và thuật toán

### **Mục tiêu khóa học**

✓ Học viên được thực hành xử lý dữ liệu bằng các thuật toán căn bản. Học viên biết cách ứng dụng các cấu trúc dữ liệu để lập trình

✓ Các thuật toán sắp xếp (sorting), Đệ quy, Các thuật toán tìm đường. Các thuật toán tìm kiếm.

✓ Cấu trúc dữ liệu thường sử dụng: Stack, Queue, Tree, Binary Tree, Heap

### Chất lượng khoá học

* Trong khóa học này, học viên được học sâu về **Data Structure and Algorithm** *Cấu trúc dữ liệu và Giải thuật,* giúp học viên có cái nhìn đa chiều hơn về việc phân tích và ứng dụng vào lập trình, thiết kế hệ thống phần mềm. Với mỗi Session trong khóa học, học viên sẽ cùng phân tích và đưa ra hướng giải quyết nhanh, gọn, tối ưu và tiết kiệm chi phí nhất để thấy.
* Học viên được kết hợp làm việc độc lập và cả làm việc theo nhóm để đảm bảo được trau dồi cả về lập trình lẫn kỹ năng mềm. Sau khóa học, học viên sẽ tham gia buổi thuyết trình sản phẩm và thể hiện được điểm mảnh của bản thân, qua đó tìm được thế mạnh của mình để phát huy và điểm chưa tốt cần cải thiện.
  {% endtab %}
  {% endtabs %}

## Nội dung khóa học

{% tabs %}
{% tab title="Basic" %}

<table><thead><tr><th width="84.66666666666666">Buổi học</th><th width="401">Nội dung</th><th>Hình thức học tập</th></tr></thead><tbody><tr><td>Buổi 1</td><td><p><strong>Giới Thiệu về Computer Science và Ngôn Ngữ Python</strong> </p><p>• Cài đặt môi trường lập trình (Visual Studio Code, Python 3.x) </p><p>• Làm quen với Python, cách viết câu lệnh </p><p>• Học viên hiểu được nguyên lý hoạt động của biến: cách khai báo biến, đặt tên biến, gán giá trị</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p><p>• Nhận bài tập và nguyên liệu đi kèm</p><p>• Hoàn thành bài tập đúng giờ (bao gồm cả trắc nghiệm và thực hành)</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 2</td><td><p><strong>Kiểu Dữ Liệu String và Số</strong> </p><p>• Kiểu giá trị string </p><p>  ◦ Cách tạo biến string </p><p>  ◦ Các thao tác với string: index, độ dài string, cộng/nhân string </p><p>• Kiểu giá trị số: </p><p>  ◦ Phân biệt được int và float </p><p>  ◦ Các toán tử với số: +, -, *, /, **, %, // </p><p>  ◦ Phân biệt được “5” và 5 </p><p>  ◦ Biết cách chuyển đổi từ str sang số và ngược lại </p><p>• Làm quen với thư viện turtl</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p><p>• Nhận bài tập và nguyên liệu đi kèm</p><p>• Hoàn thành bài tập đúng giờ (bao gồm cả trắc nghiệm và thực hành)</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 3</td><td><p><strong>Kiểu Dữ Liệu Boolean và Cấu Trúc Điều Kiện</strong> </p><p>• Giới thiệu về kiểu dữ liệu boolean </p><p>• Các phép toán trên boolean </p><p>• Cách sử dụng câu lệnh điều kiện</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p><p>• Nhận bài tập và nguyên liệu đi kèm</p><p>• Hoàn thành bài tập đúng giờ (bao gồm cả trắc nghiệm và thực hành)</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 4</td><td><p><strong>Cấu Trúc Lặp</strong></p><ol><li><p>Kiến thức </p><ul><li>Sử dụng vòng lặp </li><li>Phân biệt vòng lặp while và for</li></ul></li><li><p>Kỹ năng </p><ul><li>Cách đọc lỗi dựa vào báo đỏ trên màn hình code hoặc lỗi in ra lúc chạy trên terminal </li><li>Biết cách sử dụng Google để tra cứu lỗi</li></ul></li></ol></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p><p>• Nhận bài tập và nguyên liệu đi kèm</p><p>• Hoàn thành bài tập đúng giờ (bao gồm cả trắc nghiệm và thực hành)</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 5</td><td><p><strong>Mini Hackathon 1</strong> </p><p>• Học viên thực hành được các kiến thức đã học. </p><p>  ◦ Biến, kiểu dữ liệu str, number, boolean</p><p>  ◦ Vòng lặp for/while </p><p>  ◦ Câu lệnh điều kiện</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Sửa Bài Mini Hackathon 1</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 6</td><td><p><strong>Cấu Trúc Dữ Liệu List và Tuple</strong> </p><p>• Sử dụng list, tuple để lưu trữ nhiều dữ liệu </p><p>• Các thao tác với list, tuple </p><p>• Phân biệt được sự khác nhau giữa list và tuple</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p><p>• Nhận bài tập và nguyên liệu đi kèm</p><p>• Hoàn thành bài tập đúng giờ (bao gồm cả trắc nghiệm và thực hành)</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 7</td><td><p><strong>Mini Hackathon 2</strong> </p><p>• Thực hành ôn tập các kiến thức của List </p><p>  ◦ Duyệt mảng, </p><p>  ◦ Thao tác, thêm, sửa xóa mảng </p><p>  ◦ Tính toán mảng</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Sửa Bài Mini Hackathon 2</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 8</td><td><p><strong>Hàm và Module</strong> </p><p>• Cách viết hàm và mục đích sử dụng hàm </p><p>• Phân biệt được hàm print và hàm return </p><p>• Cách viết hàm thành module và import module</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong> </p><p>• Ôn tập lại kiến thức của buổi trước </p><p>• Hoàn thành bài kiểm tra giữa khoá</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 9</td><td><p><strong>Mini Hackathon 3</strong> </p><p>• Thực hành ôn tập các kiến thức của function </p><p>  ◦ Luyện tập cách viết function</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Sửa Bài Mini Hackathon 3</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 10</td><td><p><strong>Cấu Trúc Dữ Liệu Dictionary</strong> </p><p>• Học sinh nắm được mục đích của việc sử dụng dictionary </p><p>• Học sinh nắm được các thao tác với dictionary</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực hành online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 11</td><td><p><strong>Mini Hackathon 4</strong> </p><p>• Thực hành ôn tập các kiến thức của Dictionary     </p><p>   ◦ Các thao tác với dictionary: truy xuất, thêm items, xoá items, loop,...</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Sửa Bài Mini Hackathon 4</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 12</td><td><p><strong>Xử lý File</strong> </p><p>• File path </p><p>• Sử dụng Python để tạo file, đọc file, edit file, xóa file</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực hành online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 13</td><td><strong>Làm Game với Python</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực hành online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 14</td><td><strong>Hackathon Cuối Khóa</strong></td><td>Tại lớp</td></tr><tr><td></td><td><strong>Sửa Bài Hackathon Cuối Khóa</strong></td><td>Tự thực hành tại nhà</td></tr></tbody></table>
{% endtab %}

{% tab title="Advanced" %}

<table><thead><tr><th width="105.66666666666666">Buổi học</th><th width="401">Nội dung</th><th>Hình thức học tập</th></tr></thead><tbody><tr><td>Buổi 1</td><td><p><strong>Giới Thiệu về Lập Trình Hướng Đối Tượng</strong> </p><p>• Học viên hiểu lập trình hướng đối tượng là gì </p><p>• Học viên nắm được khái niệm về thuộc tính và phương thức</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 2</td><td><strong>Special Methods và Kế Thừa</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 3</td><td><strong>Luyện Tập về Class và Làm Game</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 4</td><td><strong>Luyện Tập về Class và Làm Game</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 5</td><td><p><strong>Giới Thiệu về Cơ Sở Dữ Liệu</strong> </p><p>• Định nghĩa về cơ sở dữ liệu quan hệ </p><p>• Làm quen với SQL</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 6</td><td><strong>Truy Xuất Dữ Liệu với SQL</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 7</td><td><p><strong>Các Hàm Có Sẵn trong SQL</strong> </p><ul><li>SELECT </li><li>SUM()</li><li>MAX()</li><li>COUNT() </li><li>MIN() </li><li>AVG()</li></ul></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 8</td><td><p><strong>Truy Vấn Dữ Liệu từ Nhiều Bảng</strong> </p><p>• INNER JOIN </p><p>• LEFT JOIN </p><p>• RIGHT JOIN </p><p>• FULL JOIN</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong> </p><p>• Ôn tập lại kiến thức của buổi trước </p><p>• Hoàn thành bài kiểm tra giữa khoá</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 9</td><td><p><strong>Giới Thiệu Thư Viện Pandas</strong> </p><p>• Học viên hiểu được những hạn chế của sql </p><p>• Học viên hiểu được thư viện pandas là gì </p><p>• Học viên nắm được cách sử dụng pip </p><p>• Giới thiệu một số câu lệnh cơ bản của pandas</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong> </p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 10</td><td><p><strong>Truy Xuất Dữ Liệu với Pandas</strong> </p><p>• Truy xuất tương tự như truy xuất dữ liệu ở list và dictionary </p><p>• truy xuất một cột </p><p>• truy xuất nhiều cột </p><p>• truy xuất một giá trị trong cột </p><p>• boolean_indexing</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 11</td><td><strong>Xử Lý Dữ Liệu trong Pandas Học viên nắm được các cách để update, thêm, xoá dữ liệu bằng pandas</strong></td><td>Taị lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 12</td><td><strong>Trực Quan Hóa Dữ Liệu với Matplotlib</strong></td><td>Tại lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 13</td><td><strong>Hackathon tạo Data Dashboard</strong></td><td>Tại lớp</td></tr><tr><td></td><td><strong>Chuẩn Bị Thuyết Trình Sản Phẩm Hackathon</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 14</td><td><strong>Thuyết trình sản phẩm cuối khoá</strong></td><td>Tại lớp</td></tr><tr><td></td><td><strong>Thi kiểm tra đầu ra</strong></td><td>Online</td></tr></tbody></table>
{% endtab %}

{% tab title="Intensive" %}

<table><thead><tr><th width="94.66666666666666">Buổi học</th><th width="401">Nội dung</th><th>Hình thức học tập</th></tr></thead><tbody><tr><td>Buổi 1</td><td><p><strong>Ôn tập Python</strong> </p><p>• Cài đặt môi trường lập trình Jupyter Notebook</p><p>• Học viên ôn tập các kiến thức lập trình Python đã học</p></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 2</td><td><strong>Giới thiệu về Pandas</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 3</td><td><strong>Khám phá dữ liệu với Pandas</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 4</td><td><strong>Xử lý dữ liệu với Pandas</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 5</td><td><strong>Kết nối Pandas với CSDL</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 6</td><td><strong>Giới thiệu về Matplotlib, trực quan dữ liệu với Matplotlib P1</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p>Thực hành online:</p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 7</td><td><strong>Các loại biểu đồ trong Matplotlib P2</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><p><strong>Thực hành online:</strong></p><p>• Ôn tập lại kiến thức của buổi trước</p></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 8</td><td><strong>Hackathon Giữa Khóa</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Sửa bài Hackathon giữa khoá</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 9</td><td><strong>Các loại biểu đồ với seaborn</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 10</td><td><strong>ETL và xây dựng ETL, xây dựng pipeline tự động ETL vào CSDL</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 11</td><td><strong>Xác suất thống kê cơ bản P1</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 12</td><td><strong>Xác suất thống kê cơ bản P2</strong></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 13</td><td><p><strong>Ôn Tập Cuối Khóa</strong> </p><p>• Các CTDL trong Python </p><p>• CTDL: Stack, Queue, Tree, Binary Tree, Graph • Thuật Toán Tìm Kiếm </p><p>• Thuật Toán Sắp Xếp </p><p>• Thuật Toán Tìm Đường </p><p>• CTDL: cấu trúc, cách truy vấn và ứng dụng của từng CTDL </p><p>• Thuật toán: ý tưởng, cách hoạt động, độ phức tạp và ứng dụng của từng thuật toán</p></td><td>Học tại lớp</td></tr><tr><td></td><td><strong>Thực Hành Online</strong></td><td>Tự thực hành tại nhà</td></tr><tr><td>Buổi 14</td><td><strong>Hackathon cuối khoá</strong></td><td>Tại lớp</td></tr><tr><td></td><td><strong>Sửa bài Hackathon cuối khoá</strong></td><td>Tự thực hành tại nhà</td></tr></tbody></table>
{% endtab %}
{% endtabs %}
