work--surface domain management what the write bibliog alpha method illustrates about oop here toolet' ask how would we have written function that wrote out an alphabetized bibliography in procedural programmingprobably something like the following sketchdef write_bibliog_function(arrayofentries)[open output filefor in xrange(len(arrayofentries))ientryarray arrayofentries[iif ientryarray[ "article"[call function for bibliography entry for an articleand save to output fileelif ientryarray[ ="book"[call function for bibliography entry for an bookand save to output file[close output filethis solution sketch illustrates how in procedural programming we are stuck writing if tests in the bibliography writing function to make sure we format each source entry correctlydepending on source type ( articlebookin factfor every function that deals with multiple source typeswe need this tree of if tests if you introduce another source typeyou need to add another if test in all functions where you have this testing tree this is recipe for disasterit is exceedingly easy to inadvertently add an if test in one function but forget to do so in another functionetc in contrastwith objectsadding another source type requires no code changes or additions the new source type just needs write bib entry method defined for it andsince methods are designed to work with the attributes of their classthis method will be tailor-made for its data so much easier case study creating class for geosciences work--surface domain management think the bibliography example in section does good job of illustrating what object-oriented programming gives you that procedural programming