[思客教学] JavaScript 黑魔法训练营

2016 年 3 月 22 日
 hayeah

报名发邮件: howard@sike.io

对很多程序员来说, JavaScript 常常是个 “顺带一学” 的语言。前端页面有需求那就学点 jQuery ,闭包原型链什么的也不需要去深入研究,反正能加上效果就完事。

但到了今天, JavaScript 已经不仅仅是拿来绑定按钮事件而已。它的使用场景越来越广,各大框架覆盖了前端,后端,移动端的开发需求。框架和应用的复杂度已经大幅度超越以往,对 JavaScript 开发者有了更高的技术要求。

这次的训练营,我们会一起来熟悉和练习 JavaScript 的核心概念,为之后学习 NodeJSReact(或者其他框架)打下基础。

学习目标

JavaScript 是个奇葩的语言,虽然它表面看上去像 C ,但骨子里其实继承了两个伟大的编程语言的 DNA

如果能灵活应用闭包原型链双板斧,JavaScript 在你手里会成为一个特别强大的语言。

实战练习

在这个训练营,你会自己动手实现两个小项目。

用闭包来实现 underscore/lodash 的工具函数。

用原型链为 JavaScript 加上传统 OOP 继承。

除了语言本身,我们也会学习 JavaScript 工程师常用的工具和开发流程:

教学模式

我当客户,你当远程工作者来满足项目需求。训练的每一天我都会提交功能需求由你来完成,通过实战来掌握知识和技能。同时我作为你的导师,会在你学习的过程中给予必要的帮助,比如发给你博文和文档学习代码实现的相关知识,解答问题以及提供一对一辅导。

训练营采用小班教学,你的小伙伴们会在和你一同学习的过程中给你提供帮助,同时来自他们的 Peer Pressure 会督促你保持学习的劲头。我会强迫你写代码,以实战加快对技术的熟练度。

适合我吗

和其他 IT 教学有什么不一样

自学才是最好的学习方式。这个训练营只是提供一个方向,掉坑了帮你更快的爬出来。

只要你有动力学习,我就愿意花时间教你。

如果有需要,你也可以约时间跟我做远端结对编程 (使用 Teamviewer 桌面分享)。

学费多少

在职 149/人,学生 99/人

如果你觉得课程不合适,可以在开课 2 天内无条件退款。

怎么报名?

发邮件给我:howard@sike.io

名额限制 20 名。 报名时请回答以下的问题:

2 天内会回复。假如没有收到回复邮件可能是邮箱问题。

本期导师

教头: Howard

台湾同胞一枚。小时候随家人移民加拿大。

大学的时候第一次接触 Rails ,那时它刚发布 1.0 版本。大学读一半跑去一家 YCombinator 的公司做 Rails 开发。后来又去了一家叫 Versapay 加拿大做支付的公司,在那里当 tech lead 。后来做了一整子远程工作者,边旅行边赚钱。写了篇有关这个经历的博文 From The Office to Travelling The World,那一年第一次到天朝。

2012 年觉得生活太安逸,决定来中国发 zuo 展 si ,难度瞬间提升为 Hard 。一开始在深圳,后来去了成都待了一年。目前带着妹子旅居大理,逃离雾霾。

教头:利嘉豪

几乎什广东人一枚。

高中的时候机缘巧合因为参加机器人世界杯 (Robocup) 入了工程学的坑,后来去了伯克利加州大学读 MechE 和 EECS 。大一开始混迹于多个硅谷的创业公司,从实习生混到 Chief Engineer ,大三辍学回国创业。

在广州创立了东西科技,折腾了一堆各种各样的软件硬件项目。业余时间又不堪寂寞地发起了广州创客马拉松 和 Hack4GZ 。

直接联系

报名发邮件: howard@sike.io

微信: hayeah666

电话: 186 8269 6795

7247 次点击
所在节点    程序员
44 条回复
DingSoung
2016 年 3 月 22 日
哈哈哈 前年跟着一起学过 Sketch
charlie21
2016 年 3 月 22 日
《学习目标》 里那个链接里面的题 很有意思 ....
http://javascript-puzzlers.herokuapp.com/
mrwiredancer
2016 年 3 月 22 日
@chimingphang 针对语言, 框架....的战争在程序员圈子不是常态了么
hayeah
2016 年 3 月 22 日
@chimingphang 很多人对 JS 的看法都会被自己 “本行” 所影响吧?比如平时写 Ruby , 写 JavaScript 就会觉得 string , array 类型功能太少,然后自己去给这些基本类做 monkey patching 。

但 JavaScript 自己本身其实很棒,尤其用上了 ES6 和模块后语言本身常被吐槽的糟点也都没了。比如:

+ 用 let/const 不要 用 var
+ 用 === 做比较
+ 用 => 代替 function

默认这样写 JS 能避免常见误区。个人觉得在真实项目里 JS 奇奇怪怪的行为很少会是问题。

原生 ES3 写起来很烦人,但今天也只有 “随便学学” 的人才会写 ES3 吧哈哈~

我自己的项目现在都是 ES6+类型验证 ( TypeScript )写起来感觉非常棒!

(顺带一说,“随便学学” 也不是要黑人,我以前是写 Ruby 然后随便学学好多年 JS )
sox
2016 年 3 月 22 日
@hayeah 我男神说的都对
blanu
2016 年 3 月 22 日
看上去要求好像还是有点高的?。。
chimingphang
2016 年 3 月 22 日
@hayeah 我已报名了,看邮箱
bramblex
2016 年 3 月 22 日
@hayeah

你说的是这种箭头函数?我只能说,真心塞……看看我全部写成箭头函数妥不妥啊?
http://lovearia.me/article/show/5#%E5%8F%82%E8%80%83%E4%BB%A3%E7%A0%81
hayeah
2016 年 3 月 22 日
@bramblex

看到这段我也是醉了,哈哈:

const Z = (g) => (v) => g (Z (g)) (v);

好像在看 haskell ,需要自行脑补括弧 orz
hayeah
2016 年 3 月 22 日
@blanu 会吗。。。这个课程几乎是 0 基础吧?
cyio
2016 年 3 月 22 日
已邮件,价格很亲民。
bramblex
2016 年 3 月 22 日
@hayeah

如果是 Haskell 我就不会写得那么蛋疼了……

我是先写了 Haskell 版的代码再翻译到 js 的
menc
2016 年 3 月 22 日
@bramblex 给编程零基础的人介绍弱类型语言,就是在害他,不服来辩
swirling
2016 年 3 月 22 日
@bramblex 哈哈哈哈哈哈哈,竟然是 pureScript 党,好强。 本来还想安利 Ramada 的。
blanu
2016 年 3 月 22 日
@hayeah github 主页什么的有是有,什么东西都没放啊。解决过最难的技术问题。。。 linux 算么- -。
bramblex
2016 年 3 月 22 日
@menc

不值得一辩。我都跟新手教上 Haskell 了,你爱玩啥玩啥去
bramblex
2016 年 3 月 22 日
@swirling

写了 PureScript 就再也写不下去 JavaScript 了……
mrwiredancer
2016 年 3 月 22 日
@blanu 就按你自己想法写就好, 主要是让我们更好地了解报名的同学而已
aivier
2016 年 3 月 22 日
@bramblex 你的 const 用的简直不可思议,人肉混淆机?
bramblex
2016 年 3 月 22 日
@aivier
只是单纯用纯函数式的写法来写 js 而已。不过还是挺忧伤的……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/265337

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX