如何成为更好的前端工程师?

我不断收到很多恰好在学习Web开发方面有丰富经验但被困于不断开发UI模板和项目的人的询问,这确实令人沮丧。更严重的是,他们如何才能进入下一个阶段?

这篇文章更像是备忘单或者清单,我认为这就像我们在友好的聊天中交谈时一样,您会说我的话,写笔记,然后在不了解其中某些术语的情况下搜索这些术语的实际含义。

了解你的编程语言

这部分将是最长的,它本来可以单独撰写一篇文章,但最好与其他部分一起使用。

通常,人们将编程语言与他们的母语相混淆。与解决问题相反,要使用一种不需要常识的编程语言,它是一组由某人编写的规则来帮助您与计算机进行通信,在开发者的场景下,我们曾经使用它来与计算机浏览器进行通信,如今,我们到处使用它。

JavaScript具有应遵循的规范和规则,不要过分地遵循它们,并期望它与另一种语言的编写方式相同。

1.类型

学习JavaScript为何是值类型语言,并且缺乏静态类型检查。可以了解TypeScript、Flow等如何解决静态类型检查的。

2.作用域和闭包

学习变量和函数的作用域,以及它们之间通信交互的方式。

3.JS中的OOP

学习JavaScript中如何实现面向对象编程的范式。

4.JS中的异步调用

JavaScript中的异步调用是一个很重要的概念,首先你会从回调函数学起,然后会学习Promise,最后会喜欢上async/await的语法。同时,你还会了解Generator的概念,并且将这些知识整合,理解通过XHR发送请求,获取服务端数据,解析数据并且更新到HTML页面。

5.数组的高阶函数

你要学习不仅仅通过遍历的方式访问数组,还需要了解“map、find、filter、reduce”,这些函数都能够高效的提升你的编程技巧。

6.学习JS如何和浏览器交互

理解浏览器的内置特性,例如window、document等全局变量,了解cookie、localstorage、indexDB等存储能力,能够清楚不同浏览器的兼容情况。

7.对象的解构操作

ES6中提供了大量对象的操作方式,其中destructure和spread操作提供了快速访问对象属性的能力。

Git代码版本管理

无论是在大公司还是小公司,你都需要使用一种代码版本管理工具,Git就是其中最广泛使用的工具。你需要学习Git的基本操作命令,例如git clone、git merge、git cherry-pick、git revert等等,你需要理解分支管理的方法,例如git flow,这样可以有效的管理不同分支用于多人协作、发布、hotfix等等。

不要满足单一的框架和代码库

比起使用一个前端JavaScript框架更好的技巧是,在多个前端框架之间进行过渡,同时在转到第二个JS框架并询问它时获得经验:“我曾经在在上一个方法中,您会以哪种方式提供这种方法?”。

我认为,该技能是迄今为止最重要的技能,这种迁移性的技能可以帮助你不依赖于某一个特定框架,帮助你可以快速迁移到不同的前端领域。即使他使用不同的技术或者以前没有使用过该技术,同样可以与他的队友一起解决问题。

不要逃避后端的技术问题

作为一位前端工程师,你往往只会接触到后端暴露出来的API接口,在其之下就是一个黑箱。如果你希望能够成为资深的工程师,你还需要更进一步,去理解后端的领域模型,例如用户、商品、交易等模型的设计,以及其背后对应的数据库设计。

同时,你还需要对SQL能够熟练使用,进行数据库的操作,查找数据等等。理解后端的实现细节,也有助于将来BFF层的设计实现,如何对数据模型进行整合,字段进行裁剪,接口进行拆分和合并等等。

理解打包工具原理

Webpack,Parcel和其他使用Node和NPM生态系统来承载您的开发经验或授权您选择框架的工具,深入研究文档并了解其工作方式,如何跟踪文件并将其作为内部导入文件树处理, 导入文件,直到生成主index.js,了解使用代码拆分和优化选项如何提高性能,理解打包工具的实现以及相应的插件系统。

定制化你的开发工具

你的文本编辑器,Terminal,应该可以帮助您控制开发过程,监视Git分支, 例如:在VS Code中使用Gitlens扩展名可以帮助您了解谁在代码中进行了哪些更改,以及何时进行了更改。

你的Terminal不仅对编写命令有帮助,而且对于了解分支状态,你做了什么更改,你的变更前后都有什么变化都非常有用,请在提交代码前使用编辑器检查一下代码变更,保证提交的代码尽量简洁。

希望这些建议可以帮助到你们,如果有任何补充请多多交流。

原文:dev.to/gurutobe/ke…

作者:Abdelrhman Yousry

『奶爸码农』从事互联网研发工作10+年,经历IBM、SAP、陆金所、携程等国内外IT公司,目前在美团负责餐饮相关大前端技术团队,定期分享关于大前端技术、投资理财、个人成长的思考与总结。

原文链接:juejin.im

上一篇:如何使用 FutureBuilder and StreamBuilder 优雅的构建高质量项目
下一篇:JavaScript比较运算符

相关推荐

  • 🚩四年前端带你理解路由懒加载的原理

    前言 说起路由懒加载,大家很快就知道怎么实现它,但是问到路由懒加载的原理,怕有一部分小伙伴是一头雾水了吧。下面带大家一起去理解路由懒加载的原理。 路由懒加载也可以叫做路由组件懒加载,最常用的是通过im...

    1 个月前
  • 🔥手写大厂前端知识点源码系列(上)

    如今前端攻城狮的要求越来越高,会使用常见的API已经不能满足现如今前端日益快速发展的脚步。现在大厂基本都会要求面试者手写前端常见API的原理,以此来证明你对该知识点的理解程度。

    4 个月前
  • 🔥前端面试大厂手写源码系列(上)

    如今前端攻城狮的要求越来越高,会使用常见的API已经不能满足现如今前端日益快速发展的脚步。现在大厂基本都会要求面试者手写前端常见API的原理,以此来证明你对该知识点的理解程度。

    4 个月前
  • (立下flag)每日10道前端面试题-15 关于【高级技巧】十问

    (/public/upload/4dc64bf14f4bd714fcd87e98b6a10373) 第一问:安全类型检测——typeof和instanceof 区别以及缺陷,以及解决方案 这两...

    2 个月前
  • (本人)2019前端校招经历

    我是一个想要找前端工作的妹纸,最近电话面了挺多企业,在每次面试中都会发现自己的不足或者没涉及到的方面,一边被拒一边学习新知识。想要在这里记录、分享前端校招遇到的问题,希望每一次都有提升,下一次不会再犯...

    2 年前
  • (前端工程化01)私人管家-包管理器

    字数:3883, 阅读时间:10分钟,点击阅读原文 目录: 磨刀篇开发环境搭建 私人管家包管理器 待续 点击查看源网页(/public/upload/7b9b054b364e1627547...

    1 个月前
  • (前端工程化01)私人管家-包管理器

    字数:3883, 阅读时间:10分钟,点击阅读原文 目录: 磨刀篇开发环境搭建 私人管家包管理器 待续 点击查看源网页(/public/upload/fde96d7941fadecf7f3...

    2 个月前
  • (前端工程化01)私人管家-包管理器

    字数:3883, 阅读时间:10分钟,点击阅读原文 点击查看源网页(/public/upload/4b3364dbda7cb152b15a01d33da483ed) 包管理器 在很久很久...

    2 个月前
  • (初级前端)面试如何写出一个满意的深拷贝

    前言 已经有很多关于深拷贝与浅拷贝的文章,为什么自己还要写一遍呢💯 ❝ 学习就好比是座大山,人们沿着不同的路登山,分享着自己看到的风景。你不一定能看到别人看到的风景,体会到别人的心情。

    14 天前
  • (二)各大笔试网站(牛客网、赛码网、测评网)介绍和做题技巧——以前端开发为例

    (/public/upload/3855e8b808281493dde93db067f6b1c2) 进行笔试之前,我们首先要了解的是,我们春招、秋招的时候,企业用的是什么平台。

    5 个月前

官方社区

扫码加入 JavaScript 社区