在学习了一门技术的基础知识后,怎样持续提升这门技术达到更高水平?

因为很多同学学习技术陷于一个瓶颈,尤其是很多在中小型公司的同学,发现工作中每天都深陷重复业务的泥潭,不由的产生一种恐慌的心情,觉得自己在浪费时间没有提高。很多同学都向我要求的复杂前端项目和高级课程。

什么是复杂项目

那么什么是复杂项目呢?一个陈年老项目有10w+代码 ? 一个增删改查项目有 50 个分开的页面算复杂吗?虽然它的代码量够大,但是它更不称不上复杂。反而会让人很有挫败感和无力感。

我认为想真正尝试复杂的项目的必须要是一个现代的前端开发项目,涉猎多个不同领域:

  • 交互的复杂性 - 可能包含元素的复杂交互 移动,拖动大小,拖动排序 等。
  • 数据状态的复杂性 - 嵌套数据和多种类型的组件相对应,同时两者要互相同步。
  • 多项目之间的依赖性 - 有可能要抽取出一系列的公共库供多个项目使用。
  • 测试 - 保证代码质量,减少 Bug 的必备技能。
  • 打包 - 对应不同类型的功能的项目(web 应用或者是 library),怎样生成多种类型对应的可复用的代码格式。
  • 性能优化 - 大型项目性能是要点,让加载速度提升就等于省的是真金白银。
  • 第三方库使用和二次开发 - 怎样快速找到和使用已经有的技术方案解决特定问题。
  • 持续集成 - 让代码能够自动化的测试,部署,是去大厂的敲门砖。也是大型项目必备的内容。
  • ...

只有满足了这样需求的项目才能把前端开发的方方面面都包含在其中,才能掌握其中的复杂项目的奥义。

写出高质量符合大厂要求的代码

除了项目,代码质量也是一块需要考量的因素。

很多人都知道大厂镀金是个对于每个人的职业都是重要的一环,但是很多在中小心公司的同学都不熟悉大厂开发的流程和要求,有的人甚至经常是公司的“全干工程师”,从前端到后端都是一个人说了算。大厂由于工程师众多,必须采取一套标准化自动高效的流程来管理代码和部署以及测试。

简单可以描述为:

  • 从 git flow 分支的创建,管理已经合并
  • 到 lint 工具保证代码的格式正确
  • 到 单元测试 尽可能保证代码的质量
  • 到 代码提交 尽可能详尽可追溯的提交信息,
  • 到 PR review,再次保证代码的质量
  • 到最后 CI/CD ,保证持续迭代和部署等等。

这些概念如果你觉得陌生,一两句话很难说的清楚,那么就需要通过一个大型多人协作的项目去真是的实践这些过程。软件开发肯定会伴随着 Bug 的出现,关键是怎样使用科学和优良的实践来尽可能的发现和规避风险。

Copyright © imooc-lego (2020 - present) all right reserved,powered by GitbookFile Modify: 2021-06-27 08:04:57

results matching ""

    No results matching ""