Object oriented programming was something introduced at the end of CSC108 that I thought would be relatively unimportant and kind of silly to use.
WOW WAS I WRONG. I NOW SEE THE LIGHT.
Thus far in the course, it has been solely coding using object oriented design. We've been working with classes and subclasses, learning how inheritance works and learning about overwriting methods, its great! The whole concept behind having a parent class that is super general, and then having sub-classes that are specific to a problem is a concept I really had a hard time with. This was brought up in A1 where we had to write the general and specific for our game. Having gone through the game, and now more examples, I can see how crazy useful it is to have this parent/child set-up. It makes adding functionality a breeze and really brings to life Diane's analogy of the pop-machine.
I think back on our assignments we completed in 108 and I wonder how quickly we could complete them with the use of classes and OOP as opposed to the very tedious and slow methods we used back then.
My favourite thing thus far has been the creation of special methods and being able to call on whichever you've created and see it come to life in the shell! I did have some confusion though with the difference between methods and functions and when to use one or the other. I've resolved this problem as I really make an effort in naming all my classes, methods, descriptions, initializers effectively. I know a lot of people scoff at the instructor when they repeat: "Choose good names" or "Draw out diagrams". But I swear, doing so will make anyone's life so much easier and in the long run will be very beneficial later down the road. I will say that after having completed the assignment I feel much more confident in these areas, and I think I succeeded very well in the term test we had last week which featured a lot of these Object Oriented Programming topics. I will look forward to seeing how we can expand on this kind of programming throughout the semester and within future courses.
Leo out
No comments:
Post a Comment