CIO必读:企业移动应用开发技术如何选?

要是你问现在哪个行业最火?哪个名词最热?哪个专业最受社会关注?那肯定当选移动互联网。热透了的B2B、B2C、C2C、O2O、BYOD概念无时无刻不影响着移动互联网应用的发展。反之移动互联网应用也在加速地催化和改变各个行业的传统工作习惯、工作方式。改变着各行业各阶层人们的工作方式。可以说全民移动互联的时代已经到来。这给国内大大小小的通信软件厂商带来了无线遐想和发展的空间。

byod a JPG 350x250 crop q85 300x214 移动应用开发技术选型之心得 移动应用开发 移动中间件 原生开发 MEAP

各种公众性、专业性的APP应用如雨后春笋般涌现。厂商之间如战国般混战厮杀,谁能更快地将需求商机转化为与之对应的APP应用来满足客户的需求将会获得先入为主的优势。将会获得最大的一块“蛋糕”。这就对软件厂商提出了很高的要求,既要如“抓蛇七寸”之精准把握好需求,又要如“势如破竹”之速度推出应用占领市场。所以就对移动应用软件的技术选型提出了很高的要求。

从我多年从事移动信息化应用的开发来看。现在市面移动APP应用主要分为:跨平台的中间件产品和原生态开发两种方式。但一个项目来了该如何选择哪种开发方式呢?让我们先粗略地了解下这两种开发方式的优劣。

一、跨平台的中间件方式

优势:现在市面上主流的智能终端系统主要有:Android、IOS、Windows Phone、BlackBerry。但各智能操作系统之间存在着巨大的差异,各系统开发的方式不同、开发语言不同、开发难度不同、开发要求不同并且对程序员的要求也不同。很难做到让一个程序员能够掌握如此众多的终端开发技术。从而“跨平台的中间件”开发方式营运而生。所谓的“跨平台”方式,从字面我们就能看出这种技术是可以跨越各终端平台之间的差异使得程序员开发一套特定语法规则的程序就可以在不同的智能终端上运行,这个“一次开发多平台支持”的优点不言而喻,节省大量开发的人力成本、缩短项目的开发周期,最主要的是降低了项目的成本预算。并且市面上主流的中间件产品,基本都是就是将各平台原生开发语言封装成类似HTML那样的简单语法或者直接使用HTML5+JAVASCRIP+CSS的模式,只要一个懂得静态页面语言的毕业生就可以胜任移动APP的开发工作,这对软件公司来说也节省了一大笔储备高素质、高薪水软件开发工程师的后顾之忧。值得创业型软件公司加入其中快速挣得第一桶金。对于客户来说也节省了大量的项目预算。

劣势:所谓的跨平台主要是体现在了“一次开发多平台支持”。但也有其劣势。如:组成APP应用的界面控件都是统一规划出来的,灵活性、美观性不够好,无法最大限度地体现不同只能操作系统的特点。特定的代码只能实现预定的展现方式,无法做到极其炫丽的效果。所以对于政府、财经商行业、教科研、农工电等传统市政行业对于APP的界面美观度要求不高,而对其功能实用性要求高的应用非常适用。而对于公众性、资讯门户类、传媒等行业则适用性不大,主要这类应用对于APP的操作要求非常流畅、界面效果非常绚丽并要求有些个性化的设置等功能。这点中间件方式尤其先天的劣势。

二、原生态开发方式

优势:Android、IOS、Windows Phone等主流智能操作尤其特定的原生开发语言、配置环境和技术要求。所以原生态开发可以最大潜力地挖掘和修饰需求中最耀眼的那个“点”。可以将APP的效果做到极致。可以最大程度的满足客户对于界面美观、效果绚丽、操作特别的近乎苛刻的需求。并且可以最大程度地发挥特定智能操作系统的风格。

劣势:原生态开发只能是针对某一种特定的操作系统进行开发,无法做到“跨平台”。一个程序员只能在一种平台上开发,无法做到同时并行。这样如果一个客户要求产品覆盖多个平台就要同时有多名程序员负责各自的APP应用开发。相对“中间件产品开发”就要多出N倍的工作量。这将直接导致项目工作总量的加大、项目交付周期的加长。最终直接导致项目报价成本急剧增加。对于客户来说预算大大增加。对于软件公司来说需要储备大量不同系统的原生开发人员,公司的成本也将大大提高。

说完了两种开发方式的优劣我们来讨论下一个项目来了我们该如何进行技术的选型。

首先项目前期的需求调研特别重要,能够快速地拿捏住客户的需求。从客户对于交付产品的预期效果、客户对于项目投入的预算等诸多因素综合考虑才能确定选择哪种开发方式。切不可一味地贪图“价格便宜”的优势来拿下客户。我们做项目、做产品要抱着对客户负责、对产品负责的原则。不可莽撞行事做过多承诺,导致最终项目预算包不住实际成本而出现“偷工减料”的现象,最大可能导致项目胎死腹中。以无法满足客户的验收条件而失败告终。APP应用界面体验效果要求非常高建议采用原生态开发方式。界面效果不重要只需要满足使用功能的要求则可以采用中间件的方式开发。对应的客户预算也会大大降低。

举例如客户对于APP产品的界面要求非常高。如:各种滑动效果、各种手势、各种横竖屏切换效果、各种动画效果等我们建议采用原生态开发。但这随之带来的就是项目的成本高、报价肯定高。如果客户的预算有限,古人云“鱼和熊掌不可兼得”。那就要跟客户“晓之以理,动之以情”拿出“语不惊人死不休”的耐心架势,将客户说服。肯定是要客户有所侧重。采用原生开发就要追加预算,或降低APP应用的效果采用中间件开发。

感谢作者孙成强投稿!

原文发布于微信公众号 - 人称T客(Java_simon)

原文发表时间:2014-05-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ThoughtWorks

DevOps发展的9个趋势|洞见

DevOps包含了太多方面的技术和实践,很难通过一个统一的工具链来描述其发展。即便如此,我们仍然可以从ThoughtWorks技术雷达的条目变动中看出一些趋势。...

39440
来自专栏敏捷开发&项目管理

写在2015 项目回看 -- 敏捷在思想不在形式

面试的时候了解到的情况: 软件组主管刚刚离职,需要一个人接手 公司有一个成熟的框架,国外开发的,很多功能可以复用 公司的程序员都在公司干了2~3年左右 团队项目...

36670
来自专栏人工智能头条

《程序员》5月精彩内容:人工智能 为我所用

17440
来自专栏web前端教室

前端开发 和 前端开发工程师的区别

前端行业其实很少人去深究前端开发工程师中的“工程师”这三个字,究竟是什么意思。其实在我看来,许多所谓的前端开发工程师只是做前端开发的工作而已,远配不上工程师这三...

248100
来自专栏云计算D1net

云平台将承载一切? 听28位技术高手如何预测云应用未来

我们与28位分别来自23家企业的高管人员进行了交流,希望了解这些负责立足于云环境进行应用程序开发与部署的技术领导者如何看待相关议题。 ? 而在被问及“云应用的未...

374130
来自专栏Java架构

离职总结:大公司与小公司的个人体验

26250
来自专栏java学习

为什么要学习java?

大家好!这个网站的目标是为了方便大家更好的学习java&android编程。不管你是初学者还是一个经验丰富的程序员,相信这个网站对你都会有很大的帮助。只要大家每...

42380
来自专栏腾讯大讲堂的专栏

《天涯明月刀》引擎技术和技术突破

引言:6.14日“腾讯创新日:科技年技术盛宴”代表腾讯各个事业群技术实力的四级专家、腾讯微创新2016年度创意获奖团队欢聚一堂,一起畅谈AI、系统安全、架构设计...

37950
来自专栏PPV课数据科学社区

大数据从小做起—中小企业的Big Data之道

任何一个时代或者模式的兴起,都离不开与之相关的Killer App,比如,C/S时代的SAP ERP,互联网 1.0 时代的门户,以及互联网 2.0时代的搜索和...

34850
来自专栏腾讯云服务器团队的专栏

腾讯云发布第三代云服务器矩阵,开放更强计算力赋能产业智能化

云计算正在经历全新的变革,在强大的计算力之上,业务场景正在驱动技术的创新与变革。9月25日,腾讯云正式发布第三代云服务器(CVM)矩阵,最新的计算、存储、网络和...

70350

扫码关注云+社区

领取腾讯云代金券