Skip to content

Advanced Programming Concepts syllabus

MIT 5018 units · 48 topicsAcademic year 2083/84
Browse the units

Advanced Programming Concepts

8 units

1. Language Basics (8 LHs)

  1. Installing and Running Python Programs
    1. Installing and Running Python Programs
  2. Installing, Uninstalling, and Upgrading Third-Party Libraries
    1. Installing, Uninstalling, and Upgrading Third-Party Libraries
  3. Working with Virtual Environments
    1. Working with Virtual Environments
    2. Writing Comments
  4. Tokens, Identifiers, Keywords, and Literals
    1. Tokens, Identifiers, Keywords, and Literals
  5. Variables and Constants
    1. Variables and Constants
    2. Operators
  6. Data Types (Numeric, Sequence, Text, Set, Mapping, Boolean, and None)
    1. Data Types (Numeric, Sequence, Text, Set, Mapping, Boolean, and None)
  7. Indexing and Slicing
    1. Indexing and Slicing
    2. Comprehension
  8. Control Statements (if, match-case, for, and while)
    1. Control Statements (if, match-case, for, and while)
  9. Break, continue and pass Statements
    1. break, continue and pass Statements
    2. Functions
  10. Passing Arguments to Functions
    1. Passing Arguments to Functions
    2. Lambda Function
    3. File Handling
    4. Exception Handling.

2. Object-Oriented Programming (8 LHs)

  1. Object-Oriented Principles
    1. Object-Oriented Principles
  2. Creating Classes and Objects
    1. Creating Classes and Objects
    2. Instance Variables
    3. Instance Methods
    4. Class Variables
    5. Class Methods
    6. Static Methods
    7. Method Overloading
    8. Magic Methods
  3. Operator Overloading
    1. Operator Overloading
    2. Inheritance
    3. Method Overriding
  4. Modules and Packages
    1. Modules and Packages.

3. Python Libraries (10 LHs)

  1. NumPy
    1. NumPy – Creating and Processing Arrays, Array Attributes, Array Indexing and Slicing, Array Broadcasting
  2. Mathematical and Statistical Functions
    1. Mathematical and Statistical Functions
  3. Pandas – Series and Data Frame
    1. Pandas – Series and Data Frame
  4. Inspecting, Selecting, and Modifying Data in Data Frames
    1. Inspecting, Selecting, and Modifying Data in Data Frames
  5. Merging, Joining, and Concatenating Data Frames
    1. Merging, Joining, and Concatenating Data Frames
  6. Handling Missing Data
    1. Handling Missing Data
  7. Working with CSV Files
    1. Working with CSV Files
  8. Matplotlib – Line Plot
    1. Matplotlib – Line Plot
    2. Scatter Plots
    3. Bar Chart
    4. Histogram
    5. Pie Chart
  9. Adding Titles Legends, and Labels Subplot
    1. Adding Titles Legends, and Labels Subplot
    2. Seaborn – Box Plot
    3. Violin Plot
    4. Pair Plot
    5. Heatmap
  10. Customizing Seaborn Plots
    1. Customizing Seaborn Plots.

4. GUI Programming (5 LHs)

  1. Creating Windows
    1. Creating Windows
    2. Using Widgets
  2. Handling Layouts and Events
    1. Handling Layouts and Events.

5. Working with Databases (5 LHs)

  1. Relational and NoSQL Database
    1. Relational and NoSQL Database
  2. Connecting to Databases
    1. Connecting to Databases
    2. Closing Connections
  3. Creating Database and Tables
    1. Creating Database and Tables
  4. Executing SQL Queries
    1. Executing SQL Queries
  5. Using Parameterized Queries
    1. Using Parameterized Queries
    2. Handling Exceptions
  6. Working with NoSQL Databases
    1. Working with NoSQL Databases.

6. Network Programming (4 LHs)

  1. IP Addressing, Subnetting, and Ports
    1. IP Addressing, Subnetting, and Ports
  2. Python socket Module
    1. Python socket Module
  3. TCP and UDP Programming
    1. TCP and UDP Programming
  4. File Transfer and Messaging
    1. File Transfer and Messaging.

7. Web Development (8 LHs)

  1. Apps, Models, Views, and Templates
    1. Apps, Models, Views, and Templates
    2. Form Handling
  2. Sessions and Cookies
    1. Sessions and Cookies
  3. Database Integration and ORM
    1. Database Integration and ORM
  4. Authentication and Authorization
    1. Authentication and Authorization
  5. Frontend Integration
    1. Frontend Integration
  6. Deployment and Hosting
    1. Deployment and Hosting.

8. Laboratory Work

  1. Students will get hands-on experience through practical exercises that help strengthen…
    1. Students will get hands-on experience through practical exercises that help strengthen their understanding of Python programming concepts. This includes writing programs to practice language basics and object-oriented programming
  2. Performing data analysis and visualization using libraries
    1. performing data analysis and visualization using libraries
  3. Developing applications with a GUI
    1. developing applications with a GUI
  4. Creating and managing databases
    1. creating and managing databases
  5. Building client-server applications for network programming
    1. building client-server applications for network programming
  6. And designing web applications
    1. and designing web applications. These exercises aim to provide practical experience in implementing real-world Python solutions across multiple domains.