📜  CBSE 12 级 |计算机科学Python教学大纲

📅  最后修改于: 2022-05-13 01:54:34.225000             🧑  作者: Mango

CBSE 12 级 |计算机科学Python教学大纲

计算机科学
CLASS-XII(代码编号 083)
2019-20 学年可选,2020-21 学年以后强制

1.先决条件:计算机科学- XI类

2. 学习成果:

  1. 了解函数和递归的概念。
  2. 了解如何创建和使用Python库。
  3. 学习文件处理。
  4. 了解一般算法和计算中的效率概念。
  5. 学习基本的数据结构:列表、堆栈和队列。
  6. 了解计算机网络的基本知识:网络堆栈、基本网络硬件、基本协议和基本工具。
  7. 将Python程序与 SQL 数据库连接,并学习 SQL 中的聚合函数。
  8. 对网络道德和网络犯罪有清晰的认识。了解技术在社会、性别和残疾问题中的价值,以及生物识别 ID 背后的技术。

3. 标志分布

UnitNo.  Unit Name                            Marks
1. Programming and Computational Thinking–2    30
2. Computer Networks                           15
3. Data Management–2                           15
4. Society, Law and Ethics–2                   10
5. Practicals                                  30
Total                                          100

4.1 第一单元:编程与计算思维(PCT-2)(80理论+70实践)
Python基础的修订
函数:范围、参数传递、数据对象的可变/不可变属性、将数组传递给函数、返回值、使用库的函数:数学函数和字符串函数。
文件处理:打开和关闭文件、读取、写入和附加到文件、标准输入、输出和错误流、相对和绝对路径。
使用Python库:创建和导入Python库
递归:带有递归的简单算法:阶乘、斐波那契数;数组递归:二分查找
效率理念:性能定义为与挂钟时间成反比,计算一段代码正在执行的操作次数,并衡量一个程序所花费的时间。示例:针对同一个问题采用两个不同的程序,并了解高效的程序如何花费更少的时间。
使用 Pyplot 进行数据可视化:折线图、饼图和条形图。
数据结构:列表、堆栈、队列。

4.2 单元2:计算机网络(中)(30理论+10实践)
网络结构:网络类型:局域网和广域(网络和互联网)、云和物联网等新技术、公共云与私有云、有线和无线网络;客户端和服务器的概念。
网络设备,例如 NIC、交换机、集线器、路由器和接入点。
网络堆栈:幅度和频率调制、无线网络中的冲突、错误检查、MAC 地址的概念、路由的主要思想。 IP 地址:(v4 和 v6)、DNS 和 Web URL、TCP:重传的基本概念,以及拥塞时的速率调制(类似于道路网络),协议:2G、3G、4G、WiFi 什么是协议有更高的带宽吗?
基本网络工具: traceroute、ping、ipconfig、nslookup、whois、speed-test。
应用层: HTTP(基本思想)、电子邮件的工作、安全通信:加密和证书(HTTPS)、网络应用:远程桌面、远程登录、FTP、SCP、SSH、POP/IMAP、SMTP、VoIP、NFC。

4.3 单元 3:数据管理(DM-2)(20 理论 + 20 实践)
编写一个基于 Django 的最小 Web 应用程序,解析 GET 和 POST 请求,并将字段写入文件——平面文件和 CSV 文件。
将Python与 SQL 数据库接口
SQL 命令:聚合函数——group by、having、、order by。

4.4.第 4 单元:社会、法律和伦理(SLE-2)(10 理论)
知识产权、剽窃、数字版权管理和许可(知识共享、GPL 和 Apache)、开源、开放数据、隐私。
隐私法、欺诈;网络犯罪 - 网络钓鱼、非法下载、儿童色情、诈骗;网络取证,IT 法案,2000 年。
技术与社会:对技术引起的社会问题和文化变革的理解。
电子废物管理:妥善处理用过的电子产品。
身份盗用、唯一 ID 和生物识别。
教学和使用计算机时的性别和残疾问题。

5.实用

S.No.Unit NameMarks (Total=30)
1.Lab Test(10 marks)
Python program (60% logic + 20% documentation + 20% code
quality)
7
Small Python program that sends a SQL query to a database and displays the result. A stub program can be provided.3
2.Report File + viva (9 marks)
Report file: Minimum 21 Python programs. Out of this at least 4
programs should send SQL commands to a database and
retrieve the result; at least 1 program should implement the web
server to write user data to a CSV file.
7
Viva voce (based on the report file)3
3.Project + viva (11 marks)
Project (that uses most of the concepts that have been learnt)8
Project Viva Voce3

一些示例实验室作业如下:

5.1。用Python编程:

  1. 递归求自然数的阶乘。
  2. 逐行读取文件并打印。
  3. 删除文件中包含字符“a”的所有行并将其写入另一个文件。
  4. 编写一个Python函数sin(x, n) 以使用其泰勒级数展开式计算 sin(x) 的值,最多 n 项。将不同 n 值的 sin(x) 值与正确值进行比较
  5. 编写一个随机数生成器,生成 1 到 6 之间的随机数(模拟骰子)。
  6. 编写递归代码来查找列表中所有元素的总和。
  7. 编写递归代码来计算第 n 个斐波那契数。
  8. 编写一个Python程序以使用列表数据结构实现堆栈和队列。
  9. 编写一个递归Python程序来测试一个字符串是否是回文。
  10. 编写一个Python程序,使用 pyplot 或 matplotlib 库绘制函数y = x 2
  11. 创建一个接受用户输入的图形应用程序,对其执行一些操作,然后将输出写入屏幕。例如,编写一个小型计算器。使用 tkinter 库。
  12. 使用 urllib 库打开网页。
  13. 使用 numpy 或 scipy 库计算贷款的 EMI。
  14. 抽取 10 封网络钓鱼电子邮件样本,找出最常见的词语。

5.2.数据管理:SQL 和 Web 服务器

  1. 在学生分数表中查找分数的最小值、最大值、总和和平均值。
  2. 使用 group by 查找表中每个国家/地区的客户总数(客户 ID、客户名称、国家/地区)。
  3. 编写 SQL 查询以按分数降序排列(学生 ID,分数)表。
  4. 通过导入 MySQL 模块将 SQL 与Python集成
  5. 编写基于 Django 的 Web 服务器来解析用户请求 (POST),并将其写入 CSV 文件。

6. 项目
课堂项目的目的是创造一些有形和有用的东西。这应该以 2 到 3 名学生为一组进行,并且应该由学生在提交截止日期前至少 6 个月开始。这里的目的是找到一个值得解决的现实世界问题。鼓励学生参观当地企业并询问他们所面临的问题。例如,如果企业发现很难为提交 GST 索赔创建发票,那么学生可以做一个项目,获取原始数据(交易列表),按类别对交易进行分组,考虑 GST 税率,并创建格式适当的发票。学生在这里可以发挥极大的创造力。他们可以使用各种各样的Python库来创建用户友好的应用程序,例如游戏、学校软件、残疾同学软件和移动应用程序,当然要做一些这样的项目,还需要一些额外的学习;应该鼓励这样做。学生应该知道如何自学。如果三个人在一个项目上工作 6 个月,则预计至少有 500 行代码。委员会还了解到此类项目的抄袭程度。教师应该非常严格地看待这种情况,并对在实验室作业或项目上作弊或使用盗版软件做同样事情的学生采取非常严格的纪律处分。所提议的一切都可以使用完全免费且合法的开源软件来实现。