ICALC 计算机编程课简介
Scratch + Micro Python
Scratch作为少儿编程的启蒙语言,深受各国孩子的喜爱。安大略省已经正式通过教育改革,从一年级开始加入编程学习。ICALC的Scratch系列课程就是为低年级的孩子们度身定制的趣味编程课。
ICALC的课程侧重编程,授课内容揽括各类游戏、科学和技术。我们在每节课都会加入一个topic related to science or technology。比如,计算机的ports, USB, lockers and keys, Amazon warehouses, transformers等。精彩的课程具备STEAM的各个元素。
Scratch编程和工业编程很类似,包括variable, self-defined blocks with and without parameters (same as functions/methods), data structures such as List (same as list in python, etc.), 多向性以及沟通等。经过一年多的学习,我们的学生们不仅可以用程序写出诸多功能强大、逻辑复杂的趣味游戏,更能为学习其他的编程语言打下坚实的基础。
Python
Python是一种非常容易上手的编程语言,更是被工业界包括金融界,很多领域的data science,machine learning广泛使用。对未来升学、就业有很大帮助。ICALC设计的这整套系列课程,将讲授Python编程,数据的采集,分析,生成图形以及基础的Machine Learning的算法,适合不同程度的学生。
Python的入门班级学习编程基础,例如variable, data types, condition, loops, function definition, data structures。在学习过程中,老师会制作游戏,小apps各类gadgets帮助学生visualize程序的workflow。
进入中高班级,学生会开始学习Object oriented programming, data science相关的modules 的应用,包括numpy, pandas, scikit-learn,用这些modules可以做的projects就很多了,同时还用pygame module做比较大一些的projects。
值得一提的是,在每个学习的level,课程都加入一定份量的算法,用以锻炼和预备学生以后可能参加计算机比赛或者选择专业计算机的路线。
Unity C# Game Development
Unity Game Development是基于C#语言的专业项目和游戏开发平台。市场占有率世界第一。在此平台,学生们可以学习用C#编程来实现2D和3D游戏各个元素的互动,学习OPP编程核心,同时学习把做好的游戏移植到Android上,也将教学生开始使用GitHub,把自己的source code存档,建立个人编程档案,为孩子们将来报考大学或者工作早早建立个人profile。
本课将正面引导学生创造能力和求知欲,培养孩子STEAM的综合能力。这过程会使孩子们始终兴趣盎然地去探索和发现,在快乐的学习中掌握计算机语言C#。在学习Unity编程的过程中,同时学习物理等各科学学科理论。
3D Model Animation
3D动画师现在是非常“刚性”稀缺的人才,该领域一直以高专业性著称。目前在加拿大,3D animation项目刚被纳入到skills Canada(安省称skills Ontario)的范畴中的。
目前很多家庭和孩子在专业选择上充满了坎坷,在入学之前没有任何辅助和培养,以至于在一到两年的大学学习之后,发现对专业没兴趣或没天分,从而消沉。ICALC秉承“让孩子们看见自己未来的可能,让孩子们根据自己的兴趣和天赋选择通向未来的路”的理念口号,将正面引导学生创造能力和求知欲,让学业优秀的孩子更加优秀,让爱玩游戏的孩子不再被游戏捆绑,而是成为动画,技术,和知识的主人。课程的设计能让孩子顺利入门,而不被这门课的“高专业性”吓退,使孩子始终对其保有学习的热情。
Java Mobile App Development
这门课是面向高中学生(或者有一定的编程基础的学生)。学生将学习Java在安卓上开发的编程,课程也会学到Java的核心。学生将使用Android studio 编写些实用的app。需要学生每星期投入4-6小时的时间完成编程作业。在学期结束,也就是明年6月底,学生将学会,不仅开发并且能够将自己的app在Google play上上架。