Thế hệ iPhone 11 và iOS13 ra mắt: Tín đồ công nghệ hồ hởi, Dev đau đầu chuyện “nâng cấp” ứng dụng

iOS 13 đã tạo ra nhiều tác động tới iOS Developer nói chung và Developer tại Sun* nói riêng.

Dev bị tác động thế nào khi iOS 13 trước những thay đổi?

Cứ mỗi lần ra mắt sản phẩm, Apple lại tung phiên bản cập iOS version mới và điều này khiến các Developer cần phải nhanh chóng cập nhật ứng dụng của mình để tương thích với hệ điều hành mới. 

Lần này Apple đưa ra bản iOS 13 và phiên bản Xcode 11. Trước hết chúng ta hãy thử tìm hiểu xem sự thay đổi trong iOS 13 và Xcode 11 là như thế nào, và chúng sẽ tác động đến các iOS Developer ra sao nhé!

Những tính năng mới trên iOS 13:

1. Dark Mode: Trước đây, tính năng này chỉ dành riêng cho máy tính MAC và lần này, Apple đã mang tính năng này lên bản iOS 13. Với sự quảng bá của “Nhà táo”, tính năng Dark Mode sẽ giúp chiếc iPhone (màn hình OLED hoặc AMOLED) tiết kiệm khá khá thời lượng pin.

2. SwiftUI là sự thay đổi hoàn toàn mới về thiết kế giao diện cho ứng dụng trên điện thọai của Apple và chỉ chạy trên iPhone cài đặt iOS13. Như giới thiệu của Apple, SwiftUI có thể "build dynamic interfaces faster than ever before". Nếu điều này là sự thật thì iOS13 quả nhiên đáng để mong đợi.

3. RealityKit: Lại một framework mới của Apple ở phiên bản hệ điều hành mới. Kết hợp với ARKit, RealityKit sẽ giúp ích cho những ứng dụng liên quan đến thực tế ảo bằng việc cho thêm các animation, physics, vaf spatial audio.

4. Sign in with Apple là tính năng mới được Apple giới thiệu tại sự kiện WWDC 2019 dành cho bản cập nhật iOS 13. Điều này có nghĩa là, các tài khoản apple ID sẽ được tích hợp thông tin tài khoản từ nhiều dịch vụ khác nhau và bạn chỉ cần bấm một lần để đăng nhập Twitter, Facebook hay Google,…

Apple nói rằng tính năng này là một tùy chọn đăng nhập an toàn hơn cả. Địa chỉ email và các thông tin cá nhân khác của người dùng sẽ được Apple bảo mật và người dùng vẫn có thể dùng các ứng dụng được liên kết như bình thường.

5. Apple CryptoKit: Đây là một tính năng giúp bảo mật cho dữ liệu người dùng, cho phép các nhà phát triển thực hiện các hoạt động mã hoá phổ biến bao gồm băm, tạo khoá và mã hoá. Như vậy, các dev iOS có thể tự động xử lý các tác vụ làm cho ứng dụng trở nên an toàn hơn thay vì xử lý chúng trong giao diện cấp thấp hơn.

Như vậy, với các tính năng mà Apple cập nhật cho iOS13, rõ ràng các Dev cần phải đầu tư nghiên cứu để build một ứng dụng tương thích với version này. 

Theo quan điểm cá nhân tôi, với cấu trúc, cú pháp lệnh được viết ra khác với code Swift cũ, Dev cần tìm hiểu các components mới, cấu trúc viết code như thế nào để sử dụng framework nói trên. Bên cạnh đó các components, keyword mới cũng sẽ được ra đời trong bản framework này.

Cùng với iOS 13, Xcode 11 cũng có những thay đổi và cải tiến đáng kể như Minimap, Swift Package Manager, Inline Diff, Transform iPad Apps to Mac...

Với cách nhìn chủ quan của mình, Xcode 11 khá mượt mà, từ giao diện cho đến font chữ đều được thiết kế nhìn bắt mắt hơn. 

Để nâng cấp lên Swift version mới nhất 5.1 thì các Developer phải cài đặt Xcode 11 để thử nghiệm.

Có nên cập nhật phiên bản mới không?

Mỗi lần Apple ra phiên bản iOS mới, các Dev lại lo ngại khi nâng cấp lên version mới sẽ báo lỗi đỏ lòm trong code. Nghiêm trọng hơn, các thư viện cũ chưa được nâng cấp để phù hợp với phiên bản Xcode mới. 

Đối với code ở các phiên bản Swift cũ hơn không quá xa so với phiên bản hiện tại, việc nâng cấp code của chúng ta lên version mới nhất được Xcode hỗ trợ khá tốt. Ngoài ra, các thư viện hỗ trợ như Swift Format để việc format code theo các version mới nhất hoạt động khá ổn.

Như vấn đề nêu ra ở trên, với các thư viện được sử dụng mà chưa nâng cấp để tương thích với các version mới, việc đầu tiên các developer nên làm là cần vào trang github của chính thư viện đó, xem các bản release version hiện tại đã có phiên bản mới nhất chưa?

Nếu có rồi, bạn chỉ cần nâng lên version mới nhất là được. Nếu chưa có, thì lúc build, khả năng bị lỗi rất cao. Trong trường hợp này, chúng ta hãy vào mục Issues ngay trang github của thư viện và tìm kiếm sự giúp đỡ. Sẽ có một ai đó đã tìm được cách fix và chia sẻ cách làm. Việc của chúng ta chỉ là làm theo thôi.

Trong trường hợp issues quá khó chưa có cách giải quyết thì tạm thời các bạn đừng vội nâng cấp, hãy chờ một thời gian nữa. iOS13 còn mới, thiếu ổn định, thư viện chưa kịp cập nhật.

Đây là một số tác động từ khi Apple ra mắt thế hệ iPhone 11 và iOS 13. Hi vọng có thể đem đến cho mọi người cái nhìn tổng quan về sự kiện "nóng" này và có cách ứng dụng vào công việc hiệu quả hơn.

Hãy cập nhật những thông tin mới và hấp dẫn nhất từ Sun* News vào 8h00 và 13h00 hàng ngày!

#iOS13

#iPhone 11

#Xcode 11