which version do you find easier to usewhich is more elegantwhat is easier to readthese are subjective questionsthe answer varies for each of us knowing the answerhoweveris importantif you find you prefer inheritance over compositionyou have to pay attention that you don' overuse inheritance in your daily coding if you prefer compositionmake sure you don' miss opportunities to create an elegant inheritance-based solution finallyadd some error handlers to the various classes we created in the case study they should ensure single characters are enteredthat you don' try to move the cursor past the end or beginning of the filethat you don' delete character that doesn' existand that you don' save file without filename try to think of as many edge cases as you canand account for them (thinking about edge cases is about percent of professional programmer' job!consider different ways to handle themshould you raise an exception when the user tries to move past the end of the fileor just stay on the last characterpay attentionin your daily codingto the copy and paste commands every time you use them in your editorconsider whether it would be good idea to improve your program' organization so that you only have one version of the code you are about to copy summary in this we focused on identifying objectsespecially objects that are not immediately apparentobjects that manage and control objects should have both data and behaviorbut properties can be used to blur the distinction between the two the dry principle is an important indicator of code quality and inheritance and composition can be applied to reduce code duplication in the next we'll cover several of the built-in python data structures and objectsfocusing on their object-oriented properties and how they can be extended or adapted