inflearn logo

Hoàn thành nhiệm vụ giải đố lập trình

Thử thách Giải đố Mã nguồn là một khóa huấn luyện tập trung trong 4 tuần về "tư duy lập trình", giúp bạn ra lệnh cho máy tính hoạt động theo ý muốn dựa trên nội dung "Học lập trình 1" của Swift Playgrounds. Thông qua việc giải quyết các nhiệm vụ giải đố trong mỗi buổi học, người tham gia sẽ tự nhiên học được cách phân tách vấn đề thành các bước nhỏ, nhận diện mẫu để sắp xếp các quy tắc lặp lại bằng vòng lặp for hoặc hàm, và đưa ra các phán đoán logic để thay đổi hành động tùy theo tình huống. Không chỉ dừng lại ở việc tìm ra đáp án đúng, người học sẽ đạt đến trình độ có thể giải thích và chỉnh sửa lý do "tại sao mình lại giải quyết theo cách này".

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

Độ khó Nhập môn

Thời gian Không giới hạn

Python
Python
Java
Java
Swift
Swift
Algorithm
Algorithm
Python
Python
Java
Java
Swift
Swift
Algorithm
Algorithm
Thumbnail

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

  • Thay vì chỉ gõ theo mã nguồn một cách mơ hồ, bạn sẽ có được khả năng chuyển đổi những hành động mình mong muốn thành các câu lệnh chính xác.

  • Thay vì bị tắc nghẽn khi cố gắng giải quyết một vấn đề lớn cùng một lúc, bạn có thể chia nhỏ nó thành các bước có thể giải quyết được và tiến triển từng bước một.

  • Học cách "tư duy hiệu quả" bằng cách phát hiện các quy tắc khi một hành động được lặp lại và sắp xếp chúng thành các cấu trúc như vòng lặp for.

  • Hình thành lối tư duy phân biệt rõ điều kiện và tình huống để đưa ra lựa chọn đúng đắn, chẳng hạn như "khi thế này thì chọn A, khi thế kia thì chọn B".

  • Thay vì bỏ cuộc khi mắc lỗi, bạn sẽ thực hành tư duy gỡ lỗi bằng cách giải thích lý do tại sao sai và tiến hành sửa lỗi.

Thử thách vượt qua câu đố mã hóa: Xây dựng tư duy lập trình với Swift Playgrounds

Thông qua các câu đố trong Swift Playgrounds Học lập trình 1, bạn sẽ được luyện tập lặp đi lặp lại việc phân tích vấn đề → nhận diện mẫu → phán đoán logic. Đây không phải là "lập trình học thuộc lòng cú pháp", mà là rèn luyện tư duy ra lệnh cho máy tính hoạt động theo ý muốn của mình.


Nếu bạn đang có những trăn trở này, thì đây chính là khóa học dành cho bạn

  • "Tôi muốn học lập trình nhưng không biết phải bắt đầu từ đâu và như thế nào."

  • "Tôi biết một chút về ngữ pháp, nhưng hễ gặp bài toán là đầu óc lại trống rỗng."

  • "AI có thể tạo mã giúp tôi... nhưng tôi không biết mình cần phải chỉnh sửa cái gì."

  • "Tôi muốn phát triển ứng dụng, nhưng cảm thấy mình còn thiếu khả năng tư duy cơ bản."


Những gì bạn sẽ nhận được sau khóa học

Mô tả năng lực Cảm giác ra lệnh cho máy tính: Khả năng chuyển đổi hành động muốn thực hiện thành các "đơn vị lệnh" Năng lực phân tích vấn đề: Thói quen chia nhỏ vấn đề lớn thành các bước nhỏ để giải quyết Năng lực nhận diện khuôn mẫu: Khả năng tìm ra các quy tắc lặp lại để sắp xếp thành vòng lặp for hoặc hàm Năng lực phán đoán logic: Tư duy đưa ra lựa chọn tùy theo tình huống (điều kiện/ngoại lệ/biên) Khả năng đọc mã nguồn: Trải nghiệm giải mã mã nguồn đáp án thông qua "ý đồ và luồng xử lý" Khả năng phục hồi sau thất bại (Tư duy Debugging): Quy trình giải thích và sửa lỗi khi làm sai Thói quen tự học: Nền tảng vững chắc không bị lung lay dù học bất kỳ ngôn ngữ hay framework nào


Đối tượng đề xuất

  • Người hoàn toàn không chuyên / Người mới bắt đầu — Những người muốn nắm bắt từ việc lập trình "có nghĩa là gì"

  • Những người đã làm theo hướng dẫn nhưng không giải được bài tập — Những người cần rèn luyện khả năng tự giải quyết vấn đề

  • Người lập kế hoạch / Nhà thiết kế và các nhóm ngành phi kỹ thuật khác — Những người muốn giao tiếp chính xác hơn với các nhà phát triển

  • Những người sử dụng AI coding nhưng gặp khó khăn khi yêu cầu chỉnh sửa — Những người muốn giải thích bằng lời về việc "cần phải thay đổi như thế nào"

  • Những người có mục tiêu phát triển ứng dụng nhưng nền tảng tư duy cơ bản còn chưa vững — Những người muốn xây dựng nền tảng trước khi chuyển sang SwiftUI/UIKit


Khóa học này là 'huấn luyện tư duy dựa trên câu đố'

Đây không đơn thuần là một "bài giảng cung cấp mã nguồn đáp án". Mỗi khi giải một câu đố, chúng ta sẽ lặp lại quy trình dưới đây.

  1. Nói mục tiêu trong một câu

  2. Chia nhỏ quá trình giải quyết thành 5~7 bước

  3. Tìm quy tắc (mẫu) lặp lại

  4. Sắp xếp và phán đoán các điều kiện/ngoại lệ

  5. Thực thi bằng mã nguồn, giải thích thất bại và chỉnh sửa

Kết quả là, tư duy giải quyết vấn đề mang tính nền tảng sẽ còn lại thay vì chỉ là "khả năng viết mã".


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

Mỗi phần sẽ được tiến hành theo cấu trúc Giải thích → Nhiệm vụ → Viết mẫu nộp bài → Cải thiện.

Part 1. Cách nói chuyện với máy tính (Dịch câu lệnh)

  • Cách chuyển đổi ngôn ngữ tự nhiên thành câu lệnh

  • "한 줄 행동" 단위로 분해하기

  • Nộp bài: Ngôn ngữ tự nhiên → Phân tách các bước → Mã code

Part 2. Xây dựng cơ bắp phân tách vấn đề (Decomposition)

  • Luôn luyện tập chia nhỏ thành 7 bước

  • Quy tắc biến vấn đề lớn thành vấn đề nhỏ

  • Nộp bài: Bảng phân tích + Mã nguồn

Part 3. Nhận diện mẫu (Pattern)

  • Tìm quy luật lặp lại

  • Giảm thiểu sự lặp lại bằng vòng lặp for

  • Nộp bài: Đánh dấu lặp lại (🔁) + Trước/Sau khi tái cấu trúc (refactoring)

Phần 4. Trừu tượng hóa (Đặt tên bằng hàm)

  • Cách đóng gói "đơn vị ý nghĩa" thành hàm

  • Tiêu chuẩn của một tên hàm tốt (Động từ/Ý định/Kết quả)

  • Nộp bài: Trước/sau khi hàm hóa + Lý do chọn tên

Phần 5. Phán đoán logic (Decision)

  • Cách sắp xếp các điều kiện bằng lời nói

  • Tạo cấu trúc lựa chọn (Bảng phân nhánh / Cây quyết định)

  • Nộp: Bảng phân nhánh + Mã nguồn

Part 6. Biến thất bại thành thực lực (Debug Thinking)

  • Xem lại mã lỗi: Ý định vs Thực tế

  • Mô tả lỗi bằng "câu văn" và sửa lỗi

  • Nộp: Mẫu báo cáo thất bại 5 dòng

Part 7. Nhiệm vụ cuối cùng: Tạo sách hướng dẫn giải đố

  • Giải thích cách giải của bản thân cho người khác

  • Hoàn thành một bộ "Tóm tắt vấn đề / Mẫu / Điều kiện / Mã / Lời khuyên"

  • Nộp bài: 5 bản hướng dẫn giải thích


Cách thức tiến hành

  • Sau khi xem bài giảng, thực hiện nhiệm vụ cho mỗi phần

  • Sắp xếp theo mẫu nộp bài được cung cấp (Phân tích / Mô hình / Phán đoán)

  • Cố định thói quen tư duy thông qua huấn luyện lặp đi lặp lại

Chúng tôi đã thiết kế khóa học tập trung vào "nhiệm vụ" để bạn không chỉ dừng lại ở việc xem video.


Chuẩn bị / Môi trường

  • iPad hoặc Mac (Môi trường có thể chạy Swift Playgrounds)

  • Cài đặt Swift Playgrounds

  • Trạng thái có thể tiến hành "Học lập trình 1"


Danh sách kiểm tra trước khi học

Nếu bạn thuộc từ 2 trường hợp trở lên dưới đây, thì bây giờ là thời điểm tuyệt vời để bắt đầu.

  • [ ] Nhìn vào mã nguồn cảm thấy mông lung không biết phải bắt đầu từ đâu

  • [ ] Khó khăn trong việc chia nhỏ vấn đề thành các bước nhỏ

  • [ ] Thật khó để tìm và sắp xếp các quy luật/vòng lặp

  • [ ] Khó khăn trong việc làm cho (đối tượng) hành động khác nhau tùy theo điều kiện (tình huống)

  • [ ] Rất khó để giải thích bằng lời tại sao lại sai khi làm sai


Câu hỏi thường gặp (FAQ)

Hỏi: Tôi thực sự là người mới bắt đầu hoàn toàn thì có thể học được không?

Có thể ạ. Tuy nhiên, vì đây là bài giảng tập trung vào việc tạo lập thói quen tư duy thay vì học thuộc lòng ngữ pháp, nên tinh thần sẵn sàng "suy nghĩ và hệ thống lại" quan trọng hơn là việc chỉ "gõ theo".

Hỏi: Khóa học có bao gồm SwiftUI / Phát triển ứng dụng không?

Khóa học này tập trung vào tư duy giải quyết vấn đề - khung xương của việc phát triển ứng dụng, hơn là bản thân việc phát triển ứng dụng. Sau khi hoàn thành khóa học này, khi chuyển sang SwiftUI/UIKit, bạn sẽ thấy rõ ràng hơn nhiều về việc mình "cần phải làm gì".

Hỏi: Tôi có thể sử dụng cùng với AI coding (như ChatGPT) không?

Ngược lại, tôi rất khuyến khích điều đó. Tuy nhiên, khóa học này không tập trung vào việc "sao chép và dán mã do AI cung cấp", mà tập trung vào việc nuôi dưỡng khả năng giải thích ý định của bản thân và đưa ra yêu cầu chỉnh sửa một cách chính xác.


Giới thiệu ngắn gọn về khóa học

Đây là khóa học giúp bạn xây dựng tư duy lập trình từ con số 0 để điều khiển máy tính theo ý muốn, thông qua việc rèn luyện lặp đi lặp lại quá trình 'phân tách vấn đề – nhận diện khuôn mẫu – phán đoán logic' với các câu đố trong Swift Playgrounds.

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 học lập trình, hoặc những người đã bắt đầu nhưng luôn bỏ cuộc giữa chừng vì gặp khó khăn.

  • Người đã xem qua mã nguồn một chút nhưng vẫn chưa cảm nhận được 'tại sao nó lại hoạt động như thế này'

  • Những người thuộc nhóm ngành phi kỹ thuật như nhân viên lập kế hoạch, nhà thiết kế... muốn giao tiếp tốt hơn với lập trình viên.

  • Người cảm thấy bế tắc vì dù nhận được mã nguồn từ AI nhưng không thể đánh giá kết quả hay yêu cầu chỉnh sửa.

  • Người đặt mục tiêu phát triển ứng dụng nhưng chỉ học theo ngữ pháp/hướng dẫn và gặp bế tắc khi thực hành thực tế.

Xin chào
Đây là leeo

8,700

Học viên

239

Đánh giá

7

Trả lời

4.9

Xếp hạng

29

Các khóa học

Xin chào, tôi là Leeio, một nhà phát triển đang "câu" những dòng code tại Pohang.

Đồng giảng viên

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

Tất cả

13 bài giảng ∙ (3giờ 14phú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!

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

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!

Miễn phí