C语言 教学实践建议
这是2016年秋季学期和北京工业大学耿丹学院合作教学的计划。
2016级有四个班,每班大约 32 人,每班配有一个有一定实际工作经验的助教,配合老师把课教好。
C语言是一门基础课, 是耿丹学院新生的第一门专业课,(为何第一门课安排C 语言?这个超出了本文的讨论范围)本文的主题是 - 谈谈有工业界经验的助教能给这门课带来什么新东西呢?下面是一些我们要在这个学期实现的想法:
- 通过实践掌握C语言,C语言有很多强大的功能 (例如指针),但是我们了解很多学校出于种种原因,C语言不讲指针, 或者讲了但是没有练习。在这种情况下,学生学的不是C, 而是 C--。 助教应该能帮助学生掌握重要的功能,让学生知其然,并且知其所以然。
- 养成良好的编程风格,变量名还是a, a1,a2?为何不能在一开始就养成良好的风格?
- 学会使用现代工具:
开发集成环境 (IDE), 基本的源代码管理,基本的代码复审(windiff) 流程
- 学会合作
结对编程 (建议前面三次作业都是结对编程完成),最后较难的作业也可以考虑结对编程
- 学会总结、分享
每周都要写技术博客。技术博客可以总结自己在技术上的心得,心得少也要写。必须填写的一个内容是:自己技术方面的进度条。
| 周/日期 | 这周所花的时间 | 代码行数 | 学到的知识点简介 | 目前比较迷惑的问题 |
| 9/5 - 9/12 | <学生填写> | ... | ... | ... |
| 9/13 - 9/20 |
(可选)学生还可以画出每周累计学习时间和累计代码行数的二维坐标图。
对助教的要求:
① 维护一个学生的成绩单 (请看别的助教的成绩单, 成绩单2),每周更新。
每次作业 (包括进度条)满分10 分,迟交作业 0 分,一周以后仍然没有交作业,倒扣 10 分,发现抄袭,一律倒扣10分。
学生的作业成绩映射到 [50.. 100] 区间, 就是学生的平时总成绩。
学生有做附加作业的机会,附加作业满分10分。
② 点评学生的作业,博客,每个作业和博客必须有至少一条评语,持续鼓励学生,培养他们对编程的兴趣。
③ 做好学生结对编程的分组工作
每周进度:
第一周:
同学
建立博客园的博客,申请 coding.net 账号。
在博客园找到自己的助教和老师,并在助教的博客下面留言,加”关注“, 建立联系。
每个人发一个博客随笔,介绍一下自己。
同学和自己的结对伙伴认识并共同写第一个作业,建议是简单的输出 “Hello World"的程序,写完作业后,每个人各自把写作业的过程发表在博客的一个新随笔上, 并把程序签入 coding.net。
助教
建立所有学生的列表,点评学生作业,发布所有同学的成绩。(在同学作业截至后两天)
助教可以组织qq群,微信群等,和学生加强联系
助教的博客:
http://www.cnblogs.com/dongfengweixiao DHY 老师
https://www.cnblogs.com/wuzhe/ 吉吉老师
https://www.cnblogs.com/shanlizi/ 善老师
https://www.cnblogs.com/toughever/ ToughEver 老师
还有热心的编外助教:
http://www.cnblogs.com/douzujun
很多同学写刚开始 C 语言程序的时候出现很多莫名其妙的错误,然后就跑来问老师,下面是一个解决问题的步骤:
当出问题的时候,请弄清状态,再问别人:
① 出错信息是啥?
② 你把你的程序简化 (例如只有一个语句,或者回到上一次正确的状态),然后每往前走一步,就检查一下,在哪一步出的问题?
③ 复习一下知识, 例如,每个语句后面都应有分号 (;)你的语句有么?
如何评价老师和助教的工作呢? 有很多因素可以考虑, 从老师和助教的教学效果来看,最后学生要回答:
你推荐这个老师给你将来的学弟学妹么?
你推荐这个助教给你将来的学弟学妹么?
回答一个数字 (1: 非常不推荐; 2: 不推荐; 3:一般; 4:可以; 5: 极力推荐)
C语言 教学实践建议的更多相关文章
- 第二章 C语言编程实践
上章回顾 宏定义特点和注意细节 条件编译特点和主要用处 文件包含的路径查询规则 C语言扩展宏定义的用法 第二章 第二章 C语言编程实践 C语言编程实践 预习检查 异或的运算符是什么 宏定义最主要的特点 ...
- yarn快速使用及实践建议
什么是 yarn? 简单来说,yarn 是一个与 npm 功能相同的工具,用于前端项目的依赖管理.在使用 npm 的项目中,使用 npm 命令的地方都可以使用 yran 来代替. 为什么要使用 yar ...
- MaxCompute 构建企业云数据仓库CDW的最佳实践建议
在本文中阿里云资深产品专家云郎分享了基于阿里云 MaxCompute 构建企业云数据仓库CDW的最佳实践建议. 本文内容根据演讲视频以及PPT整理而成. 大家下午好,我是云郎,之前在甲骨文做企业架构师 ...
- http://i.youku.com/u/UMzQ3NjQ0MDAw C语言教学 觅风
http://i.youku.com/u/UMzQ3NjQ0MDAw C语言教学 觅风
- 高德渲染网关Go语言重构实践
1.导读 高德启动Go业务建设已经有段时间了,主要包含Go应用落地,Go中间件建设,云原生三个部分.经过持续的发力,在这些方面取得了不错的进展.高德Go业务落地过程是如何实现的,遇到过哪些问题,如何 ...
- 2017级C语言教学总结
一个学期下来,对于这门课教学还是感受挺多,多个教学平台辅助,确实和我前10年的教学方式区别很多,也辛苦很多. 一.课堂教学方面 1.课堂派预习作业 主要借助课堂派平台,每次课前发布预习作业.而预习作业 ...
- Gitlab仓库规范实践建议
记录一下Gitlab仓库实践信息: 仓库是指一个可以git clone的地址,用于存储某个服务,模块,子系统或某类辅助代码的地方 仓库的visibility level一般设置为Private(访问需 ...
- Go语言设计模式实践:迭代器(Iterator)
关于本系列 决定开个新坑. 这个系列首先是关于Go语言实践的.在项目中实际使用Go语言也有段时间了,一个体会就是不论是官方文档.图书还是网络资料,关于Go语言惯用法(idiom)的介绍都比较少,基本只 ...
- Go语言设计模式实践:组合(Composite)
关于本系列 这个系列首先是关于Go语言实践的.在项目中实际使用Go语言也有段时间了,一个体会就是不论是官方文档.图书还是网络资料,关于Go语言惯用法(idiom)的介绍都比较少,基本只能靠看标准库源代 ...
随机推荐
- jsp添加背景音乐
在<head></head>间假如标签<embed src="文件地址" loop="11" autostar="tru ...
- Temporary-Post-Used-For-Style-Detection-Title-16761156
Temporary-Post-Used-For-Style-Detection-Content-16761156 =-=-=-=-=Powered by Blogilo
- WCF部署于IIS使用的几个问题总结
Q:wcf 远程服务器返回错误: (405) 不允许的方法. A: new SqlServerOperateClient("BasicHttpBinding_ISqlServerOperat ...
- servlet简单用法和配置示例及说明
学习原因和目的: 我如今所接触的项目都是bs模式的web应用,而里边基本上都是用的spring MVC和前台交互,servlet貌似用的很少. 但是即便是用spring和spring MVC, ...
- PHP手机,邮箱正则匹配
/*此处用于验证手机*/ $phone_preg = '/^1[3|4|5|7|8]\d{9}$/'; $email_preg = '/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+) ...
- 【学】AngularJS日记(1) - 常用工具
angular.isArray(a) 判断a是否为数组 angular.isDate 是否为时间对象 angular.isDefined 判断元素是否存在 angular.isUndefined an ...
- javascript基础部分
javascript基础部分 1 数据类型: 基础数据类型(通过typeof来检测):Number,string,undefined,null,boolean,function typeof只能检测 ...
- Oracle 记录插入时“Invalid parameter binding ”错误
出现这种错误的原因可能有一下几种: 由于OracleParameter[] parameters:中parameters的个数和对应的插入SQL语句中的冒号个数不等: 参数个数和冒号个数相等,但是如下 ...
- Nexus3.0.0+Maven的使用(三)
这章主要讲怎么和Maven做集成,集成的方式主要分以下种情况:代理中央仓库.Snapshot包的管理.Release包的管理.第三方Jar上传到Nexus上 1 代理中央仓库 只要在PMO文件中配置 ...
- deep learning 练习1 线性回归练习
线性回归练习 跟着Andrew Ng做做练习:http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLear ...