Red de conocimiento informático - Aprendizaje de código fuente - ¿Cuáles son las ventajas de los sistemas de visualización de datos?

¿Cuáles son las ventajas de los sistemas de visualización de datos?

Programación visual Programación visual, también conocida como programación visual: basada en la idea de programación de "lo que ves es lo que obtienes" como principio, se esfuerza por realizar la visualización del trabajo de programación, es decir , los resultados se pueden ver en cualquier momento, y el ajuste de programas y resultados es sincrónico. La programación visual se compara con los métodos de programación tradicionales. Lo "visual" aquí se refiere al hecho de que no se requiere programación y el trabajo de diseño de la interfaz solo se puede completar mediante una operación intuitiva. Actualmente es la mejor herramienta de desarrollo de aplicaciones de Windows. Las características del lenguaje de programación visual se reflejan principalmente en dos aspectos: primero, se basa en el pensamiento orientado a objetos e introduce el concepto de controles y controlado por eventos; segundo, el proceso de desarrollo del programa generalmente sigue los siguientes pasos, es decir, Primero dibuja la interfaz y luego, según los eventos, escribe el código del programa para responder a varias acciones del mouse y el teclado. Diez preguntas sobre la programación visual 1. ¿Qué es la programación visual? La programación visual (visual) es un método de programación completamente nuevo que permite principalmente a los programadores utilizar varios controles proporcionados por el propio software para construirlo como varias interfaces para aplicaciones. 2. ¿Cuáles son las ventajas de la programación visual? La mayor ventaja de la programación visual es que los diseñadores pueden completar el diseño de la aplicación sin escribir o solo necesitan escribir muy poco código de programa, lo que puede mejorar en gran medida la eficiencia del trabajo del diseñador. 3. ¿Cuáles son los lenguajes que se pueden usar para la programación visual? Hay muchos lenguajes que se pueden usar para la programación visual. Los más utilizados son Visual Basic de Microsoft, Visual C ++, Visual Foxpro chino y Delphi de Borland. etc. 4. ¿Cuáles son los conceptos básicos de la programación visual? Los principales conceptos básicos incluyen formas, componentes, propiedades, eventos, métodos, etc. 5. ¿Qué es un formulario? Un formulario se refiere a la ventana utilizada para la programación. Principalmente diseñamos aplicaciones colocando varios componentes (como botones de comando, casillas de verificación, botones de opción, barras de desplazamiento, etc.) en el formulario. interfaz en ejecución. 6. ¿Qué son los componentes? Los llamados componentes son los diversos componentes que componen la interfaz de ejecución del programa, como botones de comando, casillas de verificación, botones de opción, barras de desplazamiento, etc. 7. ¿Qué son las propiedades? Las propiedades son las propiedades de un componente. Explica cómo se muestra el componente durante la ejecución del programa, cuál es el tamaño del componente, dónde se muestra, si es visible, si es válido... 8. ¿En qué categorías se pueden dividir los atributos? se puede dividir en tres categorías, atributos de diseño: es un atributo que puede desempeñar un papel en el diseño; atributo: este es un atributo que solo desempeña un papel durante la ejecución del programa; atributo de solo lectura: es un atributo; que sólo se puede ver pero no se puede cambiar. 9. ¿Qué es un evento? Un evento es una operación en un componente. Por ejemplo, si hace clic en un botón de comando con el mouse, aquí, hacer clic con el mouse se denomina evento (evento de clic). 10. ¿Qué es un método? Un método es una operación específica que se realizará después de que ocurra un evento, similar al programa anterior. Por ejemplo, cuando hacemos clic en el botón de comando "Salir" con el mouse, el programa finalizará ejecutando un comando. El proceso de ejecución del comando se denomina método. Programación orientada a objetos 1. Reseña histórica: En 1967, Kisten Nygaard y Ole Johan Dahl del Centro de Computación de Noruega desarrollaron el lenguaje Simula67, que proporcionó un mayor nivel de abstracción y encapsulación que las subrutinas e introdujo los conceptos de abstracción de datos y clases. Se considera el primero. Lenguaje orientado a objetos. A principios de la década de 1970, el grupo de investigación de Alan Kay en el Centro de Investigación de Palo Alto desarrolló el lenguaje Smalltalk, y luego desarrolló Smalltalk-80, considerado el lenguaje orientado a objetos más puro y que tiene un gran impacto en los objetos. Lenguaje orientado a lenguaje que surgió más tarde. Los lenguajes como Objective-C, C, Self y Eiffl han tenido un profundo impacto.

Con la aparición de los lenguajes orientados a objetos, la programación orientada a objetos surgió y se desarrolló rápidamente. Después de eso, la orientación a objetos continuó penetrando en otras etapas. En 1980, Grady Booch propuso el concepto de diseño orientado a objetos y luego comenzó el análisis orientado a objetos. En 1985 apareció la primera base de datos comercial orientada a objetos. Desde 1990, la investigación sobre análisis, pruebas, medición y gestión orientada a objetos ha logrado grandes avances. De hecho, conceptos como “objetos” y “propiedades de los objetos” se remontan a principios de la década de 1950, cuando aparecieron por primera vez en los primeros escritos sobre inteligencia artificial. Pero tras la aparición de los lenguajes orientados a objetos, el pensamiento orientado a objetos se desarrolló rápidamente. En las últimas décadas, los lenguajes de programación han apoyado cada vez más mecanismos abstractos: desde lenguajes de máquina hasta lenguajes ensambladores, pasando por lenguajes de alto nivel y lenguajes orientados a objetos. Después de la aparición del lenguaje ensamblador, los programadores evitaron usar 0-1 directamente. En su lugar, usaron símbolos para representar las instrucciones de la máquina, lo que facilitó la escritura de programas. Cuando el tamaño del programa siguió creciendo, los lenguajes de alto nivel, como. Aparecieron Fortran, C y Pascal. Estos lenguajes de alto nivel facilitan la escritura de programas complejos y los programadores pueden afrontar mejor la creciente complejidad. Sin embargo, si el sistema de software alcanza una cierta escala, incluso si se aplican métodos de programación estructurados, la situación seguirá siendo incontrolable. Como herramienta para reducir la complejidad surgieron los lenguajes orientados a objetos y con ellos la programación orientada a objetos. 2. Conceptos básicos de programación orientada a objetos Los conceptos de programación orientada a objetos incluyen principalmente: objetos, clases, abstracción de datos, herencia, enlace dinámico, encapsulación de datos, polimorfismo y paso de mensajes. A través de estos conceptos se han materializado concretamente las ideas orientadas a objetos. 1) Objeto El objeto es la entidad básica del tiempo de ejecución. Es una entidad lógica que encapsula datos y el código que opera estos datos. 2) Clase Una clase es una abstracción de objetos del mismo tipo. Todos los datos y el código contenidos en un objeto se pueden construir mediante clases. 3) Encapsulación La encapsulación consiste en agrupar datos y código para evitar interferencias externas e incertidumbre. Ciertos datos y códigos de un objeto pueden ser privados y el mundo exterior no puede acceder a ellos, logrando así diferentes niveles de acceso a datos y códigos. 4) Herencia La herencia es una característica que permite que un objeto de un determinado tipo obtenga un objeto de otro tipo. La reutilización del código se puede lograr mediante la herencia: una nueva clase derivada de una clase existente tendrá automáticamente las características de la clase original y, al mismo tiempo, también puede tener nuevas características propias. 5) Polimorfismo El polimorfismo se refiere a la capacidad de diferentes cosas de tener diferentes expresiones. El mecanismo polimórfico permite que objetos con diferentes estructuras internas compartan la misma interfaz externa, reduciendo de esta manera la complejidad del código. 6) Vinculación dinámica La vinculación se refiere al acto de vincular una llamada a un procedimiento con el código correspondiente. El enlace dinámico es un enlace en el que el código asociado con una llamada a un procedimiento determinado sólo se conoce en tiempo de ejecución. Es una forma específica de implementación polimórfica. 7) Transmisión de mensajes Los objetos necesitan comunicarse entre sí, y la forma de comunicación es enviar y recibir información entre objetos. El contenido del mensaje incluye la identificación del objeto que recibe el mensaje, la identificación de la función que debe llamarse y la información necesaria. El concepto de transmisión de mensajes facilita la descripción del mundo real. 3. Lenguajes orientados a objetos Para ser llamado lenguaje orientado a objetos, un lenguaje debe admitir varios conceptos principales orientados a objetos. Según los diferentes niveles de soporte, los lenguajes orientados a objetos comúnmente conocidos se pueden dividir en dos categorías: lenguajes basados ​​en objetos y lenguajes orientados a objetos. Los lenguajes basados ​​en objetos solo admiten clases y objetos, mientras que los lenguajes orientados a objetos admiten conceptos que incluyen: clases y objetos, herencia y polimorfismo. Por ejemplo, Ada es un lenguaje típico basado en objetos porque no admite herencia ni polimorfismo. Además, otros lenguajes basados ​​en objetos incluyen Alphard, CLU, Euclid y Modula.

Algunos lenguajes orientados a objetos son lenguajes recién inventados, como Smalltalk y Java. Estos lenguajes a menudo absorben la esencia de otros lenguajes y tratan de eliminar sus deficiencias. Por lo tanto, las características de los lenguajes orientados a objetos son particularmente obvias. y lleno de vitalidad; otros evolucionaron transformando los lenguajes existentes y agregando características orientadas a objetos. Como Object Pascal desarrollado a partir de Pascal, Objective-C y C desarrollado a partir de C, Ada 95 desarrollado a partir de Ada, etc. Estos lenguajes conservan la compatibilidad con el lenguaje original y no son lenguajes puramente orientados a objetos, sino porque son. Los predecesores suelen ser lenguajes que tienen cierta influencia, estos lenguajes siguen siendo inmortales y ocupan una posición muy importante entre los lenguajes de programación. 4. Ventajas de la programación orientada a objetos Antes de la aparición de la programación orientada a objetos, la programación estructurada era la corriente principal de la programación. La programación estructurada también se denominaba programación orientada a procesos. En la programación orientada a procesos, los problemas se ven como una serie de tareas que deben completarse. Para completar estas tareas se utilizan funciones (generalmente denominadas rutinas, funciones y procedimientos), y el enfoque de la resolución de problemas se centra en. funciones. La función está orientada a procesos, es decir, se centra en cómo completar tareas específicas de acuerdo con condiciones específicas. En los programas multifunción, muchos datos importantes se colocan en el área de datos globales para que todas las funciones puedan acceder a ellos. Cada función puede tener sus propios datos locales. La siguiente figura muestra la relación entre funciones y datos en un programa de procedimiento. Figura 1 Ejemplo de la relación entre funciones y datos en la programación orientada a procesos. Esta estructura puede fácilmente hacer que otras funciones modifiquen inadvertidamente los datos globales, por lo que no es fácil garantizar la exactitud del programa. Uno de los puntos de partida de la programación orientada a objetos es compensar algunas deficiencias de la programación orientada a procesos: los objetos son los elementos básicos del programa, que conectan estrechamente los datos y las operaciones, y protegen los datos para que no sean modificados accidentalmente por funciones externas. . La siguiente figura muestra la relación entre objetos, funciones y datos en un programa orientado a objetos. Figura 2 Ejemplo de la relación entre funciones y datos en la programación orientada a objetos Al comparar la programación orientada a objetos y la programación orientada a procesos, también podemos obtener otras ventajas de la programación orientada a objetos: 1) El concepto de abstracción de datos puede mantener lo externo. interfaz sin cambios. Cambie la implementación interna para reducir o incluso evitar la interferencia con el mundo exterior; 2) El código redundante se reduce en gran medida a través de la herencia y el código existente se puede expandir fácilmente para mejorar la eficiencia de la codificación, reducir la probabilidad de errores y reducir la dificultad. del mantenimiento del software; 3) Combinado con el análisis orientado a objetos y el diseño orientado a objetos, permite que los objetos en el dominio del problema se asignen directamente al programa, reduciendo el proceso de conversión de enlaces intermedios en el proceso de desarrollo de software; identificación y división de objetos, el sistema de software se puede dividir en Varias partes relativamente independientes hacen que sea más fácil controlar la complejidad del software hasta cierto punto 6) El diseño centrado en objetos puede ayudar a los desarrolladores a comprender problemas tanto desde el punto de vista estático (propiedades) como dinámico (métodos); ) aspectos, para una mejor comprensión Implementar el sistema 7) A través de la agregación y unión de objetos, se puede lograr la expansión de la estructura interna y las funciones externas del objeto al tiempo que se garantizan los principios de encapsulación y abstracción, logrando así la actualización de los objetos desde abajo; a alto. Método de programación orientado a objetos En el diseño interno del módulo de entrada de datos, se adopta un método de diseño orientado a objetos. [6] Los conceptos básicos de la orientación a objetos son los siguientes: Objeto: Un objeto es cualquier cosa que vaya a ser estudiada. Desde un libro hasta una biblioteca, un único número entero hasta una enorme base de datos de secuencias de números enteros, fábricas automatizadas extremadamente complejas y transbordadores espaciales pueden considerarse objetos. No solo pueden representar entidades tangibles, sino también objetos intangibles (abstractos). , planes o eventos. Un objeto consta de datos (que describen los atributos de las cosas) y operaciones que actúan sobre los datos (que reflejan el comportamiento de las cosas). Desde el punto de vista del programador, el objeto es un módulo de programa. Desde el punto de vista del usuario, el objeto le proporciona el comportamiento deseado. Las operaciones dentro de un par suelen denominarse métodos. Clase: una clase es una plantilla para un objeto. Es decir, una clase es la definición de un grupo de objetos con los mismos datos y las mismas operaciones. Los métodos y datos contenidos en una clase describen los atributos y comportamientos únicos de un grupo de objetos.

Una clase es una abstracción sobre un objeto, y un objeto es la concreción de la clase y una instancia de la clase. Una clase puede tener sus subclases y otras clases, formando una jerarquía de clases. Mensaje: un mensaje es una especificación para la comunicación entre objetos. Generalmente consta de tres partes: el objeto que recibe el mensaje, el nombre del mensaje y los argumentos reales. Características principales de la orientación a objetos: Encapsulación: La encapsulación es una tecnología que oculta información, que se refleja en la descripción de la clase y es una característica importante del objeto. La encapsulación encapsula datos y métodos (funciones) que procesan los datos en un todo para lograr un módulo altamente independiente, de modo que los usuarios solo puedan ver las características externas del objeto (qué mensajes puede aceptar el objeto, qué capacidades de procesamiento tiene), y Las propiedades internas del objeto (los datos privados que contienen el estado interno y los algoritmos que implementan las capacidades de procesamiento) están ocultas al usuario. El propósito de la encapsulación es separar al diseñador del objeto del uso del objeto. El usuario no necesita conocer los detalles de la implementación del comportamiento y solo necesita usar el mensaje proporcionado por el diseñador para acceder al objeto. Herencia: la herencia es un mecanismo mediante el cual las subclases comparten automáticamente datos y métodos entre las clases principales. Está representado por la función derivada de la clase. Una clase hereda directamente todas las descripciones de otras clases y puede modificarse y expandirse al mismo tiempo. La herencia es transitiva. La herencia se divide en herencia única (una subclase tiene solo una clase principal) y herencia múltiple (una clase tiene varias clases principales). Los objetos de clase se cierran individualmente. Si no existe un mecanismo de herencia, habrá mucha duplicación de datos y métodos en los objetos de clase. La herencia no sólo apoya la reutilización del sistema, sino que también promueve la extensibilidad del sistema. Polimorfismo: un objeto realiza acciones en función de los mensajes que recibe. El mismo mensaje puede producir acciones completamente diferentes cuando lo reciben diferentes objetos. Este fenómeno se llama polimorfismo. Usando el polimorfismo, los usuarios pueden enviar un mensaje común y dejar todos los detalles de implementación al objeto que recibe el mensaje. En este caso, el mismo mensaje puede llamar a diferentes métodos. Por ejemplo: el método de impresión llamado cuando se envía un mensaje de impresión a una figura o tabla será completamente diferente del método de impresión llamado cuando el mismo mensaje de impresión se envía a un archivo de texto. La implementación del polimorfismo está respaldada por la herencia, que utiliza la relación jerárquica de la herencia de clases para almacenar protocolos con funciones comunes lo más alto posible en la jerarquía de clases, mientras coloca diferentes métodos para lograr esta función en niveles inferiores. en estos niveles bajos pueden responder de manera diferente a mensajes comunes. El polimorfismo se puede lograr en OOPL redefiniendo las funciones de clase base (definidas como funciones sobrecargadas o funciones virtuales) en clases derivadas. En resumen, se puede ver que en el método orientado a objetos, los objetos y la entrega de mensajes expresan respectivamente los conceptos de cosas y la interconexión entre cosas. Las clases y la herencia son paradigmas de descripción que se adaptan a la forma general de pensar de las personas. Los métodos permiten realizar diversas operaciones sobre objetos de esta clase. El punto básico de este paradigma de programación de objetos, clases, mensajes y métodos es la encapsulación de objetos y la herencia de clases. La encapsulación puede separar la definición y la implementación del objeto, la herencia puede reflejar la relación entre clases y el enlace dinámico resultante y el polimorfismo de entidad constituyen las características básicas de la orientación a objetos. El diseño orientado a objetos es un método sistemático que aplica ideas orientadas a objetos al proceso de desarrollo de software y guía las actividades de desarrollo. Es una metodología basada en el concepto de "objeto". Un objeto es una encapsulación compuesta de datos y operaciones permitidas. Tiene una correspondencia directa con una entidad objetivo. Una clase de objeto define un grupo de objetos con propiedades similares. La herencia es una forma de compartir los atributos y operaciones de clases con relaciones jerárquicas. La llamada orientación a objetos se basa en el concepto de objetos, tomando los objetos como centro y utilizando clases y herencia como mecanismo de construcción para reconocer, comprender, representar el mundo objetivo y diseñar y construir los sistemas de software correspondientes. . Según Bjarne STroustRUP, el paradigma de programación orientada a objetos: 1. Decida qué clases desea; 2. Proporcione un conjunto completo de operaciones para cada clase. 3. Utilice explícitamente la herencia para expresar los puntos más comunes. A partir de esta definición, podemos ver que el diseño orientado a objetos es "el proceso de determinar las clases requeridas, las operaciones de clases y las asociaciones entre clases de acuerdo con los requisitos".

Características y problemas del método de diseño orientado a objetos El método de diseño orientado a objetos se basa en objetos y utiliza herramientas de software específicas para completar directamente la conversión de la descripción de los objetos a la estructura del software. Esta es la característica y el logro más importante del método de diseño orientado a objetos. La aplicación de métodos de diseño orientado a objetos resuelve el problema de inconsistencia entre las herramientas de descripción del mundo objetivo y las estructuras de software en los métodos de desarrollo estructurados tradicionales, acorta el ciclo de desarrollo y resuelve el complicado proceso de múltiples conversiones y asignaciones desde el análisis y el diseño a las estructuras de los módulos de software. , es un método de desarrollo de sistemas prometedor. Sin embargo, al igual que el método prototipo, el método de diseño orientado a objetos requiere cierto soporte de software básico antes de poder aplicarse. Además, en el desarrollo de MIS a gran escala, si no existe una división general de arriba hacia abajo, el diseño orientado a objetos debe realizarse. Los métodos de diseño adoptados desde abajo hacia arriba para desarrollar sistemas también causarán problemas como una estructura del sistema irrazonable y relaciones desequilibradas entre varias partes. Por lo tanto, los métodos de diseño orientado a objetos y los métodos estructurados siguen siendo dos métodos interdependientes e insustituibles en el campo del desarrollo de sistemas.