V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Justrover
V2EX  ›  Node.js

无编程基础学 node.js,有什么建议?

  •  2
     
  •   Justrover · 2016-01-01 02:04:03 +08:00 · 8008 次点击
    这是一个创建于 3036 天前的主题,其中的信息可能已经有所发展或是发生改变。
    本人工作和 IT 无关,但喜欢网络、喜欢 geek ,想利用业余时间做个网站玩玩,纯粹属于兴趣爱好。搜了搜,推荐 python 或 node.js 的居多。
    我编程 0 基础,但动手能力强,自学能力还凑活,各位前辈有何建议?或者有初学者资源推荐?非常感谢!
    第 1 条附言  ·  2016-01-01 05:54:37 +08:00
    😊忘记说了, CSS + XHTML 已在 HTML4.0 的时代自学完成。和代码相关的技能我也只会这个啦。
    43 条回复    2018-12-02 06:31:43 +08:00
    Septembers
        1
    Septembers  
       2016-01-01 02:17:30 +08:00 via Android
    个人建议先从 Python 开始
    另外请不要将 JavaScript 局限于 node.js
    Septembers
        2
    Septembers  
       2016-01-01 02:18:25 +08:00 via Android
    Python 的学习直接看官方文档即可
    Justrover
        3
    Justrover  
    OP
       2016-01-01 02:21:27 +08:00
    @Septembers 感谢回复,为什么你不推荐直接学 node.js ?
    russj
        4
    russj  
       2016-01-01 02:32:43 +08:00
    当然先学 javascript ,自己做个小网站玩啊
    hbkdsm
        5
    hbkdsm  
       2016-01-01 02:34:38 +08:00
    不要直接学 node.js ,建议 Python

    node.js 对新手不友好
    zeinipiyan
        6
    zeinipiyan  
       2016-01-01 02:40:27 +08:00
    先搞清想做什么?
    网站还是 app ?
    gimp
        7
    gimp  
       2016-01-01 02:54:04 +08:00 via Android
    零基础为什么不学习 html,css,js ,然后顺理成章的过渡到 node.js 呢
    dofy
        8
    dofy  
       2016-01-01 03:09:53 +08:00 via iPhone
    同意楼上,想“做网站玩玩”应该从看得见的前端开始。
    Yvette
        9
    Yvette  
       2016-01-01 04:05:17 +08:00 via iPhone
    Python 和 JS 可以看看廖雪峰的教程
    dsharpen
        10
    dsharpen  
       2016-01-01 04:38:43 +08:00
    Geek 與計算機&Internet 無關, 360 行,行行出 Geek.所以建議不要學什麼 nodes 還是 jsnode 想當 Geek 就在你當前職業基礎上去努力突破即可
    dsharpen
        11
    dsharpen  
       2016-01-01 05:05:12 +08:00   ❤️ 8
    @Yvette 別害人好麼?和方舟子撕逼中西醫好壞的專家都一定不是專家,同理,整天糾結 py2 與 py3 比較之間優缺點以決定學哪個好的也只會發生在天朝(知乎),這種行為本身就是抱著投機取巧的心態想走捷徑想速成的,看珠穆朗瑪峰的教程都沒用。最好的方法應該是根據實際情況出發,例如樓主的 node.js 要用在哪兒,樓主說它想建站,而且只是玩玩,那必定是從 html 入手過度 css 和 js,其中 js 在過度後放重點,結合 node.js 實例動手操作,不需要教程,有且需要工具書即可。還是那句老話, learning by doing.我看過廖的 github 教程,實在很一般,也不必回復“你厲害你去教”之類的,為人師表很難責任重大,我肯定不行,且正是因為不是競爭對手我才有發言權。至於參考,英文水平不錯的話 http://javascript.crockford.com ,這個是一個挺全的參考收集站點,工具手冊我在 mac 上用 dash3 ,喜歡開源去 github 搜 devdoc ,或者去 https://developer.mozilla.org/zh-CN/,提問去 stack flow 表達清楚幾乎都能得到滿意答覆,用 firefox 或 chrome 當調試器,這是 google 的 jsapi.https://www.firebase.com/docs/web/api/實在沒有頭緒就去 http://www.w3schools.com/js/把所有例子當練習打字打一遍。這個過程比較痛苦,說不定會半途而廢或者喜歡上 jquery 之類的不一定。最後強調,寧可用 google translate 去看不懂的英文教程,也不得不防居心叵測的中文速成快餐....拉肚子是小事,一輩子也就那六七十萬個鐘,浪費一秒少一秒。祝你學習順利
    Justrover
        12
    Justrover  
    OP
       2016-01-01 05:51:11 +08:00
    @dsharpen 谢谢你的建议,敲了这么多字,辛苦啦😉。
    @gimp @dofy 😊忘记说了, CSS + XHTML 已在 HTML4.0 的时代自学完成。和代码相关的技能我也只会这个啦。
    chemzqm
        13
    chemzqm  
       2016-01-01 08:13:13 +08:00
    https://github.com/alsotang/node-lessons
    这个教程不错,不建议买书,多写写就好了
    UBER
        14
    UBER  
       2016-01-01 08:32:56 +08:00 via iPhone
    基础教程书 硬头皮 一个个敲
    letv
        15
    letv  
       2016-01-01 09:26:18 +08:00
    为什么不学 PHP 呢?那本经典教材我觉得挺适合新人的
    loading
        16
    loading  
       2016-01-01 09:28:45 +08:00 via Android
    建议学 python , javascript 我至今还没学完,而 python 已经完成很多任务。
    loading
        17
    loading  
       2016-01-01 09:34:41 +08:00 via Android
    我自己能完成较复杂的前端开发(也就是 js 还算会用),但我不敢碰 node.js 。

    node.js 是给深入熟悉 js 的人使用的,而且使用面很窄。
    如果纠结 python 可以想我一样考虑 golang ,而 python 的胶水特性,真的能让你无所不能。 python 性能其实就够用,很多时候就是数据库拖后腿。


    如果是要找工作,建议 php 。
    microchang
        18
    microchang  
       2016-01-01 09:59:20 +08:00
    算 noder 一个,既然楼主题目问如何学习 node ,那就暂且搁置 PHP Python 或者 node 之争,直接说如何上手 node 吧。语法上看 js 相关,比如 JavaScript 高级程序编程; API 上官网一个一个的过,不懂的去谷歌或各种社区求救;其他知识一边做一边学吧,玩 geek 免不了往全栈方向发展,很多杂学都是一路干出来的。

    另外夹点私活,楼上说 node 适用面窄还是有点偏颇的,语言发展如今,对于 geeker 而言,如果不要求工程严谨性和效率,几乎是任何语言可以干任何事情了。最好的办法是找最开始入门的例子,照猫画虎敲一边,觉得哪个对眼就学哪个吧。

    既然是 geeker ,开心才是王道。
    swirling
        19
    swirling  
       2016-01-01 11:22:29 +08:00 via iPhone
    作为一个会 node python java 的前端,我只能说 node 会让你不开心的。因为新手理解异步很困难。 python 代码是从上往下一条直线, js 是一棵树,你不知道哪里会先执行。
    MrEggNoodle
        20
    MrEggNoodle  
       2016-01-01 11:35:04 +08:00
    python 和 js 都直接看廖雪峰大神的 blog ,看完之后可以直接做项目练习和继续深度学习。
    plqws
        21
    plqws  
       2016-01-01 11:47:58 +08:00
    我在有编程基础的情况下学 Node 也是一路坎坷,同推荐 python 。如果不局限于脚本语言推荐 C#
    movtoy
        22
    movtoy  
       2016-01-01 11:51:56 +08:00
    推荐学习 php

    一个表单,增删改查,随便整整就几个页面出来了。。

    不觉得一个新手一开始就被用什么类、模式,敏捷开发这些术语纠缠住有啥鸟用。
    yangjian226200
        23
    yangjian226200  
       2016-01-01 12:16:34 +08:00
    @dsharpen 以前被中文翻译毒害过的猿路过。
    yangjian226200
        24
    yangjian226200  
       2016-01-01 12:16:34 +08:00
    @dsharpen 以前被中文翻译毒害过的猿路过。
    wuhuaji
        25
    wuhuaji  
       2016-01-01 12:19:20 +08:00
    无基础不建议上来就学 node ,不是所有东西都能无基础学习的,先把 JavaScript 搞明白再说吧。
    raawaa
        26
    raawaa  
       2016-01-01 12:31:05 +08:00   ❤️ 1
    如果没有基础的话, Javascript 的异步、闭包、原型链等一些感念很容易看得一头雾水。如果非要从 Javascript 起步的话,推荐看以下书:
    1. 先随便挑一本 javascript 的入门书,快速看一边,不需要全看懂,大致熟悉一些这门语言里有哪些知识点;
    2. 开始看《 You Don't Know JS 》系列
    DuanPengfei
        27
    DuanPengfei  
       2016-01-01 12:56:40 +08:00   ❤️ 3
    人家问零基础学习 Node.js 有什么好的建议,你们都去建议学其他的,不懂这是为什么。学习东西一定要从最基础学起吗?个人不是很确定这个理念对不对。我就先跑再走,虽然过程可能看起来曲折艰难,但是我自己喜欢,虽然在某些牛逼人的眼里我的代码可能会被鄙视,但是我做出了我喜欢的东西,心满意足。所以对那些建议学这个学那个的人说,请针对问题细心解答,不要把你自己的经验强加给其他人。

    ----

    个人学习过程中看过的资料,仅供参考:
    - [Node 入门]( http://www.nodebeginner.org/index-zh-cn.html):一本 Node.js 入门的电子书
    - [N-blog]( https://github.com/nswbmw/N-blog):使用 Express + Node.js 开发的多人博客,教程很详细
    - [Node.js 实战]:一本讲解 Node.js 实际应用的书
    - [深入浅出 Node.js]:一本深入了解 Node.js 的书
    - [火狐 JavaScript 文档]( https://developer.mozilla.org/zh-CN/docs/Web/JavaScript): JavaScript 语法参考文档,在语法不会时用来查询

    ----

    我的学习经历是心中有一个想要的作品,然后直接开动。在初期时有些痛苦,需要把文档放在手边,不会写就查,积累一段时间后,文档就慢慢变为辅助工具。
    k9982874
        28
    k9982874  
       2016-01-01 13:00:01 +08:00 via iPhone
    直接上 nodejs , python 不需要去“学”,要用的时候直接上手。
    jamiefang
        29
    jamiefang  
       2016-01-01 13:04:54 +08:00
    http://referrals.trhou.se/jamiefang
    安利下 Treehouse 上的课程,质量比同类在线课程高
    haozhang
        30
    haozhang  
       2016-01-01 13:09:46 +08:00
    为什么不学 java 呢...没有奇怪的语法,理解容易,库多,资料多。
    donglingyongadls
        31
    donglingyongadls  
       2016-01-01 20:00:50 +08:00
    朴灵的《深入浅出 Node.js 》,少有的国人写的好书
    imlinhanchao
        32
    imlinhanchao  
       2016-01-02 00:44:26 +08:00
    楼上绝大多数的做法,都是在先卖自己的瓜,而并不理会题主要的是个梨。为什么会这样呢?个人认为,许多人都期冀于将话题引向自己熟悉的领域,这样更能表达自己。
    dsharpen
        33
    dsharpen  
       2016-01-02 01:53:13 +08:00
    @imlinhanchao 同意。試問 @Justrover html5 標準真正結案了麼?沒有,因為計算機語言的最終奧義是自然語言且不髒,這句話我真對了 php 和樓主所謂的“自學完成”。我就不信一個“自學完成”的人學個 nodejs
    還要上來問。
    dsharpen
        34
    dsharpen  
       2016-01-02 02:01:12 +08:00
    @donglingyongadls 深入淺出,九淺一深那是行房術...行房數需要學麼?總之我家旺財不用。我還有個朋友和妹子去社區泳池游泳..喊著深入淺出優雅地來了個 100A 再也沒出來過
    donglingyongadls
        35
    donglingyongadls  
       2016-01-02 10:28:18 +08:00
    @dsharpen 在你这样大放厥词对一本书之前,你至少应对这本书有所涉猎,或者至少翻过豆瓣上其他人的评论。
    已 block ,不谢。你的存在破坏了这个社区认真讨论的氛围。
    wizardforcel
        36
    wizardforcel  
       2016-01-02 20:55:56 +08:00
    先把 js 的 ecma 部分看完再上手 node


    @donglingyongadls 是你没搞清楚吧

    《深入浅出 node.js 》是分析 v8 底层机制的 写 web 应用调用 api 就可以了,根本不需要看这玩意儿。你写 py+flask 的时候,需要研究 flask 源码怎么回事吗?不需要。

    再者说你看完也不知道 mvc 该怎么实践,或者一个博客的路由系统该怎么设计。要看就看《 Node.js 实战》这类书好了。老想着底层,忽略业务逻辑,这是病,得治。
    Justrover
        37
    Justrover  
    OP
       2016-01-02 21:04:17 +08:00
    总结了一下,有 7 个人都反对直接学 node.js ,总之即使要学也得先学 javascript 。所以等我学会 javascript 再学 node ,等做出网站的那一天我猜很漫长,在这期间兴许会学学 python 吧。没事,反正是爱好,乐在其中, just do it !感谢大家的热情回复😚😚😚
    ne6rd
        38
    ne6rd  
       2016-01-02 22:46:24 +08:00
    @Justrover
    因为 JAVASCRIPT 才是一门语言,最基础的语法肯定是要学习的。 javascript 才是和 python 相对应的一个东西。
    nodejs 只是一个 javascript 的运行环境。以前 javascript 只能在浏览器里运行。通过 nodejs 变成可以像本地的一个程序运行了,于是可以用来开发后台。
    donglingyongadls
        39
    donglingyongadls  
       2016-01-03 08:52:06 +08:00
    @wizardforcel 我认为这本书书讲的恰到好处,比如理解 Promise 的原理才能写出可用的异步代码。至于业务细节,当然可以有其他的补充。

    我就这么顺便分享一下我对 Node.js 学习资料的一些看法,你大可与我讨论。『老想着底层,忽略业务逻辑,这是病,得治。』但是你这种上纲上线,是病,得治。
    linksgo2011
        40
    linksgo2011  
       2016-01-03 14:16:35 +08:00
    1 、看一个例子入门教程
    2 、读一本深入的书《深入浅出 nodejs 》
    3 、看一个 nodejs 项目,做一个项目
    参考我的 nodejscms
    https://github.com/linksgo2011/nodecms
    crabRunning
        41
    crabRunning  
       2016-01-05 11:28:59 +08:00
    @linksgo2011 正在看你的代码,正在转 node.js, 说实话,很不喜欢 node ,异步回调太他妈闹心了。
    geek123
        42
    geek123  
       2016-01-06 14:38:03 +08:00
    @chemzqm 你这个推荐好,这个课程真心不错。我也推荐一个
    http://www.hubwiz.com/course/?type=nodes
    wizardforcel
        43
    wizardforcel  
       2016-01-17 10:26:30 +08:00 via Android
    @donglingyongadls

    我没有上纲上线。《深入浅出 node.js 》就是讲 v8 底层运行机制的书。 promise 之类的架构问题,应该去读《 effective javascript 》。
    IamMM
        44
    IamMM  
       2018-12-02 06:31:43 +08:00
    深入浅出 node.js 面试用的 自己玩 geek 看这个干嘛 去慕课网刷一下 node 教程
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1011 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 20:44 · PVG 04:44 · LAX 13:44 · JFK 16:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.