Índice de contenido
En segundo lugar, los paquetes aún proporcionan una asociación relativamente flexible entre los datos y los procedimientos. Un paquete de Ada en realidad puede tratar con muchos datos estructuras con una amplia gama de métodos. Los datos y los métodos están relacionados. principalmente a través del conjunto relacionado de conceptos representados por el paquete. En contraste un La clase tiende a relacionar estrechamente datos y métodos en un solo concepto. De hecho, uno de los Las pautas relacionadas con un buen diseño de clase es que si una clase representa más de una concepto, entonces debe dividirlo en dos clases. Por lo tanto, esta estrecha asociación entre datos y código significa que el resultado concepto es más que una simple estructura de datos (está más cerca de una realización concreta de concepto). Por ejemplo: Cualquiera que use una instancia de Fecha ahora obtiene un objeto que puede decirle si es un día de la semana o no y puede contener los datos apropiados. Tenga en cuenta que el método is_day_of_week() no toma otros parámetros además de sí mismo, no necesita como él y la información de la fecha son parte de la misma cosa. Esto significa que un el usuario de un objeto de fecha nunca necesitará tener en sus manos la retención de datos real la fecha (es decir, los números enteros día, mes y año). En su lugar, deben ir a través de la métodos. Esto puede parecer solo un pequeño paso, pero es significativo, nada fuera del objeto debería necesitar acceder a los datos dentro del objeto. En contraste el estructura de datos en la versión de procedimiento, no sólo se lleva a cabo por separado para el procedimiento duraciones, los valores para el día, el mes o el año también se deben modificar directamente. Por ejemplo, compare las diferencias entre un extracto de un programa y manipular fechas (usando un lenguaje de programación procedimental): fecha de la clase: def init(auto, día, mes, año): self.dia = dia self.mes = mes self.año = año def es_día_de_la_semana(self): “““Verificar si la fecha es un día de la semana””” # … Por definir def en_mes(self, index_mes): “““Comprobar si el mes está en month_index””” return self.mes == índice_mes 236 21 ¿Por qué molestarse con la orientación a objetos?
popular post
El modelo AR de series temporales univariadas
Resumen: En esta entrada, descubrirá el modelo AR: El modelo autorregresivo.
Leer másEvaluación de modelos para pronosticar
Resumen: Al desarrollar modelos de aprendizaje automático, generalmente se comparan varios modelos durante la fase de construcción.
Leer másModelos para pronosticar
Resumen: El pronóstico, traducido groseramente como la tarea de predecir el futuro, ha estado presente en la sociedad humana durante siglos.
Leer más