Android là một hệ điều hành được tạo ra dựa trên Linux được phát triển bởi Google. Nó được lập trình trong Java, C và C ++. Là một mô hình mã nguồn mở, với các giao diện và tính năng cơ bản cho khả năng tùy chỉnh đến một mức độ lớn hơn từ trên xuống dưới nhằm tạo nên sự phù hợp với nhu cầu của người sử dụng. Hiện nay nó đã trở thành nền tảng dành cho smartphone được sử dụng phổ biến nhất trên toàn thế giới được sử dụng bởi các nhà sản xuất điện thoại khác và rất được người tiêu dùng ưa thích.
iOS là một hệ điều hành smartphone được phát triển bởi Apple. Hoàn toàn không giống như Android được phát triển cho nhiều điện thoại thông minh và máy tính bảng. iOS được thiết kế đặc biệt dành riêng cho iPhone, ipad và các thiết bị cảm ứng iPod. Chúng được lập trình trong Objective-C và sử dụng một giao diện cảm ứng đa điểm hoàn toàn mới lạ và được coi là thân thiện hơn. Sử dụng một số cử chỉ đơn giản để vận hành các thiết bị như swiping để di chuyển và véo để thu nhỏ.
Sự khác nhau giữa lập trình iOS và Android
1. Mã nguồn mở và mã nguồn đóng
Android là phần mềm mã nguồn mở chúng được phát triển và phát hành bởi Google theo giấy phép Apache. Rất nhiều nhà phát triển đang làm việc để có thể tạo ra rất nhiều phiên bản mới của Android nhằm phù hợp với nhiều yêu cầu. Mặt khác iOS là hệ điều hành dành cho smartphone độc quyền được phát triển và thuộc sở hữu của tập đoàn công nghệ Apple. Cho nên Apple vẫn là người duy nhất phát hành phiên bản mới của iOS. Muốn trải nghiệm iOS bạn phải sử dụng các sản phẩm của Apple.
2. Ngôn ngữ lập trình
Sự khác biệt của hệ điều hành đi kèm theo sự khác biệt về ngôn ngữ lập trình. Đây là sự khác biệt rõ ràng nhất của 2 hệ điều hành: iOS sử dụng ngôn ngữ Objective – C/ Swift, trong khi Android sử dụng ngôn ngữ Java.
3. UIViewController và Activity
Chúng ta sử dụng clash Activity trong việc lập trình một view cụ thể trên thiết bị Android, còn với iOS, công việc này sẽ được đảm nhiệm bởi một controller tên là UIViewController. Nó được dùng để quản lý vòng đời của các sự kiện, các subviews.vv. Cả 2 đều chung một vai trò, mặc dù tên gọi là khác nhau.
4. Delegate và Adapter
iOs sử dụng từ khóa ‘delegate’ khi áp dụng delegation pattern trong khi Android là từ ‘adapter’. Mặc dù khác nền tảng và từ khóa diễn đạt, nhưng đấy đều là những khái niệm chung.
5. Giao diện đồ họa
Giao diện trong Android dùng file XML để xây dựng. Còn trong iOS thì sử dụng file XIB. Tuy nhiên, một lần nữa iOS lại trội hơn so với Android ở các animation. Google cũng đã cố gắng khắc phục điều này thông qua các bản xem thử của Android L và cố gắng tạo nên một xu hướng thiết kế mới là Material Design. Trong lúc đó thì Apple luôn tập trung vào những animation mềm mại, mạnh mẽ và rất cẩn thận trong việc để ý đến thẩm mỹ người dùng.
6. Platform
iOS là một platform hoàn thiện, nó được dựa trên hệ thống NeXTStep. Platform NeXTStep sau đó phát triển thành Mac OS, iOS là một phiên bản rút gọn của Mac OS. iOS được phát triển nhanh và liên tục có những version mới, API cũng thay đổi theo từng version.
Bản alpha release của Android xuất hiện năm 2007, các giao diện của nó đã trải qua khá nhiều biến đổi cho đến ngày nay. Android 3.0 dường như được lấy cảm hứng từ Windows Metro với rất nhiều không gian đen/trắng góc cạnh. Android 3.0 cũng bỏ đi 4 nút điều hướng cứng mà thay vào đó là 4 nút mềm trên màn hình cảm ứng. Các phiên bản của Android đã có những cải tiến quan trọng, điều này đặt gánh nặng lên các lập trình viên, muốn tận dụng được phần cứng và trải nghiệm mới cho người dùng phần mềm phải được cập nhật liên tục.