Chào tất cả các bạn, hôm nay cafedev sẽ giới thiệu tổng quan về Xcode 11 mới được Apple phát hành vào ngày 16/09/2019.

Nếu ae nào có Apple Account thì có thể vào đây để tải Xcode 11 nhé.

Yêu cầu cần thiết để chạy Xcode 11

Xcode 11 có sẵn trong Mac App Store và bao gồm SDK cho iOS 13, macOS Catalina 10.15, watchOS 6 và tvOS 13. Xcode 11 hỗ trợ phát triển cho các thiết bị chạy iOS 13.1. Xcode 11 hỗ trợ gỡ lỗi trên thiết bị cho iOS 8 trở lên, tvOS 9 trở lên và watchOS 2 trở lên. Xcode 11 yêu cầu máy Mac chạy macOS Mojave 10.14.4 trở lên.

Những tính năng mới

  • Xcode 11 hỗ trợ phát triển App với SwiftUI.

Chú ý: Preview và kiểm tra SwiftUI chỉ khả dụng khi chạy trên macOS Catalina 10.15.

  • Xcode 11 bổ sung hỗ trợ Mac Catalyst để đưa các ứng dụng iPad lên Mac.

Chú ý: Các ứng dụng iPad chỉ có thể code và develop cho Mac khi chạy trên macOS Catalina 10.15 trở đi.

  • Xcode hỗ trợ tải lên các ứng dụng từ cửa sổ Organizer hoặc từ dòng lệnh với xcodebuild hoặc xcrun altool. Trình tải ứng dụng(Application Loader) không còn được bao gồm trong Xcode.
  • Trình chỉnh sửa(Editors) có thể được thêm vào bất kỳ cửa sổ nào mà không cần Trình chỉnh sửa trợ lý(Assistant Editor). Trình chỉnh sửa được thêm vào bằng cách sử dụng nút Chỉnh sửa Thêm vào trong Thanh nhảy hoặc lệnh Tệp> Mới> Trình chỉnh sửa(File > New > Editor command). Mỗi trình soạn thảo(Editors) có thể hiển thị độc lập trợ lý hoặc khung vẽ của riêng mình thông qua các lệnh trong menu

Asset Catalog

  • Xcode có thể tìm assets trong workspace/project của bạn bằng cách sử dụng trình Find navigator. Trình chỉnh sửa danh mục tài sản cũng hỗ trợ Find and Replace, và bạn có thể đổi tên tài sản bằng Replace.
  • Bây giờ các asset có thể được cắt, sao chép, dán và sao chép bằng các phím tắt trong menu hoặc bàn phím

Swift

  • Thuộc tính @frozen cho structure và enum hiện đã cập nhật
  • Hàm khởi tạo của structure hiện đã cho phép cung cấp các giá trị mặc định cho các đối số.
  • Một tham số @autoclenses hiện có thể được khai báo bằng cách sử dụng bí danh.
  • Các phương thức được khai báo bằng thuộc tính @objc bên trong một lớp giờ đây có thể trả về Self.
  • Và nhiều tính năng khác, bạn có thể tham khảo tại đây.

SwiftUI(Phần được mong đợi nhất)

Vâng, ở đây Apple chỉ ra danh sách các issues đang còn tồn tại và giải quyết một số nào đó.

Issues:

  • Triển khai các bản preview trước SwiftUI cho một thiết bị trong dự án có triển khai preview trên iOS 10 sẽ không thành công, ngay cả khi thiết bị đang chạy iOS 13. Bản preview trước SwiftUI chỉ có thể được triển khai cho các thiết bị khi mục tiêu triển khai của dự án là iOS 10+ và Thiết bị đang chạy iOS 13.
  • Thanh HStack và VStack không hỗ trợ tùy chỉnh bố trí các item.
  • Chụm để phóng to không có sẵn trong xem trước trực tiếp.
  • Và nhiều issues khác, bạn có thể tham khảo tại đây.

Swift Package Manager hỗ trợ cho iOS

Nhiều người đã yêu cầu điều này trong một thời gian dài, nhưng kể từ Xcode 11 Swift Package Manager (SPM) hiện hỗ trợ các ứng dụng iOS. Phải mất nhiều thời gian khám phá CocoaPods và Carthage để biết được trong 3 thằng này, thằng nào sẽ dẫn đầu về chức năng, nhưng từ những gì tôi có thể thấy SPM có tất cả các cơ sở quan trọng như 2 thằng kia.

Để hiểu rõ hơn về SPM bạn có thể tham khảo.

Ngoài ra, Xcode 11 đã một số cập nhật một số tính năng khác như sau:

Build System, Core Data, Debugging, Instruments, Interface Builder ,Playgrounds, Simulator, Source Editor, Source Control, Signing and Distribution

Các bạn có thể tham khảo tại đây.

Cảm ơn các bạn đã đọc và tham khảo bài này, nếu bạn thấy hay và hữu ích, xin vui lòng like fanpage cafedev để ủng hộ, Cảm ơn các bạn nhiều.

Đăng ký kênh youtube để ủng hộ Cafedev nha các bạn, Thanks you!