当前位置:首页 > 每日看点

80% 的学校还在给新生上 C 语言,是它们 OUT 了吗?

卡卷网2年前 (2024-12-02)每日看点309

你们的谭浩强都都都都学错了,我有一计!

建议第一节课教翻墙、如何在github中搜索、注册一个github账号、git使用(建议先用一个好的GUI,比如GitKraken,SSH挺劝退的)、clone、fork、分支、提交、mr流程,cherrypick、submodule

第二节课教编译原理,比如什么是什么是可执行文件、动态库静态库、编译、链接(简单介绍有印象即可,具体内容编译原理课会讲的)

第三节课教cmake,如何从一个.cpp生成一个控制台可执行文件(这个有点太实践了,但真的很有用,而且就几句话)

注意,在这之前学生只需要拉下老师提供的代码,是不需要自己写的

第四节课学习C++的基础概念,输入输出流、基本数据结构、数组,让学生输出一个 0(我感觉hello world作为一个字符串或者字符数组,对新手有些难以理解了)

第五节课学习C++的if else for switch break return等关键词,让学生循环输出0~9

第六节课学习std容器和相关接口的使用、字符串,让学生输出一个"Hello World!",并用std::vector循环输出0~9(这部分有概念即可,后面数据结构会细讲)

第七节课学习指针、引用(非常毒瘤,但还是建议教,因为后面面向对象的实现需要了解指针的概念)

第八节课学习面向对象,建议讲为什么要有面向对象、怎么实现面向对象(指针、虚表)、C++这套跟其他语言的缺点(我感觉用C++教面向对象就很抽象,C#绝对更适合)

第九节课继续学习面向对象,封装继承多态,构造析构函数的执行顺序,然后提一嘴其实面型对象并不是最好的,还有面向数据、函数式、模板式编程(我感觉泛型不是新生该学的东西)

第十节课学习智能指针,内存分配销毁、内存泄漏、引用计数,用智能指针替代之前创建的指针(智能指针可以说是现代C++最重要的东西之一了,野指针乱飞也太毒瘤了)

第十一节课继续cmake,教如何将clone下的代码构建为库(仅限cmake库),链接到项目中,便于学生后续自学

感觉到这里C++大部分概念就都学完了,考虑到大部分学习一个学期在二十周左右,去掉军训和考试月,十二节课属于比较合理的分配

最后一节课向学生介绍C++的处境,C++20/23/26在搞什么,module到底能不能推进下去

讲一下C++的主要应用场景,比如ACM竞赛、Win32客户端、图形渲染、游戏开发、嵌入式

再描述一下其他语言比如前端的JS/TS,安卓的Java/Kotlin,各种服务器后端,苟延残喘的客户端框架和风头正起的Electron,脚本语言Python以及其在AI的地位,Rust的兴起和其对C++的挑战,芯片研发设计使用的Verilog语言,等等

最后讲中国的计算机、互联网发展现状、就业形势、政策倾向,鼓励学生自己思考选择未来的发展方向,鼓励自学,鼓励外出实习,最后完成一次完美的编程启蒙(如果学校有华为赞助,此时可以介绍一下华为被制裁后的努力与成就,然后给一个刷题清单和华为机考链接)

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/2497.html

分享给朋友:

相关文章

国内比较好用的快速开发平台有哪些?

国内比较好用的快速开发平台有哪些?

低代码/零代码 快速开发平台,一直是近年来很热的一个词,各大巨头的纷纷加入也给这个赛道。题主需要一个能二次开发的低代码快速开发平台,可以试试JVS低代码(私有化)。 JVS低代码前端采用Vuex框架和Element-ui组件库,后端则基于S…

为何 Linus 一个人就能写出这么强的系统,中国却做不出来?

为何 Linus 一个人就能写出这么强的系统,中国却做不出来?

我给你举个真实的例子。。 有一个人叫高伟东,在哈尔滨工作。在2012年做了一个APP。使用词根词缀背单词。名字叫: 词根词缀词典这个人编辑了2300余条词根,给10万多条单词建立了词根索引,整理了50多万条的单词记忆方法,包括新版本的诸多新…

Redmi 为什么可以把性价比做得那么高?

一位修手机的老大哥曾经跟我说过,红米1那个手机,除了处理器还凑活,其余零部件,就是市面上山寨机那种。 其实红米性价比并不算极致,而且一直都有竞争者,从原来的群魔乱舞,到后来的荣耀,魅蓝,一加,再到现在的IQOO和realme。 红米的方法也…

WordPress建站同时面向B端和C端,有什么好的解决方案?

这个很容易实现呀,只不过需要自己开发,整体用权限管理就可以实现了,B端和C端是不同用户权限,C端能看到的菜单入口和B端不一样就行了。技术层面实现没问题的,只不过就是看你们的技术能力和投入了 ,这样的需求应该没有现成的开源插件。只能找人定制开…

为什么有人觉得华为mate60只值2000?

为什么有人觉得华为mate60只值2000?

你以为买Mate60的人真的傻?真的那么爱国? 国庆前,我家那傻子加价800多买了一台Mate60,当时还被我骂他是傻子。 可是他说一回到公司就被老板同事朋友看到,拿去反复查看,都在惊叹他这么快就买到新机。 跟亲戚朋友聚会,别人一看就知道他…

鸿蒙到底是不是安卓套壳?

鸿蒙到底是不是安卓套壳?

把它是不是套壳先放在一边吧。我讲一个事情,大家自己判断。 华为有一个应用,叫手机管家。这个手机管家对一些 系统底层设置有影响:比如华为从 EMUI 9 开始不允许将第三方启动器设置为默认启动器,依靠的就是这个手机管家。为什么这么说呢?在网上…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。