经过两周的培训,以及大家的努力,每个人的成长都非常的快。零基础的同学也已开始对HTML、CSS以及JavaScript有了比较形象的认识,开始建立起了编程思维,可以开始独自编写页面代码了。
这两周的课程进度比我原先预计的要快得多,我也在不断的对课程的结构做了一些优化调整。原先打算将前端和后端的内容先独立分开来讲的,但是在讲课的过程中,发现穿插在一起讲能更好的让同学们理解前端和后端的异同和各自的职责,以及相互间的关系等,可以更好的建立软件开发的大局观,从更高的角度来认识编程。然后,尽量让同学们在了解某个具体技术知识点的同时,也让他们了解这些技术在整个软件开发和部署的体系中所处的角色和位置。
这段时间里,我们从HTML、CSS、JavaScript的基础讲起,尤其以JavaScript作为核心课程,反复循环讲解和练习JavaScript的知识点,把最重要的东西完全搞明白,力图做到:
不要写一行你自己都没理解的代码
除了这些基础知识,我们也开始引入介绍一些以后需要用到的内容,比如:Nginx、MongoDB的基本用法,微信小程序和网页应用开发的技术关联性,HTTP协议中几个重要方法(GET,POST,PUT,DELETE)的基本概念,Cookie、Request、Response、Session的概念,以及如Express/Koa/Egg框架的中间件机制的概念和原理等等。我也不指望大家在学习短短两周的时候内就掌握这些东西,而是慢慢将这些概念引入课程中来,经过一段时间的耳濡目染,到真正学习这些内容的时候,不至于太陌生。
在讲解基础知识的同时,我们也非常注重将这些基础知识通过做一些实际的demo程序来进行联系和巩固,下面这些是我们最近的实训例子:一个计算器程序,一个模拟打地鼠游戏,另外一个是参考“芝麻信用”的页面自己写一个页面出来。
通过开发这些demo程序,同学们对HTML和CSS在搭建界面方面的使用,以及使用DOM事件进行对用户交互的处理,都有了一个更加形象的认识。
在讲课的过程中,我觉得自己也得到了非常大的成长,比如当同学们遇到比较难理解的知识点,我会想方设法、不断的组织自己的语言、编制各种容易理解的例子,让自己能将它们解释清楚;以及在课程内容上,我会不断的去思考如何将前一天课和后一天课的内容更好的衔接起来;另外,在实时问答、实时编写代码解答问题方面,我也慢慢的更加得心应手了。
总之,这次的培训对我和参与的同学们来说应该都是挺有收获的。我们的课程还将继续下去,我们也将继续成长。