Object-Oriented Programming

Introduction Basic Object-Oriented Concepts for C#


Course Outline Download
Software Installation ArgoUML: IDE:
Reading Material
PowerPoint Slides
Useful References
DayModuleSharing
1
  • Brief History
  • Knowledge representation techniques
  • Quality Assurance
  • Modeling
  • Software Complexity
  • The principle of Information Hiding
  • The “What” and “How”
  • Decoupling
  • Identity
  • Tangible and intangible objects
  • Simple and Complex objects
  • Object Attributes
  • Object Behavior
  • Objects relationships
  • Operations
  • Method
  • Interface (Not for C++)
  • Concept about things
  • Concept as language vocabulary
  • Language as tools
  • Classification strategies
  • Encapsulation – A special form of classification
  • Relationship – IS-A/Kind-Of
  • Instantiation
  • Instance
  • Direct vs. Indirect Instantiation
  • Class Aspects
  • Utility Class
  • Multiplicity/Cardinality
  • Relationship – Part-Of (Aggregation)
  • Relationship – Part-Of (Composition)
  • Relationship – Association
  • Relationship – Dependency
2
  • Superclass
  • Subclasses
  • Inheritance
  • Why not Multiple Inheritance?
  • Class Taxonomy
  • Foundation Classes
  • Abstract Classes
  • Terminal Classes
  • Nested Classes
  • Specialization for Restriction
  • Specialization for Extension
  • Specialization for Overriding
  • Polymorphism
  • IS-A reuse
  • Part-Of Reuse
  • Pattern Reuse
  • Modularity
  • Extensibility
  • Synergy
  • Industry Standards
  • Modern Programming Languages
  • Software Engineering
  • Databases
  • Business Modeling

Recommanded Books
TitleHead First: Object-Oriented Analysis and Design
ISBN978-0-596-00867-8
AuthorBrett McLaughlin, Gary Pollice, Dave West
Year2006
Publisher O'Reilly Media Inc.
TitleOOP: Learn Object Oriented Thinking and Programming
ISBN978-8-090-46618-0
AuthorRudoft Pecinovsky
Year2013
Publisher Academic Series
TitleBeginning Object-Oriented Programming with C#
ISBN978-1-118-33692-2
AuthorJack Purdum
Year2013
Publisher John Wiley & Sons, Inc.