Cordova webapp实战开发:(1)为什么选择 Cordova webapp?
很长时间没有专注写代码了,即使写点代码也主要是写写敏捷个人app,这个App主体内容是我用了一周的时间,使用PhoneGap+JQueryMobile搭建的,之所以会比较快的完成,是因为11年我在做建筑云运维项目时使用过。
时隔几年,我在 《掌中广材产品经理日志(1)- 妈的,不想再呆在广联达了》写到,今年初我到了工信部负责一款之前已经做过一年多的APP,这款产品叫做掌中广材,大家可以各大市场下载到。
本系列初衷
现在Web App越来越流行,但是很多人却不知如何开始,自己学习使用Cordova开发,却遇到各种问题不知如何解决。本系列就是帮助大家从0开始学习,如何成为一个全栈型的Web App开发人员。也希望有更多优秀的开发人员出现,而不是像现在,Web前端因人多而泛滥且难招而贵,但是却没有多少优秀的开发者。
开发人员构成
之前的掌中广材使用的是原生开发方式,在我接手项目的时候,开发人员有3个,一个Android、一个iOS、一个后台Java,在我的产品经理日志系列文章中也都对团队进行详细介绍,这里就不再重复。
接手任何一个新项目其实还不难,接手一个已有项目却显得更难一些,因为很多人都不愿改变,也有很多人会拿着以前好的与你现在不足的比,不过幸好我对这些都不感冒,我就是我,按照自己的开放产品开发方法,一步一步重头开始。
这个项目组的开发效率并不高,遗留的一些老问题一直未能解决,后台经常不能与大家一起配合可能是一个主要原因,这与我要的快速开发产生了一些差距。其实做一个产品,可能很多技术都可以,而最后决定采用哪种技术,是由做产品的人来决定,你感觉能越有信心把控哪种技术,可能就会采用这种技术。
我要求快速开发,我要求将来还能通过其他方式的渠道来使用掌中广材,所以最后我选择了Web App的方式来开发掌中广材。从技术上来说,掌中广材不需要高性能和特别高的原生体验,所以Web App完全可以满足。当然,在我决定做之前,工信部是没有人使用过H5来开发APP的,很多人都很怀疑,我能理解,但是我不能耽误我的时间,所以我不做太多解释,而是自己开始做,等做完了也就不用解释了,因为即使我现在再解释,对他们来说都是没用的,反而会耗费我的精力。
因为采用Web App方式,所以Android和iOS开发人员并不是主要人员,之前的这两位程序员也离职。而后台JAVA工作方式与团队不吻合,也被我辞退。在没有开发人员的日子,我重新开始做起了码农,想想一别那么久没有写代码,重新敲起代码,依然能感受到自己对技术的那份热情依旧存在。
所以,有一个多月的时间,我即是产品经理,也是架构师、程序员,还是运营推广人员。即使到现在,我们也就还有一个后台和一个产品助理,我依旧兼做着多个角色的工作,但是忙而不乱。
采用的技术
掌中广材App看起来不复杂,就几个页面,但是说实话,现在做的代码有点点乱了,有时间我要把单元测试做起来,再换成面向对象的一些方式来更好地处理维护性,这算是敏捷中说的技术债务吧。
下面我说一下这个产品的一些技术说明,以便大家在后续学习中有所总体了解,后面我会再慢慢与大家一步一步的介绍,如何从0到1的做一个Web App的全栈型开发人员。
- 移动开发框架:Cordova
- Web页面框架:JQueryMobile
- 前端脚本库:JQuery、iscroll、progress等
- 后台语言:JAVA
看看产品长什么样吧
学习之前看看使用Cordova+JQueryMobile开发出来的App长什么样吧,看完之后你觉得还比较适合自己的胃口,那就继续关注这个系列来学习吧。
另外,如果你身边有与建筑、造价、采购相关的人员,可以向他们推荐这款APP啊,掌中广材,随时随地快速的找到各地信息价和靠谱市场价
如果想下载体验一下,那就扫描上图带有二维码的图吧,实际跑一跑,看看运行效果,然后决定是否继续学习这个。
开发感受
为什么选择 Cordova webapp?不是我觉得Web App一定就比原生开发好。如果我有足够的原生开发人员、我有足够的时间,我选择原生技术也许会更好。正如本文开篇所说,任何选择只有考虑了当前情形之下做出的选择才是有效的,所以为什么选择Cordova webapp呢?那是因为在时间、人力、未来产品形态上,这种形式我更觉得有把控力。
从总体开发进度来说,开发Web App,我觉得至少会比原生App开发要快比较多,而且通过Web方式开发可以在Android和iOS,以及微信等Web方式重用,所以你要的人力资源也会少,当然,前提是你需要一个愿意成为全栈型开发人员的人。而这也是本系列的一个初衷,我希望现在的开发人员不要总是被精专一词所迷惑,其实不是做技术难度特别大的,你成为通才有助于你锻炼自己的学习能力,还能加强你的核心竞争力,成为全栈型开发人员不是为了别人,而是为了自己。
这只是这个系列的开篇,没写和技术有关的,这是后面博客要写的内容。如果你对这个系列哪些内容感兴趣,或急于先解决的,也可以回复我。
PhoneGap开发群 477842664
Cordova webapp实战开发:(1)为什么选择 Cordova webapp?的更多相关文章
- Cordova webapp实战开发:(2)认识一下Cordova
昨天写了第一篇 <Cordova webapp实战开发:(1)为什么选择 Cordova webapp?>,意料中看到大家对这个主题的兴趣,我新建的PhoneGap App开发 34819 ...
- Cordova webapp实战开发:(7)如何通过简单的方法做到,不重新发布APP来修复bug、增加功能、或者躲开苹果的一些严格审核?
到<Cordova webapp实战开发:(6)如何写一个iOS下获取APP版本号的插件?>为止,我们已经大体学会了如何使用Cordova了,那些都是使用Cordova的开发者必备的技能. ...
- Cordova webapp实战开发:(5)如何写一个Andorid下自动更新的插件?
在 <Cordova webapp实战开发:(4)Android环境搭建>中我们搭建好了开发环境,也给大家布置了调用插件的预习作业,做得如何了呢?今天我们来学一下如何自己从头建立一个And ...
- Cordova webapp实战开发:(4)Android环境搭建
在<Cordova webapp实战开发:(3)后面可能会学到的东西>中我们说了一下后续大致包括的内容,今天我们继续.上周我在掌中广材集成了友盟的社交分享,今天想集成iOS应该很顺利的,但 ...
- Cordova webapp实战开发:(3)后面可能会学到的东西
在<Cordova webapp实战开发:(2)认识一下Cordova>中我们了解了Cordova和Phonegap的关系,并简要介绍了一下它的架构,以及多平台性,并给大家留了一些作业.我 ...
- Cordova webapp实战开发:(6)如何写一个iOS下获取APP版本号的插件?
上一篇我们学习了如何写一个Andorid下自动更新的插件,我想还有一部分看本系列blog的开发人员希望学习在iOS下如何做插件的吧,那么今天你就可以来看看这篇文字了. 本次练习你能学到的 学习如何获取 ...
- Cordova webapp实战开发(20161207 )
http://www.cnblogs.com/zhoujg/archive/2015/05/28/4534932.html 1.https://www.jetbrains.com/idea/downl ...
- 前端开发我为什么选择cordova
cordova与phonegap有什么关系? phoengap 官方网址:http://phonegap.com 如果能了解一个框架的兴起还是一件比较有趣的事.08年一次ios开发者大会上来自Nito ...
- vue2.0与实战开发
慕课网实战 百度云 web前端实战: Node.js入门到企业Web开发中的应用 Web前端性能优化 让你的页面飞起来 前端跳槽面试必备技巧 前端JavaScript面试技巧全套 node.JS 线上 ...
随机推荐
- python学习GUIwxpython不支持中文输出入的问题
# -*- coding: utf8 -*- import wx def load(event): file = open(filename.GetValue()) contents.SetValue ...
- MySQL 升级详细步骤 (包括 Percona)
MySQL 升级步骤 MySQL 5.1.72 升级到 MySQL 5.5.36 鉴于我在升级的时候遇到的麻烦问题,我觉得有必要把一些细节说清楚,免得引起误解了.感觉官方文档上的升级步骤写的比较简单, ...
- wpf下datagrid使用过程中需要注意的几点(一)
MainWindow.xaml中的代码如下: <DataGrid CanUserAddRows="False" ItemsSource="{Binding}&quo ...
- [leetcode 48] rotate image
1 题目 You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwi ...
- 人人都是 DBA(V)SQL Server 数据库文件
SQL Server 数据库安装后会包含 4 个默认系统数据库:master, model, msdb, tempdb. SELECT [name] ,database_id ,suser_sname ...
- 解决Win7 软件图标不显示--Win7图标异常,快捷方式不显示解决方法
电脑症状:WIN7的系统,桌面上的图标显示的不正常,快捷方式显示的是未知程序.看不到程序默认图标,快捷方式图标不显示. 解决方法:删除程序图标缓存即可. 将下面的内容复制到记事本保存为“Repai ...
- 我YY的一个移动应用运营模式
尽管自己也还是刚刚毕业不久的前端新人,但网上也不乏一些案例告诉我们有志不在年高,很多优秀的同龄人已经有了不错的成就,所以在切页面写onclick之余也在进行一些思考,前端程序员的出路到底在哪里? 一. ...
- Java多线程系列--“JUC锁”06之 Condition条件
概要 前面对JUC包中的锁的原理进行了介绍,本章会JUC中对与锁经常配合使用的Condition进行介绍,内容包括:Condition介绍Condition函数列表Condition示例转载请注明出处 ...
- Android获取View对应的Bitmap
我的应用里面有一个需求,将一个画面分享出去,这个画面底层是一个View,所以首先要把这个View转换成Bitmap,然后在分享这个bitmap即可.话不多说,直接上代码. 有个地方需要注意一下:就是/ ...
- [HIMCM暑期班]第1课:概述
作为这个系列的开始,我会把每一节课上过的内容,与同学们互动后发现他们的闪光点记录下来,以后其他要准备该比赛的人借鉴和参考. 第一节课是概述,主要讲什么是数学建模,还有建模可以帮助我们做什么.举了三个例 ...