inflearn logo

Tự động hóa và mô-đun hóa dự án hoàn hảo với Tuist

Giải quyết triệt để các vấn đề kinh niên của dự án iOS quy mô lớn như xung đột file .pbxproj và quản lý phụ thuộc phức tạp bằng Tuist. Khóa học này được thiết kế để giúp bạn xây dựng một dự án mới từ đầu với cấu trúc đa mô-đun (multi-module) có khả năng mở rộng, đồng thời nắm vững tinh túy của việc liên kết thư viện bên ngoài và quản lý tài nguyên trong thực tế công việc. --- Điểm học tập cốt lõi (Key Takeaways) * 🏗️ Thiết kế dự án có hệ thống: Tách biệt Workspace và Project một cách hữu cơ để đảm bảo quyền sở hữu của từng nhóm và xây dựng môi trường cộng tác không xung đột. * 📐 Nguyên tắc thiết kế mô-đun đúng đắn: Tránh cái bẫy của 'SharedKit' (nơi chứa mọi thứ) và học chiến lược chia nhỏ mô-đun lành mạnh, tuân thủ nguyên tắc phụ thuộc một chiều. * 📦 Làm chủ thư viện bên ngoài: Sử dụng Package.swift của Tuist 4.0 để phân phối và liên kết hiệu quả các thư viện thiết yếu như Alamofire, TCA, Kingfisher vào từng mô-đun. * 🖼️ Quản lý tài nguyên hoàn hảo: Hiểu rõ các vấn đề về Resource Bundle phát sinh khi tách mô-đun, và ngăn chặn crash runtime bằng cách truy cập tài nguyên Type-Safe thông qua tính năng tự động tạo của Tuist. * ⚙️ Tách biệt thiết lập theo môi trường: Sử dụng xcconfig và Build Configuration để kiểm soát hoàn toàn tên ứng dụng, Bundle ID, API URL theo các môi trường Debug, QA, Release bằng mã nguồn.

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

Độ khó Cơ bản

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

iOS
iOS
Swift
Swift
tuist
tuist
iOS
iOS
Swift
Swift
tuist
tuist

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

  • Khi thiết kế một dự án mới, bạn có thể ngay lập tức xây dựng một cấu trúc mô-đun tiêu chuẩn hóa có khả năng vận hành ổn định ở bất kỳ quy mô nào.

  • Với tư cách là người thiết kế cơ sở hạ tầng dự án, tôi cung cấp một môi trường nơi các thành viên trong nhóm có thể chỉ tập trung vào việc phát triển tính năng mà không gặp phải xung đột trong thiết lập dự án.

  • Thay vì thêm các thư viện bên ngoài một cách bừa bãi, bạn có thể sắp xếp và quản lý chúng một cách chiến lược sao cho phù hợp với các lớp kiến trúc.

😱 Bạn vẫn còn đang phải vật lộn với hàng ngàn dòng .pbxproj sao?

[Master thực hành iOS] Kiến trúc mô-đun hóa siêu tốc thiết kế bằng Tuist

Hãy chia tay với tệp .pbxproj đầy ám ảnh và thiết lập hạ tầng 3 module chỉ trong vòng 10 phút.


Mỗi khi hợp tác với các thành viên trong nhóm, những xung đột Git kinh khủng xảy ra, dãy các giá trị băm không thể hiểu nổi, và thời gian build chậm chạp mất đến 10 phút chỉ để sửa một cái nút... Nguyên nhân của tất cả những nỗi đau này nằm ở "cách thức" quản lý dự án.


Giờ đây, hãy quản lý cài đặt dự án bằng 'mã Swift'. Tuist không chỉ là một công cụ đơn thuần, nó cho phép bạn hiện thực hóa tinh hoa của kiến trúc mô-đun hóa giúp chống đỡ cho các ứng dụng quy mô lớn bằng mã nguồn.

Trải nghiệm 'đầy mê hoặc' mà bài giảng này mang lại

Khóa học không chỉ đơn thuần dạy cách sử dụng Tuist. Bạn sẽ được trực tiếp mổ xẻ cấu trúc bên trong của project.pbxproj, tìm hiểu cách trình biên dịch và trình liên kết hoạt động, hiểu rõ sự khác biệt giữa framework và static framework trước khi bắt đầu mô-đun hóa. Chỉ khi hiểu rõ nguyên lý, bạn mới có thể tự mình giải quyết các vấn đề.

Đừng thêm mục tiêu (target) và kết nối các liên kết một cách thủ công trong Xcode nữa. Chỉ với một dòng lệnh tuist generate duy nhất, bạn có thể tạo ra một dự án với các mô-đun được tách biệt hoàn toàn trong nháy mắt.

Đừng thay đổi địa chỉ máy chủ phát triển, tên ứng dụng và Bundle ID một cách thủ công. Tôi sẽ tiết lộ bí quyết thực tế để kiểm soát hoàn hảo cài đặt ứng dụng được tách biệt hoàn toàn theo từng môi trường bằng mã nguồn thông qua việc liên kết xcconfig với Tuist.

Giải quyết vấn đề bundle tài nguyên, vốn là thách thức lớn nhất của việc mô-đun hóa, bằng tính năng tự động tạo của Tuist để ngăn chặn triệt để lỗi crash khi chạy ứng dụng (runtime crash).

Nội dung học tập

Hiểu về hệ thống build hiện có

Giải mã toàn bộ quá trình từ bản chất của tệp .pbxproj cho đến cách trình biên dịch (compiler) và trình liên kết (linker) chuyển đổi mã nguồn thành tệp nhị phân (binary).

Hiểu cấu trúc thiết lập Tuist

Workspace, Project, Target, Scheme — Hiểu cấu trúc của Tuist manifest và trực tiếp chỉnh sửa.

Thử tạo module

Chỉ với một dòng lệnh tuist generate, bạn có thể tạo một dự án với các mô-đun được tách biệt và kết nối các phụ thuộc (dependencies) với nhau.

Cấu hình các môi trường build khác nhau

Sử dụng xcconfig để phân tách tên ứng dụng, biểu tượng và địa chỉ máy chủ theo từng môi trường Debug, QA và Release.

Lưu ý trước khi học

Kiến thức tiên quyết

  • Ngữ pháp Swift cơ bản: Vì các tệp cấu hình của Tuist được viết bằng Swift, nên bạn cần nắm vững các ngữ pháp cơ bản như cấu trúc (struct), kiểu liệt kê (enum), closure, v.v.

    *


  • Sử dụng terminal cơ bản: Chỉ cần ở mức các lệnh cơ bản như cd, ls là đủ.

Môi trường thực hành

  • macOS Ventura trở lên


  • Xcode 15 trở lên

  • Tuist 4.x (Hướng dẫn quy trình cài đặt sẽ có trong bài giảng)

  • iOS 16.0 target / Dự án thực hành dựa trên SwiftUI

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

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

  • Nhà phát triển iOS muốn nâng cao hiệu quả cộng tác vì đã mệt mỏi với việc xung đột tệp .pbxproj và thiết lập thủ công.

  • Nhà phát triển luôn trăn trở về việc thiết kế cấu trúc mô-đun có khả năng mở rộng và bố trí chiến lược các thư viện bên ngoài.

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

  • Bạn cần phải quen thuộc với cú pháp cơ bản và hệ thống kiểu dữ liệu của Swift.

Xin chào
Đây là dumveloper

494

Học viên

34

Đánh giá

28

Trả lời

4.6

Xếp hạng

6

Các khóa học

Tôi là Dumbelloper, nhà phát triển iOS với 6 năm kinh nghiệm.

Bài giảng có thể áp dụng ngay vào công việc thực tế

Tôi sẽ tạo ra những bài giảng cần thiết cho trình độ sơ trung cấp.

 

 

Thêm

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

Tất cả

19 bài giảng ∙ (1giờ 49phú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á

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 dumveloper

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

208.871 ₫

66%

626.612 ₫