if you want to be successful java programmeryou need good reference manuals close at hand david flanagan' java in nutshell [fla provides good reference for those familiar with the basics of the language after gaining proficiency in the mechanics of program writingthe next step is to become proficient in program design good design is difficult to learn in any disciplineand good design for object-oriented software is one of the most difficult of arts the novice designer can jump-start the learning process by studying wellknown and well-used design patterns the classic reference on design patterns is design patternselements of reusable object-oriented software by gammahelmjohnsonand vlissides [ghjv (this is commonly referred to as the "gang of fourbookunfortunatelythis is an extremely difficult book to understandin part because the concepts are inherently difficult number of web sites are available that discuss design patternsand which provide study guides for the design patterns book two other books that discuss object-oriented software design are object-oriented software design and construction with +by dennis kafura [kaf ]and object-oriented design heuristics by arthur riel [rie exercises the exercises for this are different from those in the rest of the book most of these exercises are answered in the following howeveryou should not look up the answers in other parts of the book these exercises are intended to make you think about some of the issues to be covered later on answer them to the best of your ability with your current knowledge think of program you have used that is unacceptably slow identify the specific operations that make the program slow identify other basic operations that the program performs quickly enough most programming languages have built-in integer data type normally this representation has fixed sizethus placing limit on how large value can be stored in an integer variable describe representation for integers that has no size restriction (other than the limits of the computer' available main memory)and thus no practical limit on how large an integer can be stored briefly show how your representation can be used to implement the operations of additionmultiplicationand exponentiation define an adt for character strings your adt should consist of typical functions that can be performed on stringswith each function defined in