最近和朋友要做一个项目,本来打算用java来做,但感觉学习曲线太大,所以决定采用node.js,想问一下学习node.js是否需要先学习Javascript?然后求推荐点入门书籍或资料。
最近和朋友要做一个项目,本来打算用java来做,但感觉学习曲线太大,所以决定采用node.js,想问一下学习node.js是否需要先学习Javascript?然后求推荐点入门书籍或资料。
要学javascript的。我也是有javascript基础,才学nodejs的。
这里有nodejs的资源。(大牛博客站点,教程,好文章等。)
https://github.com/edagarli/programming-articles-zh_CN
浏览器端完整的JavaScript实现是由以下3个不同部分组成的:ECMAScript、文档对象模型、浏览器对象模型。
对于服务器端,以上三部分你就只需要看ECMAScript相关的内容就行了,剩下的东西是Node.js独有的知识点,看官方文档即可。
只说初级的学习曲线,以做一个 Web 项目为考量范围,Node.js 的学习曲线未必为会比 Java 平缓,特别是你还不会 Javascript 的前提下。我个人不推荐这么选,如果当前的紧急目标是实现一个 Web 项目,那么 Ruby 的 Rails 框架和 Python 的 Django 框架还有 PHP 的 Laravel 框架都是比较容易上手的,Java 的 Play 也可以一试。
如果问我的推荐?Rails(因为别的我不熟……)
Node 的曲线未必比 Java 要平缓, Javascript 必须是基础,浏览器部分不必看,但是想学好,犀牛书是一定要看的。
要说快速上手,Python 或 PHP 吧,不说提高,只论快速做出东西, 这俩对付起来速度还挺快。
恩,javascript的基本语法,函数还是很有必要的,推介《javascript高级程序设计》和朴灵的《深入浅出nodejs》,知识链接http://segmentfault.com/a/1190000000348772
楼上说的很有道理,java太麻烦,用了python以后不爱再用java了,ruby on rails web项目已经完美了。php的laravel可以说事php 的ror,CI更简单,但是理念没有Laravel先进。要是连javascript还要现学的话还不如学一下php,再用个mvc框架呢。js想写好真不太简单,更别说nodejs 在express框架
如果我说不用是不是会被吐槽。因为我是几乎0基础上手nodejs的。不过如下知识是必备的:
1、一门其他语言的使用经验,如php,c++等
2、熟悉面向对象思想,还有js的面向对象和模块化的编程思想
3、熟悉nodejs的异步模型,其实说白了就是异步回调的基本原理。
4、熟悉json的使用
如果是做web开发,恐怕要从express开始,一些url解析的知识也是必备的。
我在只会写alert("hello world!")时,开始了写nodejs,nodejs入门并不难.
照着一些案例代码写,开始可能很不习惯异步的写法,于是就使用async库.
传统数据库设计不够简介,于是就使用levelup.
当然javascript的特性不了解难免会
采坑,边采边写吧,理解和记忆都会很深刻.
比如在异步里不小心用了全局变量,就使用变量时少写了var,就悲剧了.
以我个人的经历来看,不需要。
前端的 JavaScript 教程很多时候有很多奇怪的关注点,比如说 undefined 与 null 有哪些区别啊,为什么 == 不如 === 啊(我观察了一下,我写的所有小 Node.js 项目这两者毫无区别),或者莫名其妙的东西相加起来的和是什么。相反,我在 Node 里遇到的几乎所有对象都是……我也不知道叫啥了,对应 C 的 POD?
而且现在后端用 Traceur 那么方便,transpile 一下 ES6 就可以上了,都不需要看原型链就能写 class,多好。
需要注意的几个点大概有:
那个 bug 真坑爹啊……
可以先把javascript的基础语法看了,因为node.js是构建在javascript基础之上的,盖房子不能没有砖吧~
然后可以看看现成的一些demo,熟悉一下,找找感觉。
说是找找感觉,其实是让你适应node.js的异步编程模式,等你这个适应了,那node.js上手的速度就快的飞起。
这是肯定的,Node平台需要用javascript语言来实现程序,所以对于楼主所问,javascript的基础是要有的,还要有HTML、CSS、勤看API的能力与基础。javascript的基础可以参考书籍《Javascript高级编程 第三版》进行恶补基础。
需要,nodejs 就是基于 javascript 开发的。
其实你想问的是项目初的架构选型问题, 如果不给出具体的业务需求,很难给出具体的建议。
php, java, nodejs, ruby, python 都可以。
但是平心而论, nodejs 的学习曲线真的不适合新手。
nodejs 小坑大坑太多,这跟 javascript 有关系。
许多 nodejs 在社区还在讨论的问题,在 java 里已经很成熟了。
我的建议还是不要轻易尝试,nodejs 不适合新人玩。
如果你科研能力极强,以上当我没说,nodejs 真的很有趣。
8 回答4.6k 阅读✓ 已解决
6 回答3.3k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
4 回答2.7k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
要,而且必须,而且还得精通。node 是 服务端的 javascript。
入门教程:
node 简介:
http://www.nodebeginner.org/index-zh-cn.html
node web框架 express:
http://www.csser.com/board/4f77e6f996ca600f78000936
入门教程汇总:
http://www.cnblogs.com/lhb25/p/nodejs-tutorials-and-resources.html