互联网发展初期,大多数系统都是C/S架构,C代表客户端,S代表服务器,常见的软件,,都是采用这种架构模式。这种架构模式通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。那么,WEB前端和后端有什么区别?小编今天来具体的讲讲。
WEB开发分类与区别
人们通常将WEB分为前端和后端,前端相关的职位有前端设计师(UI/UE),前端开发工程师,后端相关的有后端开发工程师。这里我们只讨论前端开发工程师和后端开发工程师(欢迎对设计感兴趣的同学补充)的区别。
技术栈区别
看各大招聘网站上,公司对前端开发工程师的要求莫过于精通HTML,CSS,JS,有良好的交互设计能力等。再看公司对后端开发工程师的要求,比如Java开发工程师,要求精通Java,熟练掌握Java网络编程;熟练运用SSH等开源框架;熟悉互联网开发模式,清晰理解缓存,缓存设计和模式;精通TCP/IP、HTTP等网络协议,精通socket网络编程,有用Java做大访问量高压力网络应用的经验;
熟悉Linux/Nginx,熟练配置维护Apache,Tomcat,Resin等应用服务器,掌握shell/awk/python等系统脚本工具;熟练掌握SQL语句,熟练使用数据库(MySQL,Oracle);
掌握Html/Javascript/Css/Ajax 等页面技术;熟练使用Eclipse/Maven/Ant/SVN等软件开发工具;WEB架构的性质决定服务端开发的复杂性,服务端的复杂性决定后端开发人员要掌握的技术。
学习成本区别
用3年时间学习前端开发,多数同学都能够成为一个的前端开发工程师,同样,用3年时间学习后端开发,多数同学只能算是入门。前端开发人员需要掌握HTML,CSS,JS,对于其他框架的学习也只是熟悉下框架的用法。这三种语言本身也很简单,很容易上手。对于后台开发人员来说,开发语言的多样化,技术框架的选择,平台性能的了解都是需要经验积累的。比如java,你需要精通Java语言,熟悉jdk源码,熟悉JVM性能优化,熟悉SSH框架,熟悉Mysql,熟悉各种技术,这些都不是短时间就能上手的。
前端开发入门门槛低,学习曲线跟服务端开发语言先慢后快相比,趋势是先快后慢。注:后慢是因为后期的学习已经超过前端开发的范围,比如SEO,服务器端知识,HTTP协议,这些学习本身就是慢的过程。
钱景&前景
由于互联网行业的极速扩张,各大公司对前端工程师的需求非常旺盛,自然钱景旺旺。加上HTML5规范的较终定稿,必定引起web的热潮。NodeJS在服务器端的延伸也使JS大放光彩。反观后端工程师,培训机构输出一批批Java,PHP工程师,即使跟不上企业的需求,也基本能满足后端工程师市场的需求(不过,的,有经验的后端工程师是非常抢手的)。刚出道的前端工程师钱景和前景远好于后端工程师。
总结
对于想短期内进入互联网行业,想有个不错的钱景和前景,跟后端开发相比,前端开发是个不错的切入点。
理由如下:
前端开发入门门槛低,但需求旺盛,特别是有经验的前端开发人员。
前端开发短期可以积累足够的经验,比如3年,而后端开发想要积累同等程度的经验至少需要5年。
前端开发技术变化慢,HTML5定稿都需要8年!而后端开发技术更新很快,各种框架,架构模式变更迅速,需要时刻学习。
前端开发技术发展越来越成熟,且适用范围更广。比如HTML5可以替代原生APP(性能方面有待考究),JavaScript能够用于数据库操作(MongoDB等NoSQL支持JS语法),NodeJS能够让JavaScript在服务器端运行,只要会Js语法不用后端开发语言照样开发服务端程序。
暂无评论内容