Page 72 - REC :: All Dept Open Electives
P. 72
UNIT I PROGRAMMING FUNDAMENTALS 9
Python‘s core data types - Operators – Strings - Conditional Statements – Looping Statements - Lists -
Methods – dictionaries - Methods – Tuples - Set – Files [Ref 2 - Chapter 6 - 10]
UNIT II DATABASE FUNDAMENTALS 9
Keys in RDBMS - Normalization – 1NF – 2NF – 3NF – BCNF - DDL – DML – DCL – TCL – Sorting
data - Single row functions – Joins – Group functions – Sub queries [Ref 3 – Chapter 3 and 4]
UNIT III OBJECT ORIENTED PROGRAMMING USING PYTHON 9
Decorators – Class and Object namespaces – Attribute shadowing – Initializing an instance –
Inheritance and composition – Accessing a base class – Multiple Inheritance – Class and static methods
– Private methods and name mangling – The property decorator - Operator overloading –
Polymorphism – Data Classes – Writing an iterator [Ref-1 Chapter 6]
UNIT IV PYTHON DATABASE INTEGRATION 9
Connection and Cursor Objects - Retrieve Data from Database – Insert Operation – Update Operation –
Delete Operation – Select Operation
UNIT V CONCURRENT EXECUTION 9
Threads and Processes – Killing threads – context switching - Global interpreter lock – Race conditions
and deadlocks – Locks to the rescue – starting a thread –Starting a process – Stopping threads and
processes – Spawning multiple threads – Dealing with race conditions – Thread and process
communication – case examples – concurrent merge sort – two batch Sudoku solver [Ref-1 Chapter 10]
TOTAL: 45 PERIODS
REFERENCES:
1. Learn Python Programming: A beginner's guide to learning the fundamentals of Python
language to write efficient, high-quality code, by Fabrizio Romano, 2nd Edition.
2. Mark Lutz, Learning Python: Powerful Object-Oriented Programming, Fifth Edition, O‗Reilly,
Shroff Publishers and Distributors, 2013.
th
3. Database System Concepts by Abraham Silberschatz, Henry F. Korth , S. Sudarshan , 5
edition
OUTCOMES
Upon completion of the course, the students will be able to
1. Know the basics of python and implement it.
2. Execute SQL queries.
3. Connect Python with database.
4. Understand the concepts of object oriented programming.
5. Demonstrate concurrent execution using multiple threads.
Curriculum and Syllabus | Open Electives | R 2017 | REC Page 72

