Allen Swift Concurrency for Swift 6 (Part-1)

Bao quát Swift Concurrency từ A đến Z. (Phần 1)

(5.0) 73 đánh giá

594 học viên

Độ khó Cơ bản

Thời gian 24 tháng

iOS
iOS
Swift
Swift
concurrent
concurrent
async-await
async-await
concurrency
concurrency
iOS
iOS
Swift
Swift
concurrent
concurrent
async-await
async-await
concurrency
concurrency

Đánh giá từ những học viên đầu tiên

5.0

5.0

김동현

100% đã tham gia

Tôi nghĩ đây là một khóa học bắt buộc phải nghe để học Swift Concurrency. Việc so sánh GCD hiện tại với Swift Concurrency đã giúp tôi hiểu rõ ràng về cách quan điểm lập trình bất đồng bộ đã thay đổi từ quá khứ đến hiện tại, và phần giải thích về structured concurrency đã rất hữu ích. Mong rằng sẽ có nhiều khóa học hay như vậy trong tương lai!

5.0

Bana

63% đã tham gia

Nội dung quá tuyệt vời.... Tôi mong anh Allen sẽ quay nhiều bài giảng iOS hơn nữa Anh nhấn mạnh các khái niệm quan trọng một cách chắc chắn và giải thích nhiều lần nên tôi nhớ rất rõ Bài giảng tuyệt vời đến mức tôi muốn nghe một mình nhưng tôi vẫn để lại bình luận 😊😊

5.0

qowiedncz

43% đã tham gia

Tôi thấy anh giải thích rất dễ hiểu và tuyệt vời. Tôi là người làm trong ngành này và nhận được rất nhiều sự giúp đỡ từ anh. Tôi thực sự rất cảm kích!

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

  • Lập trình đồng thời trong Swift (Swift Concurrency)

  • Task / async / await (xử lý bất đồng bộ)

  • API mới liên quan đến async/await

  • Cách sử dụng Continuation (Continuation)

  • Tính đồng thời có cấu trúc (tính đồng thời có cấu trúc / xử lý song song)

  • async let / TaskGroup (kỹ thuật xử lý song song)

  • Hủy (Hủy tác vụ)

  • Cách sử dụng Task-Local (biến cục bộ tác vụ)

  • (Ví dụ áp dụng dự án - Hủy công việc)

⛔ Bạn phải mua riêng giáo trình (PDF sách điện tử) cho khóa học này. ⛔

(Giáo trình sử dụng cho khóa học này đã mất hơn 1 năm để biên soạn. Vì giáo trình bao quát nội dung tối ưu và tốt nhất cho việc học, đồng thời chi tiết hơn bất kỳ nội dung nào về Swift Concurrency trên thế giới, nên để duy trì chất lượng bài giảng, chúng tôi mong bạn thông cảm vì giáo trình được bán riêng. Việc mua giáo trình là tùy chọn. Bạn hoàn toàn có thể chỉ mua khóa học.)


Swift Concurrency cho Swift 6 của Allen (Giáo trình tích hợp Phần 1 / Phần 2)

Liên kết nơi bán: https://smartstore.naver.com/allenschool/products/11528874881
(30,000 won)

Ngay cả khi bạn không trực tiếp tham gia khóa học này, bạn vẫn có thể mua riêng giáo trình. (Tuy nhiên, vì đây là tài liệu được tối ưu hóa cho mục đích giảng dạy, nên có thể có những nội dung khó hiểu nếu chỉ mua giáo trình. Nếu đồng ý với điều này, bạn có thể không mua khóa học mà chỉ mua giáo trình.)

Swift Concurrency cho Swift 6 (Phần - 1) ✍🏻

Phụ đề: Học đúng cách lập trình đồng thời Swift (Swift Concurrency) để tiến tới Swift 6


🌿🌿🌿

nền tảng vững chắc dựa trên CS và
chỉ một khác biệt nhỏ trong từng chi tiết
cũng tạo nên sự khác biệt về năng lực.

🌿🌿🌿



Sau khi tính năng lập trình đồng thời mới (Swift Concurrency) được giới thiệu ở phiên bản 5.5, Swift đã trải qua từng bước chuẩn bị và cuối cùng được nâng cấp lên phiên bản 6. Một trong những mục tiêu cốt lõi của phiên bản Swift 6 chính là loại bỏ khả năng xảy ra tranh chấp dữ liệu tiềm ẩn (Race Condition/Data-Races), đồng thời cho phép triển khai mã Thread-Safe (an toàn luồng) ngay từ giai đoạn biên dịch, qua đó đảm bảo tính an toàn.

(Chúng ta đang đứng trước bước ngoặt để dần chuyển sang Swift 6.)


Vì vậy, khóa học này được thiết kế với mục tiêu học tất cả mọi nội dung, từ A đến Z liên quan đến Swift Concurrency, nhằm từng bước tiến tới Swift 6. Vui lòng tham khảo nội dung chính của khóa học bên dưới; ngoài ra, tôi cũng giải thích chi tiết về khóa học trong video giới thiệu bài giảng đầu tiên, nên bạn cũng hãy xem qua video này.

(Nếu học đến Part-2, tôi cho rằng nền tảng lý thuyết để áp dụng Swift 6 sẽ được hoàn thiện.)


Đây luôn là mục tiêu cá nhân trong các bài giảng của tôi, nhưng tôi đang trình bày nội dung chi tiết và chuyên sâu hơn bất kỳ bài giảng nào về Swift Concurrency trên Trái Đất. (Vì tôi tin rằng những khác biệt nhỏ trong từng chi tiết, gần như là sự ám ảnh, sẽ tạo nên sự khác biệt về năng lực, nên tôi luôn cố gắng cung cấp cho bạn nhiều ví dụ mã đa dạng cùng tài liệu được tổng hợp có hệ thống.)

Nội dung được đề cập trong khóa học 🕵🏻‍♂️👨🏻‍🎓

(1) Nội dung chính được đề cập trong Part - 1 (khóa học này) ⭐️⭐️⭐️

  • Task / async / await được hiểu đúng cách


  • Cách thức hoạt động của hàm bất đồng bộ (async)

  • Giới thiệu các API bất đồng bộ mới liên quan đến URLSession

  • Sử dụng Continuation (1) Chuyển hàm callback / (2) phương thức delegate sang phương thức bất đồng bộ

  • Ví dụ dự án chuyển đổi phương thức delegate của ứng dụng định vị (CoreLocation) sang async/await

  • Nội dung lý thuyết về tính đồng thời có cấu trúc

  • Xử lý song song - (1) async let (2) TaskGroup

  • Hiểu cách thức hoạt động của việc hủy tác vụ (ví dụ dự án liên quan đến việc hủy tác vụ)

  • Tìm hiểu mô hình hủy mang tính hợp tác

  • Ứng dụng của tính đồng thời có cấu trúc và việc hủy tác vụ

  • Ứng dụng của TaskGroup (chỉ định số lượng luồng đồng thời – thiết lập tùy chỉnh)

  • Ứng dụng biến cục bộ theo tác vụ


(2) (trong thời gian tới) Nội dung chủ yếu sẽ được đề cập trong Part - 2 (khóa học riêng)

  • Hiểu lập trình đồng thời từ góc độ Khoa học Máy tính (tìm hiểu về cấu trúc thread/bộ nhớ)

  • Cô lập dữ liệu / Cô lập tác vụ / Cô lập Actor (Tìm hiểu khái niệm cô lập)

  • Task Isolation và Shared Mutable State (Dữ liệu được chia sẻ)

  • Kiểu Sendable (kiểu dữ liệu an toàn để chia sẻ giữa các luồng)

  • Chinh phục Actor toàn diện (1) Cô lập/Không cô lập (2) Tính nguyên tử (3) Tái nhập (4) Chuyển đổi Actor

  • (5) Chặn MainActor (6) Giải quyết tranh chấp actor

  • Global actor và MainActor

  • Triển khai bộ nhớ đệm (cache) bằng Actor – Ví dụ dự án

  • AsyncSequence (chuỗi bất đồng bộ) và AsyncStream (luồng bất đồng bộ)

  • Ví dụ dự án áp dụng AsyncStream cho WebSocket

  • Truyền kiểu Non-Sendable (sending)

  • Các vấn đề liên quan đến isolation của hàm (closure) - isolated (Actor)? = #isolation / @isolated(any)

  • Triển khai trình thực thi (Executor) tùy chỉnh / Mức ưu tiên trình thực thi (Executor) của Task

  • (Tham khảo) từ khóa consume / consuming

  • Nâng cao quy tắc cú pháp của Actor - trình khởi tạo / trình hủy / giao thức / kế thừa / mở rộng

  • Chuyển từ Swift5 sang Swift6

  • Phân tích dự án bằng cách sử dụng Instruments



    Liên kết bài giảng Part-2: https://inf.run/TyZcJ


Đặc điểm của khóa học này

📌 Với mục tiêu bao quát lập trình Swift Concurrency từ A đến Z.

📌 Đây sẽ là nền tảng giúp bạn viết mã an toàn giữa nhiều luồng ngay từ thời điểm biên dịch (mục tiêu của Swift 6).

📌 Đây là khóa học được xây dựng dựa trên việc phân tích kỹ lưỡng tất cả các video WWDC hiện có liên quan đến Swift Concurrency.

📌 Phân tích nhiều sách, khóa học nước ngoài liên quan đến Concurrency để đề cập đầy đủ nhất mọi nội dung mà không bỏ sót.

📌 Các dự án ví dụ đa dạng

📌 Vì vậy, chi tiết hơn bất kỳ khóa học Swift Concurrency nào trên Trái Đất !!!!

📌 (Như các khóa học của tôi từ trước đến nay) cung cấp tài liệu học tập riêng để giúp bạn hiểu và hệ thống hóa một cách trực quan nhất.

Bạn sẽ được cung cấp tài liệu học tập tốt nhất.

Có thể mua riêng giáo trình (sách điện tử PDF)

Để giải thích một cách trực quan nhất, chúng tôi cung cấp một giáo trình riêng dài 300 trang.
(Bạn cần mua giáo trình riêng.)

Cung cấp nhiều tài liệu dịch khác nhau, bao gồm bản dịch tài liệu chính thức

Chúng tôi cung cấp bản dịch các tài liệu chính thức về Swift 6 (Concurrency), tài liệu chính thức của API Collection và nhiều tài liệu khác để bạn tận dụng thời gian học tập hiệu quả nhất.

Cung cấp tài liệu mã nguồn ví dụ cho nhiều dự án

Không chỉ học lý thuyết, bạn còn đào sâu kiến thức bằng cách trực tiếp áp dụng nội dung đã học vào dự án.

Cung cấp tài liệu mã nguồn học lý thuyết

Cung cấp mã nguồn playground với nhiều ví dụ đa dạng để hỗ trợ việc học lý thuyết tốt nhất.

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

Bán giáo trình riêng (30.000 won)

  • Dành cho khóa học - sách điện tử PDF (giáo trình) được bán riêng (giáo trình tích hợp Part-1 / Part-2)

  • Liên kết: https://forms.gle/b1VH8mhAn7dvWfr3A
    (Các tài liệu mã nguồn ngoài giáo trình được cung cấp miễn phí.)

1. Cung cấp tài liệu học tập

  • Cung cấp tài liệu mã nguồn /

    Cung cấp ví dụ dự án

  • Cung cấp nhiều bản dịch (Swift 6 - Concurrency / API Collection / Migrating to Swift 6)

2. Kiến thức tiên quyết và những điều cần lưu ý

  • Kiến thức cơ bản về cú pháp Swift – có thể sử dụng thành thạo các hàm, closure, v.v.

  • Kiến thức cơ bản về các hàm callback bất đồng bộ, DispatchQueue và những nội dung tương tự đã sử dụng trước đây

  • Kinh nghiệm sử dụng các API gọi mạng bằng Swift (chẳng hạn như URLSession)

  • Kiến thức cơ bản về UIKit và SwiftUI

3. Môi trường thực hành (có thể học với môi trường từ mức dưới đây trở lên)

  • macOS Sequoia / Xcode 16 (việc học lý thuyết trong Playground cũng có thể thực hiện trên Xcode 15.3 ~ 15.4)


💌Liên quan đến giấy phép nội dung khóa học


Đối với nội dung của khóa học này, nếu tôi có tham khảo dù chỉ một phần hình ảnh hoặc tài liệu tương tự, thì URL liên quan sẽ được ghi lại trong PDF. Ngoại trừ những trường hợp đó, mọi tài liệu đều do tôi biên soạn, vì vậy nghiêm cấm đăng tải nội dung của khóa học này lên blog và chia sẻ tệp PDF sách điện tử được sử dụng làm tài liệu giảng dạy dưới bất kỳ hình thức nào.

(Nếu vi phạm các nội dung liên quan đến giấy phép này, bạn có thể phải chịu trách nhiệm pháp lý, vì vậy vui lòng đặc biệt lưu ý.)

Q. Khóa học có được học suốt đời không?

A. Không phải là khóa học trọn đời. Khóa học này có thời hạn 24 tháng (2 năm)để tham gia học. Mong bạn lưu ý. (Sau khi nhiều lần chứng kiến trường hợp chia sẻ khóa học của tôi.. và vì tôi cũng không thể kiếm được nhiều tiền so với thời gian và công sức bỏ ra.. đây chỉ là biện pháp tốt nhất mà tôi có thể thực hiện để ngăn chặn việc chia sẻ khóa học, nên mong bạn rộng lòng thông cảm 🙏🏻)

Nếu bạn đã từng tham gia bootcamp ngữ pháp..? 🙋🏻‍♂️🙋🏻‍♀️

Nếu bạn đã từng tham gia Swift Master School của tôi (khóa học 2 tháng), hãy liên hệ với tôi qua Slack..khóa học Part-1 này và tôi sẽ tặng bạn một suất học miễn phí. (Vui lòng kiểm tra thông báo chung trên Slack của bootcamp.)

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

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

  • Dành cho những ai muốn học đúng cách lập trình Swift Concurrency

  • Dành cho những ai muốn học chuyên sâu một cách bài bản về lập trình đồng thời trên phương diện lý thuyết

  • Những ai muốn nghiền ngẫm kỹ hơn cả video WWDC!!!!!!

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

  • Nền tảng ngôn ngữ Swift

Xin chào
Đây là allen

Xác minh Inflearn

7,706

Học viên

778

Đánh giá

315

Trả lời

5.0

Xếp hạng

7

Các khóa học

Tôi là Allen, nhà phát triển iOS.
https://www.youtube.com/@allen_ios

"Kiến thức thực sự hiểu rõ là phải có thể giải thích một cách dễ dàng bằng ngôn ngữ của chính mình." là phương châm của tôi.

Vì vậy, tôi muốn trở thành một nhà phát triển có thể chia sẻ kiến thức bằng ngôn ngữ mà bất kỳ ai cũng có thể hiểu được, thông qua việc giải thích một cách dễ hiểu những sai lầm mà tôi đã trải qua trong quá trình học tập.


Tôi không quan tâm đến việc tạo ra những bài giảng chỉ dạy hời hợt những chủ đề dễ dàng trong thời gian ngắn.
Những bài giảng như vậy có thể được tạo ra nhanh chóng như sản xuất hàng loạt, nhưng tôi tin rằng để cuối cùng "trưởng thành thành một nhà phát triển giỏi", thì nền tảng lý thuyết phải thực sự vững chắc.

Thay vì những bài giảng dễ dãi, mục tiêu bài giảng của tôi là truyền đạt những nội dung khó mà bạn
bắt buộc phải biết để trở thành một nhà phát triển giỏi (người có thể không ngừng phát triển) một cách dễ hiểu và trực quan nhất có thể.
Từ đó, tạo ra nền tảng để chính các bạn, chứ không phải tôi, có thể tự mình trăn trở và suy nghĩ về lý do TẠI SAO (WHY).

Cũng giống như việc bản thân tôi luôn nỗ lực để ngày mai trở thành một nhà phát triển tốt hơn,
tôi muốn truyền đạt một cách sâu sắc những nội dung mà mình đã từng trăn trở.

 

Tôi nghĩ rằng việc liên tục thất bại trong các buổi phỏng vấn, hoặc không thể diễn đạt những nội dung dễ dàng bằng ngôn ngữ của chính mình, đồng nghĩa với việc bạn chưa thực sự hiểu rõ chúng. Ngược lại, tôi tin rằng chỉ khi có "nền tảng cơ bản vững chắc" về những nội dung cơ bản và CS, bạn mới có thể phát triển nhanh chóng.


👇🏻Mọi thắc mắc vui lòng gửi về email bên dưới.

we.love.code.allen@gmail.com


Ngôn ngữ: Swift, Python, Java, C#

Thêm

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

Tất cả

50 bài giảng ∙ (11giờ 38phú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ả

73 đánh giá

5.0

73 đánh giá

  • sjybext6573님의 프로필 이미지
    sjybext6573

    Đánh giá 4

    ∙

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Tôi rất mong chờ Part 2 của bài giảng... Nội dung rất khó nhưng thầy đã giải thích một cách dễ hiểu, tôi thực sự rất cảm ơn! Tôi cảm thấy tự tin hơn về Swift Concurrency!

    • tjdgml1502376517님의 프로필 이미지
      tjdgml1502376517

      Đánh giá 2

      ∙

      Đánh giá trung bình 5.0

      Đã chỉnh sửa

      5

      80% đã tham gia

      Đây là một bài giảng hay nhất về concurrency.

      • shimstone5884님의 프로필 이미지
        shimstone5884

        Đánh giá 6

        ∙

        Đánh giá trung bình 5.0

        5

        100% đã tham gia

        Tôi đã sử dụng mã liên quan đến Concurrency một cách mơ hồ, nhưng tôi đã có thể dễ dàng hiểu được các nguyên tắc!

        • lghan000203650님의 프로필 이미지
          lghan000203650

          Đánh giá 6

          ∙

          Đánh giá trung bình 5.0

          5

          100% đã tham gia

          Tôi nghĩ đây là một khóa học bắt buộc phải nghe để học Swift Concurrency. Việc so sánh GCD hiện tại với Swift Concurrency đã giúp tôi hiểu rõ ràng về cách quan điểm lập trình bất đồng bộ đã thay đổi từ quá khứ đến hiện tại, và phần giải thích về structured concurrency đã rất hữu ích. Mong rằng sẽ có nhiều khóa học hay như vậy trong tương lai!

          • roel님의 프로필 이미지
            roel

            Đánh giá 17

            ∙

            Đánh giá trung bình 5.0

            5

            100% đã tham gia

            Giảng viên đã giải thích rất tỉ mỉ và chi tiết, giúp tôi hiểu rõ những khái niệm mà trước đây tôi chỉ biết một cách sơ sài. Điều ấn tượng nhất trong buổi giảng lần này là những ví dụ minh họa cách áp dụng vào dự án thực tế rất xuất sắc. Không chỉ truyền đạt lý thuyết đơn thuần mà còn có những ví dụ tập trung vào thực tế giúp tôi dễ hiểu hơn rất nhiều, đồng thời giúp tôi tự tin rằng mình có thể áp dụng ngay vào công việc thực tế.

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

            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!

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

            69.300 ₫

            30%

            2.059.879 ₫