CSCD211 — Programming Principles II
Continues Programming Principles I. Topics include composition, recursion, data abstraction, polymorphism, inheritance, interfaces, inner classes, abstract classes, object cloning, linked lists, and exception handling.
Learning Objectives & Matches
Design and implement object-oriented software solutions using classes, objects, and encapsulation
Apply inheritance and polymorphism to create flexible and reusable code architectures
Implement interfaces and abstract classes to define contracts and enforce design patterns
Develop recursive algorithms and data structures to solve complex computational problems
Implement linked list data structures for dynamic memory management and data organization
Design and implement warehouse database structures.
Prepare and structure data warehouses for storing data.
Develop data models for applications, metadata tables, views or related database structures.
Design database applications, such as interfaces, data transfer mechanisms, global temporary tables, data partitions, and function-based indexes to enable efficient access of the generic database structure.
Develop data models describing data elements and how they are used, following procedures and using pen, template, or computer software.
Develop and document database architectures.
Develop data model describing data elements and their use, following procedures and using pen, template or computer software.
Extend existing software programs, web-based interactive tools, or database queries as sequence management and analysis needs evolve.
Analyze information processing or computation needs and plan and design computer systems, using techniques such as structured analysis, data modeling, and information engineering.
Develop or maintain standards, such as organization, structure, or nomenclature, for the design of data warehouse elements, such as data architectures, models, tools, and databases.