Lập trình Android hay iOS: Cuộc chiến không có kẻ chiến thắng?
Bạn còn nhớ ứng dụng đầu tiên mà bạn xây dựng là gì không? Ứng dụng cho Android hay iOS? Giữa lập trình Android và iOS, bạn đã chọn cái nào?
Nếu chọn nhầm nền tảng, bạn sẽ đánh mất rất nhiều thứ. Bạn sẽ mất dần đam mê, tương lai sự nghiệp thì mù mịt (giống như ngày trước các bạn đổ xô đi lập trình cho window phone vậy), hay đơn giản chi phí để học lập trình trên nền tảng đó vượt khả năng đầu tư của bạn… Tất cả sẽ làm bạn chán nản và từ bỏ.
Đối với lập trình mobile, thường các bạn sẽ đắn đo: Nên chọn học lập trình Android hay iOS? Khi tôi khởi nghiệp thì nên chọn nền tảng nào cho tối ưu nhất? Nền tảng nào sẽ đảm bảo ứng dụng có thể kiếm ra tiền bền vững?
Để giảm thiểu rủi ro, trước hết là phải xác định rõ mục tiêu, đối tượng và khả năng đầu tư của bạn. Bài viết này mình sẽ so sánh chi tiết cái được và mất giữa lựa chọn lập trình Android và iOS.
Nội dung bài viết:
- So sánh điểm mạnh và yếu giữa lập trình ứng dụng Android và iOS
- Giải đáp thắc mắc phổ biến giữa Android hay iOS
Lập trình ứng dụng Android hay iOS: Đâu là lựa chọn thông minh?
Kể từ năm 2017, cả iOS và Android trở thành 2 nền tảng chiếm lĩnh thị phần với 96% trên toàn cầu. Giờ đây, các bạn sẽ chỉ còn 2 lựa chọn duy nhất khi muốn theo nghiệp lập trình mobile là: lập trình Android hoặc lập trình iOS ( còn với window phone, Blackbery OS… xin đừng! )
? Bạn có thể có hứng thú với khóa học Android cơ bản
Để mình đưa một thông tin thú vị: Ứng dụng Instagram lần đầu tiên ra mắt trên iOS vào năm 2010. Phải 4 năm sau, người dùng Android mới có ứng dụng này trên nền tảng của mình
Triết học Trung Quốc có câu “Một cuộc hành trình ngàn dặm bắt đầu bằng một bước duy nhất”. Tất nhiên, xây dựng một ứng dụng cho cả hai nền tảng cùng một lúc có vẻ như tốt hơn, nhưng cũng có một số lý do để không làm như vậy:
- Đầu tiên là vấn đề tiền bạc, sẽ khá tốn kém. Sẽ cần phải sắm cả 2 loại thiết bị Android và iphone, hoặc phải thuê 2 ông developer tương ứng với mỗi nền tảng
- Thứ hai, việc xây dựng cùng lúc cho cả hai OS sẽ khả rủi ro cho doanh nghiệp của bạn . Bạn không thể biết liệu người dùng có thích ứng dụng của bạn hay không. Vì vậy tốt hơn hết là nên thử nghiệm ứng dụng đó ở một nền tảng rồi sau đó mở rộng ra nền tảng còn lại.
“Ok, vậy tôi nên chọn nền tảng nào trước?” – Chắc chắn trong đầu bạn sẽ bật ra câu hỏi này đúng không!
Mình hy vọng rằng, bài so sánh giữa Android và iOS này sẽ giải đáp được thắc mắc đó
Xét trên góc độ kinh doanh giữa iOS và Android: đừng bỏ lỡ “miếng bánh” của bạn!
Bạn muốn ứng dụng của mình như thế nào? Bạn muốn kiếm lợi nhuận và ứng dụng trở lên nổi tiếng? Và dù bạn tin hay không, điều đó vẫn phụ thuộc vào nền tảng bạn đã chọn. Bằng cách nào ư? Để mình phân tích cho bạn rõ
1. Thị phần và số lượng người dùng
Năm 2012, Android chỉ có 21,5% thị phần di động , quá ít so với iOS là 61%. Nhưng sau đó 5 năm, tình hình đã thay đổi đáng kể. Năm 2017, Android sở hữu 64% thị trường di động trên thế giới, cao gấp đôi iOS (32%). Các con số sau đã tự nói lên điều đó.
Tất nhiên, bạn cũng nên cân nhắc theo thống kê nhân khẩu học khác, nhưng có 2 người dùng tiềm năng chắc chắn sẽ tốt hơn 1 người, phải không? Vì vậy, trong vòng đấu đầu tiên giữa Android và iOS, một điểm đã thuộc về Android.
2. Khả năng kiếm tiền từ ứng dụng
Bạn muốn ứng dụng của mình không chỉ phổ biến mà còn có lợi nhuận? Mọi người cũng đều muốn như vậy! Có thể bạn sẽ nghĩ, nếu Android có đông người dùng hơn thì nó cũng sẽ có doanh thu cao hơn. Bạn đã sai rồi.
Với mức tăng trưởng doanh thu ròng 82% trong năm 2016, Android vẫn xếp sau iOS (đã tăng 60% trong năm qua). Rõ ràng: chỉ với một nửa số người dùng, Apple App Store vẫn mang lại gần 64% doanh thu.
Con số đã nói lên tât cả. Lần này người chiến thắng là iOS.
3. Số lượng tải ứng dụng
Có lẽ tiêu chí này nó tương đồng với tiêu chí thứ nhất. Nhưng mình vẫn cứ đưa vào vì nó ảnh hưởng trực tiếp đến doanh thu. Khi Android có đông người dùng hơn thì lẽ thường là có nhiều lượt tải hơn.
Có thể bạn sẽ hỏi “Điều đó có nghĩa lý gì?”. Vấn đề là các ứng dụng Android có khả năng tăng doanh thu từ quảng cáo. Có nhiều lượt tải ứng dụng có nghĩa là nhiều người dùng hơn. Nhiều người dùng hơn có nghĩa là có nhiều lợi nhuận hơn từ quảng cáo hơn. Đơn giản là như vậy!
? Dành cho bạn: Tại sao hầu hết ứng dụng di động thất bại trong việc tăng lượt tải?
Xét trên khía cạnh kỹ thuật: Phát triển ứng dụng cho nền tảng nào dễ nhất?
Khi lựa chọn nền tảng cho ứng dụng, ngoài yếu tố về tiền bạc, bạn đừng quên xem xét cả yếu tố kỹ thuật. Chúng sẽ giúp bạn hiểu kỹ hơn lựa chọn nào nào rẻ hơn, dễ dàng hơn và nhanh hơn.
1. Độ phức tạp khi phát triển ứng dụng
Khi nói đến sự phức tạp khi lập trình ứng dụng Android và iOS, chắc chắn Android sẽ thua. Đấy là mình chưa nói đến sự khác biệt về ngôn ngữ lập trình. Điểm yếu lớn nhất của Android chính là sự phân mảnh.
Apple có số lượng thiết bị hạn chế chạy trên iOS: iPhone, iPod và iPad. Mình lấy một số liệu thống kê gần đây cho thấy rằng hơn 50% người dùng đã cập nhật hệ điều hành của họ lên phiên bản mới nhất (iOS 11) trong 3 tuần đầu tiên sau khi phát hành. Bây giờ con số này lên tới 80%.
Điều này khiến công việc của các nhà phát triển iOS trở nên dễ dàng hơn. Quy trình phát triển nhanh hơn vì bạn đang xây dựng ứng dụng của mình cho một phạm vi thiết bị và hệ điều hành .
Trong khi Android thì sao, nó đúng là “một mớ hỗn độn”. Có hàng tá loại điện thoại thông minh và máy tính bảng trên Android có kích thước màn hình và tỷ lệ màn hình khác nhau. Bạn chỉ có thể phát triển ứng dụng tương thích với các thiết bị Android nhiều nhất có thể, chứ không ai dám tự tin là tương thích với tất cả thiết bị Android.
Vì vậy, trong hiệp đấu này người chiến thắng là iOS.
2. Thời gian phát triển một ứng dụng
Như mình đã phân tích ở trên, bạn đã có thể dễ dàng đoán được nền tảng nào cần nhiều thời gian để phát triển ứng dụng rồi đúng không? Chính xác! đó là Android. Lý do vẫn là bởi sự phân mảnh của nó. Vì vậy, trong cùng một dự án mobile thì Android developer sẽ nhiều việc phải làm hơn iOS developer
Mặc dù không phải do ngôn ngữ lập trình Kotlin quá khó học(ứng dụng Android sử dụng Java hoặc Kotlin), nhưng theo thống kê không chính thức thì cùng một tính năng , code cho ứng dụng Android sẽ dài hơn 30%-40% so với iOS.
Trong khi thời gian là vàng bạc, bạn tự hiểu trong hiệp đấu này ai là người chiến thắng rồi.
3. Chi phí cho lập trình ứng dụng Android
Đây là câu hỏi quan trọng đối với mọi nhà phát triển, nhưng nó không có câu trả lời rõ ràng. Và đây là lý do tại sao:
- Một mặt, xây dựng một ứng dụng Android sẽ tốn kém hơn do sự phân mảnh. Nhưng Android Studio có thể được cài đặt trên bất kỳ PC nào.
- Mặt khác, Xcode lại chỉ có sẵn cho Mac, vì vậy bạn sẽ phải mua một máy Mac cùng với iPhone hoặc iPad. Chi phí mua đồ Apple thì bạn biết đấy, rất đắt!
Như vậy, ở hiệp này coi như hòa nhau
4. Khả năng phát hành ứng dụng ra ngoài thị trường
Với Google Play bạn chỉ cần đăng kí một lần với phí là 25$( trọn đời), quá trình review ứng dụng trước khi publish được làm tự động nên rất nhanh chóng( tầm vài giờ là xong). Ngoài ra, nạn có thể dễ dàng tự chạy thử nghiệm beta trực tiếp hoặc cập nhật nó.
? Tham khảo thêm: 7 Điều cần làm trước khi đưa ứng dụng lên google play
Với App Store thì khó khăn hơn và có vẻ đắt hơn. Bạn cần 99$ phí duy trì hàng năm và tất cả ứng dụng( kể cả bản update) đều được review thủ công. Do vậy, thời gian ứng dụng có thể phát hành ra ngoài thị trường lâu hơn( tầm 2-3 ngày)
Trong phát hành ứng dụng Android và iOS, rõ ràng Android là người chiến thắng.
Đến đây, mình tổng kết các hiệp đấu thì phần thắng đang tạm nghiêng về lập trình Android với tỉ số 4-3.
Tuy nhiên, có một chỉ số nữa cũng rất quan trọng ảnh hưởng đến doanh thu của ứng dụng. Đó chính là người dùng. Ứng dụng của bạn hướng đến đối tượng người dùng như thế nào? Sở thích, thói quen người dùng trên mỗi nền tảng ra sao? Đây là bức chân dung chung của người dùng iOS và Android.
Người dùng iOS là ai?
Nếu người dùng của bạn …
- Hầu hết sống ở Bắc Mỹ và Tây Âu
- Thích các ngành nghề sáng tạo hoặc kinh doanh
- Có xu hướng chi nhiều tiền hơn trên internet và trong các ứng dụng dành cho thiết bị di động
- Chú ý hơn đến các ứng dụng từ các danh mục Kinh doanh, Giáo dục và Lối sống
- Thích mua sắm trên điện thoại…
Lúc đó bạn nên nghĩ về việc phát triển ứng dụng trên nền tảng iOS.
Còn người dùng Android thì sao?
Nếu người dùng của bạn …
- Chủ yếu sống ở Nam Mỹ, Châu Á, Trung và Đông Âu
- Thích các ngành nghề kỹ thuật
- Đánh giá cao tỷ lệ giữa chất lượng/giá cả
- Chú ý hơn đến các ứng dụng từ các danh mục Công cụ, Giải trí và Giao tiếp
- Và thà miễn phí mà quảng cáo còn hơn là bỏ tiền mua.
Lúc này bạn nên phát triển ứng dụng trên Android.
Giải đáp một số thắc mắc điển hình
Trong quá trình mình làm việc và tư vấn cho rất nhiều bạn sinh viên, học viên muốn khởi nghiệp bằng phát triển ứng dụng cho mobile. Mình hay gặp những câu hỏi và tiện đây mình sẽ giải đáp và chia sẻ luôn
Câu 1. Tôi nên chọn nền tảng nào để xây dựng ứng dụng Thương mại điện tử hoặc tạo ứng dụng giao hàng?
Trả lời: Chọn iOS, bởi vì người dùng của nó có thu nhập trung bình cao hơn và chi tiêu nhiều tiền hơn trong các ứng dụng dành cho thiết bị di động.
Câu 2. Tôi nên chọn nền tảng nào, nếu tôi muốn kiếm tiền từ mua hàng trong ứng dụng?
Trả lời: Vẫn là iOS, cũng vẫn là những lý do kể trên.
Câu 3. Lựa chọn Nền tảng nào để tạo ra một sản phẩm với chi phí tối thiểu?
Trả lời: Hầu hết các nhà phát triển khuyên nên sử dụng nền tảng iOS vì nó cho phép xây dựng nhanh hơn. Mặc dù chi phí mua thiết bị (PC, điện thoại test) khi phát triển ứng dụng Android có vẻ rẻ hơn iOS, nhưng về lâu dài khi vào giai đoạn maintaince dự án thì iOS lại rẻ hơn. Mình có số liệu này cho bạn: 80% chi phí dành cho dự án là ở giai đoạn maintaince
Câu 4. Tôi nên chọn nền tảng nào nếu tôi muốn kiếm tiền từ quảng cáo trong ứng dụng?
Trả lời: Chắc chắn Android rồi, bởi vì nó có gấp đôi số người dùng, những người có khuynh hướng xem quảng cáo nhiều hơn.
Câu 5. Nền tảng nào tốt hơn để thiết kế game trên thiết bị di động?
Trả lời: Trò chơi là danh mục phổ biến nhất trong cả hai cửa hàng ứng dụng. Tuy nhiên trên Android, danh mục trò chơi chiếm 90% tổng doanh thu cho ứng dụng, trong khi trên iOS chỉ chiếm 75%. Điều này có nghĩa lựa chọn nền tảng Android sẽ hợp lý hơn.
Kết luận
Cuộc đấu của Android và iOS dường như bất phân thắng bại. Mỗi nền tảng đều có điểm mạnh và yếu riêng. Vì vậy, tùy thuộc vào tình hình hiện tại của bạn, đối tượng người dùng mà bạn lựa chọn đúng nền tảng. Quên, 1 giây dành cho quảng cáo, nếu bạn muốn tìm hiểu và học lập trình Android thì có thể tham gia khóa học miễn phí của VNTALKING: Tự học lập trình Android trong 24 giờ.
Cập nhật mới nhất: nếu bạn muốn viết một lần mà được ứng dụng cho cả nền tảng Android và iOS, có ngay giải pháp là sử dụng React Native (hoặc những công cụ lập trình cross platform khác như Flutter). Mời bạn đọc bài này
nếu bạn muốn viết một lần mà được ứng dụng cho cả nền tảng Android và iOS, có ngay giải pháp là sử dụng React Native (hoặc những công cụ lập trình cross platform khác như Flutter). Mời bạn đọc bài này React Native là gì
Mình rất muốn nghe ý kiến khác từ các bạn, hãy comment bên dưới để mọi người cùng thoải luận nhé!