我的 App 工作台-不仅仅是技术
作为一个野生程序猿,经常会有如下对话
- 我打算要做个网页 /APP,很简单的,你看看随便找个人帮我做下,钱不是问题,关键要快要好。
- 那你打算做啥呢?
- 我要做的很简单啊,你看,就是巴拉巴拉巴拉巴拉巴拉,你看这么简单,两个星期能做好不?
- 呵呵需求方和程序猿之间往往差了 N 个产品经理啊。对于需求方而言,他们往往只关心需要多少钱多长时间才能做好,而对于有追求的程序猿而言,还需要考虑以怎样一种方式才能在时间与质量之间达到一个平衡。笔者脑子不好,比较笨,这篇文章也就当给自己留个笔记,以后如果有重复性劳动了做起来也方便,或者以后有小伙伴有类似的问题了
准备工作
需求分析
逻辑需求
功能需求
- 是否支持 OAuth 登录,譬如 QQ、微信等
- 是否支持第三方支付,譬如支付宝、微信支付等
- 是否支持即时聊天,譬如在线网页聊天等
- 是否需要支持文件上传,是否需要支持流媒体播放
- 是否需要支持 LBS 地理位置信息展示功能模块 LBS:百度 Pay:BeeCloud Media : TuSDK、Vitamio CloudStorage : Qiniu
可用性需求
1.2 产品逻辑设计笔者画图用的LucidChart 1.3 用户交互回环包括思维脑图与原型图设计原型图的话用 AxureRP 与墨刀,思维脑图的话 1.4 需求变更说明
项目管理
后台与逻辑
团队搭建
硬件服务器 ECS 青岛 2 核 4GB 1MB 带宽 Ubuntu 14.04 系统盘 SSD40GB 价格 253.7/ 月 包年的话是 2537( 便宜两个月 ) RDS 青岛 5.6 版本 存储 20GB 内存 240MB 带宽 1 元 /GB 费用 52.2/ 月 SLB Redis 后台最重要的是啥,二者,一个是存储,一个是接口文档。( 2)WebAPP ( 3)微信(4 ) Android/iOS
移动客户端开发
团队搭建
设计先行
技术选型
开发技术
目前移动客户端以 NativeScript、ReactNative 为代表的跨平台编译式框架以 Cordova 为代表的基于 WebView 的完全 HTML 式开发(当然,肯定需要原生组件的支持)在技术栈不允许的情况下,一般就是 iOS、Android 各选一个人,这是最传统也是最笨的方法。对于设计不一致,并且具有较大性能要求的,譬如首屏这样的,建议是使用原生开发。对于不同平台设计一致,性能要求与瓶颈较低的,非关键性界面,譬如什么粉丝列表啊这样子的界面,可以考虑使用 ReactNative。对于需要频繁更新的,或者临时性界面,可以考虑使用 Cordova。笔者不知道自己这样描述是否有
Continuous Integration
进度管理
Android
分发测试
安全加固
笔者早年也搞过一段时间 Android 逆向啊,重打包啊之类的,所以这个安全加固还是灰常重要的。Google 自带的 ProGuard 自然是要加上的,除此之外,笔者也会选择一些像梆梆加固、爱加密、360 加固宝之类的,不过要小心,很常见的你加固之后因为混淆等操作你的一些功能莫名其妙挂掉。
iOS
开发准备
开发者账号
笔者在最早接触 iOS 开发的时候,觉得这最麻烦的一点就是申请开发者账户巴拉巴拉拉的。苹果的开发者账户分为三种:个人、公司团队与企业。一般来说,要想发布到 AppStore 的话个人与团队二选一即可,而一般为了方便内测,申请个企业账户也是不错的,方便分发调试。
- 个人账号(Individual )费用 99 美金一年, 该账号在 App Store 销售者只能显示个人的 ID,比如 zhitian zhang,单人使用。个人账号只能有一个开发者。100 个苹果的 iOS 设备 UDID 测试。
- 公司团队账号 (Company/Organization )费用 99 美金一年, 该账号在 App Store 销售者可以显示类似 Studios,或者自定义的团队名称,比如 Mamshare INC,公司账号可以允许多个开发者协作开发,比个人多一些帐号管理的设置,可以设置多个 AppleID,分 4 种管理级别权限,详细见备注。100 个苹果的 iOS 设备 UDID 测试。但是申请时需要填写公司的邓白氏编码(D-U-N-S )。备注: Admin Legal 权限:超级管理员。可以管理开发者和管理 app store 中的应用。Admin 权限:管理员,可以管理开发者。添加测试机子和管理团队证书。Member 权限:是普通开发者。只能下载证书和使用证书 No Access 权限:没有相应的权限。申请公司团队账号地址:http://developer.apple.com/programs/ios/ 详细流程 邓白氏编码(D-U-N-S )申请地址:https://developer.apple.com/ios/enroll/dunsLookupForm.action
- 企业账号 (Enterprise )费用 299 美金一年, 该账号开发应用不能发布到 App Store,只能企业内部应用,苹果的 iOS 设备 UDID 数量不限制。企业账号适合不希望上线 App Store,但是需要企业内部比如 1000 人的 iOS 设备都部署。公司测试部门需要全公司测试设备,突破 100 个 UDID 的限制。
- 教育账号 (University) 费用 0 美元,只能教育机构或学院内部使用。必须是苹果 iOS 开发者计划授权机构。不能对外正式发布 iOS 应用程序。