我是一个小白,想转行从事web开发,有点迷茫,前几天约见了一位在约的专家,他帮我分析了一下,现在趁着思路还没乱,把我学到的东西整理一下。
web前端分为网页设计师、网页美工、web前端开发工程师。
首先网页设计师是对网页的架构、色彩以及网站的整体页面代码负责。
网页美工只针对UI这块儿的东西,比如网站是否做的漂亮。
web前端开发工程师是负责交互设计的,需要和程序猿进行交互设计的配合。
web前端需要掌握的有脚本技术javascript DIV+CSS现下最流行的页面搭建技术,ajax和jquery以及简单的后端程序等。 后端的话可供开发的语言有asp、php、jsp、.NET 这些后端开发语言的话搭建环境都不一样,具体如果你想学的话看是想从事前端部分还是后端程序部分。后端开发如果有一定的条件的话可以转为软件开发。不过要有一定的语言基础,类似java语言、C++等。关键是看你的兴趣爱好。
这个到后期不会区分这么细,做前端到后期也会懂一些后端的技术,反之,后端也是。
在实际的开发过程中,我们当前这样定位前端、后端开发人员。
1)前端开发人员:精通JS,能熟练应用JQuery,懂CSS,能熟练运用这些知识,进行交互效果的开发。
2)后端开发人员:会写Java代码,会写SQL语句,能做简单的数据库设计,会Spring和iBatis,懂一些设计模式等。
现在来看,对前后端的要求还是蛮低的,尤其是后端,新员工经过实习之后都是可以参与到后端开发的,没有太高的技术门槛,唯一需要做的就是先变成熟练工种,这个阶段没有涉及到设计模式、架构、效率等一些列问题。在约的专家对我的主要建议就是从这里入手。
回家又百度了一下,看看网上对Web前端开发、Web后端开发分别是什么?
Web前端: 顾名思义是来做Web的前端的。我们这里所说的前端泛指Web前端,也就是在Web应用中用户可以看得见碰得着的东西。包括Web页面的结构、Web的外观视觉表现以及Web层面的交互实现。
Web后端:后端更多的是与数据库进行交互以处理相应的业务逻辑。需要考虑的是如何实现功能、数据的存取、平台的稳定性与性能等。
我们再来看看大公司对前后端人员招聘的要求,通过这个角度看看前端、后端的技术要求:
Web前端:
1)精通HTML,能够书写语义合理,结构清晰,易维护的HTML结构。
2)精通CSS,能够还原视觉设计,并兼容业界承认的主流浏览器。
3)熟悉JavaScript,了解ECMAScript基础内容,掌握1~2种js框架,如JQuery
4)对常见的浏览器兼容问题有清晰的理解,并有可靠的解决方案。
5)对性能有一定的要求,了解yahoo的性能优化建议,并可以在项目中有效实施。
Web后端:
1)精通jsp,servlet,java bean,JMS,EJB,Jdbc,Flex开发,或者对相关的工具、类库以及框架非常熟悉,如Velocity,Spring,Hibernate,iBatis,OSGI等,对Web开发的模式有较深的理解
2)练使用oracle、sqlserver、mysql等常用的数据库系统,对数据库有较强的设计能力
3)熟悉maven项目配置管理工具,熟悉tomcat、jboss等应用服务器,同时对在高并发处理情况下的负载调优有相关经验者优先考虑
4)精通面向对象分析和设计技术,包括设计模式、UML建模等
5)熟悉网络编程,具有设计和开发对外API接口经验和能力,同时具备跨平台的API规范设计以及API高效调用设计能力
从公司的招聘要求可以看到,做Web开发,对前端和后端的要求是各自所不同的。而我目前的实际情况,也和这个差不多,但是,无论在知识的掌握程度上,还是知识掌握的宽度上,都是不够的。