Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Debates (https://www.clubdelphi.com/foros/forumdisplay.php?f=29)
-   -   ¿Qué ven que le falta a Lazarus para despegar ? (https://www.clubdelphi.com/foros/showthread.php?t=63605)

rretamar 22-02-2009 04:57:16

¿Qué ven que le falta a Lazarus para despegar ?
 
Eso mismo: ¿ Que creen que le falta a esta herramienta para que sea usada más masivamente ?

¿ Más estabilidad ? ¿ Un mayor número de componentes ? ¿ Mayor compatibilidad con Delphi ? ¿ Mejor documentación ? ¿ Una mayor velocidad en su desarrollo ? ¿ Centrarse en cubrir una cantidad de toolkits gráficos no tan variada ?

En teoría es el sueño de muchos desarrolladores Delphi: un RAD multiplataforma, componentes visuales similares a la VCL, libre y basado en Object Pascal.

Saludos !

Al González 22-02-2009 07:23:31

Yo no te sabría decir qué le falta, pues no lo he usado. Pero ha terminado despertándome curiosidad, pues de cuando en cuando escucho algo sobre Lazarus.

He empezado por leer la referencia de Wikipedia. :)

Y ahora procederé a descargar la versión Win32 mientras disfruto de la programación musical nocturna de esta estación. Esto ya se puso emocionante...:cool:

Perdón si hago alguna pregunta estúpida, pero son las dudas que me van surgiendo:

1. ¿Qué contienen cada uno de estos tres instaladores? ¿Los tres son indispensables?

Lazarus-0.9.26-fpc-2.2.2-cross-arm-wince-win32.exe
lazarus-0.9.26-fpc-2.2.2-win32.exe
lazarus-qt-0.9.26-fpc-2.2.2-win32.exe

2. Los tres archivos, en la columna Architecture dice "i386". ¿Significa que compila código máquina compatible con un procesador Intel 386? ¿No genera código máquina que aproveche capacidades (nuevas instrucciones de CPU) de procesadores más recientes?

Por lo pronto instalaré los tres archivos y les cuento qué tal...;)

Al González 22-02-2009 10:28:19

Pues bien, ya tengo un acceso directo a Lazarus 0.9.26 beta en el escritorio. Le eché un vistazo general encontrando lo siguiente:

1. Tiene un entorno muy similar al de Delphi, con algunas diferencias interesantes, como la parte superior del inspector de objetos, que en lugar de ser un cuadro combinado (combo box, pues) es un árbol mostrando todos los componentes contenidos en el formulario. :)

2. Da la sensación de que tarda un poquitín más en compilar que Delphi.

3. No tengo idea de dónde me está generando el ejecutable cada vez que compilo. :o

4. Cada vez que corro el programa, parece volver a compilarlo, ¿no hay una opción para sólo ejecutar la última compilación?

5. A diferencia de Delphi, no puedo abrir los archivos colocando el cursor de teclado sobre el nombre de alguno para luego presionar Ctrl+Enter (sólo funciona el más moderno Ctrl+Clic de la era Windows). :(

6. Cuando cierro un cuadro de diálogo como el de Buscar, estando el cursor en una entrada de texto, se produce un molesto sonido "tat" de Windows.

7. No encontré en el IDE una opción para ver el contenido del archivo .lfm (el equivalente del .dfm de Delphi). Creo que no acepta Alt+F12, aunque se puede abrir fácilmente desde el explorador de Windows.

8. Intenté sin éxito cambiar la clase de un componente ya agregado a un formulario mediante el truco de modificar su declaración en el archivo .lfm, pero al parecer esto no es una buena idea en Lazarus porque luego el IDE tuvo problemas serios para cargar el formulario.

Mis observaciones no son concluyentes ni suficientes para usarlas como respuesta a la pregunta que da título a este debate. Sólo son aspectos que me interesó revisar. Intentaré seguir estudiando esta famosa herramienta de programación el siguiente fin de semana.

Un abrazo felino.

Al González. :)

dec 22-02-2009 11:03:23

Hola,

Yo creo que Lazarus, para ciertos proyectos, al menos, está más que preparado: no sólo eso, sino que puede resultar una herramienta muy a tener en cuenta, dadas sus características. Lazarus no es Delphi, eso está claro, pero, no por eso deja de ser un entorno que a mí me parece muy válido para según qué proyectos.

roman 22-02-2009 18:00:56

¿Como para qué proyectos (o qué tipo de proyectos)?

// Saludos

dec 22-02-2009 19:20:14

Hola,

Pues no sé. Podríamos pensar, por ejempo, en proyectos de andar por casa. Ese tipo de proyectos que, al menos yo, al comenzar con Delphi hacía a menudo: limpiadores de archivos duplicados o temporales; algún programa para hacer "backups" cada cierto tiempo; otro "lazador de aplicaciones"... en fin, este tipo de proyectos que requieren componentes "estándar" (Lazarus los tiene) y poco más... salvo código, claro. ;)

Crandel 23-02-2009 00:29:58

No creo que sea una causa, sino más bien la suma de muchos factores:

Como dices, el sueño de todo desarrollador de delphi es que este fuera abierto, Lazarus no es Delphi. No esta mal parado pero esta bastante atras.

Entonces si tienes un Delphi, porque usar Lazarus ?

Si eres desarrollador de varios años, tendras acceso a una version de Delphi original. Entonces para que usar Lazarus si ya tienes Delphi.

La unica "Ventaja real", es la multiplataforma, pero esto se relativiza cuando tus productos son unicamente para Windows.

Para un usuario nuevo, la realidad es que Delphi es su principal competencia. La facilidad de conseguir una copia pirata o la disponibilidad de las versiones Turbo hacen que no se planteen mucho usar Lazarus (aparte de la poca fama que tiene)

Por el lado de Lazarus, lo primero que sugeriria es lanzar la version 1. Realmente confiarias el desarrollo de tus aplicaciones en un IDE que ni sus propios desarrolladores creen que esta terminado ?

El resto de los temas que planteas son para atrapar a la persona que descargo y probo Lazarus. Pero creo que el problema principal es captar la atención de los usuarios. Que lo prueben.

Ahora cuidado, que el que lo probo y encontro muchos problemas, es dificil que vuelva !!!

En resumen:

1. Terminar pulir los detalles que faltan.
2. Lanzar la version 1.
3. Mucha publicidad.

JXJ 23-02-2009 05:50:01

hasta ahora lo veria bien para aplicaciones de consola

y de tipo consola. como complementos web y procesamiento
que no requiera de mucho uso de hacer una GUI vistosa

mas componentes...

JXJ 23-02-2009 06:21:30

un editor tan cool como el ide de delphi 2006

con aquello de que el gutter tiene un indicador de cuando se cambia la linea se pone una barrita de color amarillo en la linea modificada y verde cuadno se guarda el documento

JXJ 23-02-2009 06:24:57

mejor dejar el ide como el nuevo ide delphi 2007 o el d2009
o como el del delphi 7

por que el cambio de los nombre y ubicacion de las opciones
es causa de perderse en su uso..

JXJ 23-02-2009 06:28:08

ejecutables mas pequeños
sin necesidad de usar el programa ejecutable que le quita toda la info de depuracion al exe

y mismo comportamiento del depurar y al compilar del de delphi 7 o versiones de 2009, 2007

Ñuño Martínez 23-02-2009 10:43:17

Aunque lo utilizo poco, porque me he acostumbrado a utilizar el editor gVim y make, de vez en cuando lo utilizo para alguna cosa, así que creo que puedo opinar.

Lo que en mi opinión le falta a Lazarus es sólo una cosa: Estar finalizado. Así de simple.

Lazarus todavía no llegó a la versión 1.0, y aunque ya está por la 0.9.veintitantos todavía le falta mucho. Sólo hay que echar un vistazo a su planificación para darse cuenta que, con tanto rojo, amarillo y violeta, todavía le queda mucho camino por delante.

El tema de la documentación es también importante, pero es endémico de los proyectos libres. Muy pocos de estos proyectos tienen su documentación al día.

Cita:

Empezado por Al González (Mensaje 338967)
1. ¿Qué contienen cada uno de estos tres instaladores? ¿Los tres son indispensables?

Lazarus-0.9.26-fpc-2.2.2-cross-arm-wince-win32.exe
lazarus-0.9.26-fpc-2.2.2-win32.exe
lazarus-qt-0.9.26-fpc-2.2.2-win32.exe

El primero es el entorno para generar ejecutables para sistemas con microprocesador ARM y Windows CE, el segundo es el entorno para generar ejecutables para Windows de 32 bit (95, 98, NT, Me y XP) con microprocesadores de la familia i386 y la biblioteca GDI, y el tercero es el entorno para generar ejecutables para Windows de 32 bit con microprocesadores de la familia i386 y la biblioteca Qt.

Yo creo que está claro, ¿no?

Cita:

Empezado por Al González (Mensaje 338973)
Pues bien, ya tengo un acceso directo a Lazarus 0.9.26 beta en el escritorio. Le eché un vistazo general encontrando lo siguiente:

[Blablabla, y tal pascual, y no sé qué mas...]

Mis observaciones no son concluyentes ni suficientes para usarlas como respuesta a la pregunta que da título a este debate. Sólo son aspectos que me interesó revisar. Intentaré seguir estudiando esta famosa herramienta de programación el siguiente fin de semana.

Un abrazo felino.

Al González. :)

¡Que no es Delphi! ¡Claro que no funcionan los atajos de Delphi! Es un entorno diferente y define sus propios atajos y funcionalidades, algunas heredadas de los entornos X Window. Gustarán más o menos, pero es lo que hay. Casi todo lo que es posible hacer con Delphi se puede hacer en Lazarus, incluso cambiar la clase de un componente editando directamente los archivos, o abrir una UNIT desde el editor (botón secundario del ratón sobre el nombre de la UNIT->"Buscar declaración", eso sí, hay que instalar el código fuente completo) solo que no se hace igual. Es cuestión de gustos y costumbres.

Cita:

Empezado por JXJ (Mensaje 339022)
ejecutables mas pequeños
sin necesidad de usar el programa ejecutable que le quita toda la info de depuracion al exe

Eso no depende de Lazarus, si no de Free Pascal. Free Pascal sigue una política muy concreta en cuanto a la generación de ejecutables, la cual es muy diferente a la utilizada por Delphi. De todas formas, tiene opciones para limpiar el ejecutable de toda la ganga necesaria para la depuración y medición del rendimiento, todas ellas controlables desde los diálogos de configuración del compilador de Lazarus. Bien utilizados permiten generar ejecutables muy compactos.

Casimiro Notevi 23-02-2009 11:50:20

Pues está claro lo que le falta, mucha más gente colaborando en el proyecto o ... ¡dinero!, para poder contratar mucha más gente para acabar el proyecto :)

Por poner un ejemplo, que ya creo que lo puse en otra ocasión, el caso de Wine, andaban igual, poco a poco, poco a poco... versión 0.9.0, 0.9.1 ... 0.9.9.91 .... hasta que llegó google y aportó creo que fueron 10.000.000 dólares y en cuestión de un par de meses... ¡¡¡plafff!!!, a bombo y platillo, ¡¡¡ wine 1.0 !!!.

Pues eso, gente que colabore o dinero para contratarlos, así es la vida.

Al González 23-02-2009 18:02:05

Cita:

Empezado por Ñuño Martínez (Mensaje 339034)
El primero es el entorno para generar ejecutables para sistemas con microprocesador ARM y Windows CE, el segundo es el entorno para generar ejecutables para Windows de 32 bit (95, 98, NT, Me y XP) con microprocesadores de la familia i386 y la biblioteca GDI, y el tercero es el entorno para generar ejecutables para Windows de 32 bit con microprocesadores de la familia i386 y la biblioteca Qt.

Yo creo que está claro, ¿no?

Muchas gracias por la descripción, Ñuño. Ya había instalado los tres por no tener claro qué era cada uno. Cuando vi el nombre del primer archivo en la página de descarga me pregunté, ¿qué será eso de "Wince"? (pronunciándolo como si fuera una sola palabra). :o

Otra pregunta, para seguir enriqueciendo la información de este debate, y ahora que sé que GDI y QT son bibliotecas. A grandes rasgos, ¿qué diferencias tienen entre sí? ¿Cuando conviene usar GDI y cuándo QT?


Variando el tema, por la manera en que me citaste luego (y vaya que me extrañó de ti :confused:), pareciera que te molestaron mucho las observaciones que hice. A ver si sirve esto de algo, pero de cualquier manera lo aclaro: No pretendo descalificar a Lazarus sin conocer la herramienta. Si me he dado tiempo de instalarla y comenzar a explorarla es porque precisamente me ha terminado por interesar. Las observaciones que hice son un ejercicio de lo que podrían estar detectando algunos programadores familiarizados con Delphi u otros IDEs a la hora de usar Lazarus por primera vez. Como dije antes, no son concluyentes, ni se tratan de las características más importantes, pero si creo que son detalles interesantes a los que valdría la pena poner atención.

Se hace mucho hincapié en que no se le compare con Delphi. Pero cuando no pasa un solo mes sin que leas o escuches el consejo de usar Lazarus en lugar de Delphi, resulta muy difícil evitar hacer algunas comparaciones. Seamos honestos, Lazarus se propone como alternativa a Delphi, por tanto son comparables entre sí. :)


Cita:

Empezado por Ñuño Martínez (Mensaje 339034)
De todas formas, tiene opciones para limpiar el ejecutable de toda la ganga necesaria para la depuración y medición del rendimiento, todas ellas controlables desde los diálogos de configuración del compilador de Lazarus. Bien utilizados permiten generar ejecutables muy compactos.

Esta parte me parece de lo más útil, gracias por mencionarlo. Así vamos desmitificando aquello que muchos hemos escuchado acerca de que Lazarus genera ejecutables muy grandes. Es una buena noticia para los que no teníamos idea de esos cuadros de diálogo.


Para cerrar esta entrada con un poco de más "bla-bla-bla" (a veces creo que escribo en vano :(), mi opinión hasta al momento sobre Lazarus (no Firebird, eso es otra cosa :D) se aproxima bastante a la de David Esperalta, respecto a que para algunos proyectos sería adecuado usarlo. Ojalá no tarde mucho en volverse una herramienta más competitiva, que la gente tenga a bien usar en muchos más tipos de proyectos.

Un abrazo que pretende construir.

Al González. :)

roman 23-02-2009 18:10:47

Cita:

Empezado por Al González (Mensaje 339067)
mi opinión hasta al momento sobre Firebird se aproxima bastante a la de David Esperalta, respecto a que para algunos proyectos sería adecuado usarlo. Ojalá no tarde mucho en volverse una herramienta más competitiva, que la gente tenga a bien usar en muchos más tipos de proyectos.

Je, je. Me parece que andas con un ojo al gato y el otro al garabato. :D

// Saludos

Al González 23-02-2009 18:23:01

Cita:

Empezado por roman (Mensaje 339069)
Je, je. Me parece que andas con un ojo al gato y el otro al garabato. :D

// Saludos

Perdón. Es que hoy amanecí con treinta p' correos en la bandeja de entrada, y lo peor es que la mayoría eran unas increíbles declaraciones sobre el "buen manejo" de las reglas de negocios. :eek:

Al final terminé borrándolos por llevar tanto fundamentalismo informático. :p

mamcx 23-02-2009 21:02:52

A Lazarus lo que le falta es un jodido enfoque. Soporta tantas plataformas, widgets, sub-widgets & demas que no es completamente bueno en nada.

Lo mas crucial al hacer un software es darle un norte definido. Definitivamente, Lazarus no lo tiene... tiene como 7 u 8, no se.

Asi que el problema de lazarus es como esta organizado el proyecto a nivel interno... no tiene un liderazgo claro, no tiene un norte claro y por ende todo queda casi terminado.

Por fortuna, ultimamente ha ido subiendo y hasta empresas han ido portando cosas a este entorno, pero sospecho que era una reaccion a la inestabilidad del asunto con Borland... si Delphi sigue en buen camino como con el 2009 y los de lazarus no se pellizcan y se enfocan, van a perder el momentum.

En mi opinion:

- Concentrarse o en aplicaciones de servidor o en clientes
- Si es en clientes, solo soportar win32, una y sola una de linux y coccoa (o carbon, si lo terminan cualquiera sirve ya) y mandar al carajo al resto. Si va ser pa' hacer software de escritorio, mejorar el soporte pa' Windows & Mac (que es donde esta el mercado) y si es para el servidor mejorar el soporte web profundamente.
- Decidir si van a ser un clon de Delphi, o van a seguir su propio camino.

-- Si son un clon de Delphi, serlo bien. Si no, dejar de intentar que se parece a Delphi, cuando no lo hace.
-- Marcar un deprecated rapido de su propio IDE y usar cualquier otro IDE que sea que este bien para implementar una extension. Hay muchos que son mejores (VS, Komodo, NetBeans, Eclipse). Es claro que no estan haciendo nada bueno ahi... y la verdad, el chiste es el framework. Hay quienes han hecho un mejor trabajo con los IDES y hasta hacer un toolchain bien bueno con editores de texto y otros les quitaria un peso de encima.
- Tratar de hacer una caracteristica principal y reforzarla a lo largo de todo el producto. Ejemplo, Ruby & Python han despegado & mucho porque con Rails & Django se enfocaron en hacer sitios web rapido. Aunque obviamente sirven para mucho mas es claro que tener una obvia & visible caracteristica es vital para atraer & mantener.
- Resolver la instalacion & hacerla mas amigable.
- Tener un plan solido de releases
- Y liderazgo

Basicamente, deberian tener el coraje de mandar al carajo tanto como puedan y concentrarse en un manojo de cosas y hacerlas bien.

Ñuño Martínez 24-02-2009 10:41:30

Cita:

Empezado por Al González (Mensaje 339067)
Otra pregunta, para seguir enriqueciendo la información de este debate, y ahora que sé que GDI y QT son bibliotecas. A grandes rasgos, ¿qué diferencias tienen entre sí? ¿Cuando conviene usar GDI y cuándo QT?

GDI es el entorno gráfico por defecto de Windows, el que gestiona las ventanas, su representación, etc. Está definida en la "UNIT Windows", por si quieres echarle un vistazo.

QT es una biblioteca que define una serie de clases que facilita la gestión y representación de ventanas de manera que los programas que la utilicen puedan ser compilados en distintas plataformas y sistemas operativos. Es decir, que si escribes un programa utilizando GDI sólo funcionará en Windows mientras que utilizando QT puedes compilarlo en cualquier plataforma que disponga de una versión de QT (varios Windows, UNIX, creo que también MacOS y alguno más).

GTK+ es otra biblioteca al estilo de QT, que sigue una filosofía diferente a QT pero que también está disponible en muchas plataformas. Inicialmente fue desarrollada para servir de base a The GIMP (de ahí su nombre: GIMP Tool Kit), para facilitar su portabilidad.

En resumidas cuentas:
  • GDI: Sólo para Windows. Escrito en C. Base del escritoro Windows.
  • QT: Varias plataformas. Escrito en C++. Base del escritorio KDE.
  • GTK+: Varias plataformas. Escrito en C. Base de los escritorios GNome y Xfce.
Cita:

Empezado por Al González (Mensaje 339067)
Variando el tema, por la manera en que me citaste luego (y vaya que me extrañó de ti :confused:), pareciera que te molestaron mucho las observaciones que hice.

Si lo dices por el "[Blablabla, y tal pascual, y no sé qué mas...]", lo puse solamente para no repetir todos los puntos. No me molestaron, y mi comentario fue sólo para completar información.

Sinceramente, creo que ninguno de los comentarios que has escrito en estos foros y que he leído me han molestado un ápice. Bueno, siendo sincero tal vez hay una cosa que sí me molesta un poquitín: casi siempre das en el clavo, algo que a mi me cuesta bastante, y siento un envidia... :mad::p;):D

Casimiro Notevi 24-02-2009 12:35:04

Y ya que estás tan puesto en el tema, Ñuño, una preguntita: si uso GNOME y uso un programa que se ha creado con las QT, ¿me ejecuta QT sobre GTK?, y también imagino que si en KDE uso un programa creado con las GTK, éstas se ejecutarán (e instalarán) sobre QT.
No tengo ni idea de cómo se relacionan entre ambas, pero supongo que será un desperdicio de recursos, por ejemplo, usar KDeveloper sobre Ubuntu (GNOME), no?

Ñuño Martínez 24-02-2009 13:57:24

Cita:

Empezado por Casimiro Notevi (Mensaje 339136)
Y ya que estás tan puesto en el tema, Ñuño, una preguntita: si uso GNOME y uso un programa que se ha creado con las QT, ¿me ejecuta QT sobre GTK?, y también imagino que si en KDE uso un programa creado con las GTK, éstas se ejecutarán (e instalarán) sobre QT.
No tengo ni idea de cómo se relacionan entre ambas, pero supongo que será un desperdicio de recursos, por ejemplo, usar KDeveloper sobre Ubuntu (GNOME), no?

Gracias por confiar en mi. Espero estar a la altura. :)

Para responder a tu pregunta te diré que en mi casa tengo un escritorio Xfce (GTK+) y el programa que utilizo para escuchar y gestionar mi música es Amarok (KDE) y hasta ahora no he tenido problemas.

QT y GTK+ son simples bibliotecas que "traducen" las llamadas de los programas a peticiones de servicio a un servidor X Window (que es el programa que administra las entradas del usuario y dibuja las cosas en pantalla), por lo que (en principio) no importa qué escritorio estés utilizando.

En principio no es necesario utilizar QT, GTK+ u otra biblioteca similar ya que se puede programar una aplicación gráfica realizando llamadas directamente a las X Window. Es más, la terminal "XTerm" que viene en casi todos los Linux está implementada de esa forma. Lo que pasa es que X Window implementa sólo lo básico y no incluye ningún tipo de adorno ni facilita el dibujo de "estilos". Es más: no pone títulos a las ventanas ni permite moverlas con el ratón, ya que esto es un añadido del gestor de escritorio (o "Desktop Manager"), esto es, GNome, Wince, KDE, Xfce, etc.

Como curiosidad, y ya que estamos en este hilo, Lazarus tiene su propia biblioteca de controles gráficos: la LCL. Esta está implementada de forma que puede compilarse para el GDI, GTK+, KDE, Cocoa, Carbon y fpGUI. Esta característica hace que, aunque se intenta mimetizar la VCL/CLX, haya cosas que no sean "compatibles" con Delphi, pero en contrapartida tiene la ventaja de que se puede compilar la aplicación en más plataformas sin necesidad de hacer apenas cambios. Normalmente se compila en "default", es decir, que compila para la misma biblioteca en la que esté funcionando, pero a veces viene bien especificar un entorno concreto, sobre todo para hacer algo en bajo nivel, aunque entonces se corre el riesgo de reducir la portabilidad del programa.

Creo que no me dejo nada, y espero que no os hayáis perdido. :D


La franja horaria es GMT +2. Ahora son las 11:01:24.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi