Image default
Máy Tính

Cách Tôi Học Lập Trình Swift Hiệu Quả Với AI NotebookLM

Là một sinh viên ngành Khoa học Máy tính, tôi đang trong kỳ nghỉ hè và dù lịch trình bận rộn hơn khi còn đi học, việc không tìm hiểu thêm điều gì mới mẻ luôn khiến tôi cảm thấy “phạm luật”. Lập trình là một phần không thể thiếu trong chuyên ngành của tôi và là niềm đam mê từ khi tôi mới 10 tuổi. Tuy nhiên, tôi phải thừa nhận rằng mình chưa thành thạo nhiều ngôn ngữ lập trình. Hiện tại, tôi có thể viết code tốt bằng Python, C và C++, nhưng đã ấp ủ ý định tìm hiểu về phát triển ứng dụng di động một thời gian dài. Với khá nhiều thời gian rảnh rỗi trong tay, tôi nghĩ đây là cơ hội hoàn hảo để cuối cùng cũng bắt tay vào thực hiện.

Vì luôn là người dùng các sản phẩm của Apple, tôi tự nhiên bắt đầu tìm hiểu về Swift – ngôn ngữ lập trình dành cho hệ sinh thái Apple. Gần đây, tôi sử dụng NotebookLM, trợ lý nghiên cứu được hỗ trợ bởi AI của Google, rất nhiều bởi tính chất “dựa trên nguồn” của nó. Một ý tưởng bất chợt nảy ra: tại sao không dùng NotebookLM để học Swift? Và đó chính xác là điều tôi đã làm, kết quả thực sự khiến tôi bất ngờ.

Giao diện NotebookLM trên iPad hiển thị các nguồn tài liệu và bảng điều khiển.Giao diện NotebookLM trên iPad hiển thị các nguồn tài liệu và bảng điều khiển.

Tại sao lại chọn NotebookLM để học Swift?

Không phải cách học truyền thống, nhưng hiệu quả bất ngờ

Tôi biết, việc sử dụng một “trợ lý nghiên cứu” để học một ngôn ngữ lập trình bạn chưa từng chạm đến nghe có vẻ lạ lùng và không theo quy ước. Nhưng hãy nghe tôi giải thích. Thông thường, chúng ta có một vài cách khác nhau để học một ngôn ngữ lập trình mới:

  • Đi theo con đường truyền thống, học qua sách.
  • Mua một khóa học trực tuyến đắt đỏ và hy vọng bạn sẽ hoàn thành nó.
  • “Cày” hàng loạt video hướng dẫn trên YouTube cho đến khi não bạn “tan chảy”.

Một lựa chọn khác là trực tiếp bắt tay vào một dự án và tự tìm kiếm thông tin qua Google. Với sự phát triển của AI, bạn cũng có thể “vibe-code” (viết code theo cảm hứng) những gì bạn muốn tạo ra trong khi mở một chatbot bên cạnh để hỗ trợ.

Mặc dù tôi muốn học Swift để xây dựng một số ý tưởng ngẫu nhiên của mình và tôi chắc chắn có thể “vibe-code” theo cách đó, nhưng tôi thực sự muốn học ngôn ngữ này một cách bài bản. Đối với tôi, phần thú vị nhất của lập trình luôn là quá trình tự mình viết code. Tôi không thích chỉ sao chép và dán mọi thứ rồi cầu mong nó hoạt động. Sử dụng các công cụ AI như ChatGPT hoặc Gemini chắc chắn là một lựa chọn, nhưng tôi nhận thấy chúng thường đưa ra thông tin mâu thuẫn.

Mặt khác, điểm mạnh của NotebookLM là nó về cơ bản xây dựng một AI cá nhân hóa, được huấn luyện dựa trên thông tin bạn cung cấp. Điều này có nghĩa là tôi có thể tạo một sổ tay NotebookLM và thêm các nguồn tài liệu liên quan như tài liệu chính thức của Apple về Swift, các video hướng dẫn ngắn gọn trên YouTube, các “cheat sheet” (tài liệu tóm tắt) Swift và nhiều hơn nữa.

Sơ đồ tư duy (Mind Map) của NotebookLM hiển thị trên iPad, minh họa cách tổ chức và kết nối thông tin.Sơ đồ tư duy (Mind Map) của NotebookLM hiển thị trên iPad, minh họa cách tổ chức và kết nối thông tin.

Những tài liệu nào tôi đã đưa vào NotebookLM để học Swift?

Nguồn tài liệu là chìa khóa thành công

Với bất kỳ sổ tay NotebookLM nào, điều quan trọng nhất chính là các nguồn bạn thêm vào. Vì vậy, bước đầu tiên ở đây là điền vào sổ tay của tôi những nguồn tài liệu tốt nhất để học. Tôi đã dành hàng giờ lướt Reddit, đọc các bài đăng trên blog và hỏi các nhà phát triển Swift xem những tài nguyên nào đã giúp họ nhiều nhất khi mới bắt đầu. Hầu hết đều gợi ý tài liệu chính thức của Swift do Apple xuất bản, The Swift Programming Language.

Mặc dù có thể tải xuống dưới dạng eBook từ Apple Books Store, nhưng không có cách tích hợp để xuất nó dưới dạng PDF để tôi có thể thêm làm nguồn cho sổ tay NotebookLM của mình. Tài liệu cũng có sẵn trên trang web tài liệu Swift của Apple. Và trong khi NotebookLM chấp nhận URL trang web làm nguồn, thì tài liệu này lại được chia thành nhiều trang khác nhau, điều đó có nghĩa là tôi không thể chỉ tải lên một liên kết duy nhất là xong. Tôi đã thử tải lên URL cho từng trang, nhưng cũng không hiệu quả, nó cứ tải đi tải lại cùng một trang.

Vì vậy, tôi đã sử dụng Myndo Chrome extension, một tiện ích mở rộng về cơ bản chuyển đổi nội dung bạn cắt thành định dạng Markdown mà các mô hình ngôn ngữ lớn (LLM) như NotebookLM có thể dễ dàng hiểu được. Tôi đã tự tay cắt tất cả các trang cần thiết để bắt đầu với những kiến thức cơ bản về Swift từ tài liệu của Apple và tải nó lên làm nguồn. Vì nguồn được thêm dưới dạng Google Doc, tất cả những gì tôi cần làm là nhấn nút Click to Sync with Google Drive để tránh phải xóa Doc khỏi NotebookLM và tải lên lại mỗi khi tôi cập nhật. Bằng cách này, một khi tôi đã hoàn thành các kiến thức cơ bản và bắt đầu cắt các chủ đề Swift nâng cao hơn bằng Myndo, tất cả những gì tôi cần làm là đồng bộ hóa Doc hiện có thay vì tạo một Doc mới từ đầu và tải lên làm nguồn.

Mặc dù tôi thấy tài liệu của Apple đủ tốt để bắt đầu, tôi cũng đã điền vào sổ tay của mình một vài video hướng dẫn trên YouTube được nhiều người trực tuyến khuyên dùng. NotebookLM rõ ràng không “xem” các video bạn thêm vào, nhưng nó sẽ trích xuất phụ đề (transcript) của chúng, và bạn có thể tương tác với chúng giống như bất kỳ nguồn văn bản nào. Chắc chắn, phụ đề không phải lúc nào cũng chính xác 100%, nhưng tôi thấy việc sử dụng NotebookLM để “xem” các video hướng dẫn trên YouTube tốt hơn nhiều so với việc ngồi xem các video dài hàng giờ và cố gắng nhớ những gì đã được nói ở giữa chừng.

Màn hình chào mừng của NotebookLM trên iPad, hiển thị giao diện người dùng thân thiện.Màn hình chào mừng của NotebookLM trên iPad, hiển thị giao diện người dùng thân thiện.

NotebookLM đã giúp tôi học Swift như thế nào?

Từ cơ bản đến nâng cao, mọi thứ đều rõ ràng

Sau khi các nguồn tài liệu đã được sắp xếp, phần thú vị cuối cùng bắt đầu — thực sự học Swift. Như đã đề cập ở trên, tôi bắt đầu với một tài liệu duy nhất bao gồm một vài trang được cắt từ tài liệu chính thức của Apple về Swift, tất cả đều tập trung vào những kiến thức cơ bản nhất của Swift. Với kiến thức vững chắc về Python, C và C++, tôi đã đưa ra câu lệnh sau cho NotebookLM:

“Tôi là người mới học Swift. Tôi biết Python, C và C++, nhưng chưa học Swift bao giờ. Bạn có thể giải thích những kiến thức cơ bản nhất cho tôi và cho tôi biết về cú pháp không? Chúng ta có thể bỏ qua lý thuyết và tập trung vào những gì giúp tôi viết code. Hãy ghi nhớ kiến thức hiện có của tôi về Python, C và C++.”

Phần tuyệt vời nhất của NotebookLM là nó làm chính xác những gì bạn yêu cầu, không cung cấp thông tin không cần thiết hoặc “ảo giác”. Nó đã trích xuất thông tin liên quan từ các nguồn của tôi và giải thích tất cả các kiến thức cơ bản về Swift cho tôi. Nó thậm chí còn bao gồm các ví dụ về cách cú pháp của Swift khác với các ngôn ngữ lập trình tôi đã biết, điều mà tôi thấy thực sự hữu ích.

NotebookLM so sánh cú pháp giữa ngôn ngữ C và Swift, cung cấp ví dụ code minh họa rõ ràng.NotebookLM so sánh cú pháp giữa ngôn ngữ C và Swift, cung cấp ví dụ code minh họa rõ ràng.

Tất nhiên, vì Swift là một ngôn ngữ hoàn toàn mới đối với tôi, có một số khái niệm tôi chưa từng nghe trước đây và vẫn còn bối rối. Với NotebookLM, thay vì phải tìm kiếm từng thuật ngữ riêng lẻ trên Google hoặc xem nhiều video hướng dẫn trên YouTube cho mỗi khái niệm khó hiểu, tôi chỉ cần đặt các câu hỏi tiếp theo. Vì nó chỉ lấy thông tin từ các nguồn tôi đã thêm vào, tôi không phải lo lắng về thông tin lỗi thời hoặc mâu thuẫn, điều mà tôi thường gặp phải với các chatbot thông thường.

Mặc dù tôi thấy tính năng Audio Overviews của NotebookLM không giúp ích nhiều trong trường hợp này, nhưng tính năng Mind Maps lại là một bước đột phá.

Sơ đồ tư duy (Mind Map) về ngôn ngữ lập trình Swift do NotebookLM tạo ra, tóm tắt các khái niệm chính.Sơ đồ tư duy (Mind Map) về ngôn ngữ lập trình Swift do NotebookLM tạo ra, tóm tắt các khái niệm chính.

Nó đã tóm tắt tất cả các khái niệm cốt lõi trong một sơ đồ phân nhánh trực quan, giúp tôi nhanh chóng xem lại tài liệu và hiểu cách các chủ đề khác nhau được kết nối, đặc biệt khi quay trở lại học sau một thời gian nghỉ ngơi.

Kết luận

Đây không phải là lần đầu tiên tôi học một ngôn ngữ lập trình mới, nhưng việc sử dụng NotebookLM có lẽ là cách học hiệu quả và hấp dẫn nhất mà tôi từng trải nghiệm. Điều đó là bởi NotebookLM đã khiến quá trình học trở nên ít giống với việc học tập khô khan hơn và giống như có một gia sư thực sự thấu hiểu tôi và cách học tốt nhất của tôi. Nếu bạn đang tìm kiếm một phương pháp học lập trình mới, đặc biệt là với các ngôn ngữ mới như Swift, hay bất kỳ lĩnh vực nào đòi hỏi lượng kiến thức lớn, tôi chân thành khuyên bạn nên thử NotebookLM.

Bạn đã từng sử dụng AI để học tập hoặc làm việc chưa? Hãy chia sẻ kinh nghiệm của bạn trong phần bình luận bên dưới nhé!

Related posts

Dấu Hiệu Cho Thấy Đã Đến Lúc Nâng Cấp Từ Nền Tảng AMD AM4

Administrator

Rufus 4.8 Cập Nhật: Tăng Tốc Phân Tích ISO Windows Với Wimlib

Administrator

Trạm Sạc Anker 615 GaNPrime 65W: Ưu Đãi Lớn Chỉ Còn 40 USD

Administrator

DigiKam: Giải pháp quản lý ảnh mã nguồn mở chuyên nghiệp và miễn phí

Administrator

5 Cách Cài Đặt Ứng Dụng Trên Raspberry Pi Hiệu Quả Nhất

Administrator

Khắc Phục SSD Quá Nhiệt: 5 Phương Pháp Giúp Tăng Hiệu Suất & Tuổi Thọ Ổ Đĩa

Administrator