为什么大学老师教编程上课都不敲代码?
其实大学计算机科学技术的老师，定位很尴尬。 一千个人有一千个代码的写法。 今年教的c++课程，跟去年教的一样。连续教了10年了。 后来我的if else 就这么打了 就这样10年过去了。我已经尝试了各种可能。可问题在于，学生们一年比一年强。学习c++的时间有可能提前到了初中。有的甚至拿到了竞赛奖牌。 有时候看到底下坐的有可能是编程大佬，段位可能比我还高。毕竟，如果是 吴恩达，轮子哥，曾博，陈立杰，楼天成他们的迷弟们，一个个初中就开始编程了。等到大学的时候，已经是项目带头人了。。 那可如何是好啊？于是索性，就不敲代码了，用我多年研发的行为树版代码生成器，按协议把条件和实例输入进去，然后点生成。有时候可能速度太快，学生们没看清楚，以为我没敲。。  所以说，错怪我的，请把赞给补上。   比如看，现场手写稿是这样的，直接给学生看，我觉得有点过不去。 经过处理后，配图，润色之后，就好很多了，更容易被学生们接受。 所以吧。有些学生看不起我。觉得我就会照本宣科。不断重复一个内容10年。c++98 到c++ 11确实有10多年不更新了。 可我也没闲着啊，我时间都用在了，如何更浅显易懂的教学上面了。比如当年，我用游戏自动寻路，叫学生数据结构和算法， 是不是看起来，就容易接受一些了呢 图形学版本的 然后呢，我也打算，让沉迷网游的学生，更容易接受c++，写了不少教案 为了让画面更动感，甚至加了点特技。 现在谁还在敲代码呢，基本上都是拖拽行为树节点。 把功能模块化，被行为树的action封装。 当然了，为了彻底让学生学会c和c++。我打算研究仙剑奇侠传1sdlapl源码。用c++17 重构一款出来。在娱乐中，教学，这样更容易让人接受。 这是在qt里面，重置了局部内容 ps： 既然大家这么开心，我就把一些新尝试再展示点，为了给学生们演示某些数据结构和算法，还贴近现实，我特意这么多了。 通过颜色来区分，还有边缘化处理 为了精确控制到点，特意弄了台超大显示器，配大图 将图形分块控制 算法局部行走路径 动图版本，这里就涉及到了广度优先和深度优先。 为了，那些苦于对算法和数据结构不太爱学的同学，我是真的不遗余力啊。  相比上面那些，我也为了帮助不喜欢英文编程的学生，帮他们想了一些出路。 等待区里面创建小格子。然后往替换区里拖拽，再往资源区里挂靠。开枝散叶。 两者联动，左图的方格，其实是右图拖拽过去的。根本就不用打字码  局部小图版本，为了让大家看到规模的庞大 项目的正常版本。14961 X 708这么大。点击放大都不行，下载下来用图片查看器才能够看到全貌。  然后呢，这样能干什么呢？这可不是一张张图片，而是可以运行的节点。可明可暗 可多可少，就看你的脑洞有多大了。 什么，脑洞不够？其实可以做游戏编辑器，比如 当然，想怎么来就怎么来了 看到这里，你还问，我为什么不敲代码吗？ 如果没有疑问了，请把赞补上吧。 手写了这么多代码太不容易了。  什么，还不满意，打个太极，总行了吧 什么，还不够，那搞个玄点的吧。“SFINAE 匹配失败并不是错误”这句话其实就是学习编程的核心。 经过几个月的深思熟虑之后觉得，之所以老师现在都不上课写代码，就是因为写代码是具体的战术思想，或者说叫做战术落地，这些事情的思考，一旦以可以运行的代码落地之后，就是完成了一套root到branch再到leaf的过程。而事实上，老师要做的是帮助学生分析到leaf就可以了，至于选择哪种leaf来战术落地，要由学生们去选择落地，root和branch都是战略。Leaf则是最终概念的落地哦。很多老师已经开始使用思维导图和卡片相结合，将复杂枯燥的书本内容，进行软件化交互:而切入的角度更多的是拆解思路，分解要求，这一点可以夜曲编程的实际案例教学相联系。拆解的思路,当然也就是分析需求。 图示1 卡片学习 通过概念卡片进行学习和记忆，再通过代码卡片进行概念的落地，，最后通过树形思维导图合二为一进而达到知行合一。 图示2 思维导图 其实现在只要通过关注「夜曲编程」，回复“免费教程”，来获取一份长达20天的试课，每天只需要20分钟，就可以体验这种新颖的教学方式。
敲代码 我们老师在阿里工作过，刚来的时候。给我们敲了一学期代码，虽然课程内容还挺简单。但是，他的敏捷开发习惯各种快捷键用起来行云流水，以及极快的敲代码速度，加上那及长的变量名，属实让我懵了几个星期。 每个变量如下： xxxxx_xxxx_xxxx_xxxx_xxx 每个变量那么长，用的又是Python，一行一个不同变量，可是费眼。 补充一下，我们老师是一边讲敏捷开发还不断重构代码，码代码的时候，再加上快捷键，咋一眼看的人眼花缭乱地。