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)

Neftali [Germán.Estévez] 19-02-2007 14:19:07

Cita:

Empezado por ArdiIIa
Que debemos entender con "gente que nunca ha programado", considerando que nos estamos moviendo en un entorno profesional ?

Bueno, no tiene porqué...
Ni en el mensaje original, ni en la comparativa se cita que estemos hablando de profesionales de la informática.
Mucha gente aprende (o intenta aprender) a programar por hobby o por curiosidad; No todos los que se adentran en el mundo de la programación lo hacen para dedicarse a ello profesionalmente.

Hay personas que son usuarios avanzados en windows y que quieren hacer sus "pinitos" en programación. Igual que yo puedo hacer mi "pinitos" en diseño gráfico; No soy ni mucho menos diseñador, ni he estudiado para ello, pero me gusta "toquetear" programas, hacer pruebas y voy aprendiendo sobre la marcha. Posiblemente PhotoShop sea mucho mejor que PhotoFilter (por cuierto muy bueno y gratuíto; link ;)) pero para mí sea más "adecuado" empezar por el segundo y luego "saltar" al primero.

roman 19-02-2007 18:20:14

Sería interesante leer la opinión del amigo Caral. Si no entiendo mal, él no es un profesional de la informática, sino un empresario que decidió hacer su propio sistema- ¡y muy bien que lo hizo! -y lo hizo en Delphi. Desconozco si antes programó en VB.

De cualquier manera, yo creo que decir que es más sencillo para el novato, entender la programación orientada a eventos de VB que la orientada a objetos de Delphi, si bien es una afirmación dictada por la experiencia, no estoy seguro que sea aplicable precisamente en el contexto de un usuario avanzado que quiere hacer sus pininos. Si bien Delphi permite una buena programación orientada a objetos, ¿cuántos de nosotros realmente aprovechamos esa característica? El instanciar un objeto y asignarle propiedades, no es programar orientado a objetos. Yo creo que tal usuario avanzado, la mayoría de veces, programará usando exclusivamente eventos. Y en ese punto estamos "igual" que con VB, y creo que es así como habría que hacer la comparación en cuestión de facilidad de aprendizaje.

// Saludos

ArdiIIa 19-02-2007 20:00:20

Cita:

Empezado por roman
El instanciar un objeto y asignarle propiedades, no es programar orientado a objetos.
Yo creo que tal usuario avanzado, la mayoría de veces, programará usando exclusivamente eventos.

Es obvio que siempre tienes bastante razón, pero siempre está la excepción que rompe la regla...
Yo conocí la OPP en Clipper de la mano de Antonio Linares con su famosa librería Fivewin, de la que estoy seguro que muchos "viejos cliperos" conocerán, así como de la versión 5 de Clipper en la que ya se podían hacer pinitos con sus browsers y columnas.
Desde entonces considero que ese tipo de programación te brinda un rendimiento superior a lo tradicional y en todos aquellos lugares que puedo potenciarlo, así lo hago.
Supongo que no estoy diciendo nada nuevo, sino únicamente remarcar que la tendencia genérica, no tiene porque ser la de programación de eventos, aunque seguramente, si sea la mayoritaria.

Caral 19-02-2007 20:01:53

Hola
He votado por Delphi, y no es porque crea que es mejor o peor, la verdad cuando necesite hacer el programa de mi empresa intente con todo incluyendo VB, dicen varios votantes que es un lenguaje facil, para mi ni pies ni cabeza, por mas libros que compre, no pude hacer nada que mereciera la pena, con delphi vasto un pequeño libro y aqui estoy, es mucho mas facil que vb, mas ameno, hay mas informacion en internet, bueno para mi como novato, Delphi 6.
Es un error que enseñen en las universidades VB y no Delphi, pero tambien tiene una ventaja, salen menos preparados y hay mas trabajo para los que saben.
Contrate a dos jovenes en un principio para que me hicieran el programa que necesitaba, no pudireron, hacian en dos semanas o mas lo que hago sin experiencia en un dia con Delphi, que mas ejemplo.
Saludos

roman 19-02-2007 20:48:42

Cita:

Empezado por ArdiIIa
Desde entonces considero que ese tipo de programación te brinda un rendimiento superior a lo tradicional y en todos aquellos lugares que puedo potenciarlo, así lo hago.

Pero, ¡es que yo nunca dije lo contrario! A ver; aquí se mencionó- o así lo entendí -que para el novato, y específicamente aquél que no es informático, sino usuario avanzado, es más sencillo el paradigma de orientación a eventos que el de orientación a objetos. Yo no dudo que así sea, como tampoco dudo que la orientación a objetos sea superior. Pero muchos usan o usamos delphi sin realmente usar ese paradigma, por ello aclaré lo de que usar un objeto no es lo mismo que hacer OOP. Y muchos de quienes se ponen a programar como usuarios avanzados harán lo que muchos hemos hecho: colocar componentes en un formulario y programando sus eventos. Y eso es lo mismo que hace quien comienza a usar VB. Así que, ¿donde está la mayor facilidad de aprendizaje en VB?

// Saludos

Delphius 19-02-2007 20:52:37

Cita:

Empezado por roman
De cualquier manera, yo creo que decir que es más sencillo para el novato, entender la programación orientada a eventos de VB que la orientada a objetos de Delphi, si bien es una afirmación dictada por la experiencia, no estoy seguro que sea aplicable precisamente en el contexto de un usuario avanzado que quiere hacer sus pininos. Si bien Delphi permite una buena programación orientada a objetos, ¿cuántos de nosotros realmente aprovechamos esa característica? El instanciar un objeto y asignarle propiedades, no es programar orientado a objetos. Yo creo que tal usuario avanzado, la mayoría de veces, programará usando exclusivamente eventos. Y en ese punto estamos "igual" que con VB, y creo que es así como habría que hacer la comparación en cuestión de facilidad de aprendizaje.

¿A quien estaríamos considerando un novato? Como ya se ha dicho en este debate... y se sabe muy bien... el novato puede ser tanto aquel universitario que recien estudia la carrera como la ama de casa que busca divertirse en su rato libre (creo que fue exagerado el ejemplo... pero creo ilustrar el amplio concepto de lo que es un novato).
Para aquellas personas que se inician en la actividad le resulta (debería serlo) más sencillo aprender... obvio.
Yo estoy estudiando para ser ingeniero en informática (y aclaro que la formación que se nos ha dado en mi universidad no está muy enfocada en la programación sino más bien en la dirección y formulacion de proyectos informáticos) y creo que muchos de los que estamos analizando estas cuestiones somos (o seremos) profesionales de la materia.
Viendolo desde el punto de vista académico (disculpen que lo exponga según mi experiencia como alumno), lo ideal para armortiguar la curva de aprendizaje no va por una cuestión del lenguaje sino más por la lógica de aprendizaje. ¿Qué es lo primero que se le enseña? Pensar, abrir la mente... una vez que la mente se adapta a pensar en forma lógica/matemática se le enseñan simples herramientas visuales (diagramas de bloques), pseudocódigo y a la par las sentencias simples: IF, CASE, FOR, REPEAT, WHILE, ASIGNACION y estructuras de datos. Esta primera absorción es a modo simple: conocer que hacen o para que se las emplea.
Cuando comienzan las primeras lecciones de prácticas se toma contacto con problemas sencillos, sumas, promedios, ordenacion de arrays, busqueda... Para ello lo ideal es emplear un lenguaje similar a la sintaxis que fueron vistas, algo intituivo, sencillo y que no sea "rebuscado". En mi caso fue Pascal.

Lo anterior corresponde a los inicios... para climatizar al programador. Lo que sigue en su enseñanza es la polémica desatada en los últimos mensajes.
Cuando se entiende la programación procedural... le salen con un mundo distinto: la programacion por eventos u objetos. Yo la vi en ese orden... y a mi parecer esto influye en la mente y el aprendizaje.
Decirle al estudiante que ahora cuenta con eventos asociados a un boton es totalmente distinto que decirle: el boton es un objeto que posee eventos (y demás cosas...) y puedes heredar de el y agregarle más eventos.
Y según el lenguaje que se use en su enseñanza le resultará sencillo o complicado.

Yendo al tema VB vs Delphi: Yo vi POO con VB y la programacion por eventos en Delphi. ¿Sería lo correcto? No sé...
Todo se resume en la lógica (a si lo veo y entiendo yo) que les hablaba inicialmente.

A lo que voy es que el aprendizaje dependerá de lo que vea inicialmente y con que herramienta lo aprenda. Resulta mejor ver primero por eventos y luego POO. Ver ambas cosas a la vez, resulta demasiado complicado.

Como dices roman... todo depende de la facilidad de aprendizaje. Pero éste aprendizaje depende de la "cultura informática" que posea la persona. La cultura de un programador pasa por pensar lógicamente. Si uno entiende lo que es un IF, no interesa el lenguaje. Si se tiene la mente para pensar en sentencia simples ya no interesa si es por eventos u POO. Cada enfoque o paradigma tiene sus sutilesas y manera propia: Ahora es cuestión de que el estudiante entienda lo que es evento y lo que es objeto. Y como emplear dichas sentencias simples en cada paradigma.

Ahora... pongamos al ama de casa. ¿Entiende lo que es POO?¿Un IF?¿Que es evento? Lo más seguro es que se agarre un libro especializado en un lenguaje. Pongamos un ejemplo: Delphi y la Cara Oculta. En los primeros capítulos vera un poco de eventos... POO... controles... deteción de errores... como manejar el IDE. ¿Esto lo hace programadora? Yo, lo dudo. Se verá con un mundo de controles, objetos clases... y deberá buscar otro libro que le explique POO... cuando entienda objeto se dirá: "y ahora ¿que le pongo?... se lo que debe hacer pero como le digo que hacer?" Busca algo más simple: las sentencias simples... Si sabe inglés, tiene la mitad hecha.

¿Se ha entendido lo que dije? Porque eso espero:p

Con respecto a lo que remarqué con rojo en tu frase: se trata de la manera de como implementar la POO. Se tiene un problema: se buscan las clases... su diagrama de secuencia, de estado, etc. Se codifica... Ahora se usa el aspecto visual para pasar los parámetros hacia los objetos (previamente creados, obvio). Se disparan los eventos necesarios y se deja que las relaciones entre los objetos (mensajes... o como prefieran llamarle) se disparen hasta objeter el resultado final. Si debe notificarse el resultado, se lo muestra en pantalla. Asi lo veo yo... una mezcla de eventos y POO.
Es cierto también que no siempre vamos a hacer 20 clases, es más... si ya tenemos las suficientes y las adecuadas sólo bastará "engancharlas" con el aspecto visual (mediante los eventos) para obtener el aplicativo. ¡Eso es lo lindo y sencillo que le encuentro a Delphi!
Ahora bien... diste un punto clave:El instanciar un objeto y asignarle propiedades, no es programar orientado a objetos
.Cierto... pero tampoco hay que ser extremistas para decir que nunca hacemos POO. La POO se construye mediante los mensajes entre los objetos y el poder de concentrar variables, estados. Y hay casos en que ni siquiera es necesario emplear objetos pues se trata de sistemas muy simples
. Yo para ello declaro unidades al estilo clásico: funciones y procedimientos sueltos (yo las llamo "Unidades API"). Si veo que la solución es algo más rebuscado, como pasos de variables, secuencia de acciones y procedimientos, almacenamiento de variables, interaccon entre varias funciones, y demás... declaro cases según el diagrama de clases adecuado (y tratando de seguir los patrones) y hago empleo de dichas funciones "API" mediante eventos y mensajes en los objetos.;)

Saludos, y disculpen que suelte semerendo rollo de hilo.:D

ArdiIIa 19-02-2007 21:36:05

Cita:

Empezado por roman
Pero, ¡es que yo nunca dije lo contrario!

Si no trato de polemizar con el asunto, sino simplemente deseaba remarcar ese aspecto.
Cita:

Empezado por Delphius
lo ideal para armortiguar la curva de aprendizaje no va por una cuestión del lenguaje sino más por la lógica de aprendizaje.

A eso precisamente me refería yo antes, a lo que podríamos denominar como "alumnos aventajados", dado que cuando te topas alguien que ya tiene algún "cimiento" o esas nociones, la explicación del lenguaje es resulta totalmente asimilable por él.

Caral 19-02-2007 22:06:09

Hola
Bueno voy a dar mi opinion como no solamente novato sino como NO programador ademas que 0 experiencia en todo esto.
Como dice Roman, No soy programador soy empresario y nunca he estudiado para programar.
Hace mucho me gusta esto de la programacion pero como no he tenido mucho tiempo pues no pude aprender como se debe (aunque sea por capricho).
Tuve la oportunidad de ver programas como Basic, fox, c, Vb, cliper y no se que otros.
Como soy en esto autodidacta, lo que hago es comprar libros y los tengo todos los de estos lenguages.
NO se que tiene Delphi, la verdad no se si es objetos o eventos o que, no tengo la menor idea, lo que si se es que llevo unos 9 meses programando o tratando con delphi y lo que he hecho nunca lo podria haber hecho con otro lenguage.
Dicen que VB es mas facil, puedo asegurar por lo menos en mi caso que delphi es muchisimo mas facil.
Como no se, pues comparo, y vb lo comparo con java o fox, osea complicado no se aclara nadie con esto hay que hacerlo todo a pie, no se como explicarlo, perdonen la ignorancia en el tema pero la verdad a manera de comparacion como novato diria y siempre dire Delphi.
Mis argumentos son los programas, dicen que para muestra un boton.
Saludos

Delphius 20-02-2007 04:28:57

Cita:

Empezado por caral
NO se que tiene Delphi, la verdad no se si es objetos o eventos o que, no tengo la menor idea, lo que si se es que llevo unos 9 meses programando o tratando con delphi y lo que he hecho nunca lo podria haber hecho con otro lenguage.

Delphi tiene de ambos lados.
9 Meses.... yo llevo 3 años de conocerlo (aunque en la práctica propia real tal vez sea año y medio... pues si tengo que contar las verdaderas horas que le he podido dedicarle... me quedo corto) y recién me estoy poniendo a ver el tema de Bases de Datos/Delphi. Tu con 9 meses y ya tienes un buen ejemplo práctico de un sistema... Te felicito. Como autodidacta tienes un 10 felicitado y demuestras que ya eres un programador iniciado, dejaste de ser un aficionado.

Cita:

Empezado por Caral
y lo que he hecho nunca lo podria haber hecho con otro lenguage.
Dicen que VB es mas facil, puedo asegurar por lo menos en mi caso que delphi es muchisimo mas facil.
Como no se, pues comparo, y vb lo comparo con java o fox, osea complicado no se aclara nadie con esto hay que hacerlo todo a pie, no se como explicarlo, perdonen la ignorancia en el tema pero la verdad a manera de comparacion como novato diria y siempre dire Delphi.

Bueno, a eso tu mismo sabes la respuesta. Te focalisaste en un producto, y aprendiste del mismo.
No se trata de ignorancia.... Tu mismo dices, viste (y estas viendo) Delphi. Que hayas estudiado sobre Delphi unicamente no te hace ignorante. Lo viste, te pareció intuitivo y continuaste con él. Si el producto no te hubiera sido de agrado de seguro pruebas otro.

Y es normal que veas a Delphi como la herramienta predilecta. Yo también elijo a Delphi sobre VB... me es más sencillo, le aprendí (y estoy aprendiendo) bien. Hace dos meses exactamente fui a una entrevista de trabajo en donde querian a alguien para que les arme el departamento de informática e imponga un lenguaje de trabajo: les dije que optaba por Delphi (y aqui... en Salta, Argentina, Delphi no es muy conocido), y les comparé con VB. Les hice notar las ventajas y desventajas de ambos. Lástima... me hubiera gustado que el proyecto se llevara a cabo. La companía no quiso dar el presupuesto para informatizar:(

Cita:

Empezado por Crandal
Mis argumentos son los programas, dicen que para muestra un boton.

Y eso es en definitiva lo que cuenta. En las entrevistas que he ido como caracter de programador... he notado que no les importa realmente si tienen el papelito: les gusta que sepan y que los resultados sean los esperados. Claro... es normal de esperar que ese papel ayuda. Pero creeme... conozco a muchas personas como vos... y con buenos resultados, ....y también a varios que estan estudiando informática y que no tienen la menor idea de como hacer un sistema sencillo de calculadora (no voy a dar nombres... no se molesten)

Saludos,

Caral 20-02-2007 19:37:33

Hola
Gracias Delphius, me alagas, la verdad sigo siendo un aprendiz.
A mis 46 años soy un parendiz, por que pienso que en el momento en que se cree uno, que sabe, trunca la oportunidad de seguir aprendiendo.
Delphi es como la fibra de vidrio (a lo que me dedico), todos los dias se aprende algo nuevo y si no estas dispuesto a aprender, te quedas atras como mucha jente, que aunque han ido a la universidad, a estudiar lo que sea, cuando salen con el titulo, ya son profesionales, que gran mentira, el profesional se hace cada dia.
Tan cierta es esta aseveracion, que al que se le paga mas, siempre es el que tiene mas conocimiento, no mas titulos, osea el que se prepara dia a dia, aprende dia a dia, se actualiza dia a dia.
A mi jente la contrato por conocimiento, no por titulo, y te lo dice un empresario como hay muchos, me pueden enseñar los tutilos que quieran, siempre digo, para muestra un boton, DEMUESTRE lo que sabe.
Aparte:
Esta demostrado que el cerebro trabaja por sentimientos, no es visual ni auditivo ni sensorial ni nada por el estilo, se aprende mejor cuando esto que estas aprendiendo te gusta, te apasiona, te anima, te motiva, osea pones tus sentimientos en ello.
Saludos

Delphius 21-02-2007 05:19:55

Cita:

Empezado por Caral
Gracias Delphius, me alagas, la verdad sigo siendo un aprendiz.

Yo nunca dije que dejaste de ser aprendiz. Al igual que vos opino que se es aprendiz de por vida. Solamente dije que no te considero como un novato.

Para mi lo que diferencia a un novato de uno iniciado es la capacidad para entender conceptos y manejo de base de datos (y obviamente... explotarlas con sistemas).

Cita:

Empezado por Caral
que aunque han ido a la universidad, a estudiar lo que sea, cuando salen con el titulo, ya son profesionales, que gran mentira, el profesional se hace cada dia.

Totalmente de acuerdo. Para mi quien da el verdadero título es la calle. Pero también hay que tener las ganas, fuerza y dedicación para serlo. A principio del 5to y último año de mi carrera se nos viene diciendo:

Cita:

Si a estas alturas no se consideran capaz de ser ingenieros no lo serán
Yo me siento uno (un poquito de egoismo:D:p). Y creo que vengo haciendo el esfuerzo desde hace ya tiempo. Y la verdad que el camino cuesta, y sobre todo si en el medio hay que hacerce calle. No es nada fácil tener que trabajar y estudiar... y a mi me resultó sumamente estresante.

Ahorita no estoy trabajando, y se siente la falta de dinero:(... pero ando con mucho lios: todavia me queda una materia para rendir (ahorita el 22) y estoy realizando la tesis (No le cuenten a mi flia y amigos ... que la pretendo rendir a eso del 20 de agosto:D. No quiero que me pelen, porque sino no me a volver a crecer:(:D)

Saludos,

poliburro 21-02-2007 08:03:37

No se ustedes, a mi estos debates me dan sueño,

Por supuesto Delphi será mejor que visual basic, por n + 1 cosas.

Punto.

Creo que ahora que microsoft ha apostado al 100 % a Punto net, Este debate tiene un tufo de anacronismo que ni el se lo aguanta.

:D

Mi muy particular punto de vista.

jejejej

roman 21-02-2007 08:21:36

Tienes razón, ahora que ya ni Microsoft defiende a VB, esto es como debatir qué es mejor, si Lotus o QPro :D

// Saludos

JBD 15-03-2007 20:52:04

añade un tercero
 
Yo he trabajado con VB, con delphi y con c++. Si no tienes idea de ninguno y quieres aprender un lenguaje yo te recomiendo c++. Versatil, potente, POO, lo tiene todo. Claro que es el más complicado pero aprendiendo este no necesitaras ninguno más. 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.

Casimiro Noteví 15-03-2007 22:38:55

Cita:

Empezado por JBD
Yo he trabajado con VB, con delphi y con c++. Si no tienes idea de ninguno y quieres aprender un lenguaje yo te recomiendo c++. Versatil, potente, POO, lo tiene todo. Claro que es el más complicado pero aprendiendo este no necesitaras ninguno más. 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.

Ya, pero es lo que decimos siempre: millones de moscas no pueden estar equivocadas, comen m****a.


P.d.: Y no digo que VC++ sea malo, sólo era un ejemplo de que no porque lo usen más personas... quiera decir que es mejor.

egostar 15-03-2007 22:43:59

Cita:

Empezado por Casimiro Notevi
Ya, pero es lo que decimos siempre: millones de moscas no pueden estar equivocadas, comen m****a.


P.d.: Y no digo que VC++ sea malo, sólo era un ejemplo de que no porque lo usen más personas... quiera decir que es mejor.

Pienso lo mismo que tú, yo digo que uno trabaja con lo que te permite estar en tu Zona de Confort.

Saludos.

felipe88 08-06-2007 00:07:55

!!! Viva Delphi ¡¡¡ :d

poliburro 08-06-2007 00:35:38

Pues, Viva¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ jajajajaj

linuz 08-06-2007 12:37:19

Delphi
 
Hola a todos,

He votado por Delphi. Llevo trabajando con el profesionalmente 1 año y medio, y me parece una herramienta excepcional. He trabajado un poco con VB, pero no quede muy satisfecho (lo cual no quiere decir que no sea bueno).

Algunos compañeros han comentado.

Cita:

Empezado por Roman
Tienes razón, ahora que ya ni Microsoft defiende a VB, esto es como debatir qué es mejor, si Lotus o QPro :D

Creo que deberíamos de apuntar más hacia Delphi Vs VB.NET, aunque sigo opinando que VB no es ni peor ni mejor, tan solo "diferente" ;)

Un saludo

poliburro 08-06-2007 20:00:13

Cita:

Empezado por linuz
Creo que deberíamos de apuntar más hacia Delphi Vs VB.NET, aunque sigo opinando que VB no es ni peor ni mejor, tan solo "diferente" ;)

Un saludo

:S pues a mi me enferma el estómago programar en Vb. :P

jajaja

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 Noteví 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 Noteví 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 Noteví 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 03:35:37.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi