2010/7/28 Oswall Verny Arguedas C. <[email protected]>

> Salidos amigos,
> Primero que todo esta es mi primera incursión en Smaltalk, por lo que
> seguro las consultas que tengo son básicas.
> Necesito hacerles algunas consultas con respecto a Smalltalk para realizar
> aplicaciones comerciales y opensource.
> Cómo no conozco Smalltalk, las consultas van en modo comparativo con python
> que conozco más, para así poder asociar en la mente las capacidades de
> Smalltalk.
>
> Me interesa utilizar un Smalltalk opensource como Squeak y Pharo, por
> ejemplo, a menos que me aconsejen uno mejor.
>
> Tendo entendido que Smalltalk es VM con "garbage collector", ok.
>

Hola. Bienvenido. No se porque las comillas. Pero si, todos las Smalltalk
vienen con GC.


>
> Puedo compilar a ejecutables en Smalltalk, que sea multiplataforma
> (Windows, linux, unix, mac)?
>

Tenes el concepto de Virtual Machine. Esto es, escribis to codigo una sola
vez, se transforma a bytecodes, y luego cada VM sabe entenderlo. Por lo
tanto, tu applicacion ejecutable va a ser ejecutar la VM, con una imagen de
smalltalk. Obviamente, podes hacer instalabales de Windows, .exe, .sh, .app,
etc.

Te comento lo que yo se más, Pharo. Con Pharo podes hacer varias cosas.
1) Hacer tu propio script (bash) que ejecute la VM y le pasas por parametro
la imagen de tu aplicacion.
2) Hacer un Windows Installer
3) One click app.

Para 3) mirá
http://gforge.inria.fr/frs/download.php/27303/Pharo-1.1-OneClick.zip
Bajas, descomprimis, y doble click sobre el ejecutable. Tambien una vez que
lo descomprimiste podes mirar el .sh y el .exe como para ver como hacer el
propio.

Para 2) podes ver:
http://gforge.inria.fr/frs/download.php/27305/setup_pharo1.1-11411-release10.07.25.exe

Y estos links que te pueden servir para hacerte tu propio installer:

http://code.google.com/p/pharo/wiki/HowToDeployAnApplication

y

http://squeakvm.org/win32/custom.html



> GUI,  En python tengo pyttk (Tkinter) que es casi nativa del lenguaje,
> entre otros.   En Smalltalk cual puedo utilizar que tenga la mayor cantidad
> de widgets para los programas, como labels, entradas de texto, entradas de
> fechas, calendario, combobox, notebook, menus, etc.?  En nativa del
> lenguaje, que no son wrappers.  No tiene necesariamente que tener un
> diseñador gráfico, de manera que con código se generen las interfaces, pero
> sería mejor y aún mejor si es nativa.
>

En Squeak/Pharo para mi esta es la peor cosa. No hay una interfaz nativa
decente. Tenes todo implementado del lado de Smalltalk, con una cosa llamada
Morphic. Que está programado bastante mal. Y es feo. Hay algunas cosas que
se hicieron tipo SqueakGTK, Tweak, o algun otro. Pero no creo que ninguno
ande en las imagenes de hoy en dia.

Lo mas pulenta me parece que es mirar a Polymorph que está integrado en
Pharo.
Con esto podes evaluar un par de ejemplos:

UITheme exampleBasicControls.
UITheme exampleColorControls.
UITheme exampleDialogs.
UITheme exampleGroups.
UITheme exampleOtherControls.
UITheme exampleWindowWithToolbars.




> Bases de datos:   Me gusta la que tiene Zope (python) , se llama ZODB, es
> para objetos.   Cuales en Smalltak puedo utilizar para aplicaciones medias y
> pequeñas, que puedan administrar 3 millones de registros en base y 12000
> transacciones por día.


No es en número, pero base de objectos tenes Magma, que anda en Squeak/Pharo
y tal vez otras como GOODS o Omnibase, pero no se el estado de las ultimas.


>   Entiendo que para aplicaciones grandes está Gemstone (existe alguna open
> source con esas capacidades?). Puedo separar las bases de datos que trabajen
> individualmente y luego sincronizarlas por ejemplo.
>

Si,e está Gemstone, y tiene  una version que viene tipo maquina virtual de
VMWare que se llama GLASS -> Gemstone, Linux, Apache, Seaside and Smalltalk.
No hace falta que te diga que viene todo eso instalado y andando. Gemstone
en si mismo es un Smalltalk, que soporta ACID. Pero necesitas un smalltalk
para dibujar la UI y programar. GLASS viene con GemTools que te ayuda para
eso. Aca en la lista hay muchos que te van a poder ayudar con ese tema.

Acá tenes una lista de posibilidades, que aunque no sean solamente para
seaside, te puedan servir:

http://www.seaside.st/documentation/persistence


> Cual es la mejor presentación Smalltak opensource para aplicaciones
> comerciales (desktop y web).
>
>
Desktop, para mi es medio choto. Aunque hay proyectos grosos hechos con
desktop. Mirá el paquete de Moose (http://www.moosetechnology.org/)  con
Mondrian, Glamour, etc.
Tambien tenes  Pinesoft – MBagger  como ejemplo en
http://www.pinesoft.co.uk/what/solutions_clinic/

La verda no conozco muchos projectos mas hechos con cliente pesado con
Smalltalks open-source.



> Reportes (pdf, html) cómo se logran con Smalltalk.
>
>
Ni ida.


> Capacidades web.   Quiero lograr un nucleo de programa con interfaces
> cliente para desktop, web y móviles, es posible?
>
>
Pharo está andando en el Iphone por ejemplo. De hecho Esteban Lorenzano
(presente en la lista) hizo un par de apps.
Mirá esto: http://www.mobilewikiserver.com/Welcome.html

Con respecto a web, claramente es lo más destacado el último tiempo. Seaside
viene siendo lo más importante. Hay muchas apps hechas, y anda en casi todos
los dialectos Smalltalk.
Seaside + GLASS + desarrollo en Pharo es combinación open-source y gratis,
muy buena.



> Gracias de antemano por las respuestas, son muy importantes
>

Ojalá te sirva.

Saludos

mariano



> Oswall Arguedas
>
> --
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]<clubsmalltalk%[email protected]>
>
> http://www.clubSmalltalk.org

-- 
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]

http://www.clubSmalltalk.org

Responder a