memento pattern graphics drawing program example - functions - variables - sample code - negative indexes using - nodes (leaf)composite pattern - menusadding to windows - nonvisual decorators - message boxes notificationsobserver pattern creating - numbers error message boxes addingvisual programming warning message boxes comma-separated numbers messages to the mediaobserver pattern methods accessor methods concrete methods complex numbers datesformatting formatting numeric constants dunder methods empty methods hook methods revised methodsclass creation strings - template methods mistakes (common)python decision making model-view-controller framework for smalltalk - object-oriented programming buttonscreating - classes - collections creating derived classes inheritance modifying dataiterators inheritancemultiple inheritance - movingdata between lists - instances multiple inheritance - variables - defined mysql database connections inheritance installing methods pycharm polymorphism pymysql library rectangles/squaresdrawing - mysql workbench named constants see variables naming conventions classes constants types declaring - hints variables local variables properties visibility