选择Android开发还是ios开发一直都是创业者的一大的棘手问题,尤其是在如今Android 的市场份额已经突破80%.

我们现在来看看某一位在HappyFunCorp(拥有迄今为止最好名字的咨询公司)资深软件工程师的见解吧

他编写并开源了两个近乎一模一样的AndroidiOS原生应用,并用以下方面进行对比用来区别Android开发ios开发的优劣势。

一、 开发环境

苹果的Xcode让人开发起来很愉悦。Xcode漂亮、快速、强大、帮助很大却又不扰人,而且在编译和通过证书/档案机制控制iOS应用和设备上做得越来越好了。Xcode的调试工具运行平滑,模拟器快速且反应灵敏。

Android最先进的IDE是用Android插件定制的Eclipse,而它却很糟糕。慢、笨重、反直觉、布局糟糕、不必要的复杂。它的调试工具也非常笨拙,大部分时间都是通过日志进行调试。而XCode的调试工具却是寻找iOS程序错误的首选工具。Android的模拟器也要花几分钟才能启动,其中差不多有一半没法连接到AndroidDebug Bridge

二、API

  AndroidiOS都向开发者们提供了庞大的软件库。绝大部分工作都是由控制器完成:iOSViewController差不多就相当于一个Android Activity

iOS有而Android没有的是一套额外的框架和功能,比如Android就没有iOS强大的CoreData框架的对应物,也没有iOS更整洁、更好的设计系统。举个例子,将这两个做了应用大部分工作的相对简单的iOS类与这三个对应的Android类进行比较。最后我在Android类上花的时间要比在iOS类上花的时间多。

三、网络

Android提供AsyncTask类来做这类事,而且判断是否联网也很方便。iOS也提供相应的功能,但它们的表现相当低级。不过,有一堆开源库让生活变得轻松多了。用AFNetworking,使用起来感觉非常好。你只需在网络请求完成后将代码块传递给它就能运行,这在Android中根本不可能,因为Java并没有block

四、总结

总的来说iOS要领先很多,Android有其优势,但,编写好的iOS应用要比编写好的Android应用容易得多。加上初创公司大多数还是以iOS为先。新的Android Studio IDE也许会极大地缩短差距,但并不是全部。

注:本文原发于麦子学院,转载请注明出处。

更多相关文章

  1. [置顶] Android模拟打电话应用程序实现分析
  2. Android实战
  3. Android应用程序框架层和系统运行库层日志系统源代码分析
  4. 10个常见的 Android(安卓)新手误区
  5. Android之应用资源的调用
  6. android应用程序签名
  7. Android开发指南-框架主题-内容提供器
  8. [Android(安卓)NDK]Android(安卓)JNI开发例子 ---2 动态加载JNI
  9. 【Android】进入应用和切换界面时闪屏的问题

随机推荐

  1. Android(安卓)开发经验传承
  2. Android(安卓)历史版本总结
  3. Android(安卓)Touch事件原理加实例分析
  4. 活用Android的Message Queue(2)
  5. Android实现左右滑动效果
  6. Android实现动态改变app图标的示例代码
  7. Activity 的四种加载模式
  8. 在Android(安卓)Studio中使用Android-Pul
  9. [Android]实现静默安装APK的两种方法
  10. Camera服务之--架构浅析