Skip to content

Company

Complete version (all in one file) - All 11 assignments combined in a single document for easy reading or printing.

Structure

Each assignment is a single markdown file.

Image List

Images Overview - All 6 images on one page with descriptions.

Description and image link Used in
Person with static people count, identity and salary fields, constructors and CalculateYearlyIncome 1 Person class and constructors
Person with BonusThreshold, private fields and properties, chained constructors, yearly income and bonus check 2 Encapsulation and constructor chaining
Department and Person with unidirectional association: many persons work in one department 3 Departments and association
Employee and Freelancer specialising Person, with Department and ToString on each type 4 Inheritance with Employee and Freelancer
Abstract Person with protected fields, Department reference, abstract CalculateYearlyIncome and ToString 5 Abstract Person and polymorphism
Person hierarchy with Employee, Freelancer, Volunteer, Department, IHireable and IComparable of Person 7 Interfaces and volunteers

Supporting files

Conventions

Database (Assignments 10-11)

  1. Run Data/CreateInsertScriptCompany.sql in MySQL Workbench
  2. Add NuGet package: MySql.Data
  3. Adjust connection string if your MySQL setup differs

Back to: Overview