We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
首先,作为一名前端人,从最开始的"前端三剑客"html、css、js开始看起,一遍遍地啃红宝书,再到接触jq,开发一些原生js应用,后来逐渐接触Vue、React等新型前端框架,还要学习node、js,逐渐接触前端工程化(项目自动化构建,如webpack,nginx、持续集成、版本控制),再到学习小程序开发、云开发模式、多端开发框架,再到学习设计模式、前端安全、性能优化等等,真可谓"路漫漫其修远兮"。因为不是科班出身,还要不停巩固自己的计算机基础知识、数据结构与算法,反复去培养自己的编程思维。做过许多大大小小的项目,经历过各种各样的坑,也是一路不停地学习、不停地总结。目前对于前端框架的设计原理、源码剖析、代码设计思想等方面非常感兴趣,也研究过vue、react等部分源码,越来越觉得多读、多分析好的框架源码是对自己一个很好的提升。目前仍然认为自己在这个方向不够深入,也是在不断地探索“大前端”之路,如何在未来能够看得更深、走得更远。
"不忘初心,方得始终。"想想自己当初是如何踏上这条路的,那时候只是觉得前端有着无限的创造力,可以自己设计精美的拥有各种特效的网站,可以自己做一些简单方便的应用,而且入门简单,也好找工作……但是现在想想,入了这个行,就很难跳出去,在学习的过程中,会愈发地感觉到前端远比自己想象中的要复杂、要求更高,而且新知识、新技术会层出不穷地出现,不断地挑战着前端人的思考能力、学习能力和吸收能力。但是这个过程也勾起了我极大的兴趣,想探索得越来越深,关注各种前端技术,跟上快速变化的节奏,去创造去沉淀。
"纵使疾风起,人生不言弃。"现在可谓是互联网寒冬时代,正是入门门槛低,导致了加入互联网行业的人越来越多,给我们的压力会越来越大。也许哪天我们还在公司上班,第二天被突然宣布部门解散也不足为奇。因此我们必须要必备危机意识,如何在这场浪潮之中仍然保证自己的竞争力?保持学习、学会思考,学会对自己的人生作出清晰的规划,特别是软件行业,给人的成长也是飞速的。
究竟什么是大前端?
“大前端”是最近起来的概念。和传统的前端相比,“大前端”有两个方面的扩展。一个是端的多样性,比如新增了iOS,Android,小程序,公众号等等。另外一个是往后端扩展,比如Node.js的兴起,或许写后端服务没有Java成熟,写BFF还是可以胜任的。“大前端”是相对于传统的前端,iOS,Android,H5等独立小团队而言的。从基础服务+业务支持两个方面,促进团队的融合。在架构,工具链,组件化等几个方面提高复用,提升效率。——出自《大前端架构思考与选择》
由上图可见,前端需要和如此多的工种打交道,也不断要求着需要具备一些其他领域的基础,至少能让沟通更加高效一些。也许你会对UI设计、后台DB、产品设计、测试、全栈领域感兴趣,在未来走上其他的职业道路也是有可能的。也有越来越多的前端人开始往全栈的方向发展,希望自己能够独自开发整个项目,也开始往项目架构等方向深入。在未来,自己在前端这个领域走了很久之后,也许会迎来新的挑战,如何突破自己呢?我们可以选择自己感兴趣的方向进行深入学习,如:
之前面试时和技术大牛们交流了很多,吸收了很多的经验,故总结一下:
前端开发者必须对前端基础技能足够熟悉,了解原理和细节,基于js往上衍生,如浏览器端的js如何开发、node端的js如何来开发,并且关注研发效率、质量、性能、错误监控等等;
能够做浏览器端的开发,能够做服务器端的开发,前端要和很多的工种打交道,可以看看在其他领域我们哪些可以和它相关联的一些能力去了解和学习,可以让视野更加全面;
写代码三到五年,即将会遇到一个瓶颈:需求我都能做,我的成就感在哪里?这时应该转换一个思维:是否有更高程度的抽象,更自动化的构建,持续不断地迭代我们的生产工具和生产方式。
做一个自己的产品,做一个公众号或小程序,把所有的想法(包括技术的、或者关于产品),在上面不断地迭代,把这个产品打磨得越来越好,让自己的技术能够在一个面或一个点上不断地提升。比如追求网站的速度(浏览器端做缓存、运行机制等等性能优化),每个人都需要打磨一个东西,到一个阶段让自己的技术不断地提升,你对技术上的思考也会随着这个产品的不断完善变得更深入。
建议:
看一个技术领域如同看企业发展,马化腾回忆微信成长发展过程时说:被别人干掉不如被自己干掉,被别人革命不如革自己的命。任何技术都像企业一样有盛衰荣辱,Javascript作为一门编程语言,前端作为一个技术领域,之所以有生命力,是源自于这个领域的从业者不断突破,不断创新,不断革自己的命。 因为做浏览器,对行业发展变化属于鸭先知,移动端带来的寒意和前端技术全面退守中后台,共同释放着前端技术应用场景缩小的信号。前端技术却顽强的创新和反击,从RN和Weex带来的FE-Native混合应用开始,PWA和Hight Level Web API对Web容器性能体验优化,TypeScript带来的强类型和大型项目代码组织能力,小程序在私域流量中的发力,Node.js带来服务能力和工程能力的升级,移动端APP带来场景缩小的冲击,被前端技术自身变革发展所缓解。所谓天晴修屋顶,未来技术发展趋势和脉络如何?给前端技术带来的冲击和机遇是什么? ——出自《掘金》
分享一些学习思维和方法:
【学习思维】 入门:
进阶:
高阶:
【学习方法】
初级:
中高级:
前端知识体系整理
高级前端知识体系
初/中级前端知识体系
The text was updated successfully, but these errors were encountered:
No branches or pull requests
首先,作为一名前端人,从最开始的"前端三剑客"html、css、js开始看起,一遍遍地啃红宝书,再到接触jq,开发一些原生js应用,后来逐渐接触Vue、React等新型前端框架,还要学习node、js,逐渐接触前端工程化(项目自动化构建,如webpack,nginx、持续集成、版本控制),再到学习小程序开发、云开发模式、多端开发框架,再到学习设计模式、前端安全、性能优化等等,真可谓"路漫漫其修远兮"。因为不是科班出身,还要不停巩固自己的计算机基础知识、数据结构与算法,反复去培养自己的编程思维。做过许多大大小小的项目,经历过各种各样的坑,也是一路不停地学习、不停地总结。目前对于前端框架的设计原理、源码剖析、代码设计思想等方面非常感兴趣,也研究过vue、react等部分源码,越来越觉得多读、多分析好的框架源码是对自己一个很好的提升。目前仍然认为自己在这个方向不够深入,也是在不断地探索“大前端”之路,如何在未来能够看得更深、走得更远。
"不忘初心,方得始终。"想想自己当初是如何踏上这条路的,那时候只是觉得前端有着无限的创造力,可以自己设计精美的拥有各种特效的网站,可以自己做一些简单方便的应用,而且入门简单,也好找工作……但是现在想想,入了这个行,就很难跳出去,在学习的过程中,会愈发地感觉到前端远比自己想象中的要复杂、要求更高,而且新知识、新技术会层出不穷地出现,不断地挑战着前端人的思考能力、学习能力和吸收能力。但是这个过程也勾起了我极大的兴趣,想探索得越来越深,关注各种前端技术,跟上快速变化的节奏,去创造去沉淀。
"纵使疾风起,人生不言弃。"现在可谓是互联网寒冬时代,正是入门门槛低,导致了加入互联网行业的人越来越多,给我们的压力会越来越大。也许哪天我们还在公司上班,第二天被突然宣布部门解散也不足为奇。因此我们必须要必备危机意识,如何在这场浪潮之中仍然保证自己的竞争力?保持学习、学会思考,学会对自己的人生作出清晰的规划,特别是软件行业,给人的成长也是飞速的。
究竟什么是大前端?
由上图可见,前端需要和如此多的工种打交道,也不断要求着需要具备一些其他领域的基础,至少能让沟通更加高效一些。也许你会对UI设计、后台DB、产品设计、测试、全栈领域感兴趣,在未来走上其他的职业道路也是有可能的。也有越来越多的前端人开始往全栈的方向发展,希望自己能够独自开发整个项目,也开始往项目架构等方向深入。在未来,自己在前端这个领域走了很久之后,也许会迎来新的挑战,如何突破自己呢?我们可以选择自己感兴趣的方向进行深入学习,如:
之前面试时和技术大牛们交流了很多,吸收了很多的经验,故总结一下:
前端开发者必须对前端基础技能足够熟悉,了解原理和细节,基于js往上衍生,如浏览器端的js如何开发、node端的js如何来开发,并且关注研发效率、质量、性能、错误监控等等;
能够做浏览器端的开发,能够做服务器端的开发,前端要和很多的工种打交道,可以看看在其他领域我们哪些可以和它相关联的一些能力去了解和学习,可以让视野更加全面;
写代码三到五年,即将会遇到一个瓶颈:需求我都能做,我的成就感在哪里?这时应该转换一个思维:是否有更高程度的抽象,更自动化的构建,持续不断地迭代我们的生产工具和生产方式。
做一个自己的产品,做一个公众号或小程序,把所有的想法(包括技术的、或者关于产品),在上面不断地迭代,把这个产品打磨得越来越好,让自己的技术能够在一个面或一个点上不断地提升。比如追求网站的速度(浏览器端做缓存、运行机制等等性能优化),每个人都需要打磨一个东西,到一个阶段让自己的技术不断地提升,你对技术上的思考也会随着这个产品的不断完善变得更深入。
建议:
分享一些学习思维和方法:
【学习思维】
入门:
进阶:
高阶:
【学习方法】
初级:
中高级:
前端知识体系整理
高级前端知识体系
初/中级前端知识体系
The text was updated successfully, but these errors were encountered: