Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Debates (https://www.clubdelphi.com/foros/forumdisplay.php?f=29)
-   -   Delphi VS Visual Basic (https://www.clubdelphi.com/foros/showthread.php?t=30600)

HCammus 05-02-2008 17:32:26

Vaya veo que la encuesta fue aplastante, leí casi todos los comentarios y realmente me ha parecido bastante injusto culpar a uno u otro lenguaje de nuestra poca capacidad para desarrollar x ó y programa.

Yo me maravillaba al ver las cosas que hacia pascal siendo un compilador de DOS, no culpen a los lenguajes de programación de su poca capacidad para pensar, eso SI es patético.

Que con VB no se puede hacer esto, que con Delphi tal cosa, yo he visto hacer cosas en ambos lenguajes que dejarían descrestado a más de uno, incluso vi un programa para hacer multithread en VB (cosa que dicen es imposible de hacer con este lenguaje para principiantes), hablando un poco del Delphi solo me parece un lenguaje engorroso para programar y el VB me parece que no es demasiado exigente al fin y al cabo el lenguaje no es culpable de nuestras torpezas al escrbir código, si fuese el caso realmente ningún lenguaje de programación serviria para los desarrolladores de software, si tienen una mente tan cerrada de solo hacer lo que humamente el lenguaje permite, gracias a DIOS si hay gente que aprende lo importante de la programación la cuál es su LÓGICA y no que este lenguaje me es más bonito, que este lo desarrollo sultanito ó que este si sabe entender mis frustracciones y este otro no.

egostar 05-02-2008 17:47:53

Cita:

Empezado por HCammus (Mensaje 263555)
Vaya veo que la encuesta fue aplastante, leí casi todos los comentarios y realmente me ha parecido bastante injusto culpar a uno u otro lenguaje de nuestra poca capacidad para desarrollar x ó y programa.

Yo me maravillaba ver las cosas que hacia pascal siendo un compilador de DOS, no culpen a los lenguajes de programación de su poca capacidad para pensar, eso SI es patético.

Que con VB no se puede hacer esto, que con Delphi tal cosa, yo he visto hacer cosas en ambos lenguajes que dejarían descrestado a más de uno, incluso vi un programa para hacer multithread en VB (cosa que dicen es imposible de hacer con este lenguaje para principiantes), hablando un poco del Delphi solo me parece un lenguaje engorroso para programar y el VB me parece que no es demasiado exigente al fin y al cabo el lenguaje no es culpable de nuestras torpezas al escrbir código, si fuese el caso realmente ningún lenguaje de programación serviria para los desarrolladores de software si tienen una mente tan cerrada de solo hacer lo que humamente el lenguaje permite.

Hola HCammus bienvenido al Club, respeto tu postura, solo se te olvida una cosa, este es un club de delphi, si la encuesta (y las hay) estuviese en un foro de VB, por supuesto que la tendencia resultaria diferente y SI estoy convencido de que la calidad de las aplicaciones son en un porcentaje muy alto culpa o fortuna del programador.

Delphi desde mi punto de vista no es engorroso y efectivamente en aquellos años de pascal en DOS si que lo era, ahora puedes incluso hacer un programa digamos decente sin escribir una sola linea de código.

Salud OS

HCammus 05-02-2008 17:57:37

Buuuu pero yo no estaba defendiendo a ningún lenguaje, solo quería expresar que no es culpa del lenguaje si no tenemos la capacidad para pensar más allá de nuestras narices, por ello decía que entonces ningún lenguaje de programación mereciera la pena y la tecnología hace ratos hubiera quedado estancada por ello.

egostar 05-02-2008 18:05:13

Cita:

Empezado por HCammus (Mensaje 263562)
Buuuu pero yo no estaba defendiendo a ningún lenguaje, solo quería expresar que no es culpa del lenguaje si no tenemos la capacidad para pensar más allá de nuestras narices, por ello decía que entonces ningún lenguaje de programación mereciera la pena y la tecnología hace ratos hubiera quedado estancada por ello.

Buuuu :confused:

Es que la encuesta es para tomar partido de uno u otro lenguaje, sin embargo, si has defendido a VB, te recuerdo tus palabras

Cita:

Empezado por HCammus
hablando un poco del Delphi solo me parece un lenguaje engorroso para programar y el VB me parece que no es demasiado exigente al fin y al cabo el lenguaje no es culpable de nuestras torpezas al escrbir código

Bajo esa conceptualización que haces, quieres decir que si un lenguaje no es exigente, será menos culpable de quien escribe el código? Me explicas?

Salud OS

OSKR 05-02-2008 18:06:49

Años q no podia pasar por aqi... hola a todos....
JBD:
Cita:

La elección entre Visual C++ y Borland Builder C++ es más díficil. A mi me gusta más Borland pero ya se sabe Visual C++ es de Microsoft y es lo que más abunda.
Abunda por el mercado dominado de M$ pero no xq sea mejor...JAMAS!!!...Visual lo unico q tiene de Visual es el calificativo q lleva en el nombre....el Builder si se puede decir con toda autoridad q es visual hasta sus cimientos...sin contar con q delphi lo es tanto o aún más...me gusta desarrollar a bajo y medio nivel... pero tampoco tener q ponerme a usar cada componente "recibiendo el paso de mensajes" :mad:...se hace si y solo si fuese necesario...
HCammus:
Cita:

Vaya veo que la encuesta fue aplastante, leí casi todos los comentarios y realmente me ha parecido bastante injusto culpar a uno u otro lenguaje de nuestra poca capacidad para desarrollar x ó y programa.
aahhh no? nuestra poca capacidad pa desarrollar? te tomaste tu pastilla el dia de hoy? esta gente q aqi esta expresando su criterio lo hace basado en mucho tiempo de experiencia...no xq lo haya visto 2 horas en su vida y listo...
Obviamente nuevos tiempos...nuevos IDE's y VB no es uno recomendado...como el manejo de excepciones...particularmente pa la carga de modulos de DLL's me parece una peste al igual q VFP :mad:.
Cita:

Que con VB no se puede hacer esto, que con Delphi tal cosa, yo he visto hacer cosas en ambos lenguajes que dejarían descrestado a más de uno, incluso vi un programa para hacer multithread en VB (cosa que dicen es imposible de hacer con este lenguaje para principiantes), hablando un poco del Delphi solo me parece un lenguaje engorroso para programar y el VB me parece que no es demasiado exigente al fin y al cabo el lenguaje no es culpable de nuestras torpezas al escrbir código, si fuese el caso realmente ningún lenguaje de programación serviria para los desarrolladores de software si tienen una mente tan cerrada de solo hacer lo que humamente el lenguaje permite.
Hebras? en ambos se puede hacer...en Delphi/Builder hay un completo soporte para ello...con VB creo q debes usar la WinAPI (cosa q los otros 2 tambien tienen acceso) eso si es engorroso...como creas un nuevo componente alli en tiempo de ejecución? te ha resultado agradable? en Delphi/Builder se cuenta con la VCL/CLX q encapsula un viaaaaaaaje de detalles q no nos interesa pa'l momento de desarrollar aplicaciones....por eso se llama RAD a VB NO!!! eso no es engorroso. tal vez para ti sea engorroso las estructuras tipos...etc etc....pero esa es la manera che...hacer un programa ordenado y orientado a objetos como Delphi/Builder...se puede hacer eso con VB? creo q tambien se le catalogarìa como engorroso...
Puedo crear fácilmente aplicaciones standalone....sin tener q llevarme ese poco de DLL's con mi .exe, a lo mucho un .bpl y eso es extremo...con VB hasta donde he llegado es inevitable...mas engorroso aún, compara la cantidad de componentes de ambos...y me dices cual sería mas engorroso pa desarrollar una aplicacion empresarial...a propósito has escuchado algo llamado Skype? con q lo habràn hecho? sería con lenguaje engorroso? hay variantes de Pascal en linux...de C/C++ ni se diga....las hay de VB?
Eeeeh por demás...bienvenido al foro. :rolleyes:

HCammus 05-02-2008 18:34:46

Cita:

Empezado por egostar (Mensaje 263566)
Buuuu :confused:

Es que la encuesta es para tomar partido de uno u otro lenguaje, sin embargo, si has defendido a VB, te recuerdo tus palabras



Bajo esa conceptualización que haces, quieres decir que si un lenguaje no es exigente, será menos culpable de quien escribe el código? Me explicas?

Salud OS

Al referirme con exigente es que en ocasiones el ser humano se acopla por lo práctico (y no hablo en términos míos en este parrafo) eso se ha visto reflejado desde las épocas ancestrales, por ello cuando se ven encerrados por su propia "incapacidad" recurren a lo práctico ó dime si me equivoco?, de ahí que diga el término de que un lenguaje no sea exigente y no debería de culparsele solo por quien haya escrito el código.

Cuando dije que no defendia al VB es cierto, creo que es ilógico defenderlo aquí, a sabiendas que son programadores de Delphi, solo que no me parecio justo y lo reitero culpar al lenguaje por que no hace fácilmente ciertas cosas.

El comentario de OSKR lo doy por aludido no merece la pena siquiera pelear por esto, más aún cuando no se tiene el intéres suficiente por defender algo.

PD: No necesariamente las cosas engorrosas tienen que ver con lo que menciona OSKR, algo tan "insignificante" como el IDE de usuario puede hacer que alguien se incline por X ó Y programa, un ejemplo claro sería comparar al Winamp con el Windows Media Player para mi el WMP es engorroso por que la forma de organizar las canciones no me parece adecuado, en cambio en el Winamp me parece más práctica su forma de hacerlo.

Caral 05-02-2008 18:51:46

Hola
Cita:

Empezado por HCammus (Mensaje 263577)
1)Al referirme con exigente es que en ocasiones el ser humano se acopla por lo práctico (y no hablo en términos míos)2) eso se ha visto reflejado desde las épocas ancestrales,3) por ello cuando se ven encerrados por su propia incapacidad recurren a lo práctico ó dime si me equivoco?,4) de ahí que diga el término de que un lenguaje no sea exigente y no debería de culparsele solo por quien haya escrito el código.

Cuando dije que no defendia al VB es cierto, creo que es ilógico defenderlo aquí, a sabiendas que son programadores de Delphi,5) solo que no me parecio justo y lo reitero culpar al lenguaje por que no hace fácilmente ciertas cosas.

1- Cada vez el ser humano acopla su vida a lo practico y eficiente, eso nos hace inteligentes.
2- Por supuesto desde tiempos ancestrales, si no, no estaríamos donde estamos.
3- La incapacidad viene de la información, que es en esencia el conocimiento, no buscar lo practico es IMPRACTICO y OBSOLETO.
4- VB (se escribe asi verdad?) es un lenguaje Impractico, pesado, tedioso, poco organizado, aburrido, con mas tiquis que miquis.:D
5- Entonces a quien culpamos, a los programadores que tratan de hacer algo con eso (VB) o a los programadores que crearon eso (VB).
Saludos

OSKR 05-02-2008 18:53:00

HCammus:
Cita:

El comentario de OSKR lo doy por aludido no merece la pena siquiera pelear por esto, más aún cuando no se tiene el intéres suficiente por defender algo.
Pues estoy de acuerdo con egostar, tu estabas defendiendo a VB.
HCammus:
Cita:

PD: No necesariamente las cosas engorrosas tienen que ver con lo que menciona OSKR, algo tan "insignificante" como el IDE de usuario puede hacer que alguien se incline por X ó Y programa, un ejemplo claro sería comparar al Winamp con el Windows Media Player para mi el WMP es engorroso por que la forma de organizar las canciones no me parece adecuado, en cambio en el Winamp me parece más práctica su forma de hacerlo.
Aqella cosa "insignificante" como el IDE en la mayorìa de las ocasiones (por no decir todas) determinará cuantas horas de trabajo usarás desarrollando aplicaciones comerciales y más "insignificante" será cuando tu salario se base en esas horas....no crees :eek:? repito..compara la cantidad de componentes..deja de reinventar la rueda...solo es un consejo

egostar 05-02-2008 18:57:22

Cita:

Empezado por HCammus (Mensaje 263577)
Al referirme con exigente es que en ocasiones el ser humano se acopla por lo práctico (y no hablo en términos míos en este parrafo) eso se ha visto reflejado desde las épocas ancestrales, por ello cuando se ven encerrados por su propia "incapacidad" recurren a lo práctico ó dime si me equivoco?, de ahí que diga el término de que un lenguaje no sea exigente y no debería de culparsele solo por quien haya escrito el código.

De hecho estoy convencido que el éxito o el fracaso de cualquier sistema está en el programador e incluso si lo quieres ver mas allá en la comercialización del mismo, de nada sirve un excelente sistema si no se sabe vender.....

Estoy totalmente de acuerdo contigo, sin embargo, es de mucha ayuda contar con las herramientas necesarias para nuestras labores de desarrolladores y en este caso (como en muchos otros) delphi te ofrece muchos beneficios contra otros compiladores como VB.

Cita:

Empezado por HCammus (Mensaje 263577)
Cuando dije que no defendia al VB es cierto, creo que es ilógico defenderlo aquí, a sabiendas que son programadores de Delphi, solo que no me parecio justo y lo reitero culpar al lenguaje por que no hace fácilmente ciertas cosas.

Mira, a pesar de que este foro es en su mayoria Delphi, si alguien viene y defiende VB u otro y lo hace con base sólidas, sería muy interesante este debate, por desgracia esto se queda desde mi punto de vista unilateral ya que no he visto hasta este moemento nada que pueda modificar nuestra impresión respecto a otros lenguajes.

Como es nuestra obligación te invito a que leas la guia de estilo del club, y sientete libre de opinar, a pesar de todo no somos tan malos como parecemos, solo que hay mucha pasión dentro......

Disfruta y aprovecha todo lo que te ofrece este gran sitio que no solo es debate.

Salud OS

HCammus 05-02-2008 19:14:41

Holas, que pena me han saludado como 3 veces y ni por enterado me he dado, mis disculpas por ello.

Sería ilógico defender lo que hace una persona que "odias", no???, nunca me han gustado las formas de proceder de los gringos ni siquiera en cuanto a tecnología se refiere y a decir verdad este Bill Gate me cae como una patada en el culo, la gente rastrera siempre la he odiado y este ha demostrado ser uno de esos.

Caral solo te falto mencionar que solo lo usan los principiantes :), recuerda: En ocasiones lo práctico no resulta ser tan práctico y no toda señal de eficiencia es sinonimo de inteligencia :)

--------------------------------------------------------------------------

egostar gracias por ello, pasare a leerlas nuevamente, si notaras llevo casi 2 años en este foro, pero NUNCA había opinado, estuve durante casi 3 meses batallando con un programa hecho en Delphi (creo que por ello me registre aquí hace un par de años) de una persona que realmente no debería de fomarse de ser programador de dicho lenguaje cuando ni siquiera sabe como estructurar bien uno, es que si lo oyeran hablar hasta rabia le cojerían al pobre lenguaje (sin este tener la culpa), yo creo que dicho personaje debería estar por esta comunidad ya que se autoproclama como el DIOS de la programación así que supongo que por acá tal vez han tenido que lidiar con semejante especimen.

Para no herir susceptibilidades la palabra pobre descrita en el último parrafo se refiere al sentido infortunio.

OSKR 05-02-2008 19:20:18

HCammus:
Cita:

Sería ilógico defender lo que hace una persona que "odias", no???, nunca me han gustado las formas de proceder de los gringos ni siquiera en cuanto a tecnología se refiere y a decir verdad este Bill Gate me cae como una patada en el culo, la gente rastrera siempre la he odiado y este ha demostrado ser uno de esos.
Bueno... VB es de M$ y M$ era de Bill gates...Delphi y Builder de la Borland ;)

egostar 05-02-2008 19:26:12

Cita:

Empezado por HCammus (Mensaje 263590)
egostar gracias por ello, pasare a leerlas nuevamente, si notaras llevo casi 2 años en este foro, pero NUNCA había opinado, estuve durante casi 3 meses batallando con un programa hecho en Delphi (creo que por ello me registre aquí hace un par de años) de una persona que realmente no debería de fomarse de ser programador de dicho lenguaje cuando ni siquiera sabe como estructurar bien uno, es que si lo oyeran hablar hasta rabia le cojerían al pobre lenguaje (sin este tener la culpa),

Tienes razón, pues que bueno que te decides a escribir, así que vale mi bienvenida.

Cita:

Empezado por HCammus (Mensaje 263590)
yo creo que dicho personaje debería estar por esta comunidad ya que se autoproclama como el DIOS de la programación así que supongo que por acá tal vez han tenido que lidiar con semejante especimen.

Ah pues con esa descripción habemos muchos por aquí. :D:D:D:D

Cita:

Empezado por HCammus (Mensaje 263590)
Para no herir susceptibilidades la palabra pobre descrita en el último parrafo se refiere al sentido infortunio.

Que bueno que lo aclaras, porque Caral ya estaba afilando las uñas, :D:D:D

Salud OS

ucanneo 26-02-2008 23:38:40

Creo que he llegado algo tarde al debate, bueno casi a la masacre de VB.

El mayor argumento a favor de VB es un hecho de la vida misma

"El hablar más de un idioma"

Si bien es cierto que no es indispansable, es muy útil a la hora de conseguir algo como programador. No siempre somos los que llevamos la batuta del equipo de trabajo así que hay que saber adaptarse o morir

Otro argumento a favor es la situacion que se pesenta por igual a programadores y animadores, "La facilidad y rapidez" ya no digamos eficiencia o tiempo si a fin de cuentas no hay diferencia entre uno y otro (como cuando quieres modelar objetos complejos en max, es mejor usar el zbrush)

Personalmente he usado por igual Delphi, Builder y Visual Basic para aplicaciones diferentes (controlar dispositivos, motores de paso, continuos, joysticks, aplicaciones OpenGL, graficos, bases de datos, etc. etc. ) y siempre uso el que los maneje más facilmente ya que la eficiencia de compilación, rapidez etc etc quedan relegados a segundo termino por la funcionalidad y facilidad (Actualmente hasta la maquina de escritorio más sencilla ya hace rápido el trabajo)

Por lo tanto diré que el VB es bueno, y no solo bueno, muy bueno, ya que como dijera Homero Simpsom de la TV "Es un buen amigo, pide poco y da mucho", es un error el considerarlo para principiantes, normalmente solo los principiantes lo consideran así. He de decir que es muy util eso de no diferenciar mayúsculas y minúsculas (el Option Explcit lo es igual de importante).
Algo muy interesante es lo que me ha pasado cuando hago algun trabajo con otras personas en builder y en VB, y es que si tu eres quien recibe códigos cuando alguien te los trae en "C o Delphi" no siempre son entendibles ya que a veces llenan de sentencias una sola línea, pero el problema no es ese (pueden haber hasta 100 sentencias siempre y cuando se entiendan ) el problema es que ¡La mayoria de las personas las hacen sin espacios! ¡¡ ignorando olimpicamente las buenas practicas de programación !!, es ahí donde el VB toma ventaja y les obliga (lo hace automaticamente) a alinear las cosas a dejar espacion entre las variables y sus asignadores (+,*,/) reduciendo el trabajo que implica integrar los códigos

Cuando inicié en el mundo de la programación lo hice en c++, potseriormente en java, y otros, VB lo aprendí por mi cuenta (Al igual que delphi) y he de decir que la curva de aprendizaje si es mas suave, pero no por ello deja de ser productiva, al contrario, al aprender más rápido 8que no quiere decir mejor) uno se entusiasma más .

Hay muchas cosas en las que otros lenguajes toman ventajas (Como cuando hay que trabajar con SQL o con openGL) pero no todo es miel sobre ojuelas ¿O si?

jachguate 26-02-2008 23:55:38

Cita:

Empezado por ucanneo (Mensaje 268834)
si tu eres quien recibe códigos cuando alguien te los trae en "C o Delphi" no siempre son entendibles ya que a veces llenan de sentencias una sola línea, pero el problema no es ese (pueden haber hasta 100 sentencias siempre y cuando se entiendan ) el problema es que ¡La mayoria de las personas las hacen sin espacios! ¡¡ ignorando olimpicamente las buenas practicas de programación !!, es ahí donde el VB toma ventaja y les obliga (lo hace automaticamente) a alinear las cosas a dejar espacion entre las variables y sus asignadores (+,*,/) reduciendo el trabajo que implica integrar los códigos

Bueno, si este es el problema, hay múltiples utilitarios para embellecer el código de casi todos los lenguajes conocidos, incluyendo obviamente pascal.

Francamente aborrezco los editores que ponen las cosas donde el editor quiere, y no donde yo quiero... :(

Casimiro Notevi 27-02-2008 00:19:15

Permíteme, ucanneo, que ponga en duda el que conozcas Delphi, supongo que simplemente lo habrás visto y poco más. Es imposible,si conoces Delphi, que hagas esos comentarios.

ucanneo 27-02-2008 01:45:07

Cita:

Empezado por Casimiro Notevi (Mensaje 268846)
Permíteme, ucanneo, que ponga en duda el que conozcas Delphi, supongo que simplemente lo habrás visto y poco más. Es imposible,si conoces Delphi, que hagas esos comentarios.


siempre he sido de la idea que es bueno saber de todo, en realidad yo tambien estaba casado con Builder C++ hasta hace poco mas de 2-3 años, así como con 3dsMax, pero sucedio algo que me ha hecho no demeritar a ningun lenguaje sino el saber aprovechar las cualidades de cada uno de ellos

Aclaro que es experiecia personal, ( y lo remarco de nuevo ya que el hecho de que me sirva ami no quiere decir que sea en general )

Asistí a un congreso sobre programación y animación que se ofreció en Mérida, donde asistieron como ponentes personajes bastante interesantes (programadores y animadores por igual así como personalidades de Microsoft) y yo como simple espectador, pues bien sucedió que en una de las conferencias de un animador este nos mostró unas fotos con algunos personajes algo populares ( george lucas entre otros ), pues bien la razon de que haya estado con tante gente es que este tipo era el socio del animador más rapido del mundo (como ejemplo algunas animaciones de Warcraft, mientras en algun concurso les piden una animacion de algo este tipo llega ha hacer hasta 4 o 7 de calidad superior ) ¿pues bien cual era el truco? si el era un defensor incondicional de 3dsMax frente al maya, blender, amapi, Cinema 4d etc etc, incluso frente a renderman. Pues el secreto estaba en diversificar las herramientas, es decir, si necesitaba modelar un arma pues usaba ZBrush(Lord of the rings), si necesitaba hacer fluidos usaba realflow, etc etc, de tal forma que lo que hacia era aprovechas las ventajas de cada uno de ellos sin ver las carencias, y entonces todo lo integraba en Max y... ¡a chambear!
Luego un tipo de la Microsoft dio una coferencia sobre entornos de programación, donde se hizo patente que el mismísimo Microsoft usa una a una sus herramientas, es decir usa por igual el visual c que el Vbasic cada uno para lo que necesita
Luego otro tipo programador de video juegos igual usaba para cada cosa lo que más le conviene (Java, Delphi, BlitzBasic etc etc ) y todos ellos han aumentado su producción de forma asombrosa

Entonces decidí (No sólo yo, tambien la mayoria de las personas de mi grupo que andabamos por ahi ) el hacer lo mismo, y sucedió que nustra producción y calidad como estudiantes se vió mejorada (Ya hemos egresado) ya no usabamos solo una herramienta de trabajo, diversificamos y funcionó

Como ejemplo: en una ocasion nos mandaron a programar un soft que hiciera gant, si bien visual basic ya trae el componente Gant, es mejor hacerlo en delphi, es mas amigable, se ve mejor y se maneja mejor.
Pero en otra ocasion nos mandaron a hacer una simulacion de las tareas del procesador y saber cueles puede atender y cuales no, hasta que termine total que VB resultaba la mejor opción por sus tipos de variables y funciones ya regaladas como Trim, strings, en muy pocas lineas de código
Tambien como proyecto final de robótica construimos un robot que se me ocurrio podria manejarse automáticamente o por joystick, tomar fotos y otras cosas, por lo que se necesitaban manejar DLL´s propias de windows, y ahi fue donde visual tomó la delantera.
Pero por ejemplo si de graficacion en 3d (OpenGl, directX), o de generacion de informes estamos hablando VB no tiene nada que hacer frente a delphi, no hay discusión, Delphi es mejor y punto (y no me va a negar que eso ya no es chamba de novato)

En resumen


-No hay que ver solo lo malo, sino que ventajas podemos aprovechar de él para mejorar
-No es sano el cerrarse a pocas alternativas teniendo tantasy menos aún si es posible tener ambas (no como con otras cosas:P)

Casimiro Notevi 27-02-2008 10:11:02

Efectivamente, cada trabajo requiere su herramienta, en eso estamos de acuerdo :)

Neftali [Germán.Estévez] 27-02-2008 11:00:41

Cita:

Empezado por ucanneo (Mensaje 268834)
...y es que si tu eres quien recibe códigos cuando alguien te los trae en "C o Delphi" no siempre son entendibles

No te molestes si te digo que eso es una ¡¡soberana tontería!!
No dudo que recibas código no-entendibles, pero asociar eso a los códigos de C o Delphi me parece algo sin sentido.

Quien es ordenado lo es programando en cualquier lenguaje y quien es desordenado lo es también en cualquier lenguaje.
¡¡Qué tendrá que ver el tozino con la velocidad!!

Casimiro Notevi 27-02-2008 12:44:08

Todo el código fuente escrito en cualquier lenguaje es "entendible" según haya querido el que lo escribió.
Aquí adjunto algunos ejemplos de código claro, entendible y fácil de leer:
Código:

                                  #include\
                                  <stdio.h>
                    #include                <stdlib.h>
                    #include                <string.h>

                    #define w "Hk~HdA=Jk|Jk~LSyL[{M[wMcxNksNss:"
                  #define r"Ht@H|@=HdJHtJHdYHtY:HtFHtF=JDBIl"\
                  "DJTEJDFIlMIlM:HdMHdM=I|KIlMJTOJDOIlWITY:8Y"
                #define S"IT@I\\@=HdHHtGH|KILJJDIJDH:H|KID"\
                "K=HdQHtPH|TIDRJDRJDQ:JC?JK?=JDRJLRI|UItU:8T"
              #define _(i,j)L[i=2*T[j,O[i=O[j-R[j,T[i=2*\
              R[j-5*T[j+4*O[j-L[j,R[i=3*T[j-R[j-3*O[j+L[j,
            #define t"IS?I\\@=HdGHtGIDJILIJDIItHJTFJDF:8J"

    #define y                  yy(4),yy(5),                yy(6),yy(7)
  #define yy(              i)R[i]=T[i],T[i ]            =O[i],O[i]=L [i]
#define Y _(0          ], 4] )_ (1 ], 5] )_ (2      ], 6] )_ (3 ], 7] )_=1
#define v(i)(      (( R[ i ] * _ + T [ i ]) * _ + O [ i ]) * _ + L [ i ]) *2
double b = 32  ,l ,k ,o ,B ,_ ; int Q , s , V , R [8 ], T[ 8] ,O [8 ], L[ 8] ;
#define q( Q,R ) R= *X ++ % 64 *8 ,R |= *X /8 &7 ,Q=*X++%8,Q=Q*64+*X++%64-256,
# define  p      "G\\QG\\P=GLPGTPGdMGdNGtOGlOG"  "dSGdRGDPGLPG\\LG\\LHtGHtH:"
#  define W        "Hs?H{?=HdGH|FI\\II\\GJlHJ"    "lFL\\DLTCMlAM\\@Ns}Nk|:8G"
# define  U          "EDGEDH=EtCElDH{~H|AJk}"      "Jk?LSzL[|M[wMcxNksNst:"
#  define u                  "Hs?H|@=HdFHtEI"            "\\HI\\FJLHJTD:8H"
char  *  x                  ,*X , ( * i )[              640],z[3]="4_",
*Z = "4,8O4.8O4G" r U "4M"u S"4R"u t"4S8CHdDH|E=HtAIDAIt@IlAJTCJDCIlKI\\K:8K"U
 "4TDdWDdW=D\\UD\\VF\\FFdHGtCGtEIDBIDDIlBIdDJT@JLC:8D"t"4UGDNG\\L=GDJGLKHL\
FHLGHtEHtE:"p"4ZFDTFLT=G|EGlHITBH|DIlDIdE:HtMH|M=JDBJLDKLAKDALDFKtFKdMK\
\\LJTOJ\\NJTMJTM:8M4aGtFGlG=G|HG|H:G\\IG\\J=G|IG|I:GdKGlL=G|JG|J:4b"W
S"4d"W t t"4g"r w"4iGlIGlK=G|JG|J:4kHl@Ht@=HdDHtCHdPH|P:HdDHdD=It\
BIlDJTEJDFIdNI\\N:8N"w"4lID@IL@=HlIH|FHlPH|NHt^H|^:H|MH|N=J\\D\
J\\GK\\OKTOKDXJtXItZI|YIlWI|V:8^4mHLGH\\G=HLVH\\V:4n" u t t
"4p"W"IT@I\\@=HdHHtGIDKILIJLGJLG:JK?JK?=JDGJLGI|MJDL:8M4\
rHt@H|@=HtDH|BJdLJTH:ITEI\\E=ILPILNNtCNlB:8N4t"W t"4u"
p"4zI[?Il@=HlHH|HIDLILIJDII|HKDAJ|A:JtCJtC=JdLJtJL\
THLdFNk|Nc|\
:8K"; main (
int C,char**        A) {for(x=A[1],i=calloc(strlen(x)+2,163840);
C-1;C<3?Q=_=      0,(z[1]=*x++)?((*x++==104?z[1]^=32:--x), X =
strstr(Z,z))      &&(X+=C++):(printf("P2 %d 320 4 ",V=b/2+32),
V*=2,s=Q=0,C    =4):C<4?Q-->0?i[(int)((l+=o)+b)][(int)(k+=B)
]=1:_?_-=.5/    256,o=(v(2)-(l=v(0)))/(Q=16),B=(v(3)-(k=v(1)
))/Q:*X>60?y  ,q(L[4],L[5])q(L[6],L[7])*X-61||(++X,y,y,y),
Y:*X>57?++X,  y,Y:*X >54?++X,b+=*X++%64*4:--C:printf("%d "
,i[Q][s]+i[Q ][s+1]+i[Q+1][s]+i[Q+1][s+1])&&(Q+=2)<V||(Q=
0,s+=2)<640
||(C=1));}

Y éste dicen que es laberíntico, pero a mí me parece muy claro:
Código:

#include <ncurses.h>/*****************************************************/
            int              m[256                  ] [        256  ],a
 ,b  ;;;  ;;;  WINDOW*w;  char*l=""  "\176qxl"  "q"  "q"  "k"  "w\
xm"  "x"  "t"        "j"        "v"        "u"        "n"        ,Q[
 ]=  "Z"  "pt!ftd`"  "qdc!`eu"  "dq!$c!nnwf"/**  ***  */"t\040\t";c(
int  u ,        int        v){                    v?m  [u]        [v-
 1]  |=2,m[u][v-1] &  48?W][v-1  ] &  15]]):0:0;u?m[u  -1][v]|=1  ,m[
 u-              1][  v]&        48?              W-1  ][v        ]&
15]  ]):0:0;v<  255  ?m[  u][v+1]|=8,m[u][v+1]&  48?  W][  v+1]&15]]
):0        :0;        u <              255  ?m[  u+1        ][v  ]|=
4,m[u+1][  v]&48?W+1][v]&15]]):0:0;W][  v]&  15]  ]);}cu(char*q){  return
 *q              ?cu  (q+        1)&        1?q  [0]              ++:
q[0  ]--  :1;  }d(  int  u ,  int/**/v,  int/**/x,  int  y){  int
Y=y  -v,  X=x        -u;  int        S,s  ;Y<        0?Y  =-Y  ,s,
s=-  1:(  s=1);X<0?X=-X,S  =-1  :(S=  1);  Y<<=  1;X<<=1;  if(X>Y){
int  f=Y              -(X  >>1  );;              while(u!=        x){
f>=  0?v+=s,f-=X:0;u  +=S  ;f+=  Y;m[u][v]|=32;mvwaddch(w,v  ,u,  m[u
 ][              v]&  64?  60:        46)        ;if        (m[  u][
v]&16){c(u,v);;  ;;;  ;;;  return;}}  }else{int  f=X  -(Y>>1);;  while
 (v  !=y        ){f  >=0        ?u  +=S,              f-=        Y:0
 ;v  +=s  ;f+=X;m[u][v]|=  32;mvwaddch(w,v  ,u,m[u][v]&64?60:46);if(m[u
 ][                    v]&        16)  {c(  u,v                    );
  ;  return;;;}}}}Z(  int/**/a,  int  b){  }e(  int/**/y,int/**/  x){
int              i ;        for        (i=        a;i              <=a
+S;i++)d(y,x,i,b),d(y,x,i,b+L);for(i=b;i<=b+L;i++)d(y,x,a,i),d(y,x,a+  S,i
 );                    ;;;        ;;;        ;;;              ;;;  ;
  mvwaddch(w,x,y,64);  ;;;  ;;;  ;;;  prefresh(  w,b,a,0,0  ,L-  1,S-1
);}            main(        int              V ,  char              *C[
  ]  ){FILE*f=  fopen(V==1?"arachnid.c"/**/  :C[  1],"r");int/**/x,y,c,
v=0        ;;;      initscr              ();              Z(Z        (raw
 ()  ,Z(  curs_set(0),Z(1  ,noecho()))),keypad(    stdscr,TRUE));w  =newpad
  (  300,  300              ) ;  for        (x=  255  ; x  >=0  ;x--
  )  for  (y=  255  ;y>=0;y--  )m[  x][  y]=  0;x=y=0;refresh( );while
  (  (c=                          fgetc (f)  )+1)                    {if(
0||c==10||  x==  256){x=0;y++;if(y==256  )break;;}  else{m[x][y]=(c  ==
'~'  ?64  : c  ==32              ?0:        16)  ;;x              ++;
      }}for(x=0  ;x<  256;x++)m  [x][0]=16  ,m[  x][  255]=16;for(y=0
;y<        256  ; y        ++)  m[0        ][y  ] =              16,
m[255][y]  =16  ;a=b=c=0;  x=y  =1;  do{v++;mvwaddch  (w,  y,x  ,m[
x][        y]&              32?  m[x                    ][y  ] &  16?
 0|  acs_map[l[m[x][y]&15]]:46 :  32);c==0163&&!(m[x][y+1]&16)?y++:  0;c
 ==  119        &&!        (m[                                      x][
 y-  1]&  16)  ?y--:0;;c  ==97  &&!(m[x-1][y]&16)?x--:0;c==100&&!(m[x+1
 ][  y]&  16)        ? x  ++:0              ;if(                    c==
 3-  1+1  ){endwin(  );;  return(0)  ;}x  -a<5?a>S-  5?a-=S-5:(a=0):
0;x              -a>        S-5?a<255  -S*        2?a              +=S
-5:(a=256-S):0;  y-b<5?b>L-5?b-=L-5:(b  =0)  :0;  y-b>L-5?b<255-L  *2?
b+=                                      L-5  :(b                    =256
-L)  :0;e(x,y);if(m[x][y]&64)break;}while((c=getch())!=-1);endwin();cu(Q);
printf(Q,v);}

En fin, todo muy sencillito, como este otro:
Código:

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define t(x) typedef x
#define G return
#define Y(x) x;x
#define e(s) exit(s);
#define b(x,o) x o x
#define Z while
#define y fclose
#define end static

t(signed)char U;t(struct) b(O,);

t(                            U*)
H;                            t(O
*)                            *o;
struct O{ O* l, **h; void* L; } ; t(int)i; i P(U g) { G
isspace(g); } H D(H s){H p,r;if(!s)G 0;for(p=(H)s;*p &&
!P(*p); p++); if(r=malloc(p-s))for(p=r; *s&&! P(*s);p++
,s++)b(*,p=) s; G r;} void l(o p,O*x){*(o)x=* p; *p=x;}
#define m(x) do{ if(!(q = malloc(sizeof(O)))) e(1)q->l\
=0                            ;q\
->                            L=\
            x ; } while (0)
        i(*R)(i) =putchar;i h(
        o f,H d,U c){O*q; f+=c;Z(d&&*d)
      { m(D(d)); l(f++, q); Z(*d && !P(*d
    )) d++; Z(*d && P(*d)) d++; } G b(,0);}
    void k() { static U b(c,;) ?R(c):(c='\n'); }
    i main (i Q,            H *l){static o
  X;i t,j;                  switch (Q
 ){ case                      1: { H
 *p, I                        [] ={
"aH"                          " "
"B"                            "0"
" "                            "B"
""                            "B"
""                            " "
"B"                            ","
" "                          ","
 " `"                          "0 "
 "b0 "                        "@, "
  "0 Hb,"                      " B2 "
  "H0 b, B b"                "H HB b`, "
    "H, @ 2 `, "            "@2 H2 BH Bb"
      " b@","AH B0 BB B, , `0 b0 @, 0 Hb, B2 H0"
    " b, B bH HB b`, H, @ 2 `, @2 H2 BH Bb"
      " b@","0bHb, HbH `H2 @b, @H @0 B@ "
          "b@ bH0 bHB",".HHH","?`H0",
        ",b@b,"," +", 0}; p=I;

            if (!(X=calloc(
        6<<6,sizeof(O*))))e(1)
        do{h(X,(*p)+1,**p);} Z(*(++p));
      D: if ((t = getchar()) >= 0) { k();
    goto u;}e(0)}case 2:{U *p,e[33]; b(i, )
    ,w;for(i=0;i<34;i++)i[e]=b(0,;w=);p=e; Z(1){
    t = (w == 200) ?            10:getchar();
  switch(t) {                  case 0xa:
 case EOF:                      if(w--
 ){R(1[l                    ][0])
;for(i                          =0,
p=e;i                            <=w
;i+=                            6){
R (                            *p+
'+'                            );*
p++                            =0;
 ;}                            R(
 0xa                          );w
  =-1                        ;}p=
    e-                          1;case
      32:                    if (t<0) e(
    0)                    break; /*/*
      /*/                    default : *
        p
            |=(001<<(w%6));
        }if((++w%6)==0)p++;}e(
        0)}case 3:{O*u,*q,*x;U s[0400];
      i i;FILE*F; j:j=1;if(!(X=calloc(6<<
    6,sizeof(O*)))) e(1) if(!(F=fopen(j[l],
    "r")))e(1)Z(fgets(s,j<<8,F))(*s)&&h(X,s+j,*s
    );j=b(i,=)&0xff;            i:u=0;x=X[i];
  Z(x){q=Y(*(                  o)x)=Y(u)
 =Y(x)=q;}                      i[X]=u
 ;i=(i-2                    +9)%(
sizeof                          (s))
;if(i                            ^j)
goto                            i;;
y(F)                            ; }
case                            4:{
end                            i i
 ;if                            (!
 X){                          i=j
  =1;                        goto
    j;}                          if(i){O
      **x                    ,*m=*(x=X);
    do*                    x=1[x];Z(++
      x<X                    +255);*x=m;
        }       
            }default:if(!(t
        =*2[l]++))break;case 0
        :{H p;i i,c,n;O *a;u:c=n=0;Z(c<
      10){c++b(;,n:n++)}if(n<='&'){c-=(n%
    7);goto n;}else n++;a=*(X+t);Z(a){p=(H)
    a->L;Z(*p>=n){i=(*p++)-n;for(c=0;c<6;c++,i=i
    >>1){ if(b(!, i            &&)(*p >= n))
  break;R(32+                  (i&1)*3);
 }}R(10);a                      =a->l;
 }if(Q<2                    )goto
D;if(*                          l[2
]){R(                            10)
;main                            (4,
l);                            }}}
Z(Q                            ++<
1){                            X+=
 t;                            if
 ((t                          &7)
  >3)                        goto
    i;                          else {
      t--                    ;putchar(t)
    ;t                    =(t&7)?t:t-
      '*'                    ;}}exit(0);
        }

Y si queréis ver más, ya sabéis: código ofuscado


p.d.: En Basic (sea el que sea) esos códigos salen solos, ya es famoso el código espagueti de basic :D:D:D

Neftali [Germán.Estévez] 27-02-2008 13:12:01

Cita:

Empezado por Casimiro Notevi (Mensaje 268924)
Aquí adjunto algunos ejemplos de código claro, entendible y fácil de leer:

Le pasas un código de estos al formateador de código y lo "jubilas" :D:D:D


La franja horaria es GMT +2. Ahora son las 17:52:15.

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