看看前端圈子里,各种技术、理论,在这两年烈火烹油,花了众人眼。前端似乎这也能做,那也能搞,但是到底何为前端呢?
个人定义:前端,就是浏览器端。不管前端怎样发展,一定是比后端简单的,因为前端几乎只用关心业务本身,后端则在关心业务的同时,还要关心开发环境本身的逻辑。这种关心是硬性的,也就是你如果不关心,完全无法开始开发工作。
回到最初始状态:前端,随便新建一个记事本,写几句代码,重命名成html后缀,双击就能看效果。后端,就为了一个“hello world!",不论是php,还是jsp,都要安装服务器,sdk,还要各种环境变量配置。写一个前端的应用,你只要理清你的业务逻辑,熟悉你的语言工具就行,不用担心环境,环境就是浏览器,最多就是ajax,cookie,再装一个服务器,不停点击确定,安装了就可以用了。后端还要理清开发环境本身的运行配置逻辑,不然,每次配环境都百度,出了问题到处"跪求"。
后端的复杂性当然不只是配个环境而已,前端的所谓"简单"当然也是相对而言的,任何一门手艺,想要用它吃饭,再用它过上好的生活都是不简单的,一个牛逼的程序员在自己的圈子里也许还是"最好的厨师",“ps高手”,“深度xx发烧友”,但是你真正进入厨师的圈子,进去其他那些看似简单,自己一学就会的圈子,就知道自己的渺小和低端了
可能是js的缘故,很多人把nodejs也算在前端,自己感觉显然不是。最基本的,node和php,jsp这些一样,需要另外安装环境。就像美国出生的华人,虽然黄皮肤黑眼睛,其实是正儿八经的美国人。
nodejs几乎具备了所有经典后端脚本具有的功能,读数据库,操作文件,搭服务器,构建命令行工具。但node对于前端绝对是一次逆袭的绝好机会。也许很多人不是,但我还是觉得,现在前端的主力,当初选择了前端,都是因为“前端简单”而且“前端性价比”比较高,但是大家都明白:一个业务的核心永远在后端,数据永远是核心,后端既可以操作业务,并且也接管了数据,和数据库打交道。要想成为核心,就要接管后端,接管数据!
当初离开后端的人,其实跟八路军长征一样,是战略转移,城市虽好,但是难以攻打和固守,所以退居农村,农村包围城市,农村是基础,农村工作不简单,但是城市更重要,最终目标还是城市。只要有机会,我们还是会从延安打回北京的!
nodejs以js为业务实施者,给了前端很大的亲和力,但绝不能因此对它的难度掉以轻心,它只是一个北美出生的华裔美国人,不是中国人。后端学习nodejs其实应该更简单,在自己后端业务的基础上,js那些语言特性,异步回调,坦率讲觉得对后端不是问题。但是前端真正的基础,html+css,这个看似简单的技能,琐碎繁杂,个人觉得倒不是很容易掌握的,当然,我指的是工作程度的掌握。前端,凭借html+css的后盾,以nodejs为前锋,重新夺回城市的日子应该指日可待。
另外不得不说下js,这个被不少高手诟病的语言,甚至被自己发明者厌弃的不“严谨”语言,因为有了nodejs,es6,有了html5,css3,拥有了贯穿前后端,打通各种终端和业务的能力,而且成本更低。
来源:oschina
链接:https://my.oschina.net/u/1267040/blog/608301