Chat Idea:扫雷网页版实战

最近最常玩的游戏是扫雷。年纪大了,干什么时候都先考虑成本,游戏也是如此。扫雷的成本最低,倒不是说购买成本,而是启动、游戏、退出之类的成本。

可惜的是,经典版扫雷已经从 Windows 10 里移除了,现在只能通过 Windows 应用商店装一个很复杂的扫雷游戏,花样多了很多,却并不好玩。所以我现在多半玩网页版。

玩着玩着,出于程序员的本能,我就开始考虑如何写这个游戏,逻辑不算复杂,功能点也不多,好像蛮适合做成“实战派”教程的,比如用 Grid 写界面,项目结构就用 Vue CLI 3 吧,然后部署的话前端纯静态就够了。

那么就愉快的决定了吧,把这个项目做出来,把中间需要的知识,用到的技能、工具,可能会遭遇的问题记下来分享出来,写成一篇文章,分享出去。读完整篇文章,你将学会:

  1. 使用 Vue CLI 3 搭建项目
  2. 使用 CSS Flex + Grid 完成页面布局
  3. 扫雷游戏的逻辑
  4. 使用 Vue 完成游戏逻辑
  5. 记录成绩
  6. 部署和分享

目标读者:

  1. 初级开发者,能看到一个项目的成型
  2. 希望了解现代化前端框架、工具链

第三次直播总结,兼谈技术教学

前几天完成了第三场直播:《Web 永恒不变的主题:布局——Box,Flex,Grid》。这次人数比第二次又下降了,让我不禁有点气馁。不过,总结总结继续上吧。

前几天完成了第三场直播:《Web 永恒不变的主题:布局——Box,Flex,Grid》,这里总结一下。

坦率的说,第二场直播给我造成了一些错觉。因为第二场直播比第一场多了十个人,差不多1/3,让我以为自己取得了不小的进步,甚至上一次总结的时候还信心满满。然而,这一场观众数又给我干了回来,甚至还不如第一次。感觉尚未稳固的信心又失去了……

尤其是,第二场开播之前,有将近40个人加入我开辟的答疑群,这个人数几乎和购买课程的人数相等。但是第三场,前后只有不到10个人加了进来。我只能自我安慰,告诉自己,很多人之前已经加入了……

从准备的充分程度来说,第二场 Promise 的 N 种用法,应该是最充分的。但是从技术的实用角度来看,第三场 CSS 布局应该也不差。而且理论上,CSS布局更基础,来听的人应该更多才是——我只能认为,Promise 解决的异步回调问题,比 Grid 解决的复杂网格布局,更重要,更有价值,

希望下一场会好一点吧!

接下来谈两点想法。

干货

从选题开始,我就不想讲什么个人发展,或者前端技术展望之类的。我不是说这个主题不好,我只是觉得这个对听众来说用处不大。如果听众是一个自我驱动非常强、喜欢技术、喜欢开发的人,我相信他应该很容易找到类似的信息,清楚自己的前进方向;相反,如果用户还比较迷茫,只是试探性的踏入这个领域,听了意义不大。

因为,之后真正的学习,会耗费大量的时间,这个时候就不是听听故事便足够了,而是需要个人反复练习。另一方面,每个人的情况不一样,想要制定合适自己的学习计划,恐怕只有一对一的交流,才能产生真正的价值。

总而言之,我决定只讲干货,也就是用户听了,他就会了,按照我讲的思路,12345,上手就能干活。我认为如此一来,多学多练,构建起自己的技术体系,比听别人的故事收益更大。至少,我当年就是这么学的。

但是就结果来看,我的课卖的并不好。我觉得跟我自身品牌有很大关系,还是要继续积累。上次课讲完,有个同学找到我,说觉得我的课更干货,鼓励我坚持下去。其实这个时候听到这样子的鼓励,心里还是挺暖的。

道 & 术

上次直播到问答时间,立刻就有同学提问一个我认为我已经说清楚的问题,或者说,我PPT里明确讲到的问题。对此我也进行了反思。

我当然不会认为是同学没有认真听讲,大家都是花钱来的。反省之后,我认为,在讲述的过程当中,我想传达的是“道”,也就是所以然;但是很多同学,因为经验问题,因为视野问题,他可能只想听“术”,也就是然。

从备课的角度来说,我一定要做到逻辑自洽,不仅要讲明其然,还要讲明其所以然。所以在实践过程中,我可能更关注的是讲明其所以然,也就是原理,回归到规范、定义、浏览器实现等更基础的地方;但是听众想知道的很可能是具体操作。比如布局,我会讲,外层元素没有被浮动的子元素撑开,是因为外层元素没有触发独立的 BFC,然后 BFC 是 XXOO,所以你这个时候要想办法触发它的 BFC;但是听众其实更关心“高度塌陷”怎么解决?浮动怎么清?BFC 什么的一下听不懂就整体忽略掉了。

这是我日后需要注意的地方:减少掉书袋,讲好What How Why。


最后给下一场打个广告。

写 CSS 也要开脑洞:万能的 :checked + label 将于4月27日,下周四,晚上8点直播。这场课程,是既有基础,又有进阶的中级课程。相信会对大家有所启发,欢迎大家光临。