CompSci 308 Spring 2024 |
Advanced Software Design and Implementation |
Summarize the
team's discussion for this part in a file called doc/COLLECTION_API.md
within your team's project repository.
Although the concept is inherently subjective, most developers seem to agree on the main desirable characteristics of an API:
Each person should examine one of the following documents about Java's Collections API and discuss with the rest of the team how well the API follows the above characteristics:
Bring your own experience using collections by comparing them to the API's design goals. If there is something you like or dislike or something your learned about design during the discussion, make sure to back it up with a specific example.
Some things to consider:
Map
s excluded)? What methods are common to all Deque
s?LinkedList
)? What is the purpose of each interface?Set
)? Do you think the number justifies it being an interface or not?PriorityQueue
)? What do you think is the purpose of each inheritance "level"?Collections
) instead of adding that functionality to specific collection types themselves (such as List
)?