1. What is design patterns ? Have you used any design pattern in your code ?
Design
patterns are tried and tested way to solve particular design issues by
various programmers in the world. Design patterns are extension of code
reuse.
2. Can you name few design patterns used in standard JDK library?
Decorator design pattern which is used in various Java IO classes, Singleton pattern which is used in Runtime , Calendar and various other classes, Factory pattern which is used along with various Immutable classes likes Boolean e.g. Boolean.valueOf and Observer pattern which is used in Swing and many event listener frameworks.
3. What is Singleton design pattern in Java ? write code for thread-safe singleton in Java
Singleton
pattern focus on sharing of expensive object in whole system. Only one
instance of a particular class is maintained in whole application which is shared by all modules. Java.lang.Runtime is a classical example of Singleton design pattern. You can also see my post 10 questions on Singleton pattern in Java for more questions and discussion. From Java 5 onwards you can use enum to thread-safe singleton.
4. What is main benefit of using factory pattern ? Where do you use it?
Factory
pattern’s main benefit is increased level of encapsulation while
creating objects. If you use Factory to create object you can later
replace original implementation of Products or classes with more
advanced and high performance implementation without any change on
client layer. See my post on Factory pattern for more detailed explanation and benefits.
5. What is observer design pattern in Java
Observer
design pattern is based on communicating changes in state of object to
observers so that they can take there action. Simple example is a
weather system where change in weather must be reflected in Views to
show to public. Here weather object is Subject while different views are
Observers. Look on this article for complete example of Observer pattern in Java.
6. Give example of decorator design pattern in Java ? Does it operate on object level or class level ?
Decorator
pattern enhances capability of individual object. Java IO uses
decorator pattern extensively and classical example is Buffered classes
like BufferedReader and BufferedWriter which enhances Reader and Writer objects to perform Buffer level reading and writing for improved performance. Read more on Decorator design pattern and Java
7. What is MVC design pattern ? Give one example of MVC design pattern ?
8. What is FrontController design pattern in Java ? Give an example of front controller pattern ?
9. What is Chain of Responsibility design pattern ?
10.What is Adapter design pattern ? Give examples of adapter design pattern in Java?
These are left for your exercise, try finding out answers of these design pattern questions as part of your preparation.
No comments:
Post a Comment