JavaScript除了做前端开发,还能做什么?
很多朋友学习的第一门编程语言就是JavaScript,学习的过程中一定会思考这个问题:“JavaScript除了做前端开发,还能做什么?”其实很多人问这个问题的时候,潜意识是有一些懒惰的嫌疑,希望JavaScript能做的事儿越多越好,这样我们专心学好JavaScript,就可以成为万金流,什么都能做,就再也不用管什么java、php、python等等编程语言了。
那我们在思考JavaScript能做什么之前,先看看下面这个问题:
厨房里的一把菜刀除了切菜还能做什么?
夜里带着能防身;
白天带着能装B;
背面可以开坚果;
而且还能起啤酒;
家里装修可以切木头;
侧面还能钉钉子(硬拍);
放在地上可以垫桌脚;
总之,发挥你的想象力,这把刀可以做无数事情,但是,99%的人都用它来切菜,因为它最适合做的就是切菜。
~~~~~~开个玩笑,回归正题~~~~~
JavaScript能做什么?
做前端开发,这个不用说了
写后台,随着node的兴起,用JavaScript写后台也是一种选择
写游戏
机器学习
操作系统
写编辑器,下面是尤雨溪针对编辑器Atom的一段回答
今天拿到邀请试用了一会儿,可以明确的说跟 Sublime 没有关系。Sublime 是原生界面,脚本用的是 python;Atom 应该是基于 Chromium Embedded Framework,基本上就是个 web app,源码都是 CoffeeScript 写的,连界面都可以用 CSS 来自定义。
你能想到的应用场景,JavaScript都能写,但是我还是推荐新手朋友们,就用它来做前端开发。
有人一定会说有了node,JavaScript做前端开发也会成为主流。
就目前的形式来看,node成为主流后台开发技术的可能性不是很大,然后咱们再来讨论一下新手是否适合从node开始学习后台。
新手不建议用node专职做后台
(先定义一下新手:)
(没有系统学习过web后台知识)
(熟练掌握html与css)
(可以熟练使用JavaScript和jQuery做出简单的网页效果)
(对模块化组件化的开发有所了解)
(熟悉http协议,熟悉ajax)
当前的前端生态是在node的基础上搭建起来的,所以做前端开发一定要了解node。但是如果觉得了解了node,就了解了后台,这可是严重的错误,后台的知识体系不仅仅是掌握了这门语言就能搞定的。
前端新手朋友们可以自己用node写接个后台接口,处理http请求,但这仅仅是为了解决前后台数据交互的问题,而不是正真掌握了后台知识。如果真正想学web开发的后台知识,从java、php、python入手,都优于node。
为什么新手不适合从node入手后台
随着node的兴起,基于node的后台解决方案日新月异并且不断完善,但是毕竟仍是刚刚兴起的技术(node在09年发布,13至14年开始逐渐被大家关注),这样的新技术,对于资历老的后台玩家可以很开心地在其中快乐地玩耍,但是,对于一个没有后台开发经验的你来说,这样的环境对你是相当不友好的。大家在讨论异步IO的性能问题,你可能还在测试如何接到这个请求的参数;大家在讨论node的mvc框架,你可能还没有掌握如何操作数据库。那些有后台基础的老司机告诉你,用node做后台是绝对没问题的,但是你要踩多少坑,补多少基础知识才能真正学会后台,只有你自己自己知道,相对于其他主流后台语言,学习成本和试错成本都要低于node。所以,如果你想学后台,不要从node开始。
我们用JavaScript做什么?
先用JavaScript把前端开发做好,然后可以适当学习一个后台语言,掌握一些后台知识,然后如果喜欢node,可以深入研究,但是千万不要抱着一种幻想:“有了JavaScript,什么都可以用JavaScript完成”,这样的想法只会妨碍自己在技术的道路上不断发展。
本文来自企鹅号 - 晓舟报告媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文来自企鹅号 - 晓舟报告媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。