从后端开发转职前端开发,我学到了什么?
来源:Pexels
从后端开发转职到前端开发真的不容易。
特别是当你已经习惯了后端开发的工作模式,习惯了构建数据结构,编写类似于测试驱动开发的测试,习惯了使用持久层、仓库和数据库图表,以及给前端创建API接口。
凡此种种,不胜枚举。后端有其复杂性,所以大部分人没有时间学习前端开发的内部运作方式。
我也是。
甚至可以说,基本上已经与后端绑定了,直到我被迫转职,调岗到前端,从此我能为最好的、拥有强大UI交互性的产品编写代码,无需过多依赖前端框架,无需框架提供的黑盒帮我挑重担,还能创造很棒的app。
以下是我从后端转职前端开发至今的经验:
一切都与用户界面和用户体验有关
在后端,让人最为担心的就是数据结构,数据库结构和性能,代码架构,服务,以及开发前端工程师能理解并使用的强大API。
前端则非常不同。开发人员需要关注用户界面,关心用户如何与app互动,然后量化评估用户体验。有时你需要自己设计用户体验,然后改进应用程序流程。
我喜欢前端开发的一点是可以直接解决用户需求、关注他们的体验。前端的方法跟后端不同,因为前端以用户为中心,一切都围绕着如何让用户更舒适地使用你开发的app,而不是处理数据结构。
在项目开始时,把UI摆在第一位,思考应用流程
在我开展个人项目来提升前端技能时,关于“用户点击按钮、与UI组件互动时,UI会如何运作和推进”的思考极大地改善了我的思维模式。
在后端工作时,我无法想象如何与用户互动、如何改进用户流程,因为我几乎只关心CRUD(数据库的增删改查)操作以及app如何将数据存储到数据库,包括最重要和最敏感的信息,比如公式、信用卡信息,等等。因此,当我做UI相关工作时,真的糟透了。
转职到前端后就大不一样了。现在,我会首先考虑用户会如何使用app并与其互动,思考他们是否会喜欢这样的体验。然后,我会在UI或者展示模型的基础上,设计合适的后端结构和数据库。
思考如何提升UI复用性
自从React这样的前端框架面世,开发人员都从“组件”出发考虑和安排UI。组件能够在不同的页面重复使用,这是一件好事。再也不用为重复使用UI组件白费力气了,因为现在UI组件已经标准化了。
正如我所说,转职到前端促使我思考UI的复用性,提升了我的决策水平。在选择符合需求和项目范围的前端框架时,无论是React,Vue还是Angular,我都能选出正确的那一个。
如果你想把UI组件分享给不同的项目及团队,建议看看Bit的工具,看它能否帮到你。
构建自己的应用模型
学着为自己的想法构建模型也许与前端技能本身无关,但它无疑帮助我优化了视觉效果,使我能更好地模仿自己的设计,并在前端将其编写出来。
构建模型这一技能不同于前端技能,但是,能够根据模型和他人的设计编写前端代码,这让我感到兴奋,构建自己的模型、用所学的前端技术将其编写出来也让人兴奋不已。
一切都与网页端性能和客户端优化有关
你不仅要关注用户界面,而且要关注客户端及网页的性能。这很重要,因为用户时不时会与浏览器交互,也就是与前端代码交互。
因此,我认为有必要提高网页端性能,无论是使用像本地储存这样的缓存策略,最大化地压缩JavaScript代码,用webpack打包和转换,还是在代码中使用动态导入。
我意识到优化不仅来自后端,也来自前端,它能给网页端应用的用户带来无缝的使用体验。
学会创建快速响应的网页
创建快速响应的网页无疑是前端开发中让人头疼的挑战之一。开发人员必须确保UI的响应在不同设备上都足够快,无论用户用的是台式电脑、笔记本电脑还是智能手机。
在刚开始学习前端开发的技巧时,我仍视其为让人头疼的挑战,直到我找到了其中的诀窍。准确来说,制作快速响应的网页乍看简单,但是我没有意识到我一直以来都错了。
当然,如果打算依赖前端的框架,这个麻烦自然不复存在。但是,我们不想过多地依赖框架,想从头开始,自己学习前端开发是如何运作的。
来源:Pexels
学习搜索引擎优化(SEO)
SEO是提升app主页排名背后的驱动力,所以学会SEO也是非常重要的。
SEO常用于前端app中,帮助顾客或app提升排名,这样潜在的用户就能很快看到app并使用它。
因为学习了前端技术,我能肯定SEO是一项必须掌握的重要技术,它甚至能为用户或者app本身提高销量。
善用层叠式样表 (CSS)
CSS是前端开发的一个重要组成部分。如果你无法掌握CSS技能,不知道如何用CSS排列UI组件,你是无法在前端部门立足的。
一开始,这对我来说非常困难。我没有敏锐的设计眼光,也不知道如何按照喜好合理排列UI组件。但随着我对前端开发的学习、逐渐掌握了CSS,这就像第二天性一样,我再也无需苦恼了。
因此,通过转职到前端开发部门,我出色地掌握了CSS。
学会不再过于依赖前端框架
我必须承认,作为曾经从事后端工作的人,我依赖前端框架只是为了完成工作,以及把产品转给他人接手。
我以前在一家初创企业工作时,只掌握了后端技能,我一直依赖前端UI库和框架做下拉菜单和侧边栏,但是这样很容易把事情复杂化,前端代码也变得难以维护,因为哪怕是一小段基础代码都离不开前端库。
转职成为全职前端开发人员让我更自由。因为,仅仅为了让前端UI更好看、互动更流畅,除了框架还有许多其他的方法。要说转职到前端有什么不同的话,那就是你可以自由决定如何排列前端组件、让它们动起来,而无需过度依赖框架。
想要成为设计师
这很有趣。当我从后端转职到前端,想要自学设计。比如说,从无到有设计一切,然后用我过去几年掌握的前端技能把我的设计码出来。然后我有了学习Adobe Photoshop的想法,当然这也需要几个月的时间磨练技巧。
但是,毫无疑问,前端的工作丰富了想象力,同时,我也为能够学习设计感到兴奋!
来源:Pexels
从一个前后端人员的角度来看,前端的工作一开始真的非常有挑战性,直到我扎实掌握了前端的基础技能,开发app对我来说就像第二天性一样了。
如果你问不同的人,其他人可能第一眼就觉得前端编程非常简单,但对于我来说,一开始前端编程绝对是个挑战。
现在,网页开发生态系统日新月异,我认为学习前端技能对我的职业生涯有益,能够更多地帮助我的客户,所以我马上投身于前端的浪潮,开始学习前端技术。
对于那些想要从后端转职到前端但是又不知道从何处着手的人,以下是我的建议:放手去做,勤加练习,夯实基础,掌握对的技能/技术,在前端开发的舞台上大展身手吧!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
WIFi 5最后的疯狂 2019年无线路由器市场报告
2019年无线路由器市场面对首批WiFi 6产品的来势汹汹,WiFi 5产品掀起了最后的疯狂。在产品方面,全千兆端口+1300Mbps速率已经成为标配。在下半年的市场中,各个厂商更是接连推出2100Mbps的低价产品,将原来发烧级的产品规格拉低到了150元左右。提速、降价的原因很简单,原本上千元高高在上的WiFi6路由器,已经有厂商杀到400元的普及价格。 在这一背景下,市场格局也发生了重要变化,旧霸主退位,新王登基,还有各大诸侯虎视眈眈无线路由器市场的王座。2019年无线路由器市场具体都有哪些变化?我们一起来看看吧! 基础性数据分析 一、新王登基 2019年中国无线路由器市场品牌关注度TOP10 纵观2019年全年,一直稳坐无线路由器市场霸主宝座TP-Link已经跌落神坛,其品牌关注度排名第二,关注度比例为14.9%。从历次报告中我们可以发现,TP-Link的市场关注度持续下跌,终于在2019年从王座上滑落。 旧霸主退位,新王登基。近两年华为持续地高速增长,终逆袭成功,在2019年获得了16.8%的品牌关注比例,荣登品牌关注度第一。在2019年,华为陆续推出了华为路由WS5200增强...
- 下一篇
linux入门系列12--磁盘管理之分区、格式化与挂载
前面系列文章讲解了VI编辑器、常用命令、防火墙及网络服务管理,本篇将讲解磁盘管理相关知识。 本文将会介绍大量的Linux命令,其中有一部分在“linux入门系列5--新手必会的linux命令”一文中已经介绍,遗忘了或没学习过的请自行查看。 磁盘管理主要涉及磁盘扩容以及磁盘配额管理,当服务器磁盘空间达到一定程度(个人认为一般使用量占到总容量的70-80%)就需要考虑新加磁盘实现扩容,一般操作步骤为分区、格式化、挂载、验证及使用。而磁盘配额主要是针对用户设置其最大的磁盘空间使用量,防止当个用户占用磁盘过多的情况。下面将在虚拟机中模拟磁盘的这些管理操作,生产环境中操作命令和方式都是一样的。 在演示具体操作之前先了解一下相关的理论知识。 一、磁盘管理相关理论知识 1.1 文件存储结构与文件定位 Linux系统中一切都是文件,既然是文件那就涉及文件的存储以及文件的定位查找。 1.1.1 文件存储结构 在windows系统中,我们存储文件一般是将磁盘划分为几个不同的盘符(比如C、D、E、F等等),然后将资料存储在不同的盘符下。查找的时候也是根据对应的盘符找到相应的存储文件夹,进而找到对应的文件。 ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7设置SWAP分区,小内存服务器的救世主