最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 如何实现一个功能?

    正文概述 掘金(我想写文章啊)   2021-05-07   1535

    一、阅读需求

    拿到一个功能,第一件要做的事情就是完整地阅读需求。在阅读需求时,尽可能地做到以下几点:

    • 不要站在开发者的角度去理解需求,而要站在用户的角度。 第一遍阅读需求时,一定不要想应该怎么实现,而是立足需求本身,整理需求的逻辑,如果发现了不合理的地方,及时与产品沟通;
    • 对于复杂的业务,如果理不清流程,可以画一个流程图来辅助理解。(善于使用工具来解决复杂问题)

    二、拆分需求

    现在,假设你已经完整地梳理了需求的流程,并对需求有了较深的理解。接下来,可以想想实现的那些事了,但是,不要着急具体的实现,而是将需求进行拆分,将实现的过程梳理出来。在这个阶段,你需要思考这些问题:

    • 哪些功能点是重要的,哪些是次要的?一般情况下,在流程线上的功能点往往是重要的,因为缺少这些功能点会导致流程走不通,所以需要优先实现。其他不在流程线上的功能点,我们称它们为可拆卸的,可以在需要的时候把它们装上,也可以随时将它们卸掉;
    • 哪些功能点是容易的,哪些是困难的?除了将功能点按照 重要程度 维度来拆分,还需要从 难度 维度继续拆分,然后按照先易后难的原则来进行实现。

    举例来说,我们要实现一个博客的添加/发布文章功能,对于读者来说,要看的无非就是标题和内容,所以对于文章是否置顶、属于什么分类、有没有缩略图,在第一个版本里,都是不重要的,而且在后续的版本这些功能点可以被随时装上。

    如何实现一个功能?

    拆分需求后,我们可以将各个功能点细分出来,然后按照下表的顺序一一实现:

    功能点重要程度难度
    设置标题/编辑内容重要容易发布文章重要困难标记置顶不重要容易关联分类不重要困难

    三、理解数据结构

    表面上我们在使用软件、操作功能,其实最终操作的是数据,亦或说信息,理解数据结构尤为重要,有一个叫Eric Raymond的人,写了一本书《大教堂与集市》,总结了Linux的成功之道,书中就这么说到:

    在这个阶段,你需要做这些工作:

    • 梳理出功能的数据结构,并为它们做好关联关系。如果关联关系太复杂,可以借助关系图来辅助理解;
    • 站在设计者的角度思考数据结构的合理性,而不是站在实现者的角度。想一想,如果让你来设计,你会将数据结构如何组织?

    四、功能设计

    接下来,我们要对整个功能进行全局的设计,在这个阶段,你需要考虑这些问题:

    • 哪些功能点是公共的(或可复用的)?找到公共的部分,优先实现它们,为后面的具体功能做准备;
    • 界面的风格、交互效果是怎样的?如果不知道,提前与产品、美工沟通清楚;
    • 确定每个功能点的实现顺序。一般情况下,尽量按照流程顺序来设计功能点的实现顺序,例如:先实现添加文章功能,再实现文章列表功能,因为后者依赖了前者。

    五、功能的实现要点

    每个人实现功能有不同的方式与技巧,纵使你可以尽情发挥,但不要忘记功能在这些方面的规范:

    • 加载态。信息在呈现给用户之前是需要漫长的等待过程的,在这期间,一定不要给用户呈现空白内容,设计一个良好的加载效果,明确告知用户:请放心,我在努力加载;
    • 提交态。用户提交信息到远程服务器是需要漫长的等待过程的,在这期间,要注意明确告知用户正在提交,还要注意将提交入口关闭,防止用户在这期间多次提交,使得服务器产生多余的数据;
    • 空状态。服务器不一定总是有信息呈现给用户,如果没有,要注意明确告知用户:抱歉,我还没有数据可供呈现;
    • 错误态。服务器不一定总能成功地给用户的操作给予反馈,如果失败了,要注意明确告知用户失败了,最好能同时告知失败的原因和恢复手段;
    • 交互态。功能的活泼之处在于交互,每一个可交互的元素,都需要在用户操作时,给予适当的反馈(可以是颜色变化、大小变化或动效等等)。

    总结

    1. 在需求的整理阶段要与产品沟通,对不理解的问题进行提问,或提出建设性意见;
    2. 在数据结构的整理阶段要与后端沟通,对不理解的设计进行提问,或提出建设性意见;
    3. 在功能设计阶段要与美工沟通,对UI、交互进行确认,或提出建设性意见;
    4. 在功能的实现过程中,碰到任何问题,与他人进行沟通,提出问题并总结解决办法,形成文档;
    5. 每个阶段,你需要把自己当成一个用户,这个用户有多“傻”,你的功能实现得就会有多完备。

    起源地下载网 » 如何实现一个功能?

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元