基于Linux的C++

本课程旨在建立Linux环境下进行C++程序开发和系统编程时的正确思维和方法,构筑计算思维与实践能力之间的桥梁。

清华大学

分享

基于Linux的C++
  • 分类: 计算机
  • 平台: 学堂在线
  • 语言: 中文

课程简介

Linux操作系统开源的特性使得其获得越来越重要的地位,而Linux系统编程也向C++程序设计者提出了更高的要求。本课程由C/C++语言的共性与特性出发,在深入学习程序设计语言的基础上,进一步强调程序设计语言的适用性,并与Linux系统编程紧密结合,通过大力培养学习者的抽象思维能力和计算思维能力,将学习者对语言作为工具的基本认知转化为动手实践能力,完成从具象到抽象再到具象的思维能力转变。课程内容主要涵盖C++程序设计基本概念、数据组织与算法设计、程序组织、面向对象程序设计方法、泛型编程与模板库以及进程、线程、内存管理、设备驱动程序、网络等Linux系统编程核心主题。

常见问题

本课程使用什么教材?
无指定教材。大体上市面上任何一本C/C++的教材都可以参考。至于Linux系统编程部分,以Mark Mitchell、Jeffrey Oldham和Alex Samuel所著《Advanced Linux Programming》和Robert Love所著《Linux System Prorgramming (2/e)》为佳。不过学习者要注意的是,这两本书的主要编程语言为C而不是C++。

本课程仅仅使用C++语言吗?
不。除了C++语言,本课程还使用了汉语和英语。坦率地说,我们可以在业界看到很多有关C和C++语言的争论,尤其是在系统编程领域。正像我在回答上一问题所指出的,很多Linux系统编程方面的书籍使用的是C语言。实际上,编程语言的选择压根就不是问题的重点,不管你使用的编程语言是C还是C++,计算思维能力和抽象思维能力的培养是一贯的,它们之间最大的差别仅仅在于实现的手段而已。相信我,即便仅仅使用C,你也可以构造复杂的抽象代码;而即便使用C++,如果你的思维习惯仍然停留在“见山就是山”的具象阶段,代码质量一样会惨不忍睹。

我没有一点C/C++语言的基础,怎么办?
再次强调,本课程并不需要你有这方面的基础,你会在课程中学到你所需要使用到的知识。当然因为课时的原因,并不是所有C/C++知识都会在本课程上讲授,对于那些被我们省略的知识点,你可以自学,也可以假装它们压根就不存在。

我没有一点Linux操作系统基础,怎么办?
凉拌。自学!同样地,本课程并不需要你有Linux操作系统的基础,但是你至少要会使用它。按照我的经验,哪怕在学习本课程的同时学习使用Linux操作系统,时间上也是来得及的,所以不用特别担心。辛苦一点而已,相比计算思维和抽象思维能力的培养,学习使用Linux操作系统压根就不算个事儿。

声明:MOOC中国收录之课程均源自下列机构,版权均归他们所有。本站仅作报道并尊重其著作权益,感谢他们对MOOC事业做出的贡献!(排名不分先后)
  • Coursera
  • edX
  • OpenLearning
  • FutureLearn
  • iversity
  • Udacity
  • NovoEd
  • Canvas
  • Open2Study
  • Google
  • ewant
  • FUN
  • IOC-Athlete-MOOC
  • World-Science-U
  • Codecademy
  • CourseSites
  • opencourseworld
  • ShareCourse
  • gacco
  • MiriadaX
  • JANUX
  • openhpi
  • Stanford-Open-Edx
  • 网易云课堂
  • 中国大学MOOC
  • 学堂在线
  • 顶你学堂
  • 华文慕课
  • 好大学在线CnMooc

Copyright © 2008-2015 MOOC.CN 慕课改变你,你改变世界