Hola gente!
Para maese @garduino: gracias a TDD y AjTalk, tengo un minimo proceso de templates (salio en un poco mas de una hora): https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st Espero que se entiendad esos tests Un texto como: 'Hello ${model}' lo compila a un objeto Template que tiene un bloque que recibe :model y :stream. template run: aModel stream: aStream ejecuta ese bloque compilado. y escribe en el stream (bueno, no es un stream como el de uds, creo que uds. harian obj streamOn: stream internamente, yo hago por ahora stream write: obj). Tambien puedo compilar 'Hello <# model do: [ :item | stream write: item]. #>' Es decir, lo que esta en <# #> pasa directamente a codigo del bloque (no hay que olvidar el punto final, por ahora). En un rato le voy a agregar dos cosas: - Armar un template desde el texto de un archivo - Tener un modelo dinamico, un DynamicObject tal que su doesNotUnderstand permita tener setters, getters arbitrarios dyn := DynamicObject new dyn name: 'Adam'. dyn age: 800. de tal manera que lo pueda pasar como modelo al template cuando se ejecuta. No es fino? ;-) Es lo mismo que uso para generar codigo, en Ruby, Javascript/Node.js y el AjGenesis original de .NET. Angel "AjTalk" Lopez @ajlopez gh:ajlopez |
Hola Angel!
Si! Es muy interesante! Este es el tipo de cosas que son realmente interesantes y si, fina, fina! Creo que si sigo sin poder hacer que los hosters comunes acepten Cog voy a terminar haciendo algo que genere php, porque es lo que anda en todas partes......la verdad no tengo nada contra el php, al contrario, me da de comer, pero es mortalmente aburrido programar y debuggear en php........asi que hace tiempo que me da vueltas por la cabeza hacer "algo" que desde Smalltalk me permita generar PHP fácilmente, basado en templates. Ya lo hice para html, pero aún no para php.... Ahora bien, esto para seguir con "lo tradicional", pero viendo como la web se mueve y cambia, justo hoy estuve leyendo i twittee un par de artículos que me hacen pensar: http://techcrunch.com/2012/11/30/why-enterprise-apps-are-moving-to-single-page-design/ http://www.3scale.net/2012/12/the-death-of-the-web-page/ tiene que ver también con los comentarios de Sebastián sobre "mobile first".....digo, quizás sea tiempo de pensar las aplicaciones que vienen de un modo diferente..... Me gusta mucho más AjTalk como segundo nombre que Java! Salud! El 9 de diciembre de 2012 11:48, Angel Java Lopez <[hidden email]>escribió: > ** > > > Hola gente! > > Para maese @garduino: gracias a TDD y AjTalk, tengo un minimo proceso de > templates (salio en un poco mas de una hora): > > > https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st > > Espero que se entiendad esos tests > > Un texto como: > > 'Hello ${model}' > > lo compila a un objeto Template que tiene un bloque que recibe :model y > :stream. > > template run: aModel stream: aStream > > ejecuta ese bloque compilado. y escribe en el stream (bueno, no es un > stream como el de uds, creo que uds. harian obj streamOn: stream > internamente, yo hago por ahora stream write: obj). > > Tambien puedo compilar > > 'Hello <# model do: [ :item | stream write: item]. #>' > > Es decir, lo que esta en <# #> pasa directamente a codigo del bloque (no > hay que olvidar el punto final, por ahora). > > En un rato le voy a agregar dos cosas: > > - Armar un template desde el texto de un archivo > - Tener un modelo dinamico, un DynamicObject tal que su doesNotUnderstand > permita tener setters, getters arbitrarios > > dyn := DynamicObject new > dyn name: 'Adam'. > dyn age: 800. > > de tal manera que lo pueda pasar como modelo al template cuando se ejecuta. > > No es fino? ;-) > > Es lo mismo que uso para generar codigo, en Ruby, Javascript/Node.js y el > AjGenesis original de .NET. > > Angel "AjTalk" Lopez > @ajlopez > gh:ajlopez > > > -- ============================================ Germán S. Arduino <gsa @ arsol.net> Twitter: garduino Arduino Software http://www.arduinosoftware.com PasswordsPro http://www.passwordspro.com greensecure.blogspot.com germanarduino.blogspot.com ============================================ |
Hola gente!
Maese @garduino! Gracias por los enlaces... ahora no encuentro lo que vi ayer, un proyecto que refrescaba el HTML de una pagina, via Ajax, el nuevo HTML se formaba/armaba en el servidor. Bien, lo prometido es deuda, tengo un DynamicObject (creo que se llama un Null object, a cualquier atributo no definido responde nil), tests: https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/DynamicObjectTests.st Lo del template desde un archivo, y template con modelo dinamico, al final de los tests: https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st Jeje... justo ayer genere PHP con AjGenesis, ver que el modelo del que se parte se podria reusar tal cual para otra tecnologia, por ejemplo, quiero generar para Node.js/Express: https://github.com/ajlopez/Inmob/tree/master/codegen El modelo se describe en: https://github.com/ajlopez/Inmob/tree/master/codegen/Project Ejemplo [image: Inline image 1] Lo que te perdes por no querer .NET ! ;-) Bueno, hay gente que usa mi proyecto en Ruby: https://github.com/ajlopez/AjGenesisRuby no vi que alguien usara el de Node.hs: https://github.com/ajlopez/AjGenesisNode Algo asi quiero hacer con lo que arme hoy de AjTalk, un AjGenesis usando como lenguaje Smalltalk. Un viejo proyecto (PHP generando PHP, debe tener como 10 anios) migrado hace poco a GitHub: https://github.com/ajlopez/AjEntitiesPhp pero podria generar cualquier texto. El truco es usar PHP como lenguaje de template, llamarlo desde PHP e interceptar el resultado (ahi en ese proyecto esta como se hace, es un obbuffer o algo asi). Que recuerde, este proyecto tenia un modelo que en vez de levantarse de texto o de XML, se levanta desde la base de datos, y entonces tiene ABMs de esos modelos, donde se puede definir las entidades, propiedades simples, y proyectos. Nos leemos! Angel "AjGenesis" Lopez @ajlopez gh:ajlopez 2012/12/9 Germán Arduino <[hidden email]> > ** > > > Hola Angel! > > Si! Es muy interesante! Este es el tipo de cosas que son realmente > interesantes y si, fina, fina! > > Creo que si sigo sin poder hacer que los hosters comunes acepten Cog voy a > terminar haciendo algo que genere php, porque es lo que anda en todas > partes......la verdad no tengo nada contra el php, al contrario, me da de > comer, pero es mortalmente aburrido programar y debuggear en php........asi > que hace tiempo que me da vueltas por la cabeza hacer "algo" que desde > Smalltalk me permita generar PHP fácilmente, basado en templates. Ya lo > hice para html, pero aún no para php.... > > Ahora bien, esto para seguir con "lo tradicional", pero viendo como la web > se mueve y cambia, justo hoy estuve leyendo i twittee un par de artículos > que me hacen pensar: > > > http://techcrunch.com/2012/11/30/why-enterprise-apps-are-moving-to-single-page-design/ > http://www.3scale.net/2012/12/the-death-of-the-web-page/ > > tiene que ver también con los comentarios de Sebastián sobre "mobile > first".....digo, quizás sea tiempo de pensar las aplicaciones que vienen de > un modo diferente..... > > Me gusta mucho más AjTalk como segundo nombre que Java! > > Salud! > > > > > El 9 de diciembre de 2012 11:48, Angel Java Lopez <[hidden email]>escribió: > > ** >> >> >> Hola gente! >> >> Para maese @garduino: gracias a TDD y AjTalk, tengo un minimo proceso de >> templates (salio en un poco mas de una hora): >> >> >> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st >> >> Espero que se entiendad esos tests >> >> Un texto como: >> >> 'Hello ${model}' >> >> lo compila a un objeto Template que tiene un bloque que recibe :model y >> :stream. >> >> template run: aModel stream: aStream >> >> ejecuta ese bloque compilado. y escribe en el stream (bueno, no es un >> stream como el de uds, creo que uds. harian obj streamOn: stream >> internamente, yo hago por ahora stream write: obj). >> >> Tambien puedo compilar >> >> 'Hello <# model do: [ :item | stream write: item]. #>' >> >> Es decir, lo que esta en <# #> pasa directamente a codigo del bloque (no >> hay que olvidar el punto final, por ahora). >> >> En un rato le voy a agregar dos cosas: >> >> - Armar un template desde el texto de un archivo >> - Tener un modelo dinamico, un DynamicObject tal que su doesNotUnderstand >> permita tener setters, getters arbitrarios >> >> dyn := DynamicObject new >> dyn name: 'Adam'. >> dyn age: 800. >> >> de tal manera que lo pueda pasar como modelo al template cuando se >> ejecuta. >> >> No es fino? ;-) >> >> Es lo mismo que uso para generar codigo, en Ruby, Javascript/Node.js y el >> AjGenesis original de .NET. >> >> Angel "AjTalk" Lopez >> @ajlopez >> gh:ajlopez >> >> > > > -- > ============================================ > Germán S. Arduino <gsa @ arsol.net> Twitter: garduino > Arduino Software http://www.arduinosoftware.com > PasswordsPro http://www.passwordspro.com > greensecure.blogspot.com germanarduino.blogspot.com > ============================================ > > > inmob01.jpg (37K) Download Attachment |
Hola gente!
Disculpen, al fin encontre el enlace, lo taggee ayer: http://37signals.com/svn/posts/3112-how-basecamp-next-got-to-be-so-damn-fast-without-using-much-client-side-ui It’s a similar idea to JavaScript-based one-page apps, but instead of sending JSON across the wire and implementing the whole UI in client-side MVC JavaScript, we just send regular HTML. From a programmers perspective, it’s just like a regular Rails app, except Stacker requests do not require rendering the layout. 2012/12/9 Angel Java Lopez <[hidden email]> > Hola gente! > > |
In reply to this post by Angel Java Lopez
Gracias por todos los datos y links Angel!
(No creo perderme nada al estar .net free, al contrario, pero bueno, son puntos de vista). Si, definitivamente todo esto es muy interesante, el tema es cuanto tiempo se necesita para hacer algo útil y si en el mismo tiempo no lo hacés usando las cosas que uno intenta generar.... pero bue, eso quitaría toda la diversión :) Saludos (hace muchhho calor acá otra vez, la pqlop). El 9 de diciembre de 2012 12:30, Angel Java Lopez <[hidden email]>escribió: > ** > > > Hola gente! > > Maese @garduino! Gracias por los enlaces... ahora no encuentro lo que vi > ayer, un proyecto que refrescaba el HTML de una pagina, via Ajax, el nuevo > HTML se formaba/armaba en el servidor. > > Bien, lo prometido es deuda, tengo un DynamicObject (creo que se llama un > Null object, a cualquier atributo no definido responde nil), tests: > > https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/DynamicObjectTests.st > > Lo del template desde un archivo, y template con modelo dinamico, al final > de los tests: > > https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st > > Jeje... justo ayer genere PHP con AjGenesis, ver que el modelo del que se > parte se podria reusar tal cual para otra tecnologia, por ejemplo, quiero > generar para Node.js/Express: > > https://github.com/ajlopez/Inmob/tree/master/codegen > El modelo se describe en: > https://github.com/ajlopez/Inmob/tree/master/codegen/Project > > Ejemplo > [image: Inline image 1] > > Lo que te perdes por no querer .NET ! ;-) > > Bueno, hay gente que usa mi proyecto en Ruby: > https://github.com/ajlopez/AjGenesisRuby > no vi que alguien usara el de Node.hs: > https://github.com/ajlopez/AjGenesisNode > > Algo asi quiero hacer con lo que arme hoy de AjTalk, un AjGenesis usando > como lenguaje Smalltalk. > > Un viejo proyecto (PHP generando PHP, debe tener como 10 anios) migrado > hace poco a GitHub: > https://github.com/ajlopez/AjEntitiesPhp > pero podria generar cualquier texto. > > El truco es usar PHP como lenguaje de template, llamarlo desde PHP e > interceptar el resultado (ahi en ese proyecto esta como se hace, es un > obbuffer o algo asi). Que recuerde, este proyecto tenia un modelo que en > vez de levantarse de texto o de XML, se levanta desde la base de datos, y > entonces tiene ABMs de esos modelos, donde se puede definir las entidades, > propiedades simples, y proyectos. > > Nos leemos! > > Angel "AjGenesis" Lopez > @ajlopez > gh:ajlopez > > 2012/12/9 Germán Arduino <[hidden email]> > >> ** >> >> >> Hola Angel! >> >> Si! Es muy interesante! Este es el tipo de cosas que son realmente >> interesantes y si, fina, fina! >> >> Creo que si sigo sin poder hacer que los hosters comunes acepten Cog voy >> a terminar haciendo algo que genere php, porque es lo que anda en todas >> partes......la verdad no tengo nada contra el php, al contrario, me da de >> comer, pero es mortalmente aburrido programar y debuggear en php........asi >> que hace tiempo que me da vueltas por la cabeza hacer "algo" que desde >> Smalltalk me permita generar PHP fácilmente, basado en templates. Ya lo >> hice para html, pero aún no para php.... >> >> Ahora bien, esto para seguir con "lo tradicional", pero viendo como la >> web se mueve y cambia, justo hoy estuve leyendo i twittee un par de >> artículos que me hacen pensar: >> >> >> http://techcrunch.com/2012/11/30/why-enterprise-apps-are-moving-to-single-page-design/ >> http://www.3scale.net/2012/12/the-death-of-the-web-page/ >> >> tiene que ver también con los comentarios de Sebastián sobre "mobile >> first".....digo, quizás sea tiempo de pensar las aplicaciones que vienen de >> un modo diferente..... >> >> Me gusta mucho más AjTalk como segundo nombre que Java! >> >> Salud! >> >> >> >> >> El 9 de diciembre de 2012 11:48, Angel Java Lopez <[hidden email]>escribió: >> >> ** >>> >>> >>> Hola gente! >>> >>> Para maese @garduino: gracias a TDD y AjTalk, tengo un minimo proceso de >>> templates (salio en un poco mas de una hora): >>> >>> >>> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st >>> >>> Espero que se entiendad esos tests >>> >>> Un texto como: >>> >>> 'Hello ${model}' >>> >>> lo compila a un objeto Template que tiene un bloque que recibe :model y >>> :stream. >>> >>> template run: aModel stream: aStream >>> >>> ejecuta ese bloque compilado. y escribe en el stream (bueno, no es un >>> stream como el de uds, creo que uds. harian obj streamOn: stream >>> internamente, yo hago por ahora stream write: obj). >>> >>> Tambien puedo compilar >>> >>> 'Hello <# model do: [ :item | stream write: item]. #>' >>> >>> Es decir, lo que esta en <# #> pasa directamente a codigo del bloque (no >>> hay que olvidar el punto final, por ahora). >>> >>> En un rato le voy a agregar dos cosas: >>> >>> - Armar un template desde el texto de un archivo >>> - Tener un modelo dinamico, un DynamicObject tal que su >>> doesNotUnderstand permita tener setters, getters arbitrarios >>> >>> dyn := DynamicObject new >>> dyn name: 'Adam'. >>> dyn age: 800. >>> >>> de tal manera que lo pueda pasar como modelo al template cuando se >>> ejecuta. >>> >>> No es fino? ;-) >>> >>> Es lo mismo que uso para generar codigo, en Ruby, Javascript/Node.js y >>> el AjGenesis original de .NET. >>> >>> Angel "AjTalk" Lopez >>> @ajlopez >>> gh:ajlopez >>> >>> >> >> >> -- >> ============================================ >> Germán S. Arduino <gsa @ arsol.net> Twitter: garduino >> Arduino Software http://www.arduinosoftware.com >> PasswordsPro http://www.passwordspro.com >> greensecure.blogspot.com germanarduino.blogspot.com >> ============================================ >> >> > > inmob01.jpg (37K) Download Attachment |
Bueno, ahora le agregue paginas dinamicas al servidor web
[image: Inline image 1] Esa pagina viene de un template con Smalltalk embebido, el proceso de generacion de codigo a partir de texto que aparecio hoy al mediodia: https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Console/templates/customers.tpl Algo del codigo que lo lanza: https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Console/Programs/WebSiteTemplates.st Fue un poco "quick and dirty" pero salio ;-). No soporta verbo POST por ejemplo, todavia En algun momento me gustaria transformarlo en MVC. Donde la vista se defina con el template, y el controlador diga que vista y modelo entregar. Nos leemos! Angel "Java" Lopez @ajlopez gh:ajlopez 2012/12/9 Germán Arduino <[hidden email]> > ** > > > Gracias por todos los datos y links Angel! > > > (No creo perderme nada al estar .net free, al contrario, pero bueno, son > puntos de vista). > > > Si, definitivamente todo esto es muy interesante, el tema es cuanto tiempo > se necesita para hacer algo útil y si en el mismo tiempo no lo hacés usando > las cosas que uno intenta generar.... pero bue, eso quitaría toda la > diversión :) > > Saludos (hace muchhho calor acá otra vez, la pqlop). > > > > > El 9 de diciembre de 2012 12:30, Angel Java Lopez <[hidden email]>escribió: > > ** >> >> >> Hola gente! >> >> Maese @garduino! Gracias por los enlaces... ahora no encuentro lo que vi >> ayer, un proyecto que refrescaba el HTML de una pagina, via Ajax, el nuevo >> HTML se formaba/armaba en el servidor. >> >> Bien, lo prometido es deuda, tengo un DynamicObject (creo que se llama un >> Null object, a cualquier atributo no definido responde nil), tests: >> >> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/DynamicObjectTests.st >> >> Lo del template desde un archivo, y template con modelo dinamico, al >> final de los tests: >> >> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st >> >> Jeje... justo ayer genere PHP con AjGenesis, ver que el modelo del que se >> parte se podria reusar tal cual para otra tecnologia, por ejemplo, quiero >> generar para Node.js/Express: >> >> https://github.com/ajlopez/Inmob/tree/master/codegen >> El modelo se describe en: >> https://github.com/ajlopez/Inmob/tree/master/codegen/Project >> >> Ejemplo >> [image: Inline image 1] >> >> Lo que te perdes por no querer .NET ! ;-) >> >> Bueno, hay gente que usa mi proyecto en Ruby: >> https://github.com/ajlopez/AjGenesisRuby >> no vi que alguien usara el de Node.hs: >> https://github.com/ajlopez/AjGenesisNode >> >> Algo asi quiero hacer con lo que arme hoy de AjTalk, un AjGenesis usando >> como lenguaje Smalltalk. >> >> Un viejo proyecto (PHP generando PHP, debe tener como 10 anios) migrado >> hace poco a GitHub: >> https://github.com/ajlopez/AjEntitiesPhp >> pero podria generar cualquier texto. >> >> El truco es usar PHP como lenguaje de template, llamarlo desde PHP e >> interceptar el resultado (ahi en ese proyecto esta como se hace, es un >> obbuffer o algo asi). Que recuerde, este proyecto tenia un modelo que en >> vez de levantarse de texto o de XML, se levanta desde la base de datos, y >> entonces tiene ABMs de esos modelos, donde se puede definir las entidades, >> propiedades simples, y proyectos. >> >> Nos leemos! >> >> Angel "AjGenesis" Lopez >> @ajlopez >> gh:ajlopez >> >> 2012/12/9 Germán Arduino <[hidden email]> >> >>> ** >>> >>> >>> Hola Angel! >>> >>> Si! Es muy interesante! Este es el tipo de cosas que son realmente >>> interesantes y si, fina, fina! >>> >>> Creo que si sigo sin poder hacer que los hosters comunes acepten Cog voy >>> a terminar haciendo algo que genere php, porque es lo que anda en todas >>> partes......la verdad no tengo nada contra el php, al contrario, me da de >>> comer, pero es mortalmente aburrido programar y debuggear en php........asi >>> que hace tiempo que me da vueltas por la cabeza hacer "algo" que desde >>> Smalltalk me permita generar PHP fácilmente, basado en templates. Ya lo >>> hice para html, pero aún no para php.... >>> >>> Ahora bien, esto para seguir con "lo tradicional", pero viendo como la >>> web se mueve y cambia, justo hoy estuve leyendo i twittee un par de >>> artículos que me hacen pensar: >>> >>> >>> http://techcrunch.com/2012/11/30/why-enterprise-apps-are-moving-to-single-page-design/ >>> http://www.3scale.net/2012/12/the-death-of-the-web-page/ >>> >>> tiene que ver también con los comentarios de Sebastián sobre "mobile >>> first".....digo, quizás sea tiempo de pensar las aplicaciones que vienen de >>> un modo diferente..... >>> >>> Me gusta mucho más AjTalk como segundo nombre que Java! >>> >>> Salud! >>> >>> >>> >>> >>> El 9 de diciembre de 2012 11:48, Angel Java Lopez <[hidden email] >>> > escribió: >>> >>> ** >>>> >>>> >>>> Hola gente! >>>> >>>> Para maese @garduino: gracias a TDD y AjTalk, tengo un minimo proceso >>>> de templates (salio en un poco mas de una hora): >>>> >>>> >>>> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st >>>> >>>> Espero que se entiendad esos tests >>>> >>>> Un texto como: >>>> >>>> 'Hello ${model}' >>>> >>>> lo compila a un objeto Template que tiene un bloque que recibe :model y >>>> :stream. >>>> >>>> template run: aModel stream: aStream >>>> >>>> ejecuta ese bloque compilado. y escribe en el stream (bueno, no es un >>>> stream como el de uds, creo que uds. harian obj streamOn: stream >>>> internamente, yo hago por ahora stream write: obj). >>>> >>>> Tambien puedo compilar >>>> >>>> 'Hello <# model do: [ :item | stream write: item]. #>' >>>> >>>> Es decir, lo que esta en <# #> pasa directamente a codigo del bloque >>>> (no hay que olvidar el punto final, por ahora). >>>> >>>> En un rato le voy a agregar dos cosas: >>>> >>>> - Armar un template desde el texto de un archivo >>>> - Tener un modelo dinamico, un DynamicObject tal que su >>>> doesNotUnderstand permita tener setters, getters arbitrarios >>>> >>>> dyn := DynamicObject new >>>> dyn name: 'Adam'. >>>> dyn age: 800. >>>> >>>> de tal manera que lo pueda pasar como modelo al template cuando se >>>> ejecuta. >>>> >>>> No es fino? ;-) >>>> >>>> Es lo mismo que uso para generar codigo, en Ruby, Javascript/Node.js y >>>> el AjGenesis original de .NET. >>>> >>>> Angel "AjTalk" Lopez >>>> @ajlopez >>>> gh:ajlopez >>>> >>>> >>> >>> >>> -- >>> ============================================ >>> Germán S. Arduino <gsa @ arsol.net> Twitter: garduino >>> Arduino Software http://www.arduinosoftware.com >>> PasswordsPro http://www.passwordspro.com >>> greensecure.blogspot.com germanarduino.blogspot.com >>> ============================================ >>> >>> >> > > > > |
Muy bueno, gracias por compartir acá todo esto.
Saludos! El 9 de diciembre de 2012 19:25, Angel Java Lopez <[hidden email]>escribió: > ** > > > Bueno, ahora le agregue paginas dinamicas al servidor web > > [image: Inline image 1] > > > Esa pagina viene de un template con Smalltalk embebido, el proceso de > generacion de codigo a partir de texto que aparecio hoy al mediodia: > > https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Console/templates/customers.tpl > > Algo del codigo que lo lanza: > > https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Console/Programs/WebSiteTemplates.st > > Fue un poco "quick and dirty" pero salio ;-). No soporta verbo POST por > ejemplo, todavia > > En algun momento me gustaria transformarlo en MVC. Donde la vista se > defina con el template, y el controlador diga que vista y modelo entregar. > > Nos leemos! > > Angel "Java" Lopez > @ajlopez > gh:ajlopez > > 2012/12/9 Germán Arduino <[hidden email]> > >> ** >> >> >> Gracias por todos los datos y links Angel! >> >> >> (No creo perderme nada al estar .net free, al contrario, pero bueno, son >> puntos de vista). >> >> >> Si, definitivamente todo esto es muy interesante, el tema es cuanto >> tiempo se necesita para hacer algo útil y si en el mismo tiempo no lo hacés >> usando las cosas que uno intenta generar.... pero bue, eso quitaría toda la >> diversión :) >> >> Saludos (hace muchhho calor acá otra vez, la pqlop). >> >> >> >> >> El 9 de diciembre de 2012 12:30, Angel Java Lopez <[hidden email]>escribió: >> >> ** >>> >>> >>> Hola gente! >>> >>> Maese @garduino! Gracias por los enlaces... ahora no encuentro lo que vi >>> ayer, un proyecto que refrescaba el HTML de una pagina, via Ajax, el nuevo >>> HTML se formaba/armaba en el servidor. >>> >>> Bien, lo prometido es deuda, tengo un DynamicObject (creo que se llama >>> un Null object, a cualquier atributo no definido responde nil), tests: >>> >>> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/DynamicObjectTests.st >>> >>> Lo del template desde un archivo, y template con modelo dinamico, al >>> final de los tests: >>> >>> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st >>> >>> Jeje... justo ayer genere PHP con AjGenesis, ver que el modelo del que >>> se parte se podria reusar tal cual para otra tecnologia, por ejemplo, >>> quiero generar para Node.js/Express: >>> >>> https://github.com/ajlopez/Inmob/tree/master/codegen >>> El modelo se describe en: >>> https://github.com/ajlopez/Inmob/tree/master/codegen/Project >>> >>> Ejemplo >>> [image: Inline image 1] >>> >>> Lo que te perdes por no querer .NET ! ;-) >>> >>> Bueno, hay gente que usa mi proyecto en Ruby: >>> https://github.com/ajlopez/AjGenesisRuby >>> no vi que alguien usara el de Node.hs: >>> https://github.com/ajlopez/AjGenesisNode >>> >>> Algo asi quiero hacer con lo que arme hoy de AjTalk, un AjGenesis usando >>> como lenguaje Smalltalk. >>> >>> Un viejo proyecto (PHP generando PHP, debe tener como 10 anios) migrado >>> hace poco a GitHub: >>> https://github.com/ajlopez/AjEntitiesPhp >>> pero podria generar cualquier texto. >>> >>> El truco es usar PHP como lenguaje de template, llamarlo desde PHP e >>> interceptar el resultado (ahi en ese proyecto esta como se hace, es un >>> obbuffer o algo asi). Que recuerde, este proyecto tenia un modelo que en >>> vez de levantarse de texto o de XML, se levanta desde la base de datos, y >>> entonces tiene ABMs de esos modelos, donde se puede definir las entidades, >>> propiedades simples, y proyectos. >>> >>> Nos leemos! >>> >>> Angel "AjGenesis" Lopez >>> @ajlopez >>> gh:ajlopez >>> >>> 2012/12/9 Germán Arduino <[hidden email]> >>> >>>> ** >>>> >>>> >>>> Hola Angel! >>>> >>>> Si! Es muy interesante! Este es el tipo de cosas que son realmente >>>> interesantes y si, fina, fina! >>>> >>>> Creo que si sigo sin poder hacer que los hosters comunes acepten Cog >>>> voy a terminar haciendo algo que genere php, porque es lo que anda en todas >>>> partes......la verdad no tengo nada contra el php, al contrario, me da de >>>> comer, pero es mortalmente aburrido programar y debuggear en php........asi >>>> que hace tiempo que me da vueltas por la cabeza hacer "algo" que desde >>>> Smalltalk me permita generar PHP fácilmente, basado en templates. Ya lo >>>> hice para html, pero aún no para php.... >>>> >>>> Ahora bien, esto para seguir con "lo tradicional", pero viendo como la >>>> web se mueve y cambia, justo hoy estuve leyendo i twittee un par de >>>> artículos que me hacen pensar: >>>> >>>> >>>> http://techcrunch.com/2012/11/30/why-enterprise-apps-are-moving-to-single-page-design/ >>>> http://www.3scale.net/2012/12/the-death-of-the-web-page/ >>>> >>>> tiene que ver también con los comentarios de Sebastián sobre "mobile >>>> first".....digo, quizás sea tiempo de pensar las aplicaciones que vienen de >>>> un modo diferente..... >>>> >>>> Me gusta mucho más AjTalk como segundo nombre que Java! >>>> >>>> Salud! >>>> >>>> >>>> >>>> >>>> El 9 de diciembre de 2012 11:48, Angel Java Lopez < >>>> [hidden email]> escribió: >>>> >>>> ** >>>>> >>>>> >>>>> Hola gente! >>>>> >>>>> Para maese @garduino: gracias a TDD y AjTalk, tengo un minimo proceso >>>>> de templates (salio en un poco mas de una hora): >>>>> >>>>> >>>>> https://github.com/ajlopez/AjTalk/blob/master/Src/AjTalk.Tests/AssertTests/TemplatesTests.st >>>>> >>>>> Espero que se entiendad esos tests >>>>> >>>>> Un texto como: >>>>> >>>>> 'Hello ${model}' >>>>> >>>>> lo compila a un objeto Template que tiene un bloque que recibe :model >>>>> y :stream. >>>>> >>>>> template run: aModel stream: aStream >>>>> >>>>> ejecuta ese bloque compilado. y escribe en el stream (bueno, no es un >>>>> stream como el de uds, creo que uds. harian obj streamOn: stream >>>>> internamente, yo hago por ahora stream write: obj). >>>>> >>>>> Tambien puedo compilar >>>>> >>>>> 'Hello <# model do: [ :item | stream write: item]. #>' >>>>> >>>>> Es decir, lo que esta en <# #> pasa directamente a codigo del bloque >>>>> (no hay que olvidar el punto final, por ahora). >>>>> >>>>> En un rato le voy a agregar dos cosas: >>>>> >>>>> - Armar un template desde el texto de un archivo >>>>> - Tener un modelo dinamico, un DynamicObject tal que su >>>>> doesNotUnderstand permita tener setters, getters arbitrarios >>>>> >>>>> dyn := DynamicObject new >>>>> dyn name: 'Adam'. >>>>> dyn age: 800. >>>>> >>>>> de tal manera que lo pueda pasar como modelo al template cuando se >>>>> ejecuta. >>>>> >>>>> No es fino? ;-) >>>>> >>>>> Es lo mismo que uso para generar codigo, en Ruby, Javascript/Node.js y >>>>> el AjGenesis original de .NET. >>>>> >>>>> Angel "AjTalk" Lopez >>>>> @ajlopez >>>>> gh:ajlopez >>>>> >>>>> >>>> >>>> >>>> -- >>>> ============================================ >>>> Germán S. Arduino <gsa @ arsol.net> Twitter: garduino >>>> Arduino Software http://www.arduinosoftware.com >>>> PasswordsPro http://www.passwordspro.com >>>> greensecure.blogspot.com germanarduino.blogspot.com >>>> ============================================ >>>> >>>> >>> >> >> >> > > |
In reply to this post by garduino
Estuve siguiendo este thread con atencion.
Los links que mandaste y sus derivados me dejaron pensando a mi tambien Edgar |
Ah! Que bueno!
Podrias elaborar? Digo, te dejaron pensando en que? Cual tema? Nos leemos! Angel "Java" Lopez @ajlopez gh:ajlopez 2012/12/10 Edgar J. De Cleene <[hidden email]> > ** > > > Estuve siguiendo este thread con atencion. > Los links que mandaste y sus derivados me dejaron pensando a mi tambien > > Edgar > > > > |
In reply to this post by Edgar De Cleene
Hola gente!
Edgar? que fue lo que te llamo la atencion? Vamos, cuente, cuente! ;-) 2012/12/10 Edgar J. De Cleene <[hidden email]> > ** > > > Estuve siguiendo este thread con atencion. > Los links que mandaste y sus derivados me dejaron pensando a mi tambien > > Edgar > > |
> Hola gente!
> > > Edgar? que fue lo que te llamo la atencion? > > Vamos, cuente, cuente! ;-) > > 2012/12/10 Edgar J. De Cleene <[hidden email]> > > Estuve siguiendo este thread con atencion. > Los links que mandaste y sus derivados me dejaron pensando a mi tambien > > Edgar > Creo que era en un link derivado. Ahi lei que se supone que lo que viene son aplicaciones web y se hablaba de "la muerte de la pagina web " como hoy la conocemos, que el esquema actual de links y recargas de paginas no se usaria mas. Hasta habia un ejemplo de un sitio que no baje, asi que mucho mas no puedo decir. Edgar |
Ah! Ahora tengo mas contexto.
Bien, para los que les interesa, el enlace debio ser: http://www.3scale.net/2012/12/the-death-of-the-web-page/ Algo relacionado: http://techcrunch.com/2012/11/30/why-enterprise-apps-are-moving-to-single-page-design/ Y tenia otro, mas, que ahora no encuentro, debi haberlo mencionado en este thread, donde alguien daba ejemplo de: enviar HTML, en vez de JSON, al cliente. Lo bueno de enviar JSON, es que permite que se puedan construir distintos clientes: desde una pagina web, a un cliente, no se, supongo Android nativo. O lo que aparezca maniana. Nos leemos! Angel "Java" Lopez http://www.ajlopez.com http://twitter.com/ajlopez 2012/12/17 Edgar J. De Cleene <[hidden email]> > ** > > > > Hola gente! > > > > > > Edgar? que fue lo que te llamo la atencion? > > > > Vamos, cuente, cuente! ;-) > > > > 2012/12/10 Edgar J. De Cleene <[hidden email]> > > > > Estuve siguiendo este thread con atencion. > > Los links que mandaste y sus derivados me dejaron pensando a mi tambien > > > > Edgar > > > > Creo que era en un link derivado. > Ahi lei que se supone que lo que viene son aplicaciones web y se hablaba de > "la muerte de la pagina web " como hoy la conocemos, que el esquema actual > de links y recargas de paginas no se usaria mas. > Hasta habia un ejemplo de un sitio que no baje, asi que mucho mas no puedo > decir. > > Edgar > > > |
Free forum by Nabble | Edit this page |