{'fraction_non_alphanumeric': 0.01933404940923738, 'fraction_numerical': 0.0, 'mean_word_length': 4.9743589743589745, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Teaching data structures with multiple collection class libraries

In recent years, the teaching of data structures has been revolutionised by object-oriented languages, especially Java, in which the concept of each Abstract Data Type is made explicit as an Interface. The existing texts, though, each use a single set of classes: sometimes a standard library such as Sun's SDK, but in other cases these form a library unique to the text. In contrast, this paper advocates an approach which seeks to prepare students for the common situation for software developers, who are asked to regularly adjust to a library they are unfamiliar with. The teaching we describe openly acknowledges the existence of many libraries. A single concept such as Stack is expressed in subtly different ways in each library; these differences are made explicit for the student. We also show examples of assessment tasks that can accompany the teaching.