下面内容我们将会站在一个小白的角度,用大白话告诉大家前后端实际开发过程中的区别以及会用到的一些工具。
先来看张图:
看到可能还不理解,下面我们先说前端,以知乎-知学堂板块为例子。
前端也就是我们能看到的界面上的全部内容,比如网页上的特效,布局、图片、音频、视频等内容,这些图片是UI/UE设计出来的效果图,前端的工作就是将UI设计师的效果图,用代码的方式写成浏览器可以运行的网页。
依旧是以知乎知学堂为例,完成这个页面的工作需要涉及的岗位:
- 产品经理:将运营、老板的需求画成原型图
- ↓
- UI设计师:将产品设计的原型图根据实际情况设计并呈现出来
- ↓
- 前端开发:根据原型图和网页开发,将这些静态图片设置成动态页面,完成产品需求中交予设计师设计的各种页面、特效、动画等,使每个页面之前相互关联。
后端
后端是我们作为用户来说,看不到的东西。一般是前端工程师进行数据交互以及网站数据的保存和读取,相对来说后端涉及到的逻辑代码要比前端多。后端需要考虑的底层业务逻辑,还有就是平台的稳定性与性能。
另外!知乎-知学堂这样的页面,还会对我们的行为进行分析,比如看课记录,完课记录,阅读记录,按照算法进行推算,将我们下一个阶段的课程推荐给我们。这种就是数据分析,又算法编写的工作是由数据处理阶段的大数据开发工程师来负责的。
打个比方
- 前端好比你这个人你可以穿任何衣服~红的黄的绿的以及各种风格的!
- 后端就是你这个人,胖瘦都是你自己决定,但是胖瘦吧,需要结合食谱啊、运动啊,要动脑子。
-
- 前端好比你开车,车子你能看到的外观和内饰,你可以随意贴车衣或者是改内饰
- 后端就是车里面的发动机、排气等内部构造,你要动什么就不是审美问题,要了解内部构造和原理;
知识结构不同:
前端开发涉及的内容是HTML+CSS+JavaScript、Android开发、iOS开发,各种小程序开发;
后端开发涉及的内容是算法设计、数据结构,性能优化等,在具体的功能实现部分可以采用Java、Python或者PHP等编程语言来实现。
技术栈(参考):
前端 | 后端 | |
---|---|---|
编程语言 | HTML,CSS,JavaScript | PHP,Python,SQL,Java,Ruby,.NET,Perl |
框架 | Angular.JS,React.JS,Backbone.JS,Vue.JS,Sass,Ember.JS,NPM | Laravel,CakePHP,Express,CodeIgniter,Ruby on Rails,Pylon,http://ASP.NET |
数据库 | Local Storage, Core Data, SQLite, Cookies, Sessions | MySQL,Casandra,Postgre SQL,MongoDB,Oracle,Sybase,SQL Server |
服务器 | Ubuntu,Apache,Nginx,Linux,Windows | |
其他 | AJAX,AMP,Atom,Babel,BEM,Blaze,Bourbon,Broccoli,Dojo,Flux,GraphQL,Gulp,Polymer,http://Socket.IO,Sublime Text |
前端学习路线图概览:
- 新手入门:HTML5+CSS3+实战项目 → 移动web
- JavaScript阶段: JavaScript基础 → JavaScript核心Web APIs → 数据交互 & 异步编程Ajax\Git
- VUE开发:框架前置课Nodejs&es6 → Vue2+Vue3全套
- React + 微信小程序:React → TypeScript → 微信小程序
黑马程序员前端:2023年Web前端开发学习路线图https://zhuanlan.zhihu.com/p/596444606
2023年简略版Java学习路线图:
(下方链接点开直接进入课程当中)
- 入门:Java SE基础 → Java Web(含数据库+H5+js+vue)
- 中级:Maven → Git → SSM框架 → MybatisPlus → Spring Boot→ 《传智健康》项目实战 → 《瑞吉外卖》项目实战
- 进阶:Spring Cloud(微服务开发,学这一套就够了) 也可以按照以下技术点学:
Dubbo → Zookeeper → RabbitMQ → RocketMQ → Docker → Redis → MongoDB → 搜索技术Elasticsearch → MySQL进阶 - 项目:《SaaSiHRM》企业服务 → 《好客租房》生活服务 → 权限管理一体化解决方案 → 短信网关平台
- 面试:Java大厂面试专题课 → Java百度地图
以上技术,足以支撑大家找到一份好的Java开发工作,如果想工作后再提升,页面底部还有30+套课程。
工作后可以再学习提升的技术:
JDK8-15新特性 → 编程强化 → 数据库强化 → 安全框架SpringSecurity → 报表技术 → 模板引擎VelocityTools → 工作流Activiti7……
黑马程序员:2023年黑马程序员Java学习路线图https://zhuanlan.zhihu.com/p/596422138