Computer Science Class 12 Syllabus

The syllabus is divided into four units: (i) Computational Thinking and Programming, (ii) Computer Networks, and (iii) Database Management.

Unit Unit Name Marks
I Computational Thinking and Programming 40
II Computer Networks 10
III Database Management 20
  Total 70

Unit I: Computational Thinking and Programming - 2

Revision of the basics of Python covered in Class XI.

Functions: scope, parameter passing, mutable/immutable properties of data objects, passing strings, lists, tuples, dictionaries to functions, default parameters, positional parameters, return values, functions using libraries: mathematical and string functions.

File handling: Need for a data file, Types of file: Text files, Binary files and CSV (Comma separated values) files.

Text File: Basic operations on a text file: Open (filename - absolute or relative path, mode) / Close a text file, Reading and Manipulation of data from a text file, Appending data into a text file, standard input / output and error streams, relative and absolute paths.

Binary File: Basic operations on a binary file: Open (filename - absolute or relative path, mode) / Close a binary file, Pickle Module - methods load and dump; Read, Write/Create, Search, Append and Update operations in a binary file.

CSV File: Import csv module, functions - Open / Close a csv file, Read from a csv file and Write into a csv file using csv.reader ( ) and csv.writerow( ).

Using Python libraries: create and import Python libraries.

Recursion: simple algorithms with recursion: print a message forever, sum of first n natural numbers, factorial, Fibonacci numbers; recursion on arrays: binary search.

Idea of efficiency: performance measurement in terms of the number of operations.

Data-structures: Lists as covered in Class XI, Stacks - Push, Pop using a list, Queues - Insert, Delete using a list.

Unit II: Computer Networks

Evolution of Networking: ARPANET, Internet, Interspace Different ways of sending data across the network with reference to switching techniques (Circuit and Packet switching).

Data Communication terminologies: Concept of Channel, Bandwidth (Hz, KHz, MHz) and Data transfer rate (bps, Kbps, Mbps, Gbps, Tbps).

Transmission media: Twisted pair cable, coaxial cable, optical fiber, infrared, radio link, microwave link and satellite link.

Network devices: Modem, RJ45 connector, Ethernet Card, Router, Switch, Gateway, WiFi card.

Network Topologies and types: Bus, Star, Tree, PAN, LAN, WAN, MAN.

Network Protocol: TCP/IP, File Transfer Protocol (FTP), PPP, HTTP, SMTP, POP3, Remote Login (Telnet) and Internet, Wireless / Mobile Communication protocol such as GSM, GPRS and WLL.

Mobile Telecommunication Technologies: 1G, 2G, 3G, 4G and 5G; Mobile processors; Electronic mail protocols such as SMTP, POP3, Protocols for Chat and Video Conferencing: VoIP, Wireless technologies such as Wi-Fi and WiMax

Network Security Concepts: Threats and prevention from Viruses, Worms, Trojan horse, Spams Use of Cookies, Protection using Firewall, https; India IT Act, Cyber Law, Cyber Crimes, IPR issues, hacking.

Introduction To Web services: WWW, Hyper Text Markup Language (HTML), Extensible Markup Language (XML); Hyper Text Transfer Protocol (HTTP); Domain Names; URL; Website, Web browser, Web Servers; Web Hosting, Web Scripting - Client side (VB Script, Java Script, PHP) and Server side (ASP, JSP, PHP), Web 2.0 (for social networking)

E-commerce payment transactions using online banking, mobile banking, payment apps and services.

Unit III: Database Management

Database Concepts: Introduction to database concepts and its need.

Relational data model: Concept of domain, relation, tuple, attribute, degree, cardinality, key, primary key, candidate key, alternate key and foreign key;

Structured Query Language:

General Concepts: Advantages of using SQL, Data Definition Language and Data Manipulation Language;

Data Types: number / decimal, character / varchar / varchar2, date; 


SQL functions: SUM ( ), AVG ( ), COUNT ( ), MAX ( ) and MIN ( );

Joins: equi-join and natural join

Interface of Python with an SQL database

  • Connecting SQL with Python
  • Creating Database connectivity Applications
  • Performing Insert, Update, Delete queries
  • Display data by using fetchone(), fetchall(), rowcount