zhangsanshi / issue-blog

It's a blog rather than issue
0 stars 0 forks source link

一个项目从0开始到目前为止的总结 #4

Open zhangsanshi opened 8 years ago

zhangsanshi commented 8 years ago
  1. 项目最初是去年建立的,是个后台项目,用的是 angular grunt lessAdminLTE(实际上我根本不知道为啥要用这玩意,也问了,也没说出个啥,后来发现另一个项目用,才明白)
  2. 在项目初期,就有两个目标,一个是链接后面带参数,这样便于用户分享合作,一个是一直会以为有实习生进入,初期写代码,写的比较繁琐,一步步的都看得出来,后来一直没实习生,略坑
  3. 项目初期比较浪,主要也不紧张,经常是手上N个项目加它一起开发,很多时候,都是晚上抽出时间开发的,到了前几个月,主要工作才换成开发这个项目
  4. 一开始权限设置的是,增删改查都有权限,字段也有权限,好吧一个个硬编码ng-if写入的,这里取巧了auth.check('10'||'2'),只需要把权限类似这样传进去即可,内部实现用到了eval。这样产生新的问题了,硬编码不好,而且难记忆,于是后来变成了 auth.check(person.edit)
  5. 自己一个人开发一直用的是 svn,前几个月前了个实习生,没办法切到 git, 开始疯狂用 git,写了个hook自动推svn代码。平台不同,git 和 svn 换行符设置切换了下。后端也用git,我比较活跃,讨论过git的使用,git使用还在探索,sourcetree好用的工具
  6. 后面写增删改查累了,就开始用artTemplate做模板,用配置生成代码,略爽
  7. 因为后台项目,其实样式不太在意,初期写好就没管过了
  8. 后面发展了,又做了微信端,有个坑就是,页面回退,form表单有些状态样式会丢
  9. 有时候会喷后端API命名。。。居然告诉我resutful的接口不好写,要写一个post需要另建文件,不如直接get,导致修改数据也是get
  10. 有统一的ajax进出处理真好,帮忙解决了大问题!!!到现在稍微大一点的项目,我都有一个API处理控制中心
  11. artTemplate解决了很多问题
  12. iframe里生成pdfhtml的预览,隔离代码很好用
  13. 项目比较弱,没有产品,有一个测试算半个需求,一开始项目和测试一起帮我们想实现,喷了好几次,不仅出需求,还出实现...也出现过项目和测试需求冲突的情况,真感觉坑,有时候他们不合理的需求,只能和后端商量做优化,改动较大,再反馈回去。

需要改进的

  1. 部分代码太繁琐了,如果简化,还能简化蛮多的,就不确定别人在不深入理解的情况下,能否看懂的问题了
  2. grunt现在来看,太慢了,准备这段时间忙好,切到gulp
  3. 项目没代码测试,这个一直是遗憾
  4. hook最好可以关另一个系统的 issue
zhangsanshi commented 7 years ago

项目开发目录文件路径为

- src
    - modules
        - moduleA
            - templateA
            - controllerA
            - configA
            - routeA
            - css
            - APIA
            - subModuleA
            - ...
    - routeAll.js
    - app.js
    - util
        - httpInterceptor
        - ...
    - component
      - copy
      - drop drag
      - ...
    - config
    - common
      - APIBase
      - ...
    - 3rd

模块A管理自己的 routeAPI,逻辑,页面等。