Ideas de programación orientada a objetos de Delphi
Liu Yizhu
Prefacio
La primera vez que conocí Delphi no fue por el software Delphi de Borland, sino porque leí la palabra en la obra clásica de Platón "Los Diálogos de Platón".
Un amigo mío fue a .
Delfos es donde vive el oráculo, el dios de la profecía. "Los Diálogos de Platón" registran que un amigo de Sócrates fue a Delfos para preguntarle a Pythian, la diosa de la profecía, quién era la persona más sabia. Los pitios decían que nadie era más sabio que Sócrates. Sócrates estaba profundamente desconcertado porque se encontraba rodeado de políticos, poetas, filósofos y artistas. ¿No son más sabios estos “expertos” y “autoridades”? Soy mucho peor que ellos.
Sócrates visitó a estos "expertos" y "autoridades" uno por uno, pero descubrió que a menudo eran farisaicos, se engañaban a sí mismos y pretendían saber cosas que no entendían. A lo largo de la visita, Sócrates también descubrió que sabía muy poco en muchos aspectos. Pero Sócrates no pretendió comprenderlo, confesó su ignorancia. Esto es lo que Pythian, la diosa de la profecía, llama verdadera "sabiduría".
De hecho, este tipo de sabiduría no fue propuesta por primera vez por los antiguos griegos. Mucho antes de Sócrates, Lao Tse de nuestro país ya lo había resumido. En el Tao Te Ching se dice que "el que conoce a los demás es sabio, y el que se conoce a sí mismo es sabio".
Ahora, Delphi que utilizamos ya es un excelente lenguaje de programación y herramienta de desarrollo de software. Sin embargo, frente al profundo y en constante desarrollo Delphi, todavía sabemos muy poco sobre muchos aspectos. Pero al aprender y utilizar Delfos, ¿tenemos también la actitud de autoconocimiento de Sócrates y la sabiduría de saberlo todo?
Hay muchos amigos que eligen Delphi. El pensamiento inicial puede deberse a que Delphi es potente, fácil de aprender y utilizar. Incluso afirmaron dominar Delphi en tres meses y se atrevieron a desarrollar software de forma independiente en medio año. De hecho, todo lo que pueden hacer es arrastrar y soltar controles. Cuando están intoxicados por sus propios programas, en realidad lo están por la exquisita sabiduría de Delphi y los controles de otras personas. Este tipo de programador de Delphi a menudo recibe el sobrenombre de "procrastinador". Pero parecen considerarse maestros de Delfos.
También hay muchos amigos que han abandonado Delphi. El pensamiento inicial puede deberse a que piensan que Delphi es solo una herramienta RAD similar a VB. En su opinión, Delphi es sólo programación de control y realmente no puede implementar programación orientada a objetos como C++ o Java. Dudan de que Delphi tenga las características de un lenguaje de programación orientado a objetos y de que pueda implementar tecnologías orientadas a objetos como el polimorfismo y los patrones. A sus ojos, sólo aquellos que usan C++ o Java son verdaderos maestros.
Entonces, ¿qué es un verdadero maestro y cómo se puede llegar a serlo?
Primero, echemos un vistazo a qué es un maestro de artes marciales, tal vez podamos inspirarnos en ello.
Cualquiera que ame las artes marciales o las novelas de artes marciales sabe que existen dos formas de practicar las artes marciales: el entrenamiento externo y el entrenamiento interno. El entrenamiento externo de puños, patadas y armas, la calidad de los puños, patadas y armas son la clave, el entrenamiento interno del Qi, el entrenamiento para refinar el Qi, el entrenamiento del espíritu y el retorno de la debilidad es la base; La mayor diferencia entre estos dos métodos de cultivo radica en la relación funcional entre tiempo y habilidad, como se muestra en la Figura 1. En términos simples, en los primeros tres años, aquellos que practican habilidades externas pueden derrotar fácilmente a aquellos que practican habilidades internas; en el décimo año, las dos partes solo pueden empatar después de 15 años, sin importar cómo practiquen las habilidades externas; no podrás competir con quienes practican habilidades internas. 20 años después, el maestro de las habilidades internas es invencible en el mundo. La razón radica en la relación dialéctica entre "Qi" y "Qi".
Las "armas" son objetos tangibles, y las espadas, pistolas, espadas y alabardas son todas armas tangibles. Practicar artes marciales al aire libre es inseparable de estas armas tangibles. Practicar artes marciales es entrenar armas. Por lo tanto, los maestros de artes marciales que usan pistolas y espadas a menudo confían en la calidad de las armas.
El "Qi" es una sustancia invisible, y toda la sabiduría, el poder mágico y los pensamientos son sustancias invisibles. El cultivo interno de Qigong es inseparable de estas cualidades intangibles. Practicar Qigong es entrenamiento de Qi. Por lo tanto, los verdaderos maestros de las artes marciales a menudo no necesitan depender de armas específicas. Para ellos, cualquier objeto tangible puede transformarse en un arma según el espíritu. Un abanico plegable o un batidor de moscas en la mano es tan poderoso como una famosa lanza o espada, lo cual se debe a la obtención de Qi.
Figura 1 Diagramas de función de tiempo y habilidad de dos métodos de cultivo.
En el desarrollo de software, las herramientas de programación son "instrumentos" y las ideas de programación son "qi".
Entre las herramientas de programación, herramientas fáciles de usar como VB y PB; herramientas difíciles de usar como ensamblador y C++; herramientas antiguas como FORTRAN y COBOL; y herramientas de moda como Java y C#;
En el pensamiento de programación, existen los orientados a objetos y los orientados a procesos, que son tanto una visión del mundo como una metodología. El primero refleja la forma en que la gente piensa sobre los objetos objetivos y el segundo refleja la forma en que las máquinas piensan sobre las instrucciones. En la práctica continua del desarrollo de software, la superioridad del primero se ha reflejado y confirmado continuamente.
Dominar las ideas de programación orientada a objetos es como comprender el verdadero significado del entrenamiento de Qi. ¡Su importancia a menudo supera la elección del lenguaje de programación!
Incluso si alguien elige herramientas orientadas a objetos, todavía no puede convertirse en un verdadero maestro. Porque lo que valora es la calidad del "qi" e ignora el cultivo del "qi".
De hecho, "No importa si un sistema o lenguaje está orientado a objetos. Lo que importa es cómo puede estar orientado a objetos y qué métodos se utilizan para lograr los beneficios relacionados". ("Método orientado a objetos: principios y práctica" Machinery Industry Press, marzo de 2003)
Aunque es fácil practicar armas, es difícil convertirse en un maestro. Aunque el entrenamiento de Qi es bueno, los resultados son lentos y la soledad es insoportable. Para la gente común, no es posible comprender claramente la propia mente y tomar el camino correcto. Por lo tanto, muchos maestros de artes marciales practican primero las armas y luego el Qi. Practican tanto interna como externamente para lograr el éxito.
Los recién llegados al mundo de las artes marciales necesitan utilizar el poder de las armas para compensar su falta de fuerza interna. La calidad de las armas suele ser muy importante. Pero a medida que aumentan las artes marciales y se desarrolla la fuerza interna, la dependencia de las armas debería disminuir. "La leyenda de los héroes del cóndor" Yang Guo practica el manejo de la espada. Cuando aprende por primera vez, le gusta usar espadas afiladas. Después de dominar el manejo de la espada, le gusta usar espadas sin filo. Después de dominar sus habilidades internas, las ramas de los árboles también pueden hacerlo. ser utilizados como espadas. Entonces, para los verdaderos maestros, la calidad de la espada a menudo no importa.
Del mismo modo, el crecimiento de los maestros del software también pasa por este proceso. Los principiantes en programación deben elegir un buen lenguaje, que pueda lograr el doble de resultado con la mitad de esfuerzo, al mismo tiempo que estimula el interés y mejora la confianza. Una vez que se familiarice con un lenguaje, debe aprovecharlo como una oportunidad para dominar las ideas de programación orientada a objetos. En este momento, lo que le resulta familiar ya no es la gramática, las funciones y las bibliotecas de clases del lenguaje en sí, sino métodos de pensamiento como vinculación, polimorfismo, patrones, etc., y luego, por analogía, no es difícil aprender. otros lenguajes orientados a objetos. Los verdaderos maestros del software que trabajan duro en sus habilidades internas, tienen el coraje de practicar y, en última instancia, tienen éxito, no están limitados por los lenguajes de programación. Puede que estén familiarizados con una herramienta de desarrollo, pero es sólo una herramienta que lleva su espíritu invisible. Son de mente abierta, deseosos de aprender y buenos para resumir. Sus ideas, métodos, modelos e incluso filosofías no sólo trascienden los lenguajes de programación, sino que también pueden guiar la práctica de los lenguajes de programación.
Delphi proporciona un atajo para el crecimiento de los maestros del software tanto interna como externamente. Cuando aprendes y practicas Delphi, puedes usar sus ventajas de RAD y control para derrotar rápidamente a tus oponentes cuando recién estás comenzando. Cuando aprendes y practicas Delphi, también puedes usar sus capacidades de programación orientada a objetos, la fuerza de VCL y la fuerza; de tocino para lograr un éxito invencible.
La mundialmente famosa Secta de la Espada Huashan una vez se dividió en "Secta de la Espada" y "Secta Qi". La primera solo practicaba armas y enseñaba movimientos; la segunda también practicaba Qi y reconstruía los cimientos.
Aprender Delphi es como practicar el manejo de la espada de Huashan. Tomar el camino RAD es "Sword Master" y comenzar desde OOP es "Air Master". Al primero le gusta usar controles y está interesado en técnicas y trucos extraños; al segundo le gustan los objetos y los patrones de métodos. El primero persigue resultados rápidos, mientras que el segundo tiene grandes aspiraciones.
Creo que los amigos que eligen Delphi por RAD o abandonan Delphi por la programación orientada a objetos no entienden realmente Delphi. Delphi es un buen software de desarrollo RAD, pero es difícil convertirse en un verdadero maestro sin aprender programación orientada a objetos y profundizar en VCL. De manera similar, Delphi es una auténtica herramienta de programación orientada a objetos. Combinado con el potente RAD y el compilador eficiente de Delphi, puede tener más ventajas y mayor eficiencia que otros lenguajes de programación orientada a objetos. Si podemos romper con las opiniones sectarias, practicar "qi" y "qi" juntos y practicar habilidades tanto internas como externas, creo que no será difícil para un programador de Delphi pasar de ser un rapidito de RAD a un maestro de OOP, y eventualmente estar orgulloso del mundo y dominar el mundo.
Anteriormente hablé brevemente de la relación dialéctica entre "qi" y "qi". En programación, una de las claves para cultivar y mejorar la fuerza interna es dominar la idea de la programación orientada a objetos. De hecho, creo que la idea de la programación orientada a objetos es la más acorde con la belleza de la verdad invisible del camino.
¿Por qué dices eso? "La gran transformación de la antigüedad nace con lo invisible" (la segunda reacción en "Guiguzi"). El misterio del Qi radica primero en su "gran transformación". La gran transformación es la gran creación del cielo y la tierra, que reúne todo el poder de la creación y el cambio. El pensamiento de programación orientada a objetos tiene esta cualidad.
Laozi dijo: "El comienzo sin nombre del cielo y la tierra, la madre sin nombre de todas las cosas". Sin nombre significa indescriptible e indefinible. Lo más misterioso de la llamada forma de pensar orientada a objetos es cómo identificar y definir objetos a partir de "sin nombre" y cómo construir y utilizar objetos a partir de "con nombre".
Para los desarrolladores de software, el proceso de comprender entidades objetivas y analizar y diseñar las necesidades del usuario es el proceso de descubrir y definir objetos, y es un proceso que va desde lo anónimo hasta lo famoso. Sin embargo, los objetos aquí son diferentes de las variables o funciones en los procesos orientados a procesos. Los objetos son creados por clases, son conceptos abstractos, "nombres" definibles y son la madre de los objetos.
Como resultado, el Tai Chi da origen a Liang Yi y Liang Yi da a luz a Bagua. A través de la herencia y derivación de clases, todas las cosas nacen y se forman los sistemas.
Incluso la "herramienta" como herramienta de programación orientada a objetos también encarna y lleva el "qi" de las ideas de programación orientada a objetos.
La primera frase del capítulo inicial de "Zhou Yi Shen Tong Qi", una obra clásica de entrenamiento de energía interna conocida como el "Sutra del rey de la alquimia eterna", es "Qian y Kun son las puertas de Yi y los padres de todos". hexagramas Kan Li Kuang Guo, el eje principal del centro de movimiento, femenino. Se cree que los cuatro hexagramas de Mu son "Pu".
Desde la perspectiva del desarrollo de software, aunque las herramientas de programación orientada a objetos brindan la posibilidad de construir infinitos tipos de sistemas de software, esta infinidad se basa en el marco limitado de su propia biblioteca de clases. Ya sea el VCL de Delphi, la biblioteca de clases de Java o el marco .net, todos están construidos sobre una estructura similar a la de Zhouyi Bagua. "Es fácil tener Tai Chi, el Tai Chi produce dos formas, dos formas producen cuatro imágenes y cuatro imágenes producen Bagua".
Taiji es un objeto en Delphi, es el átomo del sistema constructivo, es el antepasado de todas las clases, tiene las características básicas de todas las clases. En el mundo de la programación de Delphi, la clase raíz TObject genera la clase de objeto persistente TPersistent, y la clase de objeto persistente TPersistent genera la clase de objeto componente TComponent, que proporciona controles ricos y funciones poderosas para desarrollar aplicaciones.
Sin embargo, el marco estructural de la biblioteca de clases no solo nos brinda componentes que pueden usarse como "instrumentos", sino que, lo que es más importante, esta estructura implementa la construcción y el cambio de "qi" a través de la relación y funciones relacionadas entre clases, reflejando objetos. orientado La esencia del pensamiento de programación. Proporciona una excelente demostración para que creemos nuestros propios sistemas.
El segundo misterio del Qi reside en su "origen invisible". La invisibilidad significa su libertad, apertura y adaptabilidad. La idea de la programación orientada a objetos está llena de la sabiduría invisible del "qi".
Por ejemplo, el polimorfismo en la programación orientada a objetos permite a los programadores escribir programas más versátiles y abiertos. Los programadores pueden escribir un método abstracto virtual puro Stop() para el objeto Vehículo. Un método Stop() tan universal no tiene nada que ver con el coche que se conduce. Los programadores pueden dejar que las clases derivadas se preocupen por completar el método stop() y continuar escribiendo sus propios procedimientos generales en un nivel superior de abstracción. Incluso si el método stop() del objeto Car es completamente diferente del método stop() del objeto Bicycle, el programador también puede utilizar Vehicle.stop() El polimorfismo permite que el objeto creado sepa automáticamente qué método apropiado se llamará. . Esto hace que el programa posea la apertura y adaptabilidad del "qi".
Al practicar qigong, se enfatiza que "la virtud superior es la inacción y no se busca mediante la observación. La virtud inferior se practica y su uso es infinito ("Zhou Yi Shen Tong Qi").
En el pensamiento de la programación orientada a objetos, "Shangde" es un método abstracto virtual puro de enlace tardío, una interfaz de objeto que permanece sin cambios y se adapta a cambios constantes, es un alto grado de abstracción de las cosas y es metafísica. . "Shangde Wuwei" significa que en el nivel abstracto, el lado "virtual" de la programación se refleja a través de la inacción, porque en este momento, el objeto real realmente utilizado no se puede determinar (puede ser un objeto Auto o un objeto Bicicleta, o puede inventarse más adelante) Objeto de vehículo nuevo), "no basado en observación" requiere que saltemos de las limitaciones de necesidades específicas y no consideremos el código de implementación específico. Por lo tanto, no existe ninguna implementación de código en métodos abstractos virtuales puros o interfaces de objetos.
En el pensamiento de la programación orientada a objetos, "Xiaode" se refiere a la cobertura de métodos abstractos virtuales puros y la implementación de interfaces de objetos. "Hazlo con moralidad" proporciona una implementación de código real. "Se utiliza sin cesar" para satisfacer las necesidades en constante cambio.
El polimorfismo permite a los programadores derivar objetos e implementar programas más adelante sin mucho esfuerzo. No importa si el programador está creando aplicaciones para automóviles y bicicletas y no sabe que existen camiones. Los programadores pueden escribir métodos stop() anuladores para las clases Car y Bicycle que heredan la clase Vehicle. De esta manera, en el programa, siempre que los objetos Auto y Bicicleta creados se conviertan al tipo de Vehículo y se utilice el método Stop () del Vehículo, los objetos Auto y Bicicleta se pueden vincular dinámicamente a stop (). método que cumpla con sus propios requisitos. Incluso si se agrega un objeto Truck más adelante, se sigue llamando al método Stop() de Vehicle y no se requieren más cambios en el programa.
"Las cosas son naturales, y las cosas están combinadas y separadas. Algunas están cerca pero no se pueden ver, y otras están lejos y se pueden conocer. Las que están cerca pero no se pueden ver no se pueden entender; las que están lejos se pueden ver , pero se podrán ver en el futuro." ("Guiguzi") Llega cuarto)
Aunque las cosas objetivas son complejas y las necesidades de los usuarios cambian, también existen ciertas leyes inherentes.
Aquellos que están cerca pero son invisibles solo miran la realización de funciones específicas frente a ellos y no observan las leyes generales de desarrollo de las cosas. Solo tienen datos aislados y procesos mecánicos en sus mentes. Una vez que "las cosas se unan", lo harán. Ser tomado por sorpresa y resultarle difícil lidiar con ello. Esta programación es estática, mecánica y difícil de mantener y ampliar.
Aquellos que pueden ver desde la distancia son buenos para descubrir patrones, valorar la reutilización de códigos y ver objetos orgánicos y relaciones armoniosas. Incluso si las necesidades cambian, pueden lidiar con ellos con calma y facilidad. Dicha programación es dinámica, flexible, mantenible y extensible.
Paul Kimmel dijo en la "Guía de desarrollo de aplicaciones Delphi6" "Es un error utilizar herramientas orientadas a objetos de una manera no orientada a objetos. Usar Delphi para escribir programas estructurados puede alcanzar rápidamente la versión beta... Es posible que su programa nunca sea capaz de escapar de la edición beta. Obtenga la respuesta incorrecta rápidamente y aún así estará equivocado”.
También usando Delphi, si no hay una idea de programación orientada a objetos, será como "no darse cuenta de lo que se dice". Al final, seguirá siendo "cercano pero invisible", lo que dificultará el desarrollo de un sistema excelente. Sólo practicando mucho, resumiendo cuidadosamente y dominando las ideas amplias y profundas de la programación orientada a objetos podremos controlar nuestro "qi" libremente, "revertir lo que hemos aprendido, lo que hemos aprendido" y finalmente alcanzar el estado. de "saber lo que está lejos".
Han pasado más de 30 años desde que apareció el primer lenguaje verdaderamente orientado a objetos, Smalltalk (1972). Sin embargo, la mayoría de los libros de programación orientada a objetos en las librerías son C ++ y Java. Parece que solo existen estos dos lenguajes orientados a objetos. De hecho, existen 4 ramas básicas de lenguajes orientados a objetos reales y casi 20 tipos. . Dado que hay muy pocos libros sobre programación orientada a objetos en Delphi, muchos programadores tienen que abandonar Delphi para aprender programación orientada a objetos. Ésta es realmente una gran tragedia de Delfos. Cuando leí "Thinking in Java" de Bruce Eckel, me lamenté de por qué no existe tal obra maestra de Delphi.
De hecho, Delphi pertenece a una familia muy conocida. Fue desarrollado por Borland Company sobre la base de Object Pascal. Ahora, Borland Company utiliza el lenguaje Delphi para reemplazar Object Pascal [1] a partir de Delphi7. En realidad, Delphi no es inferior a C ++ y Java en términos de programación orientada a objetos. Los lectores pueden consultar el apéndice de este libro "Comparación de lenguajes de programación orientados a objetos: Java, C ++ y Delphi".
Con este fin, siempre planeé escribir un libro sobre programación orientada a objetos de Delphi para resumir mi aprendizaje y experiencia práctica en la programación orientada a objetos de Delphi. Sin embargo, esta es una tarea muy difícil. Todo el libro tomó mucho tiempo desde su concepción hasta su redacción y no se completó oficialmente hasta mayo de este año. Da la casualidad de que este año también es el vigésimo aniversario de la fundación de Borland. Como usuario del producto Delphi de Borland, la publicación de mi libro puede considerarse como una conmemoración de ello.
Este es un libro que analiza exclusivamente la programación orientada a objetos en Delphi. La orientación a objetos no es un adorno de moda de este libro, sino el núcleo y la totalidad de este libro.
A partir del Capítulo 1 "Construyendo un nuevo pensamiento orientado a objetos", este libro intenta comenzar con la historia y la situación actual de la programación orientada a objetos, exponiendo el origen, desarrollo y conceptos básicos de las ideas de programación orientada a objetos, así como la aplicación. de métodos de modelado orientado a objetos y UML. Este capítulo tiene como objetivo ayudar a los lectores a establecer los conceptos básicos de la orientación a objetos y comprender el método de pensamiento orientado a objetos.
El Capítulo 2 "Modelo de objetos de Delphi" presenta los conocimientos básicos de la programación orientada a objetos de Delphi y su sistema de estructura de modelo de objetos.
El capítulo 3, "Comprensión de los objetos", analiza en profundidad el mecanismo interno, el ciclo de vida y la interacción de los objetos desde tres aspectos: la naturaleza, la vida y la muerte y las relaciones de los objetos, sentando las bases para que los lectores comprendan y dominen los objetos.
El Capítulo 4 "Uso de objetos" explica cómo utilizar objetos de manera eficiente en la programación orientada a objetos de Delphi. Aquí nos centramos en los métodos y técnicas de uso de objetos de interfaz, objetos componentes, conjuntos de objetos y parámetros de objetos, y reflexionamos en profundidad sobre problemas comunes en el uso y desarrollo de componentes VCL.
El capítulo 5, "Polimorfismo en profundidad", presenta el concepto de polimorfismo y su aplicación en la programación. A través de una gran cantidad de ejemplos, se explican conceptos y métodos de pensamiento importantes, como sobrecarga y sobrescritura, métodos virtuales y métodos dinámicos, clases abstractas y métodos abstractos, y conversión de tipos de clases.
El Capítulo 6 "Análisis de interfaces" presenta de manera integral el conocimiento de programación y las habilidades de aplicación de las interfaces de objetos. Explica el importante papel de las interfaces en la realización del enlace dinámico y la herencia múltiple, y demuestra el uso real de las interfaces en la programación orientada a objetos.
El Capítulo 7 "Investigación sobre encapsulación" aclara la importancia y los principios de aplicación de la encapsulación en la programación orientada a objetos y analiza con más detalle los métodos de implementación y las técnicas de aplicación de la encapsulación desde la perspectiva de la encapsulación lógica y la encapsulación física, respectivamente.
El Capítulo 8 "Realización de la separación entre interfaz y negocio" aplica la programación orientada a objetos a un nuevo nivel. Este capítulo explica cómo utilizar el diseño orientado a objetos para convertir un programa de escritorio en un sistema distribuido de múltiples capas a través de un ejemplo evolutivo de separación de interfaz y negocio. Al integrar la última tecnología web de Delphi, presenta cómo usar servicios web para encapsular objetos comerciales, usar formularios web para encapsular objetos de interfaz y usar nuevas tecnologías para encapsular objetos antiguos, logrando así aplicaciones multiplataforma.
Finalmente, los capítulos 9 y 10 de este libro, "Introducción en profundidad a VCL", estudian el mecanismo interno de VCL y analizan el uso de objetos de categorías importantes de VCL, proporcionando una referencia para los lectores que desean mejorar su nivel de programación en profundidad.
A juzgar por la estructura de este libro, se puede dividir en cinco partes.
La parte 1, los dos primeros capítulos del libro, son una introducción a la programación orientada a objetos de Delphi. Los lectores que ya dominen los conceptos básicos de la orientación a objetos y tengan experiencia en programación Delphi pueden omitir estos dos capítulos.
La Parte 2, Capítulos 3 y 4 son la clave para la programación orientada a objetos en Delphi. Si no captas la esencia del objeto, no podrás utilizarlo bien.
La Parte 3, Capítulos 5 y 6 son una introducción detallada a la programación orientada a objetos en Delphi. Todas las técnicas avanzadas orientadas a objetos se basan en mecanismos de enlace dinámico, como métodos virtuales, métodos abstractos e interfaces de objetos, y mecanismos de conversión de tipos, como transformación ascendente, transformación descendente y transformación de interfaz.
La Parte 4, Capítulos 7 y 8 son las aplicaciones de la programación orientada a objetos de Delphi. Para lograr la mantenibilidad, escalabilidad y reutilización del programa, la encapsulación se ha convertido en una de las ideas importantes de la programación orientada a objetos. A través de la encapsulación, la interfaz y los objetos comerciales se separan, y la arquitectura distribuida multicapa se implementa gradualmente a partir de la separación de la interfaz y el negocio, y luego se realiza la interfaz multiplataforma y las aplicaciones comerciales. Aquí se demuestran soluciones desde aplicaciones generales hasta aplicaciones de nivel empresarial basadas en ideas de programación orientada a objetos.
La Parte 5, que concluye los Capítulos 9 y 10, es una referencia a la programación orientada a objetos en Delphi. La familiaridad con VCL y el aprendizaje de VCL son muy útiles para dominar Delphi. En vista de la actual falta de información privilegiada sobre VCL, lo que esta parte proporciona a los lectores puede ser limitado, pero es poco común.
Para ser precisos, este libro no está escrito para "expertos", sino para programadores que quieran cambiar de RAD a programación orientada a objetos y para amigos que quieran aprender programación orientada a objetos a través de Delphi. Creo que es más adecuado como libro técnico práctico intermedio de Delphi. Por lo tanto, al escribir todo el libro, nos esforzamos por ser fácil de entender, con imágenes y textos, y se escribe cuidadosamente una gran cantidad de programas de ejemplo (el código fuente en el CD-ROM que acompaña al libro supera los 50 MB) para lectores para estudiar. Este libro se centra en la programación orientada a objetos central, no en todos los aspectos de Delphi. Leer este libro requiere ciertos conocimientos básicos de Delphi. El libro implica algunos conocimientos especializados (como COM+, etc.) y requiere que los lectores consulten libros relacionados para obtener más referencias.
Es posible que algunos "expertos" se sientan decepcionados con este libro. Siento que no soy apto para escribir un libro para que lo lean "expertos", porque no soy un experto y siento que siempre seré un novato. A diferencia de otros novatos, llevo más tiempo usando Delphi y tengo un poco más de experiencia y experiencia. Por lo tanto, si encuentra alguna inexactitud en este libro, corríjame. Espero que me perdone por cualquier cosa insatisfactoria.
El internauta xzh2000 lo expresó bien: "La vida de un libro es muy importante. Sólo si el autor puede dedicar tiempo a revisarlo y complementarlo con frecuencia podrá convertirse en un clásico". Es cierto que un buen libro necesita ser revisado muchas veces antes de convertirse en un clásico, por lo que estoy dispuesto a escuchar las valiosas sugerencias de todos los lectores y espero que este libro pueda revisarse y reimprimirse continuamente.