互联网软件产品开发过程

我们来讲一讲如何去打造一款软件产品,把开发一个网站或者一个App的过程来进行简单的分解和梳理。和传统的软件开发,从需求分析到软件设计与实现不同,这里我们讲究快速迭代,原型驱动。

Clipboard Image.png

  1. 我们有了一个好的创意之后,首先需要进行原型设计。这不属于传统意义上的软件开发的工作。而且这一个步骤可以进一步细分为:

    • 信息架构设计:如何组织整个系统的信息。
    • 用户交互设计:用户如何与系统进行交互,大到整个操作流程,小到一个触控手势设计。
    • 视觉设计:Logo的设计,颜色的设计,总之怎么让用户看起来更爽。

    这个阶段也需要一些工具来帮助我们设计,比如说Sketch、PhotoShop、Axure等。

  2. 原型设计就可以作为开发团队的输入了。我们需要把原型变为实际可用的产品。我们可能要去做服务器端的开发和做客户端的开发。服务器端的开发是可选的,比如说我们做一个闹钟的应用,可能不需要去连接服务器端,完整的功能不需要网络就能完成。但是现在的应用一般是有服务器端的,这样你才有更多的可能性和发挥空间。如果只是本地的话,意味着这个应用完全跟外界是没有关系,你一定要去建立联系才能让你的应用去发挥最大的价值。即使是闹钟应用,也可以看到做得非常好的产品,它们基于时间提醒将你的行为习惯存储到云端,帮你做规划和分析,这样是不是就给一个小小的App带来的无限的想象空间了。

  3. 客户端的开发,就包括你要做iOS、Android和Web三个平台的开发了,视我们选择的平台而定。

  4. 做完开发之后,对于服务器端我们要进行部署。在本地计算机上上完成了开发,别人也是访问不到我们的应用的。那别人要怎么样才能访问到我的应用呢?需要把它放到某一台全世界都能访问的服务器上去,而现在我们通过像Amazon EC和像阿里云这样的云计算基础设施,我们能够很方便的拥有一台能够让别人访问的计算机。我们可以按需购买云端的服务器,这也是云计算时代给我们带来的一个便利性。我还记得以前我最早开发Web应用的时候,在中关村配了一台服务器之后,去IDC机房托管,安装Linux系统部署应用折腾了半天。而今天一个中小型的团队完全可以利用比如像阿里云这样的云端的基础设施来部署我们的应用。

  5. 把后端代码去部署到云端之后,你的客户端你要进行应用的分发,你要去提交App Store,或者提交到各种Android的应用市场,你提交上去的时候,用户就能下载了,用户下载之后应用就最终就送达了用户。Web应用不需要经历客户端分发的过程,用户有一个浏览器就能从服务器上获取所有内容和功能,所以说HTML5跨平台嘛。

当用户将App下载安装之后,它在产生交互的时候,应用就会跟我们部署在远程机器上的程序进行通讯,最终形成应用的完整体验。这就是开发的整个过程,而这个过程也是不断迭代的。

客户端的开发过程

我们将原型设计到前端实现的这个过程再进一步细化,可以看到编写代码的具体过程。这是一张从苹果官方的开发者文档中拿过来的图片,非常具有代表性。

Clipboard Image.png

  • 定义概念:在原型设计中概念应该已经定义清楚了,不清楚就继续头脑风暴把。
  • 定义用户界面:比如做一个任务管理软件,那么就需要把任务展示、操作和管理的界面构造出来。
  • 定义交互:有了界面,我们还需要定义用户如何与界面进行交互呢?就比如用户点击一下任务或者滑动一下任务,应该如何来响应这样的操作呢,如何在不同屏幕之间跳转等。对于定义用户界面和定义交互,iOS和Android都提供了可视化的界面设计工具,就包含在Xcode和Android Studio中。我们也可以通过编写代码动态配置。
  • 实现行为:这是体现应用核心业务逻辑的地方,一般情况下我们就要在编程时使用系统中的事件处理的API来响应用户操作,实现具体的行为,比如创建一个任务,完成一个任务。
  • 整合数据:我们要把应用的状态和数据最终保存起来,比如任务管理,保存起来之后是为了以后可以随时获取。否则应用关闭了,数据也就丢失了。

组建你的开发团队

最后就需要组建你自己的团队了,我们今天创新和创业,人是最主要的因素,同行人比到达的地方更重要。

Clipboard Image.png

一个开发团队里需要有很多角色, 设计师,项目经理、产品经理、前端开发者、后端开发者、iOS开发者、Android的开发者等等。这么多的角色,同学们组成的一个团队里一般是很难凑齐的。事实上,创业公司也面临着相同的情况。所一般需要一个人身兼多职,在程序员领域一般称之为“全栈工程师”。当然初期我们都是选择某一种平台进行开发,我们去建立自己的团队的时候,找到能够胜任目标平台(比如Web、iOS和Android中的一种)开发工作的同学就可以了。如果能自学成材那就更棒了!

登录发表评论 注册

反馈意见