文中的Html5+是市面上一种比较流行的Hybrid
开发方案,通过这套方案,可以用HTML,JS和CSS写出一个完整的原生APP,并且性能与原生相比较接近。
从16年8月下旬开始,就渐渐的远离Dcloud的Html5+开发了(因为当初工作原因,在公司弄了一套自己的混合开发方案)。
原计划是在10月份左右就先总结一下Html5+一年多来的开发经验,避免留下遗憾。但是却由于种种原因,一直拖延,知道现在…
当初给自己找点借口是没时间,以后再写
。现在回想来,这个借口确实有点着急,试想我有时间学口琴,吉它,英语,日语,为何会没时间来写一篇总结博文?也许仅仅是我内心对它不重视而已。
正常来说,随着时间的流逝,这个念头或许就消逝了,到最后也不会出炉一篇感想
。但此刻的我要终结这个现象,我要立刻马上写一篇总结,以此铭记消逝在这上面的时间。
这无关信仰,仅仅因为我想要有始有终
于2015年9月份,在第一份工作时,身为Android原生开发的我由于公司需求,初次接触了Dcloud公司的Html5+开发模式。
第一次接触Html5+开发模式,确实被惊艳
了。那时仅局限在Android原生世界中的我知道了原来JS可以也写出原生APP。同时也被Hbuild
这款IDE深深吸引了,觉得它功能特别强大。于是这时候便开始迫不及待的学习起来Html5+开发。
当然,此时我面临着一些阻碍:
搜索
当然,对于一个合格的程序员来说,良好的学习能力
是必备的,所有这都不是问题,因此从0自学,大概1个月后,磕磕碰碰的开发出了项目的初版。
初版的项目虽然能正常运行,但是代码惨不忍睹,于是之后在完善项目功能的同时又对整个项目进行了多次重构。
最终,在11月份左右时,项目的终版也出来了,整个项目经历了3次大重构,无数次小需求修改。部分功能截图如下:
统计下来:
社工端
和居民端
,其中社工端
页面数110左右,居民端
页面数60左右(项目算较大了)没有任何JS和CSS经验的Android原生人员
+ 1和页面重构人员(没有CSS经验只能让重构人员重构页面)2OW左右
(主要都是开发人员人力花费时间)*第一个项目做下来总体评价:
在完成了第一个Html5+模式开发的APP后,发现这种模式相比起原生开发有很大的优势,于是接下来又有多个项目基于Html5+模式进行开发。
当然随着业务的拓展,慢慢的公司里专门进行Html5+开发的人员也越来越多,从刚开始的原生Android转向H5开发,到后来纯碎就是只会JS,不会Android的人进行开发,从刚开始的只兼容Android与iOS,到后来的兼容Android,iOS,浏览器。整体模式也越来越跨平台化。
这时候,我也慢慢从项目开发中抽出身来,开始为公司的跨平台开发搭建一个简陋的开发框架,用来统一代码风格,简化开发。
整体框架的发展过程:
V1.0版本
V2.0版本
V3.0版本
整体的框架代码结构如图:(相关文档可以参考文章最后的链接)
从15年9月份,一直到16年8月份,公司接手的小型APP基本都是用Html5+
模式开发的(基于那个简陋框架,当然了,我基本都没参与开发了),统计下来如下:(当然实际上那些微信,原生等项目就不统计了)
到了16年8月,整体跨平台开发已经比较成熟,那个简陋框架也在慢慢完善,经过了多个项目的验证,并且在线文档也同步推出,正在慢慢完善。正常来说接下来应该就是Html5+项目业务代码的堆积时段了,接下来应该是告诉的开发H5+项目。
但是,这时候整个公司层面对Html5+跨平台开发方案
进行了一次评审,一番讨论下来,最终决定舍弃已有的H5+方案,转而自己弄一套更符合公司业务的混合开发方案
,遗弃理由大概如下:
于是从16年8月份开始,就开始逐渐舍弃h5+方案,转而研发搭建公司自主的混合开发框架
另外,这里支持下Dcloud,在整个Hybrid界,H5+是一个相对来说较优的方案。相对来说还是有一定的技术自由度的,比如与它的老对手APICloud
相比:
从15年9月正式接触H5+开发,到16年8月舍弃h5+,再到现在17年2月。原来不知不觉之间,已经过去了1年半了。
总的来说,H5+开发
对我来说更像是一个转化器
,一年前,我以一个纯Android原生人员
的身份进入这个领域,一年多后,我以前端界综合人士
从另一端出来。
也许就像一些前辈说的一样,我们的人生就是大井
套小井
,我们从一个小的井底之蛙,变成一个大的井底之蛙,虽然我们内心可能一直在沾沾自喜自己已经跳出了以前的小井
,但其实我们却不知依然处于另一口大井
之中。
技术如此,人生也如此。骄傲
也好,成就
也罢,也许对于整个人生来说,它们真的不值一提。我们能做到就是恪守本心,不忘初心的一直走下去。
https://dailc.github.io/2017/02/15/html5plusDecelop.html