Patrocinadores

Anuncios Google

[TUTORIAL] FreePascal/Lazarus, ese gran desconocido (Cap. 1)

Mi intención con esta serie de minitutoriales, es dar a conocer a los usuarios de scenebeta los lenguajes de programación FreePascal y Lazarus. Esto no pretende ser una guía avanza, tan sólo unas modestas lineas en las que explicar las virtudes de los mismos.

Qué es FreePascal y Lazarus:

En esta primera entrega vamos a ver muy por encima las características de este lenguaje, aunque FreePascal y Lazarus sean 2 cosas diferentes, más bien el segundo una extensión del primero, los trataré por comodidad como si fuera el mismo. Tan sólo decir que Lázarus es la forma de crear aplicaciones mediante un IDE, con botones, ventanas, etiquetas, combos, etc. Es decir programación visual, con un editor de ventanas tan potente como el que podemos encontrar en Delphi, Borland C++, Visual Basic, etc.

Podría decirse que FreePascal es una evolución libre que engloba el lenguaje Pascal y Object Pascal, y Lazarus sería la alternativa libre a Delphi.  De momento voy a nombrar sólo a FreePascal, dejando Lázarus para posteriores capítulos.

Yo lo definiría como "Un lenguaje tan potente como el C, con la sintaxis del Basic".

Características de FreePascal:

  •     Multiplataforma: Puedes compilarlo para las siguientes plataforma Intel x86, Amd64/x86_64, PowerPC, PowerPC64, Sparc, y ARM.
  •     Multi Sistema Operativo: Puedes crear ejecutables (sin modificar nada del código), para Linux, Win32, Win64, FreeBSD, Mac OS X/Darwin, DOS, WinCE, OS/2, Netware (libc and classic) and MorphOS
  •     Crosscompiling: Extendiendo el anterior punto. Es decir, que puedes compilar para otro SO/aquitectura, por ejemplo, desde Windows puedes crear un ejecutable Linux o viceversa.
  •     Muy rápido: Los ejecutables son casi tan rápidos como los de C/C++. (hay algunas malas lenguas que dicen que incluso más :P)
  •     Enlazado estático por defecto: Viene a resumirse de que todas las librerías necesarias, se unen al ejecutable, pudiendo usarse sin ningún tipo de dependencias. ¿Bajarse el .NET? WTF??? :P
  •     Facilidad de compilación: Al contrario que C/C++, no necesitas los "configure" y los pesados Makefiles, el compilador "fpc" realiza de forma eficiente el tedioso proceso. Por supuesto, si quieres, también puedes ponerle Makefiles muy similares a los de C/C++.
  •     Sintaxis elegante: Programar en FreePascal, es casi como hacerlo en pseudocódigo, Tiene una sintaxis muy fácil de leer. De hecho, es uno de los lenguaje más recomendados para aprender a programar ya que se adquieren "buenas costumbres" de teclear código.
  •     Enlaza sin problemas con C/C++: Puedes utilizar modulos realizados en este lenguaje, con unas simples directivas, lo que te permite usar librerías tales como GTK, wxWidgets, SDL, etc.
  •     Interface gráfico nativo: Las aplicaciones que compiles para Windows tendrán las ventanas de Windows, si la compilas para MAC OS puedes tener el Carbon o Cocoa, y para Linux/BSD GTK1, GTK2 ó QT. Todo esto sin modificar para nada el código.
  •     Interface gráfico propio: Si quieres puedes usar un interface de ventanas nativo de FreePascal llamado <a target='_blank' href="http://opensoft.homeip.net/fpgui/">fpGUI</a> que tiene un aspecto muy elegante y puede dar un aspecto personal a tus aplicaciones.
  •     IDE alucinante: Si buscas un IDE para crear aplicaciones visuales con ventanas, botones, etc., el IDE de lázarus no te defraudará, puedes diseñar aplicaciones tan fácil como lo harías con cualquier IDE, de Delphi o Visual Basic.
  •     Orientado a objetos: Una POO, muy compleja, con métodos de ámbito private, public, protected y published. y de tipo static, dynamic y virtual. Y un largo etc... Vamos, que no tiene nada que envidiar a C++.
  •     Lenguaje Ensamblador: Puedes introducir "de forma directa" código en ensamblador con la directiva "asm".
  •     Potente: Quiero dejar esto resaltado es un lenguaje POTENTE, es casi tan versátil como puede serlo C/C++, y te permite llegar más allá de lo que se quedan otros como por ejemplo Visual Basic.
  •     Documentado: Puedes encontrar mucha información en la red, incluso en castellano, ya que el 99% de la documentación que hay sobre Pascal ó Delphi (que hay muchísima te lo aseguro), te valdrá sin problemas.
  •     ¡ES LIBRE!: Con todo lo que esto significa.

    
Un Hola mundo:

Dejo el código para el siguiente capítulo, de momento y para terminar, veremos el clásico "Hola mundo":

{Los comentarios de más de una linea
van entre llaves}
program HolaMundo;
begin
    WriteLn('Hola mundo'); //Otro comentario de una sola linea
end.

Enlaces de interés:

Página oficial de FreePascal
Página oficial de Lazarus
Proyecto toro. El proyecto del Kernel de un Sistema Operativo programado en pascal por un argentino de sólo 17 años. (página en castellano)


LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de LeSoK

Pero no

empiezes poniendo una linea de escritura en pantalla, metete en estructuras de datos y haber si me apruebas las practicas xD.

Imagen de Silv3r X

Sospecho y no es mania XD

Pero... no estaras pillando informacion de algun lado?

Imagen de pspgorrister

Lo dudo

Gane el Scenery Beta del 2008 (sección Aplicaciones PC) precisamente con una aplicación basada en Lazarus, Programaba en Pascal antes de que salieran los disquetes de 3" y usé Delphi en su versión 1, así que sé lo que digo, no lo copio de ningún sitio.

Haces bien en sospechar, y por supuesto en preguntar. un saludo


LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.

Imagen de Silv3r X

Ah bueno

Es que he visto 3 hilos en menos de 5 min, pense que los habias copiado. Es que ya sabes, los ve dicha web y nos acribillan, que no es ni la 1º que pasa.


Echo de menos ser parte del staff activo de SB. Llora

Chat no oficial de Scenebeta.

Imagen de NITEMAN

Hay otras explicaciones a la velocidad

Hay otras explicaciones a la velocidad, como por ejemplo tener los textos preparados de antes (que es lo que yo hacía cuando estaba publicando el tutoriale de redes (del que me faltan por escribir como 10 entregas a parte de hacer las imágenes).

pspgorrister, si ves desaparecer los hilos que has creado en el foro es porque los iremos pasando a la sección tutoriales si no tienes inconveniente.

Salu2


"El paraí­so a mi derecha, el infierno a mi izquierda y el ángel de la muerte tras de mi."

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.