评论

物里看花开发经验分享

物里看花开发经验分享

Hello!大家好~我们是来自浙江工商大学信电学院的xd435团队,我是团队的Leader&Developer。我们团队开发的小程序叫作“物里看花”,主要应用场景是高校大物课程的教学。

我们的小程序是从19年2月开始正式开发,到19年5月基本完成。在今年6月,我们已经开始在学院内部进行了一些测试,并针对老师和学生提出的要求进行了一些修改,我们学校的大物老师也已经打算在下半学期投入正式使用,说明了目前老师对教学小程序的需求还是很大的(毕竟可以省去签到,批改作业的时间,老师自然是支持的)。

接下来,我将简单介绍我们团队在小程序整个开发过程中所做的工作,希望能够给大家一些启发与帮助。

首先,我将整个小程序的研发分为以下四个步骤:

1、立项

2、设计

3、开发

4、维护

以上四步形成了一个封闭的回环,使得产品能够良好的发展。

1、立项

俗话说万事开头难,在我看来开发最困难和最重要的一步就是立项。我相信写代码对大多数团队来说并不困难,难的是不知道该开发什么样的小程序。一个好的想法能使开发的小程序更加有意义,也能使团队坚持开发下去。我们团队的想法都是来自于校园生活,仔细观察我们日常生活中的点点滴滴,你就会发现很多可以用小程序优化的点,而这也正是小程序存在的意义,方便我们的生活。如果一个小程序真的能让我们的生活变得更加方便,那人们又有什么理由不使用他呢?

我们团队在计划设计一款小程序之后,开了很多次会议来确定主题。由于学院之前有用公众号来进行教学的辅助,因此我们打算开发一款教学辅助小程序,确定了大方向之后,我们进行了一些细节的讨论。由于我们都是学生,对教学的需求并不是很明确,因此我们找到了我们的指导老师,询问了他们一些关于教学方面的问题,最后决定开发一款大物教学小程序。

明确了小程序开发的主题之后,我们找到了学校的大物老师们,询问他们对大物教学的具体需求,同时找他们索要了一些大物大物的练习题等。将老师的需求记录下来并整理后,就得到了我们的第一份小程序功能文档。

到此,我们的理想工作已基本完成,团队成员对开发一个什么样的小程序有了一个明确清晰的认识。

2、设计

当需求明确之后,我们就要开始进行设计,我们主要将设计分为两部分:

​ 1.系统设计

​ 2.UI设计

2.1系统设计

系统设计我们又具体将其分为两个内容:

1.数据存储结构。就是数据库的设计,包括表结构、索引、主键,一个好的数据库结构能够使读写效率大大提升。

**2.前后端接口设计**。接口设计方便团队前后端分离,提高开发效率。在进行接口设计的时候,一定要写一份详细的**接口文档**,这样以后交给别人维护的时候能省很多时间。

我觉得程序的结构最重要的一点是方便更新和迭代,在最开始的时候我们并不一定要将所有的细节都考虑的很完善。一个好的系统架构一定是具有可扩展性的,这样,无论是后续功能的添加还是前期bug的修复都会变得很轻松,不需要对代码进行大的改动。

2.2UI设计

这里推荐一个工具是墨刀,墨刀具有丰富的素材库,进行交互设计等都很方便。而一些具体的小图标建议去阿里巴巴矢量图标库寻找,阿里巴巴矢量图标库里的图标都可以自己选择大小颜色等,我觉得可以满足大部分需求了。

对于大部分团队来说,可能UI设计的讨论是最激烈的,因为每个人的审美都不同。而在我们团队则将这一块工作交给了艺设专业的组员,在最初组队的时候就考虑到了这方面的问题,因此我们大家都选择听从她的意见。这也让我们意识到在寻找组员的时候要考虑组员能力的构成,不能全是搞开发的,这样才能应对开发过程中可能遇到的各种问题。

3、开发

3.1团队管理

一个好的leader应该能充分调动团队成员的热情,让团队成员在开发过程中各司其职,明确自己的任务,而要做到这一点,就应该在开发初期制定好自己的团队开发章程。

每周开会时间、开会地点、团建活动、成员负责的任务等,这些都是最基本的规定,并在之后严格按照规则进行团队管理。

其次,在每周开会的时候,需要每个成员汇报开发进度,对过去一周开发遇到的问题进行讨论,并确定下一周的任务。

其中安排任务我觉得是团队管理最重要的一部分。安排任务一定要注意两点:分配的任务明确任务截止时间

分配的任务明确是让组员知道自己应该做什么,而任务截止时间是让组员明白自己应该在什么时候完成任务,避免成员因为惰性而拉慢项目的进度。

3.2代码管理与集成

团队使用git进行代码版本的管理控制,在开发过程中主要维护两个代码库,对应系统后端微信小程序。由于github有时连接不稳定,我们选择将代码库建在gitee上。

3.3开发工具

相信开发过小程序的都知道微信web开发者工具还是有很多bug的,因此我们团队选择VS Code + wepy框架进行开发,只是采用开发者工具的模拟器查看效果(ps:建议还是多用真机调试,最好安卓和ios设备各备一台,因为模拟器和真机的显示效果有时候不同,而安卓和ios系统的显示效果有时候也不一样!) VS Code建议安装Vetur-wepy和minaapp这两个个插件,能有效提高开发效率。

后台我们团队选择的是ThinkPHP框架,推荐使用PhpStrom来进行开发,可以在IDE里浏览远程服务器上的文件,自动上传到远程服务器,IDE 内支持多种版本控制系统,总是可以在 IDE 里完成几乎所有事情。后台接口的管理工具推荐使用Postman,不仅能模拟前台发送数据,而且能将接口测试数据打包共享。

3.4团队文档管理

在开发过程中我们免不了要写各种文档,我们团队统一使用Typora进行文档的编辑,Typora 是一款简单、高效而且非常优雅的 Markdown 编辑器,它提供了一种所见即所得的全新的 Markdown 写作体验。Typora 把源码编辑和效果预览两者合二为一,在输入 Markdown 代码的时候即时生成预览效果。编辑完文档之后,我们会将其统一保存到云端,这样方便查看和共享。

4、维护

开发完成后,就是上线运营,由于用户操作的多样性,这时候一定会出现奇奇怪怪的bug,为了能及时收到用户的反馈,开发者一定要提供一个反馈的途径,根据用户的反馈及时修复bug,并进入下一个开发任务,只有这样不停循环,程序才能达到我们预期。

最后一次编辑于  08-01  
点赞 1
收藏
评论

2 个评论

  • Slience 🍃
    Slience 🍃
    08-01

    在学校你们就懂用框架啦

    08-01
    赞同
    回复 2
    • Mizuki
      Mizuki
      08-02
      我们只是简单了解,会用而已
      08-02
      回复
    • Slience 🍃
      Slience 🍃
      08-02回复Mizuki
      挺好的呀,有经验了
      08-02
      回复
  • Marco
    Marco
    08-01

    既然是经验分享,就请说说那些坑吧:)

    08-01
    赞同
    回复 1
    • Mizuki
      Mizuki
      08-02
      坑就太多了,以后有时间单独写一篇
      08-02
      回复