Urgenthomework logo
UrgentHomeWork
Live chat

Loading..

MITS4002 Object Oriented Programming with Java

  48 Download     📄   4 Pages / 960 Words
Research on the various design patterns described in Smith (2015) and Gamma et al (1999). Describe how software development productivity can be accomplished by the application of various Creational Design Patterns. 

Answer:

Various design patterns

The software development in software engineering uses the design patterns in order to deliver standard software application which is a general repeatable solution to the software problems that often occurs in software designing.

The design pattern gives descriptions of how to solve various problems which are usable in several different situations.  

The design patterns are used in order to speed-up the software development processes through provision of paradigms which are tested and proven developments, it is also used to prevent the subtle issues which may lead to main problems and improving the readability in the software codes to the programmers and architect who are familiar with the coding patterns, it also allow the development team to effectively communicate through known software’s interactions.

Below are the various design patterns used.

Creational design patterns

These are design patterns that mainly deals with the instantiations of classes and they are divided into class creation and object creational patterns. The class creation pattern makes use of the inheritance in the processes of instantiation while the object creation patterns make use of delegations to perform the job.

Structural design patterns

The structural design patterns are the compositions of the classes and objects where the structural classes’ creations patterns uses inheritance in the composition of the interfaces while the structural objects patterns give the definition on the composition of the objects in order to obtain new functionalities.

Behavioral design patterns

This is a design pattern that uses the classes object communications, however they are concerned with the communications and interactions between the objects.

How software development productivity using Creational Design Patterns

The software development productivity is achieved through the use of the creational design patterns that deal with the instantiations of classes and they are divided into class creation and object creational patterns where the class creation pattern makes use of the inheritance in the processes of instantiation while the object creation patterns make use of delegations to perform the job.

Below is the various creational design patterns used in software development productivity.

  1. Chain of responsibility: This is a pattern that is used to pass the requests between chain of software objects.
  2. Command: this is a pattern that encapsulates the command requests as objects to facilitate communication in the software.

  3. Interpreter: This is a pattern that entails languages elements in the software application.
  4. Iterator: This is a pattern accesses the various elements of a collections in a sequential manner.
  5. Mediator: This is a pattern that is used in definition of simplified communications between the various program classes.
  6. Memento: This is a pattern that is used in capturing and restoring the program objects internal states.
  7. Null Object: This pattern is used as it acts as default values of program objects.
  8. Observer: This is a pattern that is used to do notification of changes to various program classes.
  9. State: This is a pattern that is used in alteration of objects behaviors incase the program states changes.
  10. Strategy: This is a pattern use for the encapsulation of algorithms in the classes.
  11. Template method: This is the pattern that defers some specific steps of the algorithms of a sub-class.
  12. Visitorpatterns: This pattern is used in definition of new operations to classes without any change. 

The complete Java class

package computeprice;

import java.util.*;

public class computeprice {

int Sales_id;

String Item_name;

int Number_of_items;

int Base_price;

int Shipping_charges;

int Handling_charges;

static int Subtotal_of_items(int Sales_id, int Number_of_items) {

        return (Number_of_items);

    }

 static int Total_price(int Sales_id, int Number_of_items,int Base_price,int Shipping_charges,int Handling_charges) {

        return ((Number_of_items*Base_price)+Shipping_charges+Handling_charges);

    }

public void values() {

System.out.println("=================COMPUTE PRICE================n");

Scanner sc = new Scanner(System.in);

System.out.print("Enter Sales id :n");

Sales_id = sc.nextInt();(Singh, 2016).

System.out.print("Enter Item name :n");

Scanner scanner = new Scanner(System.in);

Item_name = scanner.nextLine();

System.out.println("" + Item_name);

System.out.print("Enter Number of items :n");

Number_of_items = sc.nextInt();

System.out.print("Enter Base price :n");

Base_price = sc.nextInt();

System.out.print("Enter Shipping charges :n");

Shipping_charges = sc.nextInt();

System.out.print("Enter Handling charges :n");

Handling_charges = sc.nextInt();

System.out.print("Subtotal of items " + (Subtotal_of_items(Sales_id,Number_of_items) + "n"));

System.out.print("Total price nn" + Total_price(Sales_id,Number_of_items,Base_price,Shipping_charges,Handling_charges));

    } (Laplante, 2013).    

The complete Java class

package computeprice;

import java.util.*;

public class computeprice {

int Sales_id;

String Item_name;

int Number_of_items;

int Base_price; (Goyal, 2011).

int Shipping_charges;

int Handling_charges;

public void checkout() {

System.out.println("==============CHECKOUT============");

int x=(Total_price(Sales_id,Number_of_items,Base_price,Shipping_charges,Handling_charges));

System.out.println("Sales id" + Sales_id);

System.out.println("item name" + Item_name);

System.out.println("Number of items" + Number_of_items);

System.out.println("Total price" + x);( Gupta, 2015).

if(x>=25&&x<50)

{

System.out.print("Your gift is :iChipKart T-Shirt ");

}

else if(x>=50&&x<100){

System.out.print("Your gift is :iChipKart backpack ");

}

else if(x>=100)

{

System.out.print("Your gift is :iChipKart portable hard disk of 1Tb");

}

else{

    System.out.print("No gift to be awarded");  

}(Award, 2013). 

}

}   

Reference 

Award,E.(2013) Systems Analysis and Design .3rd edn.Delhi:Galgotia Publications Pvt Ltd.

Gupta,B.(2015) Power System Analysis and Design.1st edn.New Delhi: S Chand & Company.

Goyal, A. (2011) systems Analysis and Design Paperback .2nd edn.INDIA:Prentice Hall India Learning Private Limited.

Karumanchi,N.(2012) Peeling Design Patterns: For Beginners and Interviews.5th edn.New York:CareerMonk Publications.

Laplante,P.(2013) Real-Time Systems Design and Analysis: Tools for the Practitioner.2nd edn.New Jersey:Wiley.

Singh,B.(2016) Systems Analysis and Design.4th edn.Delhi:New Age International Private Limited.

Wixom,D.(2016) Systems Analysis and Design.2nd edn. New Jersey: Wiley publishers.


Buy MITS4002 Object Oriented Programming with Java Answers Online

Talk to our expert to get the help with MITS4002 Object Oriented Programming with Java Answers to complete your assessment on time and boost your grades now

The main aim/motive of the management assignment help services is to get connect with a greater number of students, and effectively help, and support them in getting completing their assignments the students also get find this a wonderful opportunity where they could effectively learn more about their topics, as the experts also have the best team members with them in which all the members effectively support each other to get complete their diploma assignments. They complete the assessments of the students in an appropriate manner and deliver them back to the students before the due date of the assignment so that the students could timely submit this, and can score higher marks. The experts of the assignment help services at urgenthomework.com are so much skilled, capable, talented, and experienced in their field of programming homework help writing assignments, so, for this, they can effectively write the best economics assignment help services.

Get Online Support for MITS4002 Object Oriented Programming with Java Assignment Help Online

Copyright © 2009-2023 UrgentHomework.com, All right reserved.