如果流程规范,在公司中开发一个 Android 应用会有哪些步骤?

2014-05-20 21:48:49 +08:00
 zhenghuiy
比如,先做需求分析?需要画UML图么?(麻烦重点讲讲Android工程师的部分)
3799 次点击
所在节点    程序员
15 条回复
zhenghuiy
2014-05-20 22:03:22 +08:00
手动请教大神 @snowhs @tonitech
zhenghuiy
2014-05-20 23:18:23 +08:00
又有一个人收藏了这个问题。。说明这个问题还是蛮有价值的。大神们莫谦虚啊。(话说收藏的朋友,也可以现身来聊聊)
cobola
2014-05-21 00:43:09 +08:00
先做需求
然后出界面
Android就开始做
如果有后台 后台准备接口
测试
搞定
fofoone
2014-05-21 00:58:18 +08:00
1.基本需求。
2.pm带上流程图,拉上服务端 Android程序员小黑屋讨论。
3.设计师出效果图后,拉上服务端 Android程序员小黑屋讨论。
4.Android客户端向服务端程序员提出需要的接口以及具体字段。
5.服务端开始出接口,Android客户端出界面功能,过程中客户端和服务端交流比较多,可能反复步骤2和3。
6.运营人员开始添加数据,进行初始版本测试。
7.细节修改,可能反复步骤2和3。
8.再次测试后,进行小规模发布,得到反馈,回到步骤2和3。
9.再次修改,测试,准备资源,发布正式版本。
10.确定下版本机会。
11.回到步骤2和3。



如果你是一个人。
打开eclipse再说。
fofoone
2014-05-21 01:01:30 +08:00
修正下
10.确定下版本需求。
zhenghuiy
2014-05-21 11:13:22 +08:00
多谢两位解惑
@cobola 这位兄弟说的应该是小公司的流程
@fofoone 说的应该就是中大型公司的流程了。
能否问一下Android工程师负责的那部分工作?
我个人之前做项目的做法是:首先,对照原型图和美工给的界面把界面实现出来。然后根据功能点逐个实现功能。但是感觉这种做法如果是做比较复杂的项目,且有多人协作的情况下,就容易有问题。比如,会出现某个实体类缺少某几个属性,需要回头增加进去;某几个类可以使用某个模式或者可以抽象出父类等等。
我感觉提前画UML中的类图会好一点,但是只是画类图这么简单么?
MasterYoda
2014-05-21 11:55:22 +08:00
大公司画UML图是可能的,而且更可能的是拿着UML就去给合作方做了。
michaelye1988
2014-05-21 13:15:41 +08:00
大公司没有你想的那么复杂,也可能是我自己没有遇到,对Android开发有用到的就UE,和UI;需求文档,流程图之类的,觉得不是很必要,我们自己做项目的时候,文档和流程图那个根本就不看,UE就是需求了,要什么文档和流程图呢,有那个时间不如多看看如何解决项目中的技术难点。(当然,这里需要UE的制作者能够充分理解项目的需求,制作出的UE信息充分)

拉上策划,看着UE,一起说下需求看能不能实现,难点在哪里,评估一下是否可以实现。没有问题就可以开搞了,在做的过程中你会不断遇到问题,所以和需求方(策划)的沟通一般要持续到项目结束。
zhenghuiy
2014-05-21 13:21:44 +08:00
@michaelye1988 这样。其实是我最近在思考一个问题,Android开发就是直接写代码么,有没有其他技能点需要加的。(我是指Android相关的,数据结构等等计算机基础还有JAVA基础啥的是必然要不断学习的。)
michaelye1988
2014-05-21 14:32:10 +08:00
@zhenghuiy 你应该是新手吧?其实也没有什么技巧,我觉得就是多写代码而已,见过的需求多了,做熟练了,就会形成自己的库了。开发起来的速度也会快,效率也高。就这样。没有什么特殊的技巧。
zhenghuiy
2014-05-21 17:20:38 +08:00
@michaelye1988
嗯,好吧。
tonitech
2014-05-28 01:37:50 +08:00
@zhenghuiy 需求确定下来,画流程图,然后原型设计、美工、切图,定义接口,测试评审,coding,测试,打包上线。
snowhs
2014-06-10 13:03:32 +08:00
20天前 @ 了我,但是现在才看到提醒啊...不好意思

更不好意思的是我的公司在Android开发上没有规范的流程,因为在上周以前,搞Android就我一个人,只要保证速度质量,爱咋整咋整...
snowhs
2014-06-10 13:48:13 +08:00
首先要搞清楚要做什么。
如果是自己要做的东西那没啥可沟通的。我和我虽然因为频繁在java和ruby之间切换所以有时候争吵,但还是完全理解彼此。
如果是别人提出的,跟不同的人、在不同的事情上,有不同的最合适的沟通方式。有的时候有原型,有的时候对话就能把事情说清楚。

然后看看为了实现这个东西还需要什么资源是自己没有的。
对我个人来说,通常就是需要视觉设计。如果有通用的样式首先用通用的样式。非得找视觉设计的,对大姐姐视觉设计师就沟通一下我需要啥就可以了,对某超级无敌懒惰同事兼室友就软磨硬泡威逼利诱,最后如果实在没辙参照类似的东西弄。
其次是交互,自己来。让负责产品的某同事过目一下就可以了,有问题改没问题就弄。

然后就实现咯。
因为从客户端的java部分, 到WebView里加载的HTML UI, 到ruby后端,我都能自己写,只是偶尔如果自己弄会耽误事才会找人帮忙,所以在"Android开发"这个aspect里就没流程和规范啥事了。不过还是再强调一下,编码规范、测试和部署规范啥的不在这个上下文里。

最后是测试。
服务器端的东西大体上是rspec覆盖了的。客户端还没有自动化测试,会补上的。另外,东西上线之前会先在一个我不太想透露细节的环境里测试。
zhenghuiy
2014-06-10 16:28:43 +08:00
@snowhs 为全栈点赞。哈哈。
多谢你的回答,我大概了解流程了。(之前一直“野生野长”,所以想在实习前把没有学的技能充实一下。现在看来,公司里的开发流程跟平时也差不多。似乎UML没有多少用武之力。)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/113483

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX