Arranco con pregunta:Cuales el modelo más conocido del evento.
Realmente en este evento me estoy llevando muchos deberes además de los técnicos, muchos deberes de pensamiento. Charlas como las de Nicolás, José y Rodrigo a uno lo dejan pensando. Uno creo que además de muchas veces enfocarse en re
HearclitusNosotros sabemos que en la realidad la unica constante es el cambio, es por esto que nuestro modelo de cómo hacer una aplicación de negocios está en continuo cambio, tratando siempre de llegar a cuando algunos de los componentes utilizados pasan a ser inútiles o complican el modelo.
Nosotros que es en lo que trabajamos día a día? Bueno, esencontrar el Modeloquepermitacrearaplicaciones de negocioque se adecuen lo más posible a la realidad.En esta charla quiero mostrarles en que estamos en ese proceso de búsqueda, parte ya lo conocen aquellos que ya han usado la versión X, y el objetivo de esta charla es mostrarles como evolucionará ese modelo.
Entonces en realidad en esta charla les hablaré de cómo pensamos que evolucionará el Modelo de hacer aplicaciones con Genexus, que tocará obviamente aspectos del lenguaje, pero el lenguaje como ayuda sintáctica para expresar el modelo. Nosotros en Artech siempre nos encontramos frente a una situación similar a la siguiente: Tenemos el Modelo Actual (esdecir, Transacciones, DataProviders, Dominios, etc) con el cuál modelamos las aplicaciones de negocios, ese modelo tiene una representación la cuál siempre la estamos tratando de simplificar, pulir, por ej. Simplificando el lenguaje en algunos aspectos.En paralelo en general existen diversas tormentas de ideas sobre elementos más conceptuales, semánticos los cuales pensamos agregar o eliminar del modelo.Es así que intentaré resumir esta presentación, marcando rápidamente cuál es nuestro modelo actual y que cosas pensamos destilaremos y experimentaremos en el futuro cercano.
En este whitepaper que hace un tiempo está en www.genexus.com se explican en detalles los principios del modelo Genexus. Inicialmente creado por Nicolás y Breogan allá por fines de los años 80. Quisiera destacar algunos de los puntos que aún hoy gobiernan el diseño de los elementos que agregamos a Genexus.Como primer objetivoestabalograrautomatizar la generación de un 70% de la aplicación, luego sus clientes los llevaron a intentar generar el 100% y mantenerlo automáticamente.
Qué son aquellos elementos concretos que nos permiten estar más cerca de la realidad en las aplicaciones de negocios? Atributos, Transaccionesfueron los primeros)
Para ser concreto tenemos que privilegiar la vista de los usuarios. Como los usuarios o expertos del negocio perciben la realidad, cuales son los elementos que manejan, cuál es su forma de ver el negocio. Es así que un poco la evolución del Modelo Genexus se ha dado en grandes rasgos con estos puntos en mente.
Cada uno de estos conceptos se traducen a un objeto Genexus en su implementación, vean que la forma de llevar estos conceptos , esta semántica del modelo a tecnología es mediante un lenguaje. En realidad son N lenguajes que permiten implementar nuestro modelo, para que posteriormente se puedan generar este tipo de aplicaciones.El modeloesútil.
Uno cuando va a modificar un modelo que está funcionando, lo que debe preguntarse es: Qué podría sacar? Qué haría al modelo más simple? Frente a este cambio, que pierdo? Que gano?Es necesario este nuevo elemento en el modelo? Cumple los principios de Simpleza, ayuda a evitar el DRY (Don’trepeatyourself)?Cuando hablamos de destilar lo actual, básicamente nos tenemos que preguntar si no existe una forma de eliminar elementos o en su defecto que su representación en el lenguaje se pueda hacer en forma más sencilla. Es así que en general nos ponemos a pensar en el lenguaje con el que escribimos el modelo. Vayamos entonces a eso mismo, veamos dentro del modelo Genexus (es decir Trns, DataProviders, Procedimientos, etc) que podemos simplificar cosa que nos sea más fácil escribir el modelo, en la medida que simplifiquemos esto, indirectamente estamos logrando obtener la aplicación de negocio con mayor rapidez.
Cuando bajamos a ver como representar el modelo en el lenguaje tenemos diversas influencias que nos hacen tener diferentes tendencias y deseos para escribir el modelo.Una primera discusión que puede surgir es si quiero mi lenguaje visual o textual, son temas que darían para discutir un buen rato.Através del tiempo hemos tenido diferentes influencias en la forma en que bajamos nuestro modelo a lenguaje. FoxPro, Basic, etcHoy por hoy tenemos muchas tentaciones para renovar algunas construcciones. Pero veamos, por ej. estos pedazos de código les parecen que son de un lenguaje creado en que año aproximadamente?Bueno, son de un lenguaje creado en el 2009, Google creo Simple para Android, con el puede expresar el modelo de lo que se quiere para aplicaciones de dispositivos móviles.El punto es, hay que tener mucho cuidado con las influencias de la tecnología de moda. La clave está en preguntarse si aporta a nuestro punto B, que es en nuestro caso declarar por sobre programar. Teniendo en cuenta puntos de consistencia, ortogonalidad, escalabilidad.
Entonces, nos enfocaremos es si el lenguaje es moderno o no? Si es OO o no?, no, nosenfocaremossilograrepresentar con simpleza el componente del modelo en cuestión.Cuanto nos cuesta escribir, cuanto repetimos, somos productivos?. Esas son cosas importantes!!
El destilado es muy entretenido y hay mucho para hacer allí, pero seguramente no son cosas que cambien en mucho la forma en como modelamos, puedo ahorrar tiempo en alguna tarea tediosa, pero ninguno de estos elementos que hablamos nos permiten de alguna forma estar más cerca de la realidad que estamos modelando. Es fácil embarrarse tratando de llegar a obtener un diseño perfecto del lenguaje que representa el modelo. Pero
Los dominios agregan significado, con los dominios podemos hablar con el usuario final. Son con los que se arman las frases.
Entonces en realidad en esta charla les hablaré de cómo pensamos que evolucionará el Modelo de hacer aplicaciones con Genexus, que tocará obviamente aspectos del lenguaje, pero el lenguaje como ayuda sintáctica para expresar el modelo. Nosotros en Artech siempre nos encontramos frente a una situación similar a la siguiente: Tenemos el Modelo Actual (esdecir, Transacciones, DataProviders, Dominios, etc) con el cuál modelamos las aplicaciones de negocios, ese modelo tiene una representación la cuál siempre la estamos tratando de simplificar, pulir, por ej. Simplificando el lenguaje en algunos aspectos.En paralelo en general existen diversas tormentas de ideas sobre elementos más conceptuales, semánticos los cuales pensamos agregar o eliminar del modelo.Es así que intentaré resumir esta presentación, marcando rápidamente cuál es nuestro modelo actual y que cosas pensamos destilaremos y experimentaremos en el futuro cercano.
Comando Save Extensiones a Foreachs DataSelectorimplícito Tipo Businesscomponent, STDs Parámetros opcionales MenosPropiedades
Tormenta de Ideas
Data Provider
Más Semántica, Más Declarativo
En mis meditaciones sobre los dominios y si deben tener semántica, siempre se me han presentado dos casos bien diferentes: los dominios de la matemática (un conjunto de valores) y los dominios de la física (un conjunto de valores y una dimensión).
Pienso que nuestros dominios de la informática deben ser similares a los de la física. Simplemente sustituiría "dimensión" por "significado".
"The question as to what data types are supported is orthogonal to the question of support for the relational model"
"Domains are nothing more nor less than a data type" "Domains are to relations as nouns are to sentences"
Los dominiosnosdominan Período de Tiempo Rating Mapa Imagen Video Prioridad Nombre Mail Twitter Address
Qué necesitamos? Almacenamiento PeriodoTiempo {Inicio based on Date Fin based on Date}
Métodos, Fórmulas TimePeriod{Inicio based on Date Fin based on DateDuracion = Fin – Inicio } for each where PeriodoVigencia.Contains(&date)endfor
0 comments
Post a comment