Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Nombre Alumno
Nombre Asignatura
Instituto IACC
28 de Junio de 2021
Desarrollo
Supongamos que usted ha sido seleccionado para crear un manual de usuario sobre los
dónde:
Las siguientes son las clases e interfaces creadas para el sistema de comercialización de los
Productos agrícolas, estos permiten la realización del patrón de diseño del método de fábrica, y
La superclase abstracta de objetos producidos Factory Method, esta define la interfaz de los
public Productocerdo() {
super();
}
Esta clase es una clase separada necesaria para crear una clase específica. Se hace
producto.crearProductoCarne();
}
Es una interfaz. Un objeto que crea un objeto de tipo Productocarne basado en la solicitud
del objeto de la clase de orden de producto, la cual se debe implementar en esta interfaz.
Productocerdo
public class FactoryMercaderia implements IFFactoryMercaderia {
@Override
public Productocerdo crearProductocerdo() {
return new Productocerdo();
}
@Override
public Productocerdo actualizarProductoVacuno(Productocerdo productocerdo) {
// codigo para buscar el producto cerdo en la base de datos
// codigo para actualizar el producto cerdo retornado en la busqueda
return productocerdo;
}
@Override
public Productocerdo consultarProductocerdo(long codigoProducto) {
// codigo para buscar el producto cerdo dentro de base de datos
return productocerdo;
}
}
abstract factory .
producto1.crearProductoCerdo();
apartado anterior.
Productocerdo y Productovacuno.
public class FactoryMercaderia implements IFFactoryMercaderia {
@Override
public Productocerdo crearProductocerdo() {
return new Productocerdo();
}
@Override
public Productocerdo actualizarProductoVacuno(Productocerdo productocerdo) {
// codigo para buscar el producto cerdo en la base de datos
// codigo para actualizar el producto cerdo retornado en la busqueda
return productocerdo;
}
@Override
public Productocerdo consultarProductocerdo(long codigoProducto) {
// codigo para buscar el producto vacuno en la base de datos
return productocerdo;
}
@Override
public ProductoEquino crearProductovacuno() {
return new Productovacuno();
}
@Override
public ProductoEquino actualizarProductoEquino(ProductoEquino productovacuno) {
// codigo para buscar el producto vacuno en la base de datos
// codigo para actualizar el producto vacuno retornado en la busqueda
return productovacuno;
}
@Override
public Productovacuno consultarProductovacuno(long codigoProducto) {
// codigo para buscar el producto vacuno en la base de datos
return productovacuno;}
}
Al aplicar este patrón, nos aseguramos de que se cree una instancia de la clase principal de la
Aplicación y de que todos los usuarios dispongan de un punto de acceso global al sistema. Este
caso de estudio tiene arquitectura cliente-servidor, donde el servidor ejecuta la
class Singleton
{
private Singleton()
{
singleton = " crear una sola instancia de este tipo de clase";
}
return instancia_unica;
}
}
operaciones) para describirlo, la aplicación de este modelo se puede establecer en este sistema.
import java.util.Date;
public class ProductoGenerico {
private String nombreProducto;
private String tipoProducto;
private float precioProducto;
private long codigoProducto;
private String clasificacion;
private String paisOrigen;
private Date fechaVencimiento;
public ProductoGenerico(String nombreProducto, String tipoProducto, float
precioProducto, long codigoProducto,
String clasificacion, String paisOrigen, Date fechaVencimiento) {
super();
this.nombreProducto = nombreProducto;
this.tipoProducto = tipoProducto;
this.precioProducto = precioProducto;
this.codigoProducto = codigoProducto;
this.clasificacion = clasificacion;
this.paisOrigen = paisOrigen;
this.fechaVencimiento = fechaVencimiento;
}
public String getNombreProducto() {
return nombreProducto;
}
public void setNombreProducto(String nombreProducto) {
this.nombreProducto = nombreProducto;
}
public String getTipoProducto() {
return tipoProducto;
}
public void setTipoProducto(String tipoProducto) {this.tipoProducto = tipoProducto;
}
public float getPrecioProducto() {
return precioProducto;
}
public void setPrecioProducto(float precioProducto) {
this.precioProducto = precioProducto;
}
public long getCodigoProducto() {
return codigoProducto;
}
public void setCodigoProducto(long codigoProducto) {
this.codigoProducto = codigoProducto;
}
public String getClasificacion() {
return clasificacion;
}
public void setClasificacion(String clasificacion) {
this.clasificacion = clasificacion;
}
public String getPaisOrigen() {
return paisOrigen;
}
public void setPaisOrigen(String paisOrigen) {
this.paisOrigen = paisOrigen;
}
public Date getFechaVencimiento() {
return fechaVencimiento;
}
public void setFechaVencimiento(Date fechaVencimiento) {
this.fechaVencimiento = fechaVencimiento;
}
//Estos puntos indican la creacion de muchos más atributos junto con sus metods getters y
setters
protected ProductoGenerico crearProductoGenerico() {
//codigo de creacion de objeto generico
}
protected ProductoGenerico actualizarProductoGenerico(ProductoGenerico
productoGenerico) {
//codigo de creacion de objeto generico
}//Estos puntos indican la creación muchos otros métodos u operaciones
}
ProductoVacuno, objeto ProductoEquino) tenga los mismos datos duplicados en términos de sus
ejemplo :
para clonar un objeto, pero debe tenerse en cuenta que no se trata de una implementación de un
patrón de diseño.
El diseño esta basado en una arquitectura cliente –servidor,esto nos ayuda a tener multiples
accesos al sistema en tiempo real(al mismo tiempo), esta arquitectura requiere implementar
Rendimiento: crear una conexión es una operación costosa, por lo que debe reutilizarse y la
base de datos MySQL. Cabe señalar que el patrón de diseño no está completamente
import java.sql.*;
public class ConexionBD {
private static Connection cnx = null;
public static Connection crearConexion() throws SQLException, ClassNotFoundException
{
if (cnx == null) {
try {
Class.forName("com.mysql.jdbc.Driver");
cnx = DriverManager.getConnection("jdbc:mysql://localhost/java_mysql", "root", "");
} catch (SQLException ex) {
throw new SQLException(ex);
} catch (ClassNotFoundException ex) {
throw new ClassCastException(ex.getMessage());
}
}
return cnx;
}
public static void cerrar() throws SQLException {
if (cnx != null) {
cnx.close();
}}
}
7. Mencione donde se pueden utilizar los patrones de diseño creacional .
porque estos patrones permiten la creación de clases para fabricar (crear objetos o instancias)
objetos. En este caso de estudio se utiliza un patrón de diseño innovador, para este caso se
Bibliografía
www.lawebdelprogramador.com