Red de conocimiento informático - Aprendizaje de código fuente - ¿Qué ideas de programación se basan en el diseño de formularios en aplicaciones de bases de datos?

¿Qué ideas de programación se basan en el diseño de formularios en aplicaciones de bases de datos?

Orientado a objetos

La orientación a objetos (OO) es el enfoque actual de la industria informática. Fue la corriente principal de los métodos de desarrollo de software en la década de 1990. Los conceptos y aplicaciones orientados a objetos han trascendido la programación y el desarrollo de software y se han expandido a una amplia gama. Como sistemas de bases de datos, interfaces interactivas, estructuras de aplicaciones, plataformas de aplicaciones, sistemas distribuidos, estructuras de gestión de redes, tecnología CAD, inteligencia artificial y otros campos.

Cuando se trata de orientación a objetos, hay muchos artículos en esta área. Sin embargo, hay muy pocas definiciones explícitas de objetos o descripciones de objetos; al menos yo no he encontrado ninguna todavía. Inicialmente, "orientado a objetos" se refiere específicamente al uso de métodos de diseño como la encapsulación, la herencia y la abstracción en la programación. Sin embargo, es evidente que esta definición ya no es adecuada a la situación actual. El pensamiento orientado a objetos ha estado involucrado en todos los aspectos del desarrollo de software. Por ejemplo, el análisis orientado a objetos (OOA, Object Oriented Analysis), el diseño orientado a objetos (OOD, Object Oriented Design) y lo que solemos llamar programación orientada a objetos (OOP, Object Oriented Programming). Muchos artículos sobre orientación a objetos solo describen los problemas a los que se debe prestar atención en el desarrollo orientado a objetos o los mejores métodos de diseño adoptados. Leer estos artículos puede beneficiarle en gran medida sólo si realmente comprende qué es un objeto y qué es la orientación a objetos. En este punto, me temo que los principiantes e incluso aquellos que han estado involucrados en trabajos relacionados durante muchos años tendrán una idea vaga de ellos.

La orientación a objetos es el enfoque actual de la industria informática y fue la corriente principal de los métodos de desarrollo de software en la década de 1990. Los conceptos y aplicaciones orientados a objetos han trascendido la programación y el desarrollo de software y se han expandido a una amplia gama. Como sistemas de bases de datos, interfaces interactivas, estructuras de aplicaciones, plataformas de aplicaciones, sistemas distribuidos, estructuras de gestión de redes, tecnología CAD, inteligencia artificial y otros campos.

1. Problemas con los métodos de desarrollo tradicionales

1. Mala reutilización del software

Reusabilidad significa que lo mismo se puede utilizar varias veces sin modificaciones o con ligeras modificaciones. Naturaleza reutilizable. La reutilización del software es uno de los objetivos que persigue la ingeniería de software.

2. Mala mantenibilidad del software

La ingeniería de software enfatiza la mantenibilidad del software, enfatiza la importancia de la documentación y estipula que el producto de software final debe estar compuesto por componentes de configuración completos y consistentes. En el proceso de desarrollo de software, siempre se enfatiza que la legibilidad, modificabilidad y capacidad de prueba del software son indicadores de calidad importantes del software. La práctica ha demostrado que el costo de mantenimiento del software desarrollado utilizando métodos tradicionales sigue siendo muy alto. La razón es que la modificabilidad es pobre y el mantenimiento es difícil, lo que resulta en una mantenibilidad deficiente.

3. El software desarrollado no puede satisfacer las necesidades del usuario.

El uso de métodos estructurados tradicionales para desarrollar sistemas de software a gran escala implica conocimientos en varios campos cuando los requisitos de desarrollo son vagos o los requisitos cambian. dinámicamente, al desarrollar un sistema, el sistema de software desarrollado a menudo no puede satisfacer realmente las necesidades de los usuarios.

La estabilidad, modificabilidad y reutilización del software desarrollado utilizando métodos estructurados son relativamente pobres. Esto se debe a que la esencia de los métodos estructurados es la descomposición funcional, a partir de un único componente que representa la función general del sistema objetivo. A partir del procesamiento, el procesamiento complejo se descompone en subprocesamiento de arriba a abajo, de modo que se descompone capa por capa hasta que solo quedan unas pocas funciones de subprocesamiento que son fáciles de implementar, y luego se utilizan las herramientas correspondientes para describir. cada nivel más bajo de procesamiento. Por lo tanto, un enfoque estructurado estructura el sistema en torno a "procesos" que implementan funciones de procesamiento. Sin embargo, los cambios en los requisitos del usuario son en su mayoría funcionales, por lo que dichos cambios pueden ser desastrosos para el diseño basado en procesos. La estructura del sistema diseñada con este método suele ser inestable. Los cambios en las necesidades de los usuarios a menudo provocan cambios importantes en la estructura del sistema, lo que requiere mucho dinero para lograr dichos cambios.

2. Conceptos básicos de orientación a objetos

(1) Objeto.

Un objeto es cualquier cosa que la gente quiera estudiar. Desde los números enteros más simples hasta aviones complejos, pueden considerarse objetos y no solo pueden representar cosas específicas, sino también reglas, planes o eventos abstractos.

(2) El estado y comportamiento del objeto.

Los objetos tienen estado y un objeto utiliza valores de datos para describir su estado.

Los objetos también tienen operaciones, que se utilizan para cambiar el estado del objeto. El objeto y sus operaciones son el comportamiento del objeto.

Los objetos realizan la combinación de datos y operaciones, de modo que los datos y las operaciones se encapsulan en la unidad de los objetos

(3) Clase.

La abstracción de objetos con propiedades iguales o similares es una clase. Por tanto, la abstracción de un objeto es una clase y la concreción de una clase es un objeto. También se puede decir que una instancia de una clase es un objeto.

Las clases tienen atributos, que son abstracciones del estado de los objetos y utilizan estructuras de datos para describir los atributos de la clase.

Una clase tiene una operación, que es una abstracción del comportamiento del objeto, descrita por el nombre de la operación y el método para implementar la operación.

(4) Estructura de clases.

Hay varias categorías en el mundo objetivo, y existen ciertas relaciones estructurales entre estas categorías. Generalmente existen dos relaciones estructurales principales, a saber, relaciones estructurales generales específicas y relaciones estructurales de parte completa.

①General: la estructura específica se denomina estructura de clasificación, y también se puede decir que es una relación "o" o una relación "es una".

②La estructura de partes enteras se llama estructura de ensamblaje y la relación entre ellas es una relación "y", o una relación "tiene un".

(5) Mensajes y métodos.

La estructura utilizada para la comunicación entre objetos se llama mensaje. En las operaciones de objetos, cuando se envía un mensaje a un objeto, el mensaje contiene información para que el objeto receptor realice una determinada operación. El envío de un mensaje debe incluir al menos el nombre del objeto que recibe el mensaje y el nombre del mensaje enviado al objeto (es decir, nombre del objeto, nombre del método). Generalmente, los parámetros deben explicarse. Los parámetros pueden ser nombres de variables conocidos por el objeto que conoce el mensaje, o nombres de variables globales conocidos por todos los objetos.

El proceso de implementación de operaciones en una clase se llama método. Un método tiene un nombre de método, parámetros y un cuerpo de método. El paso de mensajes se muestra en la Figura 10-1.

2. Características orientadas a objetos

(1) Unicidad del objeto.

Cada objeto tiene su propio identificador único, a través del cual se puede encontrar el objeto correspondiente. Durante toda la vida de un objeto, su identidad no cambia y diferentes objetos no pueden tener la misma identidad.

(2) Clasificación.

La clasificación se refiere a abstraer objetos con estructuras de datos (atributos) y comportamientos (operaciones) consistentes en clases. Una clase es una abstracción que refleja propiedades importantes relacionadas con una aplicación ignorando otro contenido irrelevante. La división de cualquier clase es subjetiva, pero debe estar relacionada con la aplicación específica.

(3) Herencia.

La herencia es un mecanismo para que las subclases compartan automáticamente las estructuras de datos y los métodos de las clases principales. Esta es una relación entre clases. Al definir e implementar una clase, puede hacerlo sobre la base de una clase existente, tomar el contenido definido por la clase existente como su propio contenido y agregar contenido nuevo.

La herencia es la característica más importante que distingue los lenguajes de programación orientados a objetos de otros lenguajes y no se encuentra en otros lenguajes.

En la jerarquía de clases, una subclase solo hereda la estructura de datos y los métodos de una clase principal, lo que se denomina herencia única.

En la jerarquía de clases, cuando una subclase hereda las estructuras de datos y los métodos de múltiples clases principales, se denomina herencia múltiple.

En el desarrollo de software, la herencia de clases hace que el software creado sea abierto y extensible. Este es un método eficaz para organizar y clasificar información. Simplifica la creación de objetos y clases, aumentando la reproducibilidad de la misma. código.

El uso de la herencia proporciona una estructura jerárquica estandarizada de clases. A través de la relación de herencia de clases se pueden compartir las características de la empresa, mejorando la reutilización del software.

(4) Polimorfismo (Polymorphism)

Polimorfismo significa que la misma operación, función o proceso se puede aplicar a múltiples tipos de objetos y obtener diferentes resultados. Diferentes objetos pueden producir resultados diferentes al recibir el mismo mensaje. Este fenómeno se llama polimorfismo.

El polimorfismo permite que cada objeto responda a diferentes mensajes de una manera adecuada para sí mismo.

El polimorfismo mejora la flexibilidad y la reutilización del software.