Hi Everyone!
T'is me Rihards. Sorry for the delay on the update - was thinking all week about the talk I am to give tonight on DUCS.
Anyway - the assignment was difficult in the best way utterly possible! I really mean that. It most defiantly was not easy ( for those that found it too easy - you know you could have amped up the difficulty easily ) .
I learned a lot of things that passed by or did not quite click with me. Programming (doing) is the best way to learn.
I found that the trickiest part in the program was handling all those different type OA hashtables. There were some other tripping stones but they are there always.
~ ~ ~
Polymorphism in OOP: is basically the ability to create a variable, a method, or an object that has more than one form. Like different template types, parameters and other things
Virtual method: a method whose behavior can be overridden within an inheriting class by a method with the same signature. This usually goes hand in hand with polymorphism. Simply put - you just have to put 'virtual' in front of the method and it can be overwritten by inheriting classes.
Capability Classes: Sorry, I think I missed this one.
Abstract Data Types: They are classes / collection of data & associated operations made for manipulating data. (Queues, Stacks, Hashmaps (Like the ones we made) )
Separating C++ code into several files: There are ways to make code more readable and optimal. Splitting it up in several files is one way & after some point its a necessity. You can write a header file (.h) that has all of the includes and other things the program will reuse then include that .h file into the files that do the operations. There's even a special way to compile these kind of programs.
Default algorithms from the algorithms standard library: Iterators, std::find, list : splice, sort, merge, remove and others.
Set Library: Sets are a type of associative container that stores unique elements, and in which the elements themselves are the keys. Like Queues, Lists, Binary trees. They make refereces to objects just like them thus making lists. Set Library includes all the basics of a set.
Map Library: Maps are a kind of associative container that stores elements formed by the combination of a key value and a mapped value.
Iterator: any object that us pointing to some element in a range of elements (such as an array or a container) and has the ability to iterate through the elements of that range using a set of operators (at least, the increment (++) and dereference (*) operators).
Iterator Example: If you had to iterate through a Hashmap one after another.
Relation to JAVA: We did a lot of these things last year.
~ ~ ~
Lists: One object pointing to the next object.
Stacks: FILO
Queues: LILO
List: I would use them for example for times I don't know the length of the elements needed to be added
Stacks: I would use them to store Undo commands.
Queues: A custom service caller system. So that the first caller calling in get the service the fastest.
Comparison & Contrast: The complexities of Lists, Stacks & Queues in comparison to Hashtables, Arrays & Vectors, I would say are greater. Lists, Stacks & Queues use more resources than the previously taught data structures.
~ ~ ~
I would dare say that nothing we learning in any other course had any relation with the things we learned in C++.
No comments:
Post a Comment