*Please click on a course title below to view description
CSC310 - Introduction to Programming with Python
Course Description
This comprehensive Python programming course provides participants with a thorough exploration of Python syntax, data types, and basic programming concepts. As participants progress, they will develop proficiency in using control structures and logical operators for effective decision-making in Python. The course covers fundamental data structures such as lists, tuples, dictionaries, and sets, emphasizing their practical application in Python programming. Skills in string manipulation, including concatenation, slicing, and formatting, are honed to enable participants to manipulate textual data efficiently. The course also focuses on the design and implementation of functions for creating modular and reusable code.
Credit Hours: 3
CSC481 - Applied Programming with Python
Course Description
This advanced Python programming course is designed for participants aiming to elevate their Python skills to a sophisticated level. Throughout the program, participants will explore and implement advanced data structures, delve into advanced Object-Oriented Programming (OOP) principles, and master the art of utilizing regular expressions for intricate pattern matching and text manipulation in Python. The course goes beyond the basics, providing in-depth knowledge of HTTP protocols, programming with APIs, and navigating SQLite databases, including hands-on experience in web scraping using Python libraries such as Beautiful Soup and requests. Participants will also hone their data visualization skills using popular Python libraries like Matplotlib and Seaborn, enabling them to create compelling visual representations of data for analysis and presentation.
Credit Hours: 3
CSC482 - GUI Programming in Python
Course Description
Participants will grasp fundamental GUI concepts and develop proficiency in utilizing Tkinter, the standard GUI toolkit in Python. The course delves into layout management techniques for organizing GUI elements effectively and explores the integration of various widgets to create interactive interfaces. Participants will also learn to work with images and graphics within Tkinter applications, enhancing the visual appeal of their creations. Additionally, the course covers the ttkbootstrap library, providing insights into how it enhances the aesthetics of Tkinter GUIs. By the end of the course, participants will integrate all the learned concepts to construct a complete and functional GUI application.
Credit Hours: 3
CSC483 - Algorithms and Problem solving with Python
Course Description
Participants will delve into the fundamental principles of algorithm design, analyzing both time and space complexity to evaluate the efficiency of various algorithms. The course covers a spectrum of searching and sorting algorithms, including linear and binary search, bubble sort, quicksort, and mergesort, fostering proficiency in their implementation. Participants will also gain insights into graph algorithms, understanding how to find the shortest path using Dijkstra's and Bellman-Ford algorithms. The properties and applications of graphs and trees in computer science are explored, providing a holistic understanding of their significance. Concepts of recursion and backtracking in algorithm design are elucidated, and participants will develop essential skills in unit testing to ensure the correctness and reliability of their algorithms.
Credit Hours: 3
CSC484 - Advanced Topics in Software Development with Python
Course Description
Explore the intricacies of software development with a focus on essential practices and advanced techniques in this comprehensive course. Participants will delve into the realm of version control and collaboration using Git, mastering its features for efficient team collaboration and code management. Advanced testing and debugging techniques will be honed, equipping participants with skills to ensure code correctness, reliability, and robustness. The course will also emphasize the importance of documentation and code review practices, fostering effective communication within development teams and promoting code maintainability. Additionally, participants will deepen their understanding and proficiency in advanced Python features, enhancing their ability to employ sophisticated language constructs and libraries in software development projects.
Credit Hours: 3
CSC485 - Web Application Development with Python
Course Description
Participants will delve into the fundamentals of web development using Python, gaining insights into creating dynamic and interactive web applications. The course places a particular emphasis on backend development, where participants will analyze and implement Python frameworks such as Django or Flask to build robust and scalable web applications. Database integration and management are explored, providing participants with the skills needed to design and optimize databases for seamless data persistence. Security in web applications is a key focus, covering authentication, authorization, and protection against common vulnerabilities. Additionally, participants will explore the development and integration of APIs, fostering communication between various components of web applications for enhanced functionality.
Credit Hours: 3