Skip to content

Perry1231/TaskBook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TaskBook

Project Description

TaskBook is a console-based task management application developed in C++ using Object-Oriented Programming (OOP) principles.

The application allows users to create, manage, edit, and organize tasks through a convenient console interface. Each task contains a unique ID, description, priority level, and completion status.


Features

Task Management

  • Add new tasks.

  • Delete existing tasks.

  • Edit task information.

  • Duplicate (copy) tasks.

  • Mark tasks as completed or uncompleted.

  • Display all tasks.

  • View detailed information about a selected task:

    • Task ID
    • Task description
    • Priority level
    • Completion status

Filtering and Sorting

TaskBook supports filtering tasks by:

  • Task ID
  • Completion status
  • Priority level

The application also includes sorting functionality to make task management more convenient and efficient.


Technologies and Implementation

Object-Oriented Programming

The project is built using OOP concepts, including:

  • Classes and objects
  • Constructors and destructors
  • Encapsulation
  • Class methods
  • Data abstraction

Multi-File Project Structure

The application is organized using a multi-file architecture:

  • Header files (.h)
  • Source files (.cpp)
  • Main program file

This structure improves code readability, maintainability, and scalability.

Memory Management

The project demonstrates work with:

  • Dynamic memory allocation
  • Pointers
  • Proper memory deallocation using destructors

Algorithms

The application implements:

  • Task filtering algorithms
  • Task sorting algorithms
  • Search operations for task management

Libraries Used

#include <iostream>
#include <string>
#include <cstdlib>
#include <algorithm>
#include <thread>

Console Interface

All interactions are performed through a console-based menu.

Available actions include:

  1. Add a task
  2. Delete a task
  3. Display all tasks
  4. View task details
  5. Edit a task
  6. Copy a task
  7. Mark a task as completed
  8. Filter tasks
  9. Sort tasks
  10. Exit the program

Educational Purpose

The main goal of this project is to practice and demonstrate knowledge of:

  • C++ programming
  • Object-Oriented Programming (OOP)
  • Dynamic memory management
  • Pointer usage
  • Multi-file project organization
  • Sorting and filtering algorithms
  • Console application development

Author

TaskBook was developed as an educational project for studying advanced C++ programming concepts and software design principles.

About

TaskBook is a console-based task management application developed in C++ using Object-Oriented Programming (OOP) principles.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages