zoukankan      html  css  js  c++  java
  • 给迷茫的你学习Node.js最好的方法

    这是真事儿,在3w咖啡整理书稿,然后小弟梁过来了,聊聊他的现状,一副很不好的样子,在天津我曾带过他大半年,总不能不管,我给他的建议是:“每天看10个npm模块”

    对于学习Node.js迷茫的人来说,这是最好的方式,当你不知道如何做的时候,就要向前(钱)看,你要知道积累哪些技能对以后有好处。对于学习Node.js必经之路,一定是要掌握很多模块用法,并从中汲取技巧、思路、设计思想的。与其不知道学什么,为什么不每天积累几个技巧呢?

    但这个是有争议的,朋友圈收集的反馈非常直接

    • 一天看10个?怎么个看法?
    • 每天看10个。。。工作不饱和啊
    • 看完能年薪百万不?
    • 你说的不对,不在多,在精
    • 您说的这个会用任意个包解决过小需求算会么?还是要阅读过文档才能算?

    下面我会一一作答

    一天看10个?怎么个看法?

    这里的10个其实只是个虚数,看个人能力和决心,量力而行即可。

    但请一定要能做到每日精进。

    Node.js模块在npm上的统计数据表明,截止到今天2017年9月24日,共有55.9万个模块。单日下载在1.5亿次。这么大规模的模块,每天学几个,水平一定会增长的非常快的。

    最难的不是下决心,而是坚持!这是最值得自豪的称赞,没有之一!

    每天看10个。。。工作不饱和啊

    想要成长又不吃苦,哪有这样的好事儿,编程没有捷径的。在我看了每天看10个并不多。

    至于说工作不饱和,我不认同。工作多少和有效工作是2个概念,很多人有效工作时间不足2小时…毫不夸张!你不能抽出时间学习,你知道你的时间都用到哪里了么?你真的会时间管理么?

    按照柳比歇夫的做法,记录一天看看,你自己到底在什么地方花费时间最多?按照我小弟的说法,基本上白天被中断的时候非常多,各种人来找他,这让他痛苦不堪。其实这事儿非常好解决,你就告诉它:“稍等,我现在在忙,等我5分钟,行不?”,别小看这样的一句话,它可以帮你挡掉80%的中断。

    他还说了一个例子,写完功能后,由于没有后台管理,需要他帮测试添加修改数据,基本上一周2天半做功能,另外2天半辅助造数据,我当时就火了,你是不是傻?写个管理后台的crud要多久?为什么要蠢到去手动改数据?明明是自己的方式不对,自己坑自己嘛!将一些重复的劳动消灭,不合理的劳动消灭,争取更多的时候用在写代码和学习上不好么?

    看完能年薪百万不?

    上面的图里也说了,一般正常工作的人掌握的可能连200个模块都没有,这是很实际的。毕竟大家的不会频繁的切换场景。所以很多人工作很久,还是不知道怎么写开源软件,1)不知道写啥,没思路 2)不会写,没写过。每次看到这样的人都很郁闷,真是可怜之人必有可恨之处啊。

    是的,大部分不具备接触更多场景想法的几乎。但是,接触面不够,你又怎么能够做出更好的选择呢?每次大家都说,合适的场景做合适的技术选型,这话基本等于废话,大部分根本不具备这样的能力。我举个例子,Node.js有2个知名的redis库,一个是redis,另一个是ioredis,我一般都是推荐ioredis的,作者是luin,前阿里巴巴工程师,现在是石墨技术负责人。对于ioredis的代码写的非常棒,无论是api设计,还是性能、测试、代码质量等都明显的高于redis库。甚至redis的人找luin要求合并一起基于ioredis写。如果连这么基本的选型的都做不了,只能说明你自己的无知。见得少,不具备区分的能力。而已。

    至于年薪百万,身边好多朋友早都到了。这些人大都思维敏捷,思路清晰,无论是在业务上创造价值,还是在架构上降低成本,都是能够把握全局,高屋建瓴,具有俯视视角的人。

    大局观好的人真心不多。那么怎么样能够拥有较好的大局观呢?其实还是要多思多看多总结。这不是虚话。第一次当首席被涨工资的时候,还是蛮有趣的。当时公司比较闲,我躲在老板的小办公室(小黑屋),整理了公司所有的产品,屡清楚它们之间的关系,并试图给出解决方案。当时cto刚来,找我聊天,我就给他讲了这些,于是就有机会按照自己的想法来做。

    大家都在混日子的时候,才是你的机会。如果真的你能够坚持1年,每天10个,1年至少学会3000个模块,好处是对这些模块更清楚,对node能够使用的场景更了解(大局观),对如何在合适的场景提供更好的选型有更好的理解,最重要的是有恒心,这样的人放在什么岗位都错不了的。年薪百万真的不是梦,但大家不相信的原因是,自己没有做到,也不愿意相信别人能做到。这其实就是成功的人与loser的差距吧。

    知名架构师史海峰开玩笑说:“1000元1一个”,算上也差不多,这年头会个express,工资上万也很多吧。

    你说的不对,不在多,在精

    你说我说的不对,但我却要说你说的对。确实是在精不在多。

    但是有一点你错了,上下文说的是当你迷茫的时候。你不知道要怎么学习,那就只能每日精进,别管学什么,只要对最后的目标有益即可。

    还要说一点就是,学习之初最好选小模块,避免上来就来大的难的,容易消化不良。而且对于自信心的打击是非常大的。

    您说的这个会用任意个包解决过小需求算会么?还是要阅读过文档才能算?

    学习当然是要越深越好啦。先会用,然后扒源码,扒套路(开源做法,测试,代码结构,编码规范,开源协作等等)。这个过程开始是无聊的,你会有很多东西都不会。这个时候最好的做法就是一次只多学1个,避免落入长尾陷阱。

    等到积累到一定程度的时候,你要适当的总结,大家的玩法哪些是类似的,哪些写法是特定场景的,从而能够理解作者的意图。甚至可以通过代码共享,和作者成为朋友。

    掌握了套路后,就是创造的过程了。这才是编程最有意思的开始。

    如何学习

    推荐一个repo即 https://github.com/parro-it/awesome-micro-npm-packages 小型库集合,一天看十个不是梦!

  • 相关阅读:
    eclipse中的Invalid text string (xxx).
    在jsp文件中出现Unknown tag (c:out)
    eclipse 界面复原
    ecilpse 纠错插件
    Multiple annotations found at this line:- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
    Port 8080 required by Tomcat v9.0 Server at localhost is already in use. The server may already be running in another process, or a system process may be using the port.
    调用第三方https接口
    调用第三方http接口
    创建带值枚举
    spring整合redis之Redis配置文件
  • 原文地址:https://www.cnblogs.com/dhsz/p/7686240.html
Copyright © 2011-2022 走看看