Search Your Paper

Saturday, January 24, 2015




punjabtechnicaluniversity.blogspot.in


Note: - This is quiet a confusing architect question especially in design pattern section. Interviewer can take you for a nice ride …. So get the difference’s in your heart.
First read the definition provided in the first question about both these patterns. The common thing they have is that they belong to creational patterns. In short they hide the complexity of creating objects.

The main difference between factory and Abstract factory is factory method uses inheritance to decide which object has to be instantiated. While abstract factory uses delegation to decide instantiation of object. We can say Abstract factory uses factory method to complete the architecture. Abstract Factory is one level higher in abstraction over Factory.

The below two class diagrams will provide overview of what the actual difference is. First figure shows a sample implementation of Factory Patterns. In this figure there ar etwo basic sections:-

 The actual product section i.e. Class “Product” it inherits from a abstract class “AbstractProduct”.

The creational aspect section that’s “ConcreteCreator” class which inherits from class “Creator”.

Now there are some rules the client who will need the “Product” object will have to follow. He will never refer directly to the actual “Product” object he will refer the “Product” object using “AbstractProduct”.

Second client will never use “New” keyword to create the “Product” object but will use the “Creator” class which in turn will use the “ConcreteCreator” class to create the actual “Product” object.



Class diagram of a factory Pattern

So what are benefits from this architecture? All creational and initializing aspects are now detached from the actual client. As your creational aspect is now been handled in “ConcreteCreator” and the client has reference to only “Creator”, so any implementation change in “CreateProduct” will not affect the client code. In short now your creational aspect of object is completely encapsulated from the client’s logic.

Now let’s look at the second class diagram which provides an overview of what actually “Abstract factory” pattern is. It creates objects for families of classes. In short it describes collection of factor methods from various different families. In short it groups relatedfactory methods. Example in this the class “Creator” is implemented using the “Abstract”factory pattern. It now creates objects from multiple families rather one product.

Note :- Just stick up to this definition that Abstract factory classifies factory methods or groups logically related factory method together..



Class Diagram of Abstract Factory

0 comments:

Post a Comment

North India Campus

Popular

Archive

North India Campus. Powered by Blogger.

Welcome to North India Campus

Search Question Paper

Labels

1st & 2nd Semester BE 1st Semester B.Com 1st Semester BBA 1st Semester BCA (D) 1st Semester Bsc. IT (D) 1st Semester Bsc. IT 1 1ST Semester M.SC IT(D) 1st Semester M.Tech 1ST Semester MBA 1st Semester MCA 1st Semester MCA (D) 2nd Sem B.Com 2nd Sem BB 2nd Sem BBA 2nd Sem BCA 2nd Sem BCA (D) 2nd Sem BSC IT(D) 2nd Sem BSC(IT) 2nd Semester MBA A Foundation Course in Human Values and Professional Ethics Accounting and Financial Management Accounting and Financial Managementm ACCOUNTING FOR MANAGEMENT Adolescence and Family Education B.Ed (2012) Adolescence And Family Education B.Ed (Dec 2013) Adolescence And Family Education B.Ed (Dec 2014) ADVANCE SOFTWARE ENGINEERING Advanced Accounting 2 ADVANCED COMMUNICATION SYSTEMS ADVANCED MATHEMATICS FOR ENGINEERS Aligarh Muslim University Applied Physics 1 B.Ed (Dec 2008) B.Ed (Dec 2009) B.Ed (Dec 2011) B.Ed (Dec 2012) B.Ed (Dec 2013) B.Ed (Dec 2014) B.Ed (June 2008) B.Ed (June 2009) B.Ed (June 2015) BA 1 Syllabus Bachelor in Science Fashion and Technology Basic Accounting Basic Chemistry Basic Electrical Engineering Basic Electronics Basic Mathematics BSC 1 Basoc Accounting BBA 1 BBA 2 BCA Question Papers BCA Syllabus 1 Bridge Course in Mathematics Bsc.IT Business Communication-1 Business Communication-2 Business Communication-I 2 Business Environment 2 Business Laws 1 Business Mathematics Business Organisation and Management Business Statistics 2 C C Programming C Programming Bsc IT 1 C Programming Lecture Videos CADM 1st Semester Communication 2 Communication and Soft Skills Communication Skills Communication Skills 1 Communicative English Computer and Education B.Ed (Dec 2011) Computer and Education B.Ed (Dec 2012) Computer Applications Computer Fundamental Computer Graphics Video Lecture Computer in Education B.Ed (Dec 2008) Computer in Education B.Ed (Dec 2009) Computer In Education B.Ed (Dec 2013) Computer in Education B.Ed (Dec 2014) Computer Mathematical Foundation MCA D Computer Networks 1st Semester Computer Operating System Computer Organization and Assembly Language Computer System Architecture 2 Corporate Accounting Curriculum and Instruction B.Ed (Dec 2009) Curriculum and Instruction B.Ed (Dec 2011) Curriculum and Instruction B.Ed (Dec 2012) Curriculum and Instruction B.Ed (Dec 2013) Curriculum and Instruction B.Ed (Dec 2014) Curriculuman and Instruction B.Ed (Dec 2008) DATA COMMUNICATION NETWORK Data Structure 2 Data Structures 2 data structures 2 BCA D Data Structures Through C 2 Database Management with Microsoft Access Bsc IT 1 Delhi University News Desktop Publishing Tools 2 Digital Circuits and Logic Design 2 Digital Circuits and Logic Design 2 BCA D Digital Electronics 2 Digital Electronics Fundamentals 2 Distance Education B.Ed (Dec 2008) Distance Education B.Ed (Dec 2009) Distance Education B.Ed (Dec 2011) Distance Education B.Ed (Dec 2012) Distance Education B.Ed (Dec 2013) Distance Education B.Ed (Dec 2014) Dot Net Interview Questions & Answers. Education and Evaluation B.Ed (Dec 2009) Education and Society B.Ed (Dec 2008) Education and Society B.Ed (Dec 2009) Education and Society B.Ed (Dec 2011) Education and Society B.Ed (Dec 2012) Education and Society B.Ed (Dec 2013) Education and Society B.Ed (Dec 2014) Education Technology B.Ed (Dec 2009) Educational Evaluation B.Ed (Dec 2008) Educational Evaluation B.Ed (Dec 2011) Educational Evaluation B.Ed (Dec 2012) Educational Evaluation B.Ed (Dec 2013) Educational Evaluation B.Ed (Dec 2014) Educational Technology B.Ed (Dec 2008) Educational Technology B.Ed (Dec 2011) Educational Technology B.Ed (Dec 2012) Educational Technology B.Ed (Dec 2013) ELECTRONICS SYSTEM DESIGN Engineering Drawing and Graphics Engineering Mathematics Engineering Question Paper set 1 Engineering Syllabus English and Communication Skills English and Communication Skills 2 Environmental Science 2 Finaicial Accounting Financial Accounting Financial Management 2 Sem Fundamentals of Information Technology Bsc 1 Guidance and Counseling B.Ed (Dec 2008) Guidance and counseling B.Ed (Dec 2009) Guidance and Counseling B.Ed (Dec 2011) Guidance and Counseling B.Ed (Dec 2012) Guidance and Counseling B.Ed (Dec 2013) HIV and Aids Education B.Ed (Dec 2011) HIV and Aids Education B.Ed (Dec 2012) HIV and Aids Education B.Ed (Dec 2013) Hotel Management and Air Lines Syllabus HP University News Human Resource Management Human Resource Management 2 Information Management Information Technology for Management Intoduction to microprocessor 2 BCA D Introduction of Computers BBA1 Introduction to Computers 2 Introduction to I.T MCA D Introduction to Information Technology Introduction to Information Technology(BCA) Kurukshetra University News Lecture 20 Clipping -- Lines And Polygons Macro Economics 2 Management Syllabus Managerial Economics Marketing Management 2 Master Of Technology M-Tech Syllabus MBA Papers MCA Notes MCA Question Papers Mercantile Law 2 Metal Cutting Question Paper Metal Forming Question Paper Micro Economics Network Security NEURAL NETWORKS & FUZZY LOGIC Object Oriented Programming in C++ Object Oriented Programming in Cpp OOP CPP 2 Operating system (BCA) Operating System Bsc IT 1 Organisational Behaviour Organization Behaviour 2 Other Universities Others Panjab University News PCM 2 BCA D PGDCA Pharmacy Syllabus Principles and Practices of Management principles of management 2 Production and Operations Management 2 Programming in C Programming in C MCA D Programming Logic Development with C Psychology of Learning and Development B.Ed (Dec 2013) Psychology of Learning and Development B.Ed (Dec 2008) Psychology of Learning and Development B.Ed (Dec 2009) Psychology of Learning and Development B.Ed (Dec 2011) Psychology of Learning and Development B.Ed (Dec 2012) PTU Affiliated Colleges of Integerated College PTU Affiliated Colleges of Management College PTU Affiliated Colleges of Architecture PTU Affiliated Colleges of Engineering PTU Affiliated Colleges of Pharmacy College PTU Forms Download PTU News and Events Quantitative Techniques RDBMS 2 RDBMS-I 2 Relational Database Management System Research Methodology 2 SAD 2 BCA D Syllabus of Computer Applications Syllabus of Journalism and Mass Communication Syllabus of Medical Laboratory Science System Analysis and Design System Analysis and Design 2 System Analysis and Design MCA D Teacher and School B.Ed (Dec 2008) Teacher and School B.Ed (Dec 2009) Teacher and School B.Ed (Dec 2011) Teacher and School B.Ed (Dec 2012) Teacher and School B.Ed (Dec 2013) Teacher of English B.Ed (Dec 2009) Teaching of English B.Ed (Dec 2008) Teaching of English B.Ed (Dec 2011) Teaching of English B.Ed (Dec 2012) Teaching of English B.Ed (Dec 2013) Teaching of Mathematics B.Ed (Dec 2009) Teaching of Mathematics B.Ed (Dec 2011) Teaching of Mathematics B.Ed (Dec 2012) Teaching of Mathematics B.Ed (Dec 2013) Teaching of Science B.Ed (Dec 2008) Teaching of Science B.Ed (Dec 2009) Teaching of Science B.Ed (Dec 2011) Teaching of Science B.Ed (Dec 2012) Teaching of Science B.Ed (Dec 2013) Teaching of Social Studies B.Ed (Dec 2008) Teaching of Social Studies B.Ed (Dec 2011) Teaching of Social Studies B.Ed (Dec 2012) Teaching of Social Studiess B.Ed (Dec 2013) Teaching of Social Study B.Ed (Dec 2009) Technical Communication UGC NET Computer Science Question Paper Uttarakhand Open University Video Lecture Web Technologies 1st Semester Web Technologies 2 Welding Technology Question Paper Workshop on IT and E-Commerce 2