object-oriented programming managing larger programs at the beginning of this bookwe came up with four basic programming patterns which we use to construct programssequential code conditional code (if statementsrepetitive code (loopsstore and reuse (functionsin later we explored simple variables as well as collection data structures like liststuplesand dictionaries as we build programswe design data structures and write code to manipulate those data structures there are many ways to write programs and by nowyou probably have written some programs that are "not so elegantand other programs that are "more eleganteven though your programs may be smallyou are starting to see how there is bit of art and aesthetic to writing code as programs get to be millions of lines longit becomes increasingly important to write code that is easy to understand if you are working on million-line programyou can never keep the entire program in your mind at the same time we need ways to break large programs into multiple smaller pieces so that we have less to look at when solving problemfix bugor add new feature in wayobject oriented programming is way to arrange your code so that you can zoom into lines of the code and understand it while ignoring the other , lines of code for the moment