How hossain8078/comp285labs works
COMP285Labs is a Java console-learning application: a user enters through Driver, selects a lab in the launcher, and interacts with a framework-based program that operates on a collection or demonstrates recursion. Its documented branches cover arrays, linked lists, generic collections, recursion, binary search trees, doubly linked lists, and a preserved random-number program. A separate Lab 6 project analyzes array and linked-list efficiency. Relationships among unsampled programs are included only where README or source-index references support them; the excerpts do not expose every implementation detail.
Main entry points: LabLauncher.java Lab launcher · ConsoleProgram.java Console lifecycle · GenericListProgram.java Generic-list program · BinarySearchTreeProgram.java BST program
Components 21
Console application
- Driver
src/comp258/Driver.java - Lab launcher
src/comp258/programs/LabLauncher.java - Array program
src/comp258/programs/ArrayManagerProgram.java - Linked-list program
src/comp258/programs/LinkedListProgram.java - Generic-list program
src/comp258/programs/GenericListProgram.java - Recursion app
src/comp258/programs/RecursiveFunctionsApp.java - BST program
src/comp258/programs/BinarySearchTreeProgram.java - Doubly-list program
src/comp258/programs/DoublyLinkedListProgram.java - Random-number program
src/comp258/programs/RandomNumberProgram.java
Console framework
- Console lifecycle
src/comp258/framework/ConsoleProgram.java
Data structures
- Array manager
src/comp258/collections/ArrayManager.java - Linked list
src/comp258/collections/LinkedList.java - Generic linked list
src/comp258/collections/GenericLinkedList.java - Widget values
src/comp258/collections/Widget.java - Binary search tree
src/comp258/collections/BinarySearchTree.java - BST node
src/comp258/collections/BSTNode.java - Doubly linked list
src/comp258/collections/DoublyLinkedList.java
Efficiency analysis
- Efficiency lab
Lab_6_AlgorithmEfficiencyAnalysis/src/algorithmefficiencyanalysis/AlgorithmEfficiencyLab.java - Analysis array manager
Lab_6_AlgorithmEfficiencyAnalysis/src/algorithmefficiencyanalysis/collections/ArrayManager.java - Analysis linked list
Lab_6_AlgorithmEfficiencyAnalysis/src/algorithmefficiencyanalysis/collections/LinkedList.java
Other components
- Console user
Connections 27
- Console user → Driver: starts
README.md - Driver → Lab launcher: starts
src/comp258/Driver.java - Lab launcher → Console lifecycle: runs as
src/comp258/programs/LabLauncher.java - Lab launcher → Array program: dispatches
src/comp258/programs/LabLauncher.java - Lab launcher → Linked-list program: dispatches
src/comp258/programs/LabLauncher.java - Lab launcher → Generic-list program: dispatches
src/comp258/programs/LabLauncher.java - Lab launcher → Recursion app: dispatches
src/comp258/programs/LabLauncher.java - Lab launcher → BST program: dispatches
src/comp258/programs/LabLauncher.java - Lab launcher → Doubly-list program: dispatches
src/comp258/programs/LabLauncher.java - Array program → Console lifecycle: extends
src/comp258/programs/ArrayManagerProgram.java - Linked-list program → Console lifecycle: extends
src/comp258/programs/LinkedListProgram.java - Generic-list program → Console lifecycle: extends
src/comp258/programs/GenericListProgram.java - Recursion app → Console lifecycle: extends
src/comp258/programs/RecursiveFunctionsApp.java - BST program → Console lifecycle: extends
src/comp258/programs/BinarySearchTreeProgram.java - Doubly-list program → Console lifecycle: extends
src/comp258/programs/DoublyLinkedListProgram.java - Random-number program → Console lifecycle: extends
src/comp258/programs/RandomNumberProgram.java - Array program → Array manager: manages
src/comp258/programs/ArrayManagerProgram.java - Linked-list program → Linked list: manages
src/comp258/programs/LinkedListProgram.java - Generic-list program → Generic linked list: manages
src/comp258/programs/GenericListProgram.java - Generic-list program → Widget values: uses values
src/comp258/programs/GenericListProgram.java - Recursion app → Generic linked list: traverses
src/comp258/programs/RecursiveFunctionsApp.java - BST program → Binary search tree: manages
src/comp258/programs/BinarySearchTreeProgram.java - BST program → Widget values: orders values
src/comp258/programs/BinarySearchTreeProgram.java - Binary search tree → BST node: delegates to
src/comp258/collections/BinarySearchTree.java - Doubly-list program → Doubly linked list: manages
src/comp258/programs/DoublyLinkedListProgram.java - Efficiency lab → Analysis array manager: analyzes
Lab_6_AlgorithmEfficiencyAnalysis/src/algorithmefficiencyanalysis/AlgorithmEfficiencyLab.java - Efficiency lab → Analysis linked list: analyzes
Lab_6_AlgorithmEfficiencyAnalysis/src/algorithmefficiencyanalysis/AlgorithmEfficiencyLab.java