arthurbicego / ada-santander-coders-02

Contacts App Project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ada - Santander Coders: Unit 02

Contacts App Project

This project is a Contacts App software that allows users to create, edit, delete and search contacts.

See the project in Development Environment


Statement

Using object-oriented concepts, create a contact app system.

  • The app must allow storing multiple contacts, containing at least first and last name information.
  • A contact can have multiple phones.
  • A contact can have multiple addresses.
  • The storage of phones must allow the inclusion of area code and number information separately.
  • The storage of addresses must allow the inclusion of zip code, address, number, city and state information separately.
  • The system should allow interaction with the user with the following actions:
- Add a contact and their data;
- List all contacts in the phonebook;
- Search for a contact according to a keyword (Using first name, last name data)
- Remove a contact from the phonebook;
- Remove all contacts from the phonebook;
- Add a phone to a contact;
- Add an address to a contact;
- Remove a phone number from a contact;
- Remove an address of a contact;
- View all contact information;
- List all phone numbers of a contact;
- List all addresses of a contact;
- View all phone information;
- View all address information;
  • Additional actions that can be included in the Agenda as a bonus:
- Display contact list with pagination. Including the option to navigate to the next or previous page;
- Display the contact's phone list with pagination. Including the option to navigate to the next or previous page;
- Display contact address list with pagination. Including the option to navigate to the next or previous page;
- Export all contacts to a text file;
- Import all contacts from a text file;
- Automatically load and save all contacts to a text file;
  • Business Rules:
- The system should not allow adding a contact with the same data as another existing contact;
- The system should not allow adding a phone number with the same data as another phone number that already exists in the same contact;
- The system should not allow adding an address with the same data as another address that already exists in the same contact;

Concepts

Object Oriented Programming
(insert code here)
Encapsulation
(insert code here)
Inheritance
(insert code here)
Polymorphism
(insert code here)
Class Diagram
(insert code here)
@Override Equals
(insert code here)
Constructor Overloading
(insert code here)
Interface
(insert code here)
Exception
(insert code here)