做前端开发-前端开发 前端设计
现在web前端越来越细分,工具和框架语言日新月异,学无止境。 很多同学想放弃,甚至有人质疑未来前端饱和找不到工作的无脑文章。
销售焦虑实在是太可笑了,那么就目前的判断来看,未来我们期待什么呢? 我们每天刷屏的vue、react、es6这些东西,只是我应用层的冰山一角,不值得吹嘘。
我们要做的是从战略层面和大方向去了解我们的工作是否值得,或者它有什么样的价值和潜力。 这是绝对必要的。 不要只停留在技战术层面。 战略是错误的。 ,你会掉坑里的!
前端首先是程序员
前端工程师首先是程序员,其次才是软件工程师。 他们工作在离用户最近的地方,负责人机交互和用户体验。 虽然叫“前端”,但其实他们的工作边界很广。
展望未来,我认为前端工作还是会继续分化和融合。 分工是工业革命以来社会效率的主要驱动力做前端开发,并将在未来很长一段时间内继续保持这种形式。 但我认为核心的东西不会有太大变化。
我的观点
1、继续差异化(领域、行业、技术栈)
2、持续融合(端技术、Web全栈技术、人工智能)
3、核心不变(计算机科学精髓、软件工程思维、程序员基本素养)
继续分田
前端领域将继续分化。 比如阿里内部前端已经有中后端、图形、端技术、泛Node、开发者服务五个大方向。 每个大方向也会细分。 这里有些例子:
1、中后台:云控制台、信息&资产管理平台、内部研发&项目管理平台、人工智能&机器学习平台、数据研发与分析平台等具体产品如阿里云控制台、ERP 、DeepInsight、Basecamp等
2、图形:有基础图形库、3D图形、数据可视化、流程图等,具体产品如G2、阿里云城市大脑、滴滴智能交通调度地图、双十一大屏等。
3、终端技术:移动端(iOS、Android、MobileWeb、PWA、小程序)、PC端(客户端、Web端)、触摸屏电脑、各类监控大屏、智能手环、智能车载&主屏等。
4.泛节点:有工具链、web框架、IoT、客户端(Electron、NW)等具体产品如DEF/F2E-Test(阿里前端开发工具)、Egg.js、VS Code、 ETC。
5、开发者服务:有应用开发维护平台、组件市场等,具体产品包括阿里云的应用构建平台Fusion-Design组件市场、支付宝、微信小程序开发者工具等。
//这里推荐一个前端全栈开发交流圈:784--783--012 突破技术瓶颈,提升思维能力
技术栈
1.反应(本机)
2. 角度(本机脚本)
3.Vue(Weex)
2.持续整合技术包括
~ 前端与客户端技术思想的融合
~ Componentization(组件化构建页面)
~ 组件生命周期钩子函数(如iOS ViewController)
~MV*(如MVVM设计源自微软客户端开发框架)
统一大前端
~ 虚拟DOM技术:React/ReactNative/ReactCanvas
~ 各种移动设备内核和引擎的统一:WebKit/V8
Web全栈技术
~ 前后端技术思想融合
~ MV*
~ AOP,依赖注入
~ IndexedDB(数据库)
人工智能与终端技术
~ 人工智能与前端技术的融合
~ 终端数据采集 -> 后端机器学习,数据可视化
~ 物联网与前端技术的融合
~ 智能家居/汽车/工业设备可能有屏幕并基于例如
~ JerryScript等JS执行引擎使用Node.js开发网络应用
3.核心不变
计算机科学精髓/软件工程思想与实践/程序员的职业素养。
计算机科学基础:如操作系统基本概念和计算机组成原理、基本算法和数据结构等。
软件工程思想与实践:如软件开发模式、设计模式、架构思想、自动化思想、单元测试、集成测试、UML等。
程序员的职业素养:如追求代码的整洁和可读性、对软件开发的热情、编程技能的自我提升等。
回顾历史
回顾了前端的演进,主要参考了底层的相关资源。 下图简单回顾了1995年以来软件开发和前端的历史:
前端的未来 那些生存空间越来越小的行业
1、小型移动应用:移动应用市场被一些巨头垄断,小型应用的生存空间越来越小
2、PC信息导航网站(网站、购物、论坛、生活):现在手机为主,有智能推荐,社交性强
无界面交互web前端可以做一些事情,主要是大前端类
1.对话界面(视频语音对话,语音搜索:WebRTC,开源语音库:Common Voice)
2. 感官界面(视觉:WebAR/WebVR)
3、没有接口,未来会有大量的物联网设备(物联网有自己的通信协议和规范,前端工作在用户后台)
//这里推荐一个前端全栈开发交流圈:784--783--012 突破技术瓶颈,提升思维能力
丰富的界面交互需要前端做很多工作:
~ 日常办公软件(从桌面程序慢慢演变为Web):Office、Email、文档管理、项目管理、代码编辑器
~ 大数据/AI配套软件(复杂的应用,从桌面程序慢慢演变成Web):数据分析/机器学习需要大量的后台系统
~ 播放器/游戏:H5 代替 Flash,例如 Web Audio、Web Video、Canvas
~ Container/DSL/kernel/applet:支付宝/微信/钉钉容器,kernel(即UC,QQ浏览器内核),及其自定义的DSL(如果以后手机底层能力可以上传到小程序中) ,会很容易)想象空间)
未来在哪里?
总结点
继续差异化(领域细分、行业细分、技术栈细分)
持续融合(端技术融合、Web全栈、人工智能与端技术融合)
核心不变(计算机科学本质、软件工程思想与实践、程序员的职业素养)
一些建议
关注人工智能发展,思考TA在前端领域可能的应用场景
相信前端的未来做前端开发,Web 的力量
结合公司业务特点,侧重于前端的某些方面,毕竟技术是为业务服务的
前端的发展超出了大家的想象。 未来肯定是不可预测的,没有必要去预测。 我们要做的,就是脚踏实地做好眼前的事情。