认证学习
面向对象的C++和Windows编程
分享
课程详情
课程评价
spContent=理解计算机的最好途径是编程。目前,国家大力发展云计算、大数据、5G、人工智能等新一代信息技术,这些技术都离不开程序设计与软件系统开发。可以预知,编程也会像阅读、写作一样成为人们必须具备的一项技能。面向对象的C++语言是面向过程的C语言的进阶版本,在TIOBE编程语言排行榜上常年稳居前五。其功能强大、面向对象、数据表示丰富、代码运行效率高、可移植性好、类库支持多,适合系统软件、游戏、嵌入式和各类应用程序的开发。
—— 课程团队
课程概述

课程以面向对象程序设计思想为主线,将C++语法知识及应用程序的开发贯穿其中,让学习者了解面向对象的基本概念和编程思想,理解面向对象C++语言的抽象、封装、继承和多态的特性,掌握使用Visual Studio进行Windows程序设计的方法。课程从最基本的概念出发,注重C++语言的实践与应用,在课程教学中穿插了编程案例的讲解,在VS中实操演示了Windows实例的实现过程,引导学习者编程的兴趣。PTA作为主要的在线测评OJ平台,学习者在线编程、自动评测、即时反馈结果。

授课目标

1. 学习C++面向对象程序设计语言的各种概念、机制及其用法。

2. 掌握Windows编程的基本概念和方法。

3. 掌握在VS编程环境下,利用API函数或MFC类库开发Windows应用程序。

4. 初步具备用C++语言和面向对象的方法开发程序的能力。

课程大纲
预备知识

C语言

参考资料

推荐教材:

《面向对象程序设计与VC++实践》,主编:揣锦华,出版社:清华大学出版社

参考书:

《C++语言程序设计(第4版)》,主编:郑莉等,出版社:清华大学出版社

《C++程序设计(第3版)》,主编:谭浩强,出版社:清华大学出版社

《Visual C++ 面向对象与可视化程序设计(第3版)》,主编:黄维通,出版社:高等教育出版社


课程练习网站:

 拼题A(Programming Teaching Assistant): https://pintia.cn/ 

常见问题

Q : 各学习板块的功能是什么?

A : 

(1)公告:该板块会发布本课程相关的通知,方便同学们及时了解与本课程相关的动态。

(2)评分标准:该板块介绍期末最终成绩的分数构成情况,以及各个内容的分数占比详细介绍。

(3)课件:该板块发布教学视频、课件、测试、作业以及相关阅读资料用于大家学习。

(4)测验与作业:通过该板块可以直接进行测验与作业,同时还可以知道测验、作业、互评以及成绩公布的时间设置。

(5)考试:该板块用于发布期中、期末考试内容。

(6)讨论区:该板块供同学们就课程问题进行交流学习 。


Q : 可以使用手机学习吗?

A :  目前可以通过手机App观看课程视频、阅读文档、参与测验、作业、讨论、随堂测验等,但视频中的驻点提问、视频外加字幕等,在手机端无法正常显示。由于作业需要手动填写内容,且手机端无法暂存,为保证作业能够顺利提交,建议作业的相关操作在网页端通过电脑进行参与。


Q:我需要配备什么样的计算机?

A:配备一台台式机或笔记本计算机就可以用于C++语言编程,操作系统安装常用的Windows即可,同类操作系统均可。

 

Q:我需要安装什么软件才能做这门课的作业?

A:任何C++语言的开发工具都可以完成C++部分的作业。课程演示使用Visual Studio。C++部分可以使用的工具包括VS2008及以上、Visual C++ 6.0、CodeBlocks、DevC++、Visual Studio Code等。但是后续的Windows编程部分建议使用VS2008及以上版本。

  

Q : 如何进行同伴互评?

A : 

(1)提交:你需要准备并提交作业。在提交截止时间前,你可以多次提交作业,如果未能在截止时间前提交,你将因为作业未被评分而失去这部分的分数。提交后请确认是否提交成功(即看到作业已提交的提示信息),而不是仅仅保存了作业。

(2)互评:互评只有在提交截止时间过后才可以开始。因此,即使你提前上交了作业,也必须等待提交截止才能进行同伴互评。在这一阶段,你需要评价一定数量(通常是5份)来自同伴的作业,未参与或为完成互评都会扣除相应的分数  


Q :  同伴互评的成绩是如何得出的?

A : 为了避免同伴打分中出现过高或过低的极端情况,系统将会在同伴所评定的分数中取中位数或者平均数,作为该份作业的最终得分。

 

Q : 如何参加考试?

A : 进入课程学习页面,点击左侧栏的“考试”,即可参加当前正在开放的考试。


Q:课程需要多编程多实践,在哪里可以进行编程的训练?

A:PTA(https://pintia.cn/ )是本课程的在线测评OJ平台,学习者在线编程, 自动评测、即时反馈,培养学习者编写和优化代码的能力,提升开发应用程序的能力。