En este día hace 25 años, Borland Software presentó la versión 1.0 del producto de desarrollo de aplicaciones Delphi. El Windows era la 3.11 (o NT 3.5), con Windows 95 en beta. Delphi combinaba Object Pascal (un tipo de Pascal que entre otras cosas, incluye herencia) con un constructor de formas visuales similar a VB. n 1996, el arquitecto de Delphi, Anders Hejlsberg, fue fichado por Microsoft donde desarrolló C# y luego TypeScript.
|
etiquetas: delphi , borland , anders hejlsberg
Para escritorio es poco menos que imbatible.
Y si alguien quiere código aún más exageradamente parecido al inglés hablado a partir del pascal: ADA Y GNAT
La gente se pasa a python y sin tener el entorno IDE de lazarus o Delphi ni las exigencias de declaraciones del pascal porque es que no las necesitas. Asignas algo tipo variable a un objeto, subcategoría del objeto o propiedad y esa variable te pasa a ser el objeto. Y con cualquier SO y montones de editores y entornos puedes programar sin marearte mucho (y el poner siempre () detrás de toda instrucción tenga o no parámetros como cierre evita los despistes de los ";" del pascal )
El compilador del Delphi realmente es una pasada (La versión Linux es el Kylix pero no estaba pasada del todo a Linux y utilizaba alguna biblioteca de wine y las QT pero con Lazarus se podía y he utilizado el compilador del Kylix :P) Lástima que sea propietario y cerrado y el FreePascal haga mostruitos de ejecutables y sea mucho más lento
Pasó a la empresa (Delphi/Kylix) "Embarcadero"
P. D.: Lo de Assembler era un puntazo, ya lo permitía Turbo Pascal al hacerlo inline y permitía hacer que los programas funcionaran mucho mejor si le metías código extra.
¿Las aplicaciones móviles no se desarrollan en Java o Swift?
Recuerdo como añadiamos librerias sin mas para ver como iban subiendo las lineas que iba compilando.
Con Lazarus puedes hacer aplicaciones para linux, mac y windows, android y lo que te de la gana en 32 bits 64 etc solo has de indicar al compilador las directivas etc Pero para los IPhone y los IPad es obligado que tengas el runtime de Apple que has de pagar o no te funcionarán. Que son muy listos
Lo que corre en Android, según tengo entendido, es una máquina virtual similar a la de Java. ¿Cómo compilas o transformas código de Delphi en eso? ¿Se podría hacer lo mismo con C, por ejemplo?
Lo mismo ahora lo retomo cómo hobby.
Es propio del Lazarus a través de java además del ObjectPascal
wiki.lazarus.freepascal.org/Custom_Drawn_Interface/Android#Step_3_-_Cr
<<LCL-CustomDrawn-Android utilizes a minimal Java application which communicates with our Pascal library and sends all events to it and also obeys commands from it. The communication is done via JNI as supported by Google. The controls are not native, instead they are all drawing using TRawImage+TLazIntfImage+TLazCanvas and events and the painting are clipped using LazRegions. The drawing itself is done in Pascal using jnigraphics to draw on a Bitmap Java object which is then drawn by the minimal Java activity on a SurfaceView. >>
Lo malo es que ahora tengo menos tiempo... Y menos ilusión.
Aparte de que Neobook en sí está programado en Delphi, los plugins se podían desarrollar en C y Delphi mismamente (en realidad son librerías DLL), y de ahí aprendí a programar en Delphi, para poder crear plugins fué un salto un poco duro, porque en Neobook no había que declarar las variables para nada, ni hacer conversiones. Ya había hecho pinitos con Visual Basic, pero lo de Delphi iba más allá me liaba sobre todo porque el tipo de cadenas para comunicarse con Neobook eran PChar, pero vamos al final para pasar a Strings solo era utilizar StrPas.
Eso sí, Delphi me parecía que iba como un tiro, aunque dada mi ignorancia por aquel entonces la API de Win32 era todo un misterio. Ay, la melancolía!
La verdad es que la información que encuentro es pobre. Según entiendo de este enlace, parece que crea bibliotecas dinámicas en C que añade a la capa de la máquina virtual como si fuera una especie de extensión de la API y llama a las funciones de las bibliotecas desde el código Java. ¿Es así?
sourceforge.net/projects/lazarus/
Ahí está el de 64. Mola.
Si el lenguaje es bueno (que lo es), ¿por qué no compilar en código objeto directamente?