![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Esto se está poniendo bueno.
![]() Jhonny: Comprendo lo que dices, pero no olvidemos que precisamente With te ahorra tener que declarar una variable y asignarle el valor de la expresión. Estas cosas parecen baladíes para algunos, pero si se cae en la cuenta de que el empleo de recursos elegantes para ahorrar código mejora sensiblemente su comprensión, se concluye también que no permitir al With evolucionar sería como derribar un viejo, útil, pero riesgoso puente (o seguir con él), en lugar de construir un puente más seguro y probablemente más útil. Marcelo: Es de imaginar que no seamos los únicos que hemos pensado en el símbolo de la doble comilla. Como podrás ver, esa fue mi propuesta de hace dos años: http://rescatandoadelphi.blogspot.mx...lphi-with.html Y este uno de los debates donde defendí la idea: http://www.delphifeeds.com/go/f/113867 Sin embargo, hoy estoy más convencido de que deberíamos utilizar una palabra y no un símbolo, para no ir en contra de la filosofía del precioso Pascal. Y he de decir que me va atrayendo más la idea de que dicha palabra no sea una palabra reservada, sino un identificador no declarado como los que ya existen en el lenguaje (Self, Result). It me gusta, y ahora que lo mencionaste, me parece que Idem no está del todo mal. Germán: Espero haber dado a entender que no se trata de cambiar algo de la noche a la mañana, sin pensar en la compatibilidad hacia atrás. Reitero lo de las directivas de transición, que ya en otros casos se han utilizado con mucho éxito. Por otra parte, les pido que no pierdan de vista la ventaja de poder referirse al objeto "witheado" dentro del propio bloque With. Algo que el With tradicional no tiene. Saludos veracruzanos lluviosos. Al González. ![]() |
|
#2
|
||||
|
||||
|
Cita:
Lo que ya se me había olvidado fue tu propuesta de las comillas dobles... ¡Otra vez yo reinventando la rueda che! ![]() Yo también veo más apropiado un identificador y no un símbolo. En lo que si difiero, o al menos, hasta ahora estuve pensando y considerando, es que Idem TIENE que ser palabra reservada. Se me hace que tal palabra sólo tiene sentido dentro de la estructura del with, por lo que ya que ésta es palabra reservada, por transición y uso Idem también debe serlo. Saludos, |
|
#3
|
||||
|
||||
|
Cita:
![]() |
|
#4
|
||||
|
||||
|
Result y Self son pseudovariables
Al, podrías publicar un pequeño fragmento de código, mas o menos "real" (pensando por ej en el uso del absolute en el tweet del otro día) en donde un with es una buena herramienta y no un problema? Me da mucha curiosidad. Quizá mi ingenio aún no sea capaz de encontrar el yang dentro del with ![]() En realidad he decidido que la postura de sacarlo es algo caprichosa. Es mas fácil para mí pensar que no existe y no usarlo, como un montón de gustos que son particulares de cada uno. Si en algún momento me tocase consumir código que está implementado con withs, mientras funcione como se espera que funcione, podre soportarlo ![]() Roman, con lo de Marco Cantu, que fue un ejemplo, simplemente quería decir que quedaría muy feo desde el punto de vista comercial que Embarcadero o un vocero aparezca un día diciendo que algo nuevo que agregaron no es una práctica muy recomendable. |
|
#5
|
||||
|
||||
|
Entiendo que la única utilidad del with dentro del lenguaje es eliminar determinadas "palabras" de forma reiterativa en un bloque de código.
Si resulta que para poder usar el with ahora vamos a introducir la necesidad de usar una nueva palabra, ¿no será mejor no utilizarlo? Es decir, creo que usar el with (que creo que es lo que proponéis) usando un identificador (it o idem) es lo mismo (o es peor) que usar una variable y declararla del tipo correcto. Me explico: Ahora tenemos esto:
Para solventarlo, proponemos crear una directiva condicional y obligar a escribir esto:
Creo que en comparación con esto, estamos liando las cosas... Porque resulta que al final, para poder utilizar el with (cuya ventaja creo que es eliminar determinadas palabra repetitivas), estamos obligando al usuario a escribir más código con otra palabra que se repite (y menos entendible) que si escribiéramos el código natural.
O no lo entiendo o no lo veo. NOTA: El código de ejemplo está extraído de la explicación del WITH de DelphiBasics.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#6
|
||||
|
||||
|
Y que conste que hay ejemplos en los que WITH puede tener sentido (y creo que es para lo que se pensó) como puede ser algo así (donde la parte a eliminar es muy grande):
Pero es que para estos casos, creo que esto:
Es más claro que esto, ya sea usando it o idem:
Entre otras cosas porque <it> o <idem> me dan un significado "genérico", <q> en este caso, para mi tiene un significado (de query) que además me hace más claro entender el código. Al igual que si uso frm (para un TForm), f (para un TField), ds (para un TDataSet),...
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#7
|
||||
|
||||
|
Cita:
¡Caramba!, creo que lo que dije antes, ha quedado mucho mejor explicado y reflejado por Neftali en este post. Así que me uno a este comentario y al otro que escribió después de ese.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
#8
|
||||
|
||||
|
+1 .
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#9
|
||||
|
||||
|
Cita:
Esto, desde luego, sin quitar el hecho de que a algunos nos parece útil el with y pensamos que la confusión, como tantas otras cosas, depende mucho de cómo se use. Hay quienes gustan de anidar innecesariamente bloques try-except y no por eso los vamos a quitar o modificar. Ahora, como dice Neftali, el with se usa para reducir la escritura. Cualquier otra palabra o símbolo, sólo generaría confusión y sería muy artificioso. Excepto, quizá, el punto, porque éste, a fin de cuentas, es lo mismo que escribiríamos si no usamos el with, esto es, usar el punto significaría simplemente que omitimos un poquito menos, pero no añadimos nada más. Además, el punto, como sucede en Visual Basic, da la oportunidad al IDE de autocompletar, que, dicho sea de paso, es realmente lo que extraño al usar el with. Además del punto, la variante del as como un alias, es la que me parece más práctica. Claro que podemos usar una variable en lugar del alias, pero la idea sería que con el alias nos evitamos declarar algo extra. LineComment Saludos |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Analogías entre C++ y Object Pascal | noob | C++ Builder | 3 | 16-02-2009 18:19:54 |
| como usar object pascal y gtk | Lionheart | OOP | 6 | 09-12-2005 19:31:08 |
| manual de excepciones de object pascal para free pascal??? | Garion | OOP | 3 | 27-05-2005 00:42:29 |
| ¿Object Pascal para todo? | ReigDidion | OOP | 10 | 12-02-2004 08:28:07 |
|