- 搭建前端开发环境
- docker
- nodejs
- linux
- 虚拟机
- Git 版本管理
- 框架选型
- react、vue
- webpack 前端工程化
- CLI 脚手架
- eslint
https://www.zhihu.com/question/263926959https://developer.aliyun.com/article/394277?utm_content=m_1000308141 前端技能自评表.xlsx
技术层面,比如修正编码或数据问题、自动化控制、引入监控工具; 流程层面,比如加强代码评审流程、改变上线审批控制、增强沟通、把线下改为线上操作等; 组织层面,比如加强人员培训、调整角色分工等。
本质上,“复杂”就是程序里面层次特别多,状态特别多,关系特别多, 特别考验程序员一种和平台工具都无关的能力,就是你脑子里得能装得下这些东西。 靠着背得过几个 api 过日子,任谁谁都恐慌 发掘和表达自己能力的能力
很多人说要保持学习能力,随时学习新东西,这不失为一个办法,但我总觉得不是长计。别的不说,程序员加班那么多,你能保证有时间整天学这学那吗? 建议——你在一个平台上能写出那种打眼一看一时反应不过来该怎么写的程序,那你在任何平台上都有能力做到这一点,别让自己做的项目只有填充简历的功能,还要让它们给你背书。
在公司的核心竞争力,应该是你对整个项目的把控能力,从产品设计到技术框架、工程化、疑难杂症解决能力、技术/产品视野等等。 只要有你在,项目就能稳定前进,甚至快步进化,为公司带来可观收益。
后端的复杂逻辑主要集中在和业务正交的领域 那我们想象一下,假设你同部门的同事,在开发一个你写不出来的程序,你心里会不会有点不舒服? 你好意思张嘴说“我有核心竞争力”嘛? pc 端富文本编辑器
生存空间越来越小的产业
- 小规模移动 App:移动 App 市场被一些巨头把持,小规模 App 生存空间越来越小
- PC 信息导航类网站(网址、购物、论坛、生活):现在移动优先,而且有智能推荐,并且是强社交
- 建站公司
0.1 前端的技能能力圈
前端竞争力
- 编写复杂代码的能力,面对需求不头疼不发愁,能实现的竞争力;硬核的能力
- 技术深度
- 源码+实现原理,理论支持
- 常见的应用场景和常见问题的实现,经验积累
- 同类问题的横向对比
- webpack 的配置和对应应用场景
- npm 高级,架设私有 npm 源,或者自己写全局包
- 脚手架快速搭建的过程,以及如何自定义更改
- 如何配置 eslint 和单元测试等
- 不要考虑自己未来的核心竞争力是什么,
不要考虑自己未来的核心竞争力是什么, 而是要考虑,做什么可以创造出更多的价值。有价值,就是有竞争力。 你会考虑,某项技术我用它可以创造出哪些价值? 以及,某项技术解决了社会中的哪些问题? 更新技术栈只是“跑赢”的战术手段,找对方向才具有战略意义 大部分技术都是要为业务和市场需求服务的 要关注如何用现有技术实现市场需求,满足用户体验 前端一直随着业务需求和技术的发展一直围绕着几个目标逐渐靠近, 降本提效、交互创新、工程能力、跨端兼容、智能化、用户体验等都在快速的发生着变化 持续的关注和学习行业的新技术新能力新变化保持自身适应快速的发展
0.2 前端软实力
自我规划能力:对于技术领域的趋势的洞察,以及个人对应的学习计划 快速学习能力:搜索能力(利用网上的各种知识),知识迁移能力 沟通能力和知识输出能力: 面向产品,以及面向后端,面向社区同仁
继续分化(领域、行业、技术栈) 继续融合(端技术、Web 全栈技术、人工智能与端技术) 核心不变(计算机科学本质、软件工程思想与实践、程序员职业素养
前端数据流是开发范式,实际上并不会帮你建立业务模型,不管依赖什么工具, 模型总要你自己建立
如何建立模型,又如何使用代码合理的实现模型?没有什么黑科技,就是一点一点的写,抽丝剥茧,功力足够
专家们忙于研究算法、数据结构、设计模式、框架源码, 越是底层的技术就越喜欢研究,忽视了最外层和用户接触最多的层面 跨端技术核心在于研发效率和性能体验之间的平衡与突破 跨端方案、工程实践、容器框架、自渲染、平台体系等不同跨端技术 软件开发模式,设计模式,架构思维,自动化思维,单元测试集成测试,UML 等