作为一个服务端开发人员,需要了解并掌握一定的前端技能吗?回答是,当然需要。

我记得刚开始做开发的时候,还不流行前后端分离,那时候也没那么多的前端框架,什么 Vue、React 都还不存在,Angular 才刚刚发布第一代版本不久,但是在国内基本上还没人用。

那时候,大部分应用都还是服务端渲染,比如 Java 的 jsp、.NET 的 aspx、Python 的 Jinja2 等等,剩下的真的需要异步加载的,也是 JQuery 一统天下。

那时候我还投身在 .NET 的怀抱,在微软的一款叫做 SharePoint 的产品上做定制开发,使用的技术就是 .NET。接触前端也就是从那时候开始的,那时候团队里没有人是专门的前端,也没有人是专门的后端,甚至根本就没有前端这一说法。前端的概念也很简单,就是 HTML + CSS + JQuery,掌握这三样,那就是掌握了前端。

还要感谢那时候我们做的产品,因为 SharePoint 有个特点。它里面的功能都是以组件的形式存在,你可以在页面上选择性的添加需要的组件,并且实现拖动布局,这些组件就是定制开发出来的,由于这样的产品特性,所以那时候我们开发的组件其实就是前后端分离的,后端就提供接口,最开始写的是 webservice,后来变成了 RESTful 接口。前端就是那三样, HTML + CSS + JQuery 。

无论是技术的发展,还是学习新技术。都是现有的技术不能满足业务或者开发上的需求,才催生出新的技术框架,才能让团队或者开发人员发现新的技术框架。由于当时需要一些表单的动态变化,比如 A 字段的修改实时联动 B、C 字段,这时找到了一些实现表单双向绑定的模板引擎,然后就发现了还有 Angular 这种东西。

那么说到正题了,作为一个后端,如果你还没掌握甚至没有入门前端,怎么样才能快速入门并掌握呢?当然有方法。

在几年前开始学习前端

当然了,这个方法不是适用于每个人,对于到现在为止还没掌握前端的人来说就不太适合。

但是,还有但是,适合过几年后的你自己。

是不是有点绕,是不是有点哲学的意思。是不是和那句"种一棵树最好的时间是十年前,其次是现在。"是一个道理。

学习前端基础

以前的前端基础就是 HTML + CSS + Javascript。但是现在呢,有些人说,除了这些,各个前端框架都是基础,比如 Vue、React 等,甚至 nodejs 都得掌握点儿。有些前端同学,甚至根本就不怎么理解 Javascript,上来直接就各种框架了。

先不要看什么框架,先把 Javascript 是什么搞明白。不管是什么 Vue、React,什么 ES5、ES6 ,甚至 typescript,到最后编译完成还是 Javascript 代码。

先老老实实的做几个页面,就用纯的 HTML ,与后台的交互就用 JQuery,比如做一个表单页,提交表单传到后台,再做一个列表页,用来展示数据列表。样式不用太关心,毕竟我们不是专业前端,了解前端基础,重点是前后端的数据交互。因为最近我发现,有些同学不太理解前后端交互的流程,主要是刚开始做开发的同学。另外有的同学只埋头做后端,对于前后端交互也不甚了解。

自己实现一个 web

学习的方法就是实践,尤其对于开发,动手才是最重要的。 Talk is cheap. Show me the code.除非你是天才,不然技术都是靠时间堆出来,经验是靠实践积累而来的。

就算读再多的书,看再多的博文,关注再多的公众号,收藏再多的文章。一旦开始动手了,也是一脸懵的状态,请相信我,丝毫都不用怀疑。

有了上一步前端的基础,就可以选一个框架了,推荐 Vue 或者 React 里选一个。上来什么都别干,先到官网读一遍官方文档,差不多耗时1、2个小时。然后就开始按照官网的例子,创建项目、运行项目、编译项目,保证出来一个最简单的可运行项目。

接下来就开始动手添枝加叶了,你的这个网站可以从个人博客入手,做一个简易的博客,有顶部或者左侧菜单,有个人信息,有文章列表页,文章详情页等等。前端的展示层面,有好多开源的 UI 框架,比如 AntDesign、iView、Bootstrap 等等。

还是要强调,样式不是很重要,重点是前后端交互过程。比如说后端接口需要验证 header 中的 Token 信息,前端如何在 header 中加入 Token。如何 post json 格式参数到后端,如何向服务端传文件等等,只有把这个过程都了解了,在设计后端接口的时候才能更加清楚。

另外,在学习新技术的时候,不要过度关注细节。比如你用 Vue 开发,可能配置上要涉及到 webpack,webpack 有很多的设置,但是它只是用来调试和打包的,不用太关注它的配置,因为重点不是它。

一旦动起手来,万事开头难。刚开始的时候,你会步步难行,唯有搜索引擎可以救你。除了搜索之外,找一些简单的开源项目做参考也是不错的方式。

比如我前几天做的 web 版的 JVM 监控工具。前端就是用 React 做的,你也可以参考一下。源码在 github 上: 点击跳转到源码。当然,还有更多比我写的强得多开源项目值得参考。

啥都别说了,动手吧。

不要吝惜你的「推荐」呦

欢迎关注,不定期更新本系列和其他文章

古时的风筝 ,进入公众号可以加入交流群

java后端要会写前端吗_后端开发有必要学习前端吗,如何入门呢相关推荐

  1. easyui前端实现多选框_在实际案例中学习前端开发(第二期)

    前言 本篇文章适用于前端初学者 本系列将从实际网站出发并讲述前端的知识点,学习前端的开发.因为在实际开发中均采用结构样式行为相分离的写法(html对应着结构,css对应着样式,JavaScript对应 ...

  2. 5年经验前端大佬在线收徒了.... 如何学习前端, 前端开发中的疑惑,进阶指南

    时至今日,已经参见工作5年多了啦,这期间也曾迷茫过,也曾孤独地在深夜流泪. 特别是刚出来工作那一会,没人什么朋友,钱赚的少不说,每天压力也很大,记得当初住的房子是一家旅店.住在5楼,隔壁是一对上夜班的 ...

  3. mysql数据库工程师 课程_数据库开发工程师需要学习哪些课程?

    展开全部 数据库开发工程师需要学习的课程有: 1.计32313133353236313431303231363533e58685e5aeb931333365646263算机导论 内容提要:为新学生提供 ...

  4. java中的轮子是什么意思_后端的轮子(一) - java后端开发的个人空间 - OSCHINA - 中文开源技术交流社区...

    前言 首先,看看这个,想必大家对下面这种简历看得比较多了吧? 精通JAVA,Python,熟练掌握C++ 精通Redis,Memcached,Mysql 精通Nginx配置,模块开发 精通Kafka, ...

  5. java中的轮子是什么意思_后端的轮子(一)

    前言 首先,看看这个,想必大家对下面这种简历看得比较多了吧?精通JAVA,Python,熟练掌握C++ 精通Redis,Memcached,Mysql 精通Nginx配置,模块开发 精通Kafka,A ...

  6. java 怎么优雅的写出代码_【Java】基础50:如何让写的代码像诗一样优雅?

    今天是刘小爱自学Java的第50天. 感谢你的观看,谢谢你. 话不多说,开始今天的学习: ‍ 一.Stream流引入 这个流和IO流中的流很容易弄混淆. 但是它们是两个完全不一样的概念,Stream流 ...

  7. 刚学java.一天应该写多少代码_对于刚学编程不久的人,每天码代码是怎么码?...

    新手是一边学习新知识一边把自己学的东西码出来. 比如你刚看完C语言关于指针这一块,你是不是得敲一点实例来练习一下? 数个小时的时间肯定不是一直在哪儿敲个不停,你看新东西,思考一些相关问题,这些都算. ...

  8. Java中SQL语句写模糊查询_到底Java里的模糊查询语句该怎么写

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 现在String sql="select * from car where carName like '%'+?+'%'";可以查询出 ...

  9. java对接钉钉开放平台接口_后端项目与钉钉接口(第三方)对接要注意的问题...

    开发前所需 推荐postman测试,这工具谁用谁知道. 1:需要管理员在钉钉后台给予开发者 开发者权限 2:开发者权限给予后,开发者需要进入:https://open-dev.dingtalk.com ...

  10. java里新建线程设置线程名字_多线程开发不得不掌握,设置和获取线程名称及JVM如何运行的...

    原标题:多线程开发不得不掌握,设置和获取线程名称及JVM如何运行的 欲善编程,多看.多敲.多讨论:动眼.动手.动大脑. 1 如何设置和获取线程名称 多线程的运行状态是不确定的,在程序开发过程中,想要获 ...

最新文章

  1. oracle维护数据的完整性
  2. mysql base64
  3. 全套Python数据分析常用命令速查表!PDF文档限时分享
  4. C# 在PC上的通过蓝牙(bluetooth)发送数据到手机
  5. 程序员的SOHO:接单到完成的全过程
  6. 【记录】idea创建springboot多模块项目
  7. flink CompactingHashTable源码解析
  8. idea一键导包快捷键_十三肝了2晚的《IDEA操作手册-终极秘籍》终于来了...
  9. 计算机网络email服务的配置,计算机网络邮件配置实验报告
  10. 不正确的c语言字符常量是,哪个是不正确的字符常量?
  11. 如何用 latex 排版日文 (xelatex)
  12. 思科模拟器(学生版)、汉化包的下载及其安装步骤
  13. 网络游戏广告植入案例
  14. 【报告分享】2021年快手母婴行业数据价值报告-磁力引擎(附下载)
  15. 【信奥赛一本通】1183:病人排队(详细代码)
  16. 2019CISCN web题赛-JustSoSo;love_math(复现)
  17. Springboot学生选课系统的设计与实现毕业设计源码
  18. 关于Synaptics.exe感染型病毒
  19. 【LaTex】LaTex 的使用与写作(快速入门,尾附:简洁的论文模板代码)
  20. 哪有岁月静好,不过有人在为你负重前行

热门文章

  1. Foxmail添加163邮箱账号的方法
  2. 外泌体,顶刊新宠丨一文 get 研究套路!
  3. 新加坡国立大学计算机系访学,关于选拔本科生2019年春季学期赴新加坡国立大学访学的通知...
  4. 前端常用PS技巧总结之将图片上的LOGO(水印)去掉
  5. 代码在线执行工具(PHP,Java,C++ 等)
  6. 360中不显示html中图片不显示图片,360极速浏览器无法显示图片解决方法详解
  7. MySQL系列:表空间加密
  8. 查看加密QQ空间日志
  9. 微型计算机3c认证元器件清单,3C认证产品目录.pdf
  10. 汽车分类(奔驰G系列和奔驰c系列)