- Object-Oriented Software Engineering
-
- Learn techniques that allow a group of programmers to successfully complete a large software development project
- Design and create software by first understanding client requirements and finishing by giving a presentation of our final solution
- Theory Of Computation
-
- Presents an introdcution to automata, formal languages computability and computational complexity
- Explore topics such as finiate automata, pushdown automata, context-free grammars, Turing machines, and algorithmically unsolvable/computationally intractable problems
- Algorithms & Data Structures
-
- Imparts detailed insights into different algorithms and data structures
- Examine the performance of algorithms and data structures with particular attention paid to searching and sorting, graph algorithms, and techniques for implementing them with object-oriented programming paradigms.
- Java
-
- Knowledge of designing and debugging Java programs
- Introduced to polymorphism, event handling, inheritance, and exceptions by designing graphical user interfaces with JavaFX
- Experience with concepts such as recursive, generic, database, network, and web programming
- Advanced Database Design
-
- Project course where students learn advanced theoretical concepts
- Covers System Development Life Cycle, the Database Life Cycle, Data Warehousing, and Database Administration
- Advanced topics in PL/SQL programming such as writing stored procedures and functions, creating triggers and handling exceptions
- Used Oracle Forms and Report Builder to access and manipulate data and generate reports
- C and Assembly
-
- Teaches two languages, C and Assembly, additionally covers basic terminal usage in Linux
- Covers topics of binary and hexadecimal numbering systems in depth
- Technical Writing
-
- Trained to create different types of documents from proposals to instructional material