面向对象技术(谢兴生) 2024春 2023春 2022秋 2021秋 2020秋 2019秋  课程号:01021601
2024春 2023春 2022秋 2021秋 2020秋 2019秋  课程号:01021601
4.3(10人评价)
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:一般
选课类别:计划内与自由选修 教学类型:理论实验课
课程类别:本科计划内课程 开课单位:自动化系
课程层次:专业选修   学分:2.5
课程主页:暂无(如果你知道,劳烦告诉我们!)
AI 总结 AI 总结为根据点评内容自动生成,仅供参考

教学水平与课程内容

谢兴生老师的《面向对象技术》课程内容相对陈旧,强调使用FLTK等较老的GUI库,缺乏现代C++和主流GUI库的应用,使得课程内容显得过时(如多个点评所言,课程停留在十几年前的水平)。教学细节不够完善,很多实验要求和课程内容以口述形式传达,导致学生难以抓住重点,课程缺乏系统性。如有同学所述,“课程讲的比较残缺,C++面向对象的特性讲的比较少,大篇幅来讲GUI”。课上教授内容存在一定错误,如有学生发现PPT内容与实际操作结果不符。

实验与作业

实验和作业主要集中在GUI程序的开发,但实验指导不够详细,许多学生反映实验任务含糊不清,容易陷入困惑。例如,第三次实验的环境配置复杂且bug较多,耗费了学生大量时间。有实验任务如“融合应用 GUI接口库及 FLTK 绘图支持库的图形化开发环境构建”更是抽象到让学生不知所措。实验报告撰写要求也较高但内容不明,有学生表示难以理解这些抽象内容该如何报告。课程的大作业要求很多,需要写10页以上的论文报告,显得舍本逐末。

考试与给分

考试难度较大,半开卷考试题目多涉及书本及PPT上的内容,且考察具体代码实现和概念的辨析,形式较为古板。据多个点评反应,考题涉及到类似回调函数、异常处理等基础概念拼写等,部分题目如模板别名问题选择有些生僻。尽管如此,部分学生反映只要考前认真复习PPT内容,考试并不算太困难,但对编程基础薄弱的同学影响较大,总体给分较一般,有学生表示被“卡3.7”。

总体评价

总体而言,该课程和老师的教学水平让不少学生失望。课程内容陈旧、实验要求模糊且难度不均、考试题目设计不尽合理,严重影响了学生的学习体验。对于有一定C++基础且只想水学分的大四学生来说,这门课较为合适,但若希望扎实学习C++编程技术的同学则不推荐选修。综合来看,“大四可以选,其他的都别选”是学生普遍的建议。

排序 学期

评分 评分 10条点评

小咸鱼干 2024春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:简单
  • 作业:很少
  • 给分:一般
  • 收获:一般

真的破防了,这实验三环境配置一堆bug,也没详细的说明,代码没写几行,时间全浪费在配置环境上了,不知道有什么意义,真不如自己看书自己写代码


另外,我不知道GUI接口库里的头文件都包含的fltk.h在哪,找了半天也没找到,最后在github上找了一个,真的笑了,不知道群里的word文档是怎么做到没有这个文件还能成功运行的。


引用应该是一种指针常量吧。。。。


这是我第一次在评课社区评价,只能说这门课简直是我上过的最答辩的课,最致命的就是用的都是十几年前的东西,导致有问题你根本无从求助,体验上甚至不如量子物理。并且这门课的细节非常粗糙,主要体现在实验要求上,很多时候没有具体化要做什么,报告要写什么,让人摸不着头脑,我觉得主要是老师没有说明白。总的来说在这门课上感受不到认真的态度,体验很差,我的评价是大四可以选,其他的都别选,作为水课这门课还是非常合格的,上上下下充满了摆烂的气氛。


考完了,只能说甚至所有的实验一行代码都不用写,最后的大作业只用交一个毕业论文格式的报告,代码根本看都不会看,只要论文写的好就行(扶额苦笑),有点舍本逐末的意思,最后的考试很多都是PPT上的内容.总之非常不推荐选,大概只有两类人会喜欢这种课:有C++基础的和单纯水学分的大四老狗

(最后修改于 2 0 复制链接
Zanzara 2024春
  • 课程难度:中等
  • 作业多少:很多
  • 给分好坏:杀手
  • 收获大小:没有
  • 难度:中等
  • 作业:很多
  • 给分:杀手
  • 收获:没有

如果是大四人水学分可以来,其他情况一律建议快跑。更新:上这门课确实与持矢无异,没有特殊需求,请务必远离。以及不推荐该老师(谢兴生)的一切课程


本课程是自动化大三下的专业选修,选课人数不多,大概就 10-15 个,到课人数比较肯定明显少于选课人数。虽然名义上是不限优秀率,但看前辈的评课似乎是给分扣扣搜搜

课程难度不好评价,实验只能用抽象来评价,而无法用难度来衡量,助教也很摆,没有足够详细的说明。布置的任务大多没有公告或者纸质要求,全靠上课口述(老师声音很小也不清晰,还有可能前后不一致,参考下面关于大作业的部分)

老师水平看起来堪忧,看起来对 OS 和编译了解的也不太多。更新:从没见过水平这么低下的授课老师

第三周开始有纸质签到(放在教室最后面),自行前去签到,但不能签完到跑路,偶尔会点名回答

某次下课随机询问是否用过 Java,第二堂课就开始讲 Java-AOP 和 Spring 了,本班的班级成分应该几乎没有人用过 Java 的样子

第一次实验(两周):实现一个计算器,在课上直接开始讲编译的文法分析了233。本人直接拿上学期的编译实验套个壳交了,不太理解没学过编译和 OOP 真的能写出这玩意来吗?

第二次实验(两周):写两个程序,一个将文本文件转化为二进制,一个将二进制格式转化为文本。感觉实在是有点乐,似乎就是一个 "r+" 和一个 "wb+" 的应用而已。比起上次实验难度骤降
第三次实验:融合应用 gui 接口库及 FLTK 绘图支持库的图形化开发环境构建,及基于课本本部分章节配套源码的调试验证

第四次实验:基于C++ FLTK 设计/实现一个支持简单交互绘图小程序。要求:实现含标题条、菜单、工具条和绘图工作区的窗口界面。基本图形:直线、矩形、多边形、椭圆、文本。支持对已工作区中绘制的图形,选择、拖动、修改大小、删除操作。支持将当前工作区所有图形序列化存储到磁盘文件,以及将磁盘中的图形文件重载入工作区--编辑处理。

这实验越来越抽象了,抽象得恰到好处以至于我不知道要干什么。第三次实验看起来疑似只是搭环境但不写代码

全部实验都要写实验报告,乐,这种抽象东西不知道有什么报告好写的

老师上课表示最后两节课(14周)会下来一个一个检查过关 GUI 大作业,乐

12周周四结课,当天晚上布置了实验四,并首次清楚的描述出大作业的要求,14周周四上课时间考试。实验四的任务量属于是把大作业级别的任务出成实验了,然后布置一个更幽默的大作业。然后要在两周内完成这些东西并做好大抄准备考试,这个时间点还非常巧的有各科大作业ddl

考试半开卷,不知道能抄些什么
关于大作业:
我在某次下课去问了老师,得到的回答是:“要做一个GUI程序,然后按照论文格式写个报告”,并且我反复询问要写什么功能,得到的回答是 “不限,只要写一个就行”
第二周上课,“上次有同学来问我大作业,我已经说的很清楚了。” “把那个GUI库(指FLTK)当做是你自己写的,你把每个部分描述出来,按论文格式写出来”,要写10页

两周后:

更加迷惑了,不知道他是否把第四次实验报告和大作业混淆了。总之,这已经是第三次前后不一致了,不知道其精神状态是否正常。还有四天考试,盼望着那最后一口史,如同被轮兼焦急地等待最后一个人上场并发射结束一切一样


学期过半,只能说该课程非常不推荐选,示例代码 zip 解压开,很难相信能在 2024 年看到 borlandc ,vc2005 和来自 2009 年的上古代码,图形库也是寒武纪时期的 FLTK,起码用个 Qt 呢?

该课程几乎没有收获(不要污染知识库为宜),上课内容不如去菜鸟教程看几小时学的多,已经能想象到期末考试有多么背书了,估计能狠狠打击擅长编程但不擅长背诵奇怪概念的同学


晚上写大作业属实被气笑了,边写边笑,很难想象一门编程课能被上成文科课,这种大作业感觉应该给什么《编程语言之美》课布置才对


分享一下我的大抄(使用Typst编写),需要源码可以联系邮箱,评课社区不允许上传.typ文件

main.pdf


检查大作业,发现有一个哥们写了21页的正文😅

老师批改大作业,要求也蛮多的,参考文献要求15篇以上🤣我都不知道这个题目怎么水出15篇来。给后来者的建议:使用 GitHub 上 USTC TeX User Group 制作的 ustcthesis 模板,如果是 Typst 使用者,同样建议使用 ustc thesis typst 模板。这样能规避一切格式挑刺


出分了,给分一般

(最后修改于 2 1 复制链接
小咸鱼干难绷,还以为要看代码,结果看都不看,一行代码不写感觉也没问题
立即登录,说说你的看法
南柒有梦想 2023春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:简单
  • 作业:很少
  • 给分:一般
  • 收获:一般

我个人认为作为一门编程性质的课,主线是非常重要的,但是在这个课上没有体现出来。课程讲的比较残缺,C++面向对象的特性讲的比较少,大篇幅来讲GUI了(说实话现在有很多GUI优秀的库,但课程还停留在10多年前的FLTK,属实是课程比较落后的一个地方),学习编程应该跟紧时代,去学习好的代码习惯和编程思想才是最重要的。如果想比较系统的学习一遍C++建议看看b站上的视频(黑马程序员的视频就不错,但个人认为此过程仅能掌握C++的基本语法、面向对象基本特性和STL基本容器,要真的对C++有深的体会还是建议多敲代码,写几个大项目多体会)。另外也可以买一本好的C++书,多去看体会人家的代码书写习惯和思想。本人大一的时候学过C++,这门课也基本上没付出多少时间,目测老师给分还可以卷面估计80,总评90。

(最后修改于 1 0 复制链接
treesLee 2024春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:简单
  • 作业:很少
  • 给分:一般
  • 收获:一般

我只想问问老师为什么PPT里讲的的东西都是错的

例如reference的问题:

int a=1;

int& b=a;

int c=2;

b=c;//error

但是实际上会发生的是c的值给了a。。。

0 0 复制链接
  • 课程难度:简单
  • 作业多少:中等
  • 给分好坏:杀手
  • 收获大小:没有
  • 难度:简单
  • 作业:中等
  • 给分:杀手
  • 收获:没有

先说结论:大四学分不够的同学可以选着玩儿,大一到大三的想刷GPA的同学最好快跑。

本人自以为精通C++,于是抱着刷GPA的心态选了这门课。上课的确很水,甚至没有点名。实验量也尚可接受。结果期末考了许多书本上的具体实现(比如桌面计算器、GUI接口库),以及一些课本上的概念的辨析(比如什么是回调函数),甚至某个选择题的选项故意把“exception”拼错,似乎是想考单词拼写。其中一道10分的大题要求把一个“C风格的模板别名改成C++风格”,原本的代码大致是:

template<typename T>
struct Vec {
    typedef MyVec<T,MyAlloc<T>> Type;
};

//usage
Vec<T>::Type vec;

我完全不知道它想考什么(什么是C风格的模板别名?难道C有模板吗?),于是写了一个 C++ 11 的别名模板:

template<typename T>
using Vec<T> = MyVec<T,MyAlloc<T>>;

估计这里被扣了10分。

最后被卡3.7了(呜呜呜~)

0 1 复制链接
Maxwell被卡3.7是指89分嘛
立即登录,说说你的看法
Mathison 2021秋
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:中等
  • 作业:很少
  • 给分:一般
  • 收获:一般

本人大一低水平信竞生选了这课水学分。

这课基本就是一半C++,一半GUI,没啥难度。

考试半开卷,写代码的都很简单,剩下的大概45分是概念题,把PPT上的关键信息抄在纸上就行。

结课早,复习两周就考期末,基本不影响其他学科的期末复习。

上课的话老师划水,助教划水,学生划水。平时实验和大作业差不多是能跑就行(大作业超纲的部分我写不来就没写,一样通过)

最后总评92,中规中矩了。

0 0 复制链接
沙克萨加月 2021秋
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:没有
  • 难度:简单
  • 作业:很少
  • 给分:一般
  • 收获:没有

PPT从来没更新过实验都是用的十年前的版本

0 0 复制链接
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:没有
  • 难度:中等
  • 作业:中等
  • 给分:超好
  • 收获:没有

如果是抱着想学C++的目的,别选这个课,讲课比较烂,10周左右的实验,难度基本为0。

考试半开卷,考前b站3天速成了一下C++,最后成绩很高,因此推测给分很好。

0 0 复制链接
xxxx 2020秋
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:中等
  • 作业:中等
  • 给分:超好
  • 收获:一般

抱着学C++心态的不要选这么课,不是传统的教编程的课,课程内容缺少主线,比较残缺,到期末学不了什么

有实验(5-10次),偶尔会有课上签到

凑学分可以选,期末应该没有挂人

期末半开卷,卷子阴间,考了很多ppt上的复杂代码(现写基本写不出来那种)

0 0 复制链接

谢兴生

教师主页: 暂无

其他老师的「面向对象技术」课

王子磊 10.0 (1) 2018秋 2017秋...
未知 2007秋 2005秋...
杨坚 2011秋 2009秋...

谢兴生老师的其他课

高级数据库系统 10.0 (6) 2024秋 2023秋...
C++面向对象技术 10.0 (2) 2024秋 2023秋...
Linux系统管理与应用 6.5 (12) 2024春 2022夏...
计算机系统理解与应用 1.0 (1) 2015夏 2014夏
操作系统与数据库 3.5 (2) 2024秋 2023秋...
操作系统 2011秋 2010秋...
数据库基础 2011秋