Xu hướng công nghệ mới nào sẽ hot nhất?
Với Swift, Apple đã sở hữu một ngôn ngữ vượt trội hơn hẳn Objective-C về mức độ trực quan, mức độ dễ học và khả năng sửa lỗi, bảo trì hệ thống cho tương lai. Ở hướng ngược lại, Kotlin của Google tuy được 1 công ty độc lập phát triển nhưng là 1 lựa chọn để các Mobile dev cân nhắc thay thế Java khi phát triển Android app.
Trong khi đó, năm 2016, ngôn ngữ riêng của Microsoft là C# được tiếp sức mạnh mẽ bởi Xamarin - công nghệ cho phép phát triển ứng dụng iOS, Android và Windows đồng thời từ một codebase viết bằng C#.
Nói đến lập trình đa nền tảng và chia sẻ code, React Native của Facebook cũng đang nổi lên nhanh chóng nhờ khả năng cho phép các dev sử dụng JavaScript để thiết kế app trên cả Android và iOS với cảm nhận và giao diện Native. Thay vì phải tìm hiểu những hệ sinh thái khác biệt với các bộ công cụ khác nhau, bạn chỉ cần nghiên cứu React Native là đủ.
Và dù vẫn còn nhiều tranh cãi nhưng có 1 thực tế không thể phủ nhận: Java vẫn đang là ngôn ngữ phổ biến nhất hiện nay, được cộng đồng hỗ trợ mạnh mẽ về frameworks, thư viện, packages…
Đứng giữa ngã… năm đường, liệu bạn có đang “chới với” không biết nên chọn ngôn ngữ/ công nghệ nào để lập trình ứng dụng di động của mình? Câu trả lời sẽ được tìm thấy nhanh chóng trong 180 phút tại buổi chia sẻ SWIFT, JAVA, KOTLIN, REACT NATIVE, XAMARIN - CHỌN CÔNG NGHỆ NÀO ĐỂ PHÁT TRIỂN MOBILE APP? với những case study thực tế, giúp bạn chọn được công nghệ/ ngôn ngữ phù hợp nhất.
Nguồn TopDev
Ps: Ai giúp newbie như em hiểu thêm về điểm mạnh và điểm yếu của các công nghệ trên với ạ
Bây giơ chú muốn phát triển cho nhanh nào trong mobile topDev ghi thế nào kệ cha nó. Giỏi 1 cái nào đó thì cũng không sợ đói.
Nhưng hiện nay các cty lơn thì vẫn Native Code , chứ ko chỏi Cross Native đâu nhá , các Cross Native chỉ thích hợp cho start-up thôi. Về ngôn ngữ ko có gì phải xoắn học rất nhanh và lẹ, còn học thuật của ngôn ngữ thì cũng hơi chua , như tôi đây học Swift nhìn vào thì thấy nó rất hay sở hửu nhiều pagramdigm ( OOP , POP , Functional ). H chỉ coi mỗi thằng Functional khá là không quen, nên cũng thấy hơi khó.
bác cho hỏi native code w cross native là gì ạ.? khác nhau ra sao v bác? em cũng đang theo swift chỉ mới xem sơ sơ OOP mà nhức cả đầu
Theo mình hiểu sơ sơ thì native code là dùng ngôn ngữ chuyên dụng cho hệ điều hành đó như Objective-C, Swift thì chỉ viết các ứng dụng IOS hoặc các phần mềm của Apple. Còn cross native thì dùng các công nghệ mới viết 1 cái chạy được trên các hệ điều hành khác
Theo mình thì Kotlin, Swift, Golang, Python, JS (React Native, NodeJS,…)
Native là chỉ viết + biên dịch cho 1 OS, thiết bị xác định.
Mã biên dịch được thực thi trực tiếp.
Ưu: Tối ưu hoá rất tốt do không cần quan tâm, mang theo những cái khác.
Nhược: không phát triển sang OS hay thiết bị khác được.
Ví dụ : Ứng dụng viết bằng C++ thuần.
Cross thì phát triển được cho nhiều OS, thiết bị.
Ưu: Phát triển sang OS, thiết bị khác nhanh (chỉnh sửa chút rồi build lại).
Nhược : Tối ưu hoá kém hơn, có thể phải có máy ảo hỗ trợ. Yêu cầu cấu hình cao hơn.
Ví dụ : Ứng dụng viết bằng Java.
Công nghệ càng hot thì cộng đồng và thư viện càng ít ổn định, phiên bản ở dạng beta.
Dự án sử dụng công nghệ mới thì mặc định bạn chỉ hưởng điểm mạnh công nghệ đó mang lại (thường được nói ở Getting Started), còn mấy tính năng linh tinh gần như không có thư viện riêng, lúc đó dự án phải code tay toàn bộ.
Đó là lí do vì sao Java ra đời từ 1995 đến giờ vẫn được công ty sử dụng. Java không có các tính năng mới như các ngôn ngữ hiện đại. Tuy nhiên, thư viện được viết bằng Java và bộ quản lý thư viện Maven lại cực kì ổn định, nâng cấp version không bị crash, warning.
Theo ý kiến cá nhân của mình thì JavaScript sẽ là một trong những ngôn ngữ phổ biến nhất trong nhiều năm tới. :))
Nếu yêu thích nền tảng JVM bạn có thể tham khảo Kotlin - https://vnkotlin.com/t/kotlin-ngon-ngu-lap-trinh-ke-tiep-ma-ban-nen-hoc