zoukankan      html  css  js  c++  java
  • 初入前端,面对一个项目应注意哪些?

    前言:

    对于初入职场的前端小白来说,一整个项目来了,顿时感觉压力山大,张皇失措,也总会感到手忙脚乱。其实不用怕,拆分步骤,把每个步骤做好,做细,一切都迎刃而解,犹如顺藤摸瓜般畅快淋漓。

    目录:

    • 概念的介绍(可略)
    • 项目分哪几个阶段(每个阶段注意什么)
    • 如何排期
    • 解决问题的方法

    概念的介绍:

    PM(产品经理)
    负责需求的提出和项目的引导。PM根据产品特点和发展目标提出一定的需求,并协调各方资源投入开发。
    若需求层面有不清晰的地方,应当向PM沟通确认,如:需要做什么、希望达到什么效果、哪些内容应重点保证、哪些效果可以适当取舍等;

    RD(后端)
    负责后端接口和数据逻辑。一般复杂逻辑和内部数据会交由后端处理,并通过接口与前端交互。

    FE(前端)
    负责Web页面(M页)的界面展示和用户交互。一般样式、交互、动效等用户侧的效果/体验由前端负责,并通过接口与后端进行数据交互。

    QA(测试)
    负责整体质量把控。在开发人员开发联调完成后,一般需要由QA进行系统性的测试,从而纠偏纠错&查缺补漏,保证上线质量。
    若QA误提bug或误给人员,应协助处理:若为QA环境/测试方式问题可协助定位说明、若为接口问题可协助定位转发、若为需求理解不一致可找PM确认;
    若问题已解决,应及时关闭bug,使QA可以尽早验证。

    Native(客户端,Android&iOS)
    负责客户端APP的界面展示、用户交互等,并向M页提供WebView容器。转转APP、58APP、赶集APP等开发人员即为native开发人员,当页面运行于这些APP中时,对应native就是浏览器环境的提供者,比如我们想在原声的app中设置title就需要调用native提供的方法。

    ui(用户界面)
    负责项目的页面样式,动画效果的设计。

    项目分哪几个阶段:

    通常一个项目简单分为 四步:

    • 需求阶段
      • 收集需求 • 分析需求 • 产出需求 • 需求文档 • 评审需求 • 分配资源 • 技术调研 • 评估工作量 • 制定排期

    • 开发阶段
      • 接口评审 • 测试用例评审 • Coding • 自测 • 联调 • 提测

    • 测试阶段
      • 冒烟测试 • 功能测试 • 兼容性测试 • 性能测试 • 回归测试

    • 上线阶段
      • 总结

    需求阶段

    PM明确需求并协调好各方人力之后,一般会发起需求评审,将开发、测试等相关人员聚集在一起,阐述需求具体内容并接受反馈和建议。
    需求评审主要意义在于:

    • 明确需求,确保各方理解一致。避免实现过程与预期效果背道而驰。
    • 风险评估,问题及早暴露。若PM预期方案中存在较大的技术问题,技术人员可在评审时予以指出,从而及早思考对策。
    • 交流碰撞,方案权衡。技术人员反馈各内容实现难度和实现成本,PM权衡哪些内容优先实现,哪些内容采用替代方案,哪些内容予以舍弃。

    需求评审环节FE应做的事:

    阅读、梳理需求文档。PM一般会先发需求文档,后进行需求评审。评审前应先阅读好文档,并梳理其中的疑惑点和技术难点。
    明确需求。评审过程应充分理解自己所需要完成的内容,不清晰之处应向PM确认、明确。
    沟通反馈。有潜在的技术问题/风险,应及时向PM反馈,使其提前思考应对/替代方案。
    理解目的。理解PM此次需求的主要目的,明白需求中哪些内容应重点保证,哪些内容可以适当取舍,避免在某些棘手却无关紧要的小功能上面浪费过多精力。
    注意:
    需求评审主要目的在于需求,具体实现细节应在会后相关人员自行沟通,避免耽误其他人时间。

    排期

    需求明确之后,然后排期,即:预期什么时候开始投入开发、什么时候能达到什么进度、什么时候可以上线等。

    开发阶段

    梳理需求,对整体效果进行功能拆分和模块拆分,包括:样式、动效、交互、数据接口、native接口、外部资源等,把功能细化。
    兼容性测试:多为样式兼容性。尽可能在各终端下进行测试,尤其是低端安卓机下,出现问题的可能性比较大。

    测试阶段

    有些难点逻辑以及测试点及时和QA同学沟通,反馈

    上线阶段

    主动把“测试用例”(也就是所有的功能点)在 重新走一遍

    如何排期:


    签到活动排期.jpg

    一个项目的工作量约五天,你最好把排期细化,假如你5天没有做完,那大家会觉得你不靠谱久而久之,觉得你能力不行,如果你订了五天,但是四天就搞定了,在同事之间大大增加信任 也会增加自己的信心,可见一个好的排期多么重要。
    通常情况下,FE需要等UI出图然后排期,但排期前也可以做些整理

    理清需求中:
    依赖哪些外部资源,如:需要rd提供哪些接口、需要pm提供哪些数据(埋点、分享文案、分享图片...)、ui图中哪些需要切图,如何布局,哪部会后期可能频繁改动,是否需要sdk新增native接口支持等等。

    需要实现哪些效果,如:下拉刷新、无限加载、tab吸顶、动画特效等
    有哪些交互,如:按钮点击响应、下拉响应等
    有哪些模块,如:Banner模块、分类入口模块、商品列表模块等

    时间&风险评估
    评估各模块各功能的工作量和可能存在的风险,工作量估算为时间,风险项预留一定时间,累加得到大概的整体所需工时。
    结合自身其它工作安排和其它项目进度,估算可投入新项目的时间段,得到初步排期。

    推动依赖资源
    对于需要依赖的外部资源,应当提前联系相关人员,使其提前做好准备,避免需要时缺失影响后续流程。
    根据依赖资源的预期就绪时间,调整排期。

    技术调研
    对于需求中较不熟悉较无把握存在较大风险的内容,优先进行技术调研。
    这样,一是可以更科学地评估工作量,及早修正排期;二是可以避免无谓的支出,比如若将难题留到最后,可能会发现难题实在无法解决,不得不调整需求修改方案,导致此前开发全部都要推倒重来。

    解决问题的方法

    1.对于新手来讲编码中我们要关心两件事,一,数据的变化 。二,数据变化后结构样式的变化。
    2.很多看似很棘手的问题,往往都是自己粗心所导致的比如变量名字不对啊,少打个符号,环境问
    题也不容忽视,二分法要常用,简单讲就是先拿掉一部分代码,看另一部分有没有误。
    3.若开发过程中发现项目工作量与预期有严重出入,或遇到高优先级项目介入等特殊情况,导致无法按照预期时间点完成项目内容,应当尽早向项目其他人员反馈,方便其修改时间安排。
    4.事情一件一件做,最好不要多线程容易漏掉事情,专心做一件才会做的更好。
    5.把每天要做的事情写在有道或者印象笔记里,也知道哪些需要做,哪些不需要做,到最后周报也不会忘记。
    6.多用google搜索,到最后你会发现google搜索的人,技术就是比百度搜索的人要好一点。
    7.沟通方法很重要,在讲述一个问题时要把问题的背景以及目的等说清楚,可以很快让听者明白你的意图。



    作者:嘿黑蜗牛
    链接:http://www.jianshu.com/p/750d6ec53bd5
    來源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
    我们是转转FE团队,欢迎大家关注公众号 大转转FE 。更多的了解我们。官网 http://zzfed.com
  • 相关阅读:
    1093 Count PAT's(25 分)
    1089 Insert or Merge(25 分)
    1088 Rational Arithmetic(20 分)
    1081 Rational Sum(20 分)
    1069 The Black Hole of Numbers(20 分)
    1059 Prime Factors(25 分)
    1050 String Subtraction (20)
    根据生日计算员工年龄
    动态获取当前日期和时间
    对计数结果进行4舍5入
  • 原文地址:https://www.cnblogs.com/zhuanzhuanfe/p/7252988.html
Copyright © 2011-2022 走看看