necesito un consejo de alguien que sepa

Tus experiencias con la informática, o fuera de la informática
Responder
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

necesito un consejo de alguien que sepa

Mensaje por iamchavo »

aloha humanoides , ultimamente se me estan ocurriendo varias cosas para hacer y por lo visto si supiera bien autoit podria crearlas , yo ya tengo decidido que quiero dedicarme a programacion ,robotica o algo del entorno , y ultimamente lo que hacia era copiar y pegar codigos sin saber como funcionaban y eso no me ayuda de nada ,por eso quiero ponerme las pilas y aprender de una vez por todas , pero necesito un consejo de alguien que sepa de programacion , y quiero saber si aprender autoit me va a desorientar a la hora de querer aprender otro lenguaje ya que talvez tengan cosas muy diferentes y me lleve a confuciones,eso fue lo que lei de visual basic, que si aprender ese lenguaje cuando quieras pasar a aprender lenguaje C , pueda que se te complique y tengas varias confuciones porque es como que van por distintos caminos ,
ami me gustaria crear programas que esten asociados a paginas web por ahora
si me dan algun consejo para orientarme seria muy bueno :)
graciiias :D
Avatar de Usuario
XPyro
Profesional del Autoit
Mensajes: 542
Registrado: 04 Mar 2007, 10:12
Ubicación: México
Contactar:

Re: necesito un consejo de alguien que sepa

Mensaje por XPyro »

No importa que lenguaje aprendas, lo que importa es que lo aprendas y lo apliques, AutoIt es una buena opción para iniciar en este mundo porque e visto que es el más fácil y rápido que otros a comparar :smt006
Imagen
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: necesito un consejo de alguien que sepa

Mensaje por Jonny »

Hola

Yo pienso, que si fuera al revés, sí sería sencillo y no te costaría. Si supieras C++ (por ejemplo) y quisieras aprender AutoIt), ya que este segundo es infinitamente más fácil que C++ (o cualquier otro lenguaje). Pero aprender AutoIt para luego aprender otro lenguaje no creo que te sea útil si no piensas hacer nada en AutoIt.
Primero, porque te va a suponer una pérdida de tiempo importante (aprender dos lenguajes si lo haces enserio lleva su tiempo por sencillos que sean) además, de que como bien dices vas a tener un taco impresionante entre ambos lenguajes
¿Cual quieres aprender además de AutoIt?
Dicen que VB se le parece mucho, pero quizá sea en la sintaxis de cosas como los if ... endif, y cosas así, porque he visto algún que otro código de VB y no he entendido absolutamente nada (quitando claro lo común de todos los lenguajes if, for etc). Cada lenguaje es un mundo, en cuanto a funciones, etc etc. Lo que tienen en común por supuesto, es la parte teórica de la programación (condiciones, funciones, bucles etc). Sabiendo eso, puedes ponerte con cualquier lenguaje, porque solo tendrás que aprender su sintaxis y funciones.

Quizá, deberías plantearte a que quieres dedicarte exactamente, tanto por ahora como a medio o largo plazo y valorar si lo que quieres hacer es posible con AutoIt (almenos con relativa facilidad) y si AutoIt es el lenguaje adecuado para ello. Aunque, te lo dice uno que ha hecho cosas con este lenguaje (basta echar un vistazo al foro) que parecían no ser para AutoIt jejeje.
Una vez lo tengas claro y sepas con que lenguaje vas a trabajar, te recomiendo que te metas con ese a saco sin tocar otros, almenos, tan enserio.

Salu2!
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: necesito un consejo de alguien que sepa

Mensaje por Ximorro »

Opino que cualquier lenguaje es bueno para empezar, bueno, quizás empezar con ensamblador sería un poco fuerte ;-)

Cógete uno con el que puedas empezar a hacer cositas sencillas y que te motive, AutoiT es bastante adecuado para empezar aunque quizás es demasiado sencillo. La cuestión es que no hay que plantearse "programar en tal lenguaje", sino "programar". Esto significa que lo importante es aprender a manejar bien las típicas estructuras de control (los IF, FOR, WHILE, etc...), las variables, las matrices, saber estructurarse un programa usando funciones para realizar tareas repetidas en varios sitios o para simplificar el código...

Acon AutoIt puedes hacer todo eso, para cosas más avanzadas quizás será necesario pasarse a otros lenguajes. Esas cosas más avanzadas es por ejemplo manejar tipos de datos complejos: estructuras, programación dinámica (listas, pilas, colas...), y pasar a otro tipo de programación, que es la programación orientada a objetos (como en C++ o Java).

Pero tranquilo que lo que aprendas con AutoIt te será útil en el futuro, y además te puede ayudar al principio porque al ser más sencillo probablemente lo cogerás más rápido.

Cuando se aprende a programar no es difícil cogerse un lenguaje nuevo y al poco tiempo hacer cositas con él, con una buena ayuda que te guíe para ver cómo se llaman los comandos que tienes en mente.

Los que programamos usamos varios lenguajes, yo por ejemplo en el trabajo tengo que usar una cosa rara llamada Avenue, que es un lenguaje ultrasimple interno para personalizar un sistema de información geográfica concreto, cuando quiero hacer cosas fuera del sistema, por ejemplo interactuar con Windows, lo hago en Java (que no sé mucho, voy aprendiendo según me hace falta) o AutoIt, que para interactuar con Windows es ideal.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2091
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: necesito un consejo de alguien que sepa

Mensaje por BasicOs »

Ximorro escribió:Opino que cualquier lenguaje es bueno para empezar, bueno, quizás empezar con ensamblador sería un poco fuerte ;-)

Cógete uno con el que puedas empezar a hacer cositas sencillas y que te motive, AutoiT es bastante adecuado para empezar aunque quizás es demasiado sencillo. La cuestión es que no hay que plantearse "programar en tal lenguaje", sino "programar". Esto significa que lo importante es aprender a manejar bien las típicas estructuras de control (los IF, FOR, WHILE, etc...), las variables, las matrices, saber estructurarse un programa usando funciones para realizar tareas repetidas en varios sitios o para simplificar el código...
Hola, puedes seguir los consejos que te comentan.
Como te dicen, una cosa importante es que cuando empieces a programar, a invertir tu tiempo, encuentre su fruto, y recibas un resultado lo antes posible de tus programas funcionando como deseas.. Eso es que la curva de aprendizaje es corta.

Según preguntas, una de las ventajas de autoit, es que con muy pocas lineas de código haces muchisimo, y por otro lado muchisimo es lo que puedes hacer que no se puede hacer con otros lenguajes. Así por un lado tienes sonrisas y alegrías por los programas hechos en un plis-plas, y luego no tienes frustraciones porque haya algo que sea "imposible" de hacer ya que incluye muchas funciones como el control el windows desde fuera, y el reutilizar esclavizando aplicaciones hechas que no tienen API, la simulación de teclas, la gestión de lo que sale en la pantalla olviando interface y trabajando directamente sobre los pixels, soporte de internet y puertos TCP/IP..etc.... :smt023

Creo que en lo q lo piensas ya hubieras hecho tu primer programa,
Salu2:) :smt038
P.D.: Por otro lado a un nivel avanzado no tiene nada que envidiar a otros programas, y se pueden hacer cosas con tiempo y con progreso muy especiales (puedes mirar en la sección SCRIPTS donde hay muchos programas de ejemplo)
Suerte
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: necesito un consejo de alguien que sepa

Mensaje por Jonny »

Hola

Bueno... En parte si es cierto lo que dice Ximorro, lo importante es programar. Pero el que no importe el lenguaje en el que se haga... he aprendido que si es importante, en los años que llevo tocando la programación. Yo no he tocado (enserio) lenguajes ultrapotentes (para software de escritorio) que dicen por ahí, como C, C++ VB, etc etc. Ünicamente he tocado Informate (esto quizá no lo conozcais por aquí), que es un lenguaje compilado e interpretado, pensado para crear aventuras conversacionales. Esos juegos a los que se jugaban por allá por los 80, donde todo consistía en leer, leer y escribir... Escribir MUCHO. Este fué el primer lenguaje de programación que toqué hace ya ... más de diez años. Empecé con él, porque era sencillo (mucho más que autoit) aunque parezca increíble (no ofrecía ni la mitad de posibilidades que autoIt) y a decir verdad, también porque era el que me dijeron y no tenía ni idea del mundillo de la programación. Así pues, me puse a aprender ese lenguaje, que aparentemente era sencillísimo. pero conforme iba aprendiendo, iba practicando y al ver que daba resultado lo que iba haciendo, cada vez quería más y más. Llegó un momento en que pretendía programar juegos basados en texto sí, pero demasiado complejos, para lo que Informate se quedaba corto. A duras penas podían hacerse menús tipo "Pulsa 1 para una nueva partida" "Pulsa 2 para cargar partida" etc, cuando yo ya quería incluir las teclas de función en los juegos para evitar escribir tanto (se podía programar pero era inmensamente complejo) cuando con AutoIt por ejemplo, se hace con una línea de código.

Viendo que ese lenguaje se quedaba corto para las ideas que iba teniendo, me puse con php, que ya parecía un lenguaje más serio y potente. Serlo lo era, pero con la traba que no podían hacerse aplicaciones para Windows, sinó basadas en web... Hice cosas interesantes, pero no era exactamente lo que buscaba. Al fin, dí gracias a un amigo, con AutoIt, que sí me permitía hacer lo que quería. Cualquier tipo de software, tanto para Windows, como basado en web, etc etc etc. Aún así, hay cosas que pretendo hacer con AutoIt que son bastante complejas (Gracias a vosotros las conseguí), que con otros lenguajes más estandarizados sería más sencillo de hacer, y no por la complejidad del código a escribir, que seguramente con AutoIt es más simple, sinó porque al ser inmensamente más utilizado por todo el mundo, siempre existirán más códigos, librerías, etc etc que hagan que sea más sencillo hacer según que cosas (eso también es importante) y no quiero decir que no hayan scripts en AutoIt hechos por otros usuarios que hay muchísimos... Pero por ejemplo, cuadno queremos utilizar una api (Ver este post por ejemplo)
http://www.emesn.com/autoitforum/viewto ... it=eci.dll
Esta api, utilizando C++, hubiera sido más fácil de implementar, pues hay funciones escritas en ese lenguaje que interactúan con la dll.

Es cierto, que el haber tocado otros lenguajes me ha ayudado en lo que llamaba en mi otro post la parte teórica de la programación. Como decía Ximorro, estructurar el código, etc etc, pero también considero que he perdido el tiempo (siendo para aprender vale la pena) porque podría haber empezado directamente con AutoIt y haberme ahorrado cientos, ¡miles! de líneas de código.

En definitiva, creo que es mejor ir un poco al grano y al igual que cuando se hace un programa, suele hacerse un proyecto, antes de empezar a programar, hay que planificarse un poco que y como. A partir de ahí ir haciendo.
Buena idea la de usar más de un lenguaje, siemp´re puede sacarse lo mejor de cada uno. Aunque hay que ser muy valiente para ello ¡menuda ensalada! jeje.

Salu2!
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: necesito un consejo de alguien que sepa

Mensaje por Ximorro »

Hombre Jonny, estoy de acuerdo contigo en que al menos al principio lo mejor sea centrarse en un único lenguaje, pero creo que NECESARIAMENTE después vas a necesitar más, según qué cosas vayas a hacer, y lo importante es que nunca habrá sido perder el tiempo, siempre se aprende algo que puedes aplicar a tus prácticas de programación en otros lenguajes.

Quizás pasa que tu elección de lenguajes fue un poco especial, muy restrictiva en el sentido que este primero que comentas más que un lenguaje era un sistema de scripting para montar juegos conversacionales de texto. Resulta que AutoIt empezó siendo algo así: un sistema de scripting para hacer instalaciones desatendidas, pero ha evolucionado a un lenguaje de propósito general.

PHP ya es "más lenguaje", aunque sigue tendiendo un ámbito muy restringido: crear páginas web dinámicas.

Como decía yo trabajo con Avenue, aunque no es un lenguaje muy difícil de aprender nunca aconsejaría empezar a aprender programar con él. Y no es que sea malo, es que tiene un ámbito muy específico y sólo hay que usarlo para programar en ese entorno.

Como digo para aprender creo que es más interesante empezar por algo de propósito general, sencillo, que te deje hacer cosas enseguida y te dé alegrías, como dice BasicOS. AutoIt es de propósito general y te deja hacer muchos tipos de cosas. Y sí, casi todo lo que aprendas en AutoIt te servirá en otros lenguajes. No los comandos específicos, pero sí la forma de estructurar los programas y de "pensar antes de ponerse a escribir".

Y más adelante te harán falta otros lenguajes, aún siendo de propósito general casi todos los lenguajes tienen un ámbito, unos puntos fuertes y otros débiles. Por ejemplo si necesitas hacer algo multiplataforma se acabó AutoIt, que es y siempre será para Windows, tomarás por ejemplo Java o Python. Si quieres programar dentro de una página web usarás VBScript o Javascript. Si quieres crear webs dinámicas puede ser interesante PHP o servlets java. Para hacer cosas muy potentes en Windows con complicados entornos gráficos algún lenguaje en .NET, o Borland Delphi o C++ Builder...

Por cierto, creo que no eres justo con lo de eci.dll. Esa dll no es de Microsoft, pilla user32.dll y verás si AutoIT está preparado para ella. Lo que hayan hecho otros en C para eci.dll seguro que se puede hacer en AutoIt, pero hay que conocer bien esa dll. En C hay cosas porque alguien se pegó con ello, si ese alguien fuera de este foro probablemente esas rutinas estarían en AutoIt y no en C ;-)
Pilla Java, que se parece mucho a C, y ponte a acceder a esa dll, ya verás, ya... :smt003
Pero ponerse a programar sobre una complicada dll de un tercero ya es algo avanzado, para empezar no hace falta apuntar tan alto. Con la base de AutoIt más el montón de UDF que vienen con él tienes para un buen rato.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: necesito un consejo de alguien que sepa

Mensaje por Jonny »

Hola

Estoy con tigo y basicos, quizá lo próximo fundamental después de ponerse para arrancarse en la programación, es ver un resultado, el típico "hola mundo" ya basta para animarte a seguir en la complicada tarea de programar.
Yo decía que es bueno tener claro que se espera de lo que se vaya a hacer, para no llevarte chascos, que si bien ver resultados motiva, llevarse chascos al ver que pretendes hacer algo que no es propio de un lenguaje, desanima bastante y tiene que gustar mucho para insistir, insistir e insistir, hasta lograrlo.
Ni mucho menos desmerezco a AutoIt (el lenguaje con el que programo desde hace ya mucho tiempo) y con el que más he aprendido a programar, tanto teórica como prácticamente. No lo conocí en su fase más antigua, la de servir para automatizar instalaciones (seguramente no me hubiera interesado entonces por él), pero ahora me parece un muy buen lenguaje. Con cosas que mejorar pero muy bueno y tengo la esperanza de que siga evolucionando e iguale algún día almenos encuanto a prestaciones se refiere (multihilo, creación de DLL etc) se refiere, a los lenguajes más estandarizados (VB, C etc). Eso implicará quizá mayor complijidad en el desarrollo del código, pero seguro que nunca será tan complejo como en esos lenguajes tan potentes.
Estaría con tigo en lo de que aprender AutoIt le puede ir bien para luego desenvolverse con otros lenguajes más complejos, si AutoIt tubiera buena documentación. En mi opinión en eso escasea (no hablo de la ayuda en castellano) que no tiene ni una cuarta parte de lo que permite hacer la última versión de autoit, sinó de la ayuda original, que explica el uso de las funciones del lenguaje y poco más. Pero si hablamos de aspectos teóricos, con AutoIt no es fácil cogerlos. Es, lo contrario que los tochos de VB, Java, C, etc, que meten demasiado rollo teórico y acabas loco perdido y en ocasiones sin entender nada.

Sí, es cierto. Quizá yo no elegí el mejor lenguaje para empezar a programar. Pero imagino, que haberme puesto con un lenguaje de verdad hubiera sido un fracaso, pues con ese ya tube bastante faena. En realidad no me arrepiento, es una experiencia más, que por supuesto me ha veneficiado para lo que hoy en día se hacer en la programación. Pero manteniéndome en mis anteriores mensajes, si ahora volviera a usar ese lenguaje (no me acuerdo de NADA) con echar un vistazo a la documentación lo manejaría perfectamente, por ser muchísimo más sencillo que AutoIt.

Lo de Eci.dll lo puse como ejemplo ¿Cuantas veces necesitamos hacer algo que requiere de una dll, que muchas veces las apis de Windows no contempla (Rectifico), o desconocemos como hacer o si se puede con las apis de Windows?
En esos casos, hemos de tirar de librerías de terceros, que por supuesto en el foro inglés seguro que es raro no encontrar un post donde alguien ya lo haya echo, pero en el supuesto caso de que eso ocurriera, hemos de dejarnos el pellejo para tratar la librería, mientras que en C, como es el caso de Eci.dll, hay varios sitios donde lo tocan. Además, la documentación de la api está orientada a C++ y sus ejemplos están hechos en ese lenguaje. Claro, que si quien hizo las funciones que comunican con la dll hubiera sido programador de AutoIt Habríamos tenido todo ese curro hecho (Ahora ya lo está) jeje. Pero me refería a que hay más posibilidades con otros lenguajes más estandarizados. La prueba la tienes en Google.
Busca AutoIt y VB, Java, .net, etc etc. Tienes manuales, foros, listas etc etc a puñaos.

Salu2!
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: necesito un consejo de alguien que sepa

Mensaje por Ximorro »

En la parte de la documentación tienes razón, AutoIt es más nuevo y mucho menos extendido que los archiconocidos C o VisualBasic. Yo tantos problemas no he tenido con la documentación en inglés (quizás con las funciones de las UDF, menos explicadas) pero ciertamente si la necesitas en castellano (u otros idiomas) lo tienes más difícil.

Por supuesto la ventaja de los lenguajes conocidos es que "hay de todo", y buscando por internet encuentras lo que buscas, si es posible hacerlo...
Con AutoIt... ¡pues tienes este foro! :smt003 y si sabes algo de inglés en el foro de habla inglesa hay más cosas simplemente porque hay más gente.

La ventaja de AutoIt es que es un lenguaje sencillo, y pronto puedes hacer cositas ejecutables, incluso crear archivos EXE autónomos en un soplido, sin preocuparse demasiado de compiladores, linkadores o runtimes...

No defiendo AutoIt a ultranza, como decía cada lenguaje tiene su ámbito, por ejemplo no esperéis grandes prestaciones de un lenguaje interpretado, por ejemplo las cosas que hice de números primos las pasé a Java... donde iban espectacularmente más rápido (y eso que estrictamente hablando Java también es interpretado, pero está a otro nivel).

Conclusión, ¿AutoIt es un buen lenguaje para iniciarse en programación? En mi opinión sí. Y probablemente más adelante querrá pasar a otros, recomiendo algo con un buen entorno de programación, como la plataforma .NET o las de Borland. Pero eso no quiere decir que si se empieza con AutoIt vaya a ser tiempo perdido.

Por otro lado, iamchavo (si es que aún estás por aquí :smt002 ), si te quieres meter en serio en el mundo de la programación te recomiendo hacer cursillos o mirar temas de algorítmica y de estructuras de datos, que es lo que sería estructurar programas y gestionar la información, en principio independientemente del lenguaje de programación, aunque lógicamente la práctica lo normal es hacerla en algún lenguaje. Programar empieza por ahí, escribir esos algoritmos y estructuras en un lenguaje en el ordenador va después, es lo que se llama implementación, y eso se puede hacer en diferentes lenguajes. "Programar" no es sólo "escribir en un lenguaje de programación", es algo más genérico...
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: necesito un consejo de alguien que sepa

Mensaje por Jonny »

Hola

Vamos coincidiendo. Desde el principio yo me refería a eso de aprender algorítmica y estructuración de datos (Lo que llamaba parte teórica) antes de ponerse a tocar uno u otro lenguaje, que como dije posiblemente es lo de menos (unos dan más respeto que otros) jeje. Lo que pasa, es que yo lo enfocaba de otra manera. Defendía el echo de tener claro que y para que se quiere aprender a programar antes de decantarse por uno u otro lenguaje, porque daba por hecho que en la mayoría de manuales de casi todos los lenguajes, aunque de refilón en algunos casos, te enseñan todo eso (nunca con tanta profundidad como manuales especializados). De esa forma, digamos, matas dos pájaros de un tiro. Aprendes a estructurar código a la vez que a escribirlo en el lenguaje que teóricamente vas a aprender para un uso habitual.
Pero la idea de empezar por el principio y consultar manuales de algorítmica y luego pasar a la práctica es muy buena. Aunque, si lo que hablábamos era de ver resultados enseguida ... Quizá con esa mecánica resulte un tanto agobiante ¿no? nunca he mirado un manual de esos (pienso hacerlo) pero tiene que ser apto solo para valientes, muy valientes jejeje.

Aunque no lo he dicho aún, estoy con tigo. AutoIt es el lenguaje ideal para ver resultados enseguida. Incluso, yo profundizaría más. Es un buen lenguaje para empezar, por que además de ver resultados enseguida, con poco esfuerzo, es de lo más sencillo hacer guis (muy complejo en otros lenguajes) almenos en C++, por lo que he podido ver. Eso también es importante, porque suele gustar ver lo mono que quedan los programas, no solo ver que sumen 2+2, dividan 10/4 o nos muestre un MsgBox() con los números del 1 al 10.
Si se decide a aprender AutoIt enserio, ánimo, pero siempre con una base teórica (me reafirmo) sinó le resultará un tanto duro, si no tiene idea de que es un bucle, para que sirve, como y cuando usarlo (etc).

Respecto a lo de la ayuda, antes solía recurrir mucho a la traducida al castellano (mi inglés es muy malo) pero cada vez más prefiero recurrir a la que incluya la versión de AutoIt que esté usando (total, hay que hacerlo sí o sí casi siempre) jejeje. Y con ayuda de un traductor, acabamos entendiéndonos la ayuda original y yo. Lo que no entiendo es, por que los autores de AutoIt tradugeron la ayuda de la versión 2 y no han continuado haciéndolo con las demás versiones. Por cierto, muy bueno lo de traducir cosas de la ayuda en "Documentación". Me ha servido para saber mejor que con el traductor, de que hablan en la ayuda de las funciones dll jeje.

Salu2!
Pedro
Hacker del Foro
Mensajes: 100
Registrado: 10 Jun 2008, 18:43
Ubicación: Venezuela
Contactar:

Re: necesito un consejo de alguien que sepa

Mensaje por Pedro »

iamchavo escribió:aloha humanoides , ultimamente se me estan ocurriendo varias cosas para hacer y por lo visto si supiera ... y quiero saber si aprender autoit me va a desorientar a la hora de querer aprender otro lenguaje ya que talvez tengan cosas muy diferentes y me lleve a confuciones,eso fue lo que lei de visual basic, que si aprender ese lenguaje cuando quieras pasar a aprender lenguaje C , pueda que se te complique y tengas varias confuciones porque es como que van por distintos caminos ,
ami me gustaria crear programas que esten asociados a paginas web por ahora
si me dan algun consejo para orientarme seria muy bueno :)
graciiias :D
la respuesta es: depende. Depende de que utilidad le darás a tus conocimientos para tus proyectos, hay cosas que se pueden hacer mas fácil en un entorno de programación que en otros, hay otros que simplemente por velocidad no se pueden hacer; mientras mas potente sea tu aplicación, mas bajo será el nivel del lenguaje de programación; mientras mas larga sea tu aplicación, tendrás que usar las ultimas técnicas de programación. (ej: programación orientada al objeto)

Yo el primer entorno que aprendí, fué el QBasic, luego cambié al Visual Basic, luego aprendí C y por último el AutoIt.

con Autoit puedes hacer aplicaciones relativamente rápidas sin complicarte mucho.

Si dices que trabajas mucho con paginas webs, bueno pues están, php, css, JAVA, etc.
La historia de la humanidad, no es, sino una contínua repetición de errores, que cada vez mejoramos.
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: necesito un consejo de alguien que sepa

Mensaje por Chefito »

Bueno bueno.....ahí va mi opinión :smt001 .

Estoy deacuerdo con casi todo lo dicho anteriormente. Si aprendes un lenguaje, no creo que nunca llege a ser una pérdida de tiempo (por lo menos total :smt003 ). Piensa que aprender un lenguaje no se reduce solamente a eso, sino que te ayudará a programar mejor con cualquier lenguaje.
Siempre recomiendan empezar con un lenguaje estructurado (en mi caso, empecé en la Universidad con turbo pascal, modula2). La verdad, yo he intentado ponerme varias veces con Lazarus (freepascal), ya que el pascal siempre me ha gustado, pero al final no lo he hecho. Quien sabe, algún día.
Una opción muy interesante sería C, pero es un peso pesado para empezar.
Con AutoIt vas a trabajar muy bien y muy agusto. Harás cosas rapidamente y verás que no te resultará muy dificil. Pero ojo!, no nos confundamos. AutoIt es un lenguaje facil en un extenso campo, pero como todo lenguaje, si quieres hacer cosas complicadas, el código se puede complicar y mucho. Pero comparandolo con otros lenguajes, sigo pensando que es bastante sencillo de utilizar :smt023 .

Otra cosa es que como dices arriba, quieras aprender un lenguaje de programación enfocado a un tema, en tu caso a la robótica (autómatas) y al entorno. Entonces tenemos que cambiar un poco el chip.Hay lenguajes específicos para programar en unos u otros temas.
Tienes suerte que yo he dado algo de robótica......enfocada a los robots industriales (robots manipuladores). Te voy a dejar un pequeño esquema de mi libro que clasifica los métodos de programación de robots industriales:
-Programación de robots: Conjunto de instrucciones de movimiento y funciones auxiliares que definen el trabajo a realizar por el robot.
De aquí salen dos definiciones:
1.Programación por aprendizaje o por guiado: Se hace que el robot (o una maqueta del mismo), realice una vez la tarea, al tiempo que se registran las configuraciones adoptadas.
Puede haber Aprendizaje o guiado pasivo o activo: En el pasivo los actuadores del robot están sin energía (lo mueves tu a mano), y el activo el robot se mueve utilizando sus propios actuadores, en función de las órdenes dadas por el usuario desde el panel de programación.
Igualmente el Aprendizaje o guiado pasivo se divide en dos: El directo, el cual se basa en mover directamente al robot, venciendo la resistencia de sus sistemas de transmisión y su peso, y el Maniquí, en el cual se utiliza una estructura ligera con la misma cinemática que el robot, registrándose sus movimientos.
Estos métodos de programación no utilizan (o muy poco) lenguajes de programación, ya que enseñas a la unidad central el recorrido (los movimientos que debe hacer) gracias a los movimientos que le haces hacer al robot directamente. Le unidad central coge varios puntos en el espacio por los que tiene que pasar.
2.Programación Textual. La tarea del robot se expresa mediante una serie de instrucciones escritas en un lenguaje formal. Gracias a este método podemos programar los movimientos (u otras cosas) del robot sin necesidad de éste.
Supuestamente un programa de estas características tiene 3 niveles:
-Nivel Robot. Las instrucciones hacen referencia directa a las acciones del robot.
-Nivel Objeto. Las instrucciones hacen referencia al modo en que deben quedar los objetos manipulados por el robot.
-Nivel Tarea. Las instrucciones hacen referencia a la tarea u objetivo final a conseguir.
En la actualidad se tiende a combinar los dos metodos (guiado y textual). Ejemplo de ello son sistemas como RAPID de ABB, VAL II de Staubli y V+ de Adept Technology. Estos son lenguajes de programación específicos a las marcas y modelos de robot.

No te voy a explicar todo el requerimiento de un sistema de programación de robots porque sería muy largo. Te voy a poner solamente los puntos:
- Entorno de programación.
- Modelado del entorno.
- Tipo de datos.
- Manejo de entradas/salidas (digital y analógica).
- Comunicaciones.
- Control de movimiento.
- Control del flujo de ejecución del programa.

Para saber que lenguaje sería el adecuado de utilizar nos deberíamos parar en el punto "Tipo de datos".
Para esto, tenemos que tener en cuenta que la posición y orientación espacial de un objeto puede ser especificada de diversas formas:
- Utilizando coordenadas articulares o del robot.
- Utilizando coordenadas cartesianas o del usuario.
Según esto podemos utilizar distintos lenguajes como VAL II, AML, ARLA, RAPID, V+, AL, ect.
He visto que estos lenguajes son de hace muchos años. Puede que el libro sea una primera base y te de los lenguajes de hace tiempo. Seguramente se ha avanzado en estos lenguajes y hay mejores. Sería cuestión de investigar.

Lo que yo he utilizado (muy poco) es la programacion textual de un robot con el llamado Código-R. Este lenguaje es un lenguaje experimental. En el libro te viene un ejemplo de programación con este lenguaje de un robot tipo SCARA con cuatro grados de libertad.

Casi todos estos datos estan sacados del libro "Fundamentos de robótica" 2º edición de la editorial mcgraw-hill.

Después de meter este pedazo de rollo, deciros que es interesante este tema, pero hay que ir más allá.

Decir que este tema es extensísimo. También deciros que se debería de ver otras cosas como la morfología de un robot, las herramientas matemáticas para localización espacial, etc etc. Todo esto son temas del libro. Seguro que están por internet.

También pensad que todo esto está enfocado a los robots industriales....no me quiero ni imaginar enfocarlos a otro tipo de robots (hay una clasificación bastante grande), como por ejemplo los humanoides. Seguro que el tema se extendería a años de estudio.

Si tienes alguna duda pregunta, y si sabemos la responderte......lo haremos.

Saludos y suerte con el tema.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Pedro
Hacker del Foro
Mensajes: 100
Registrado: 10 Jun 2008, 18:43
Ubicación: Venezuela
Contactar:

Re: necesito un consejo de alguien que sepa

Mensaje por Pedro »

Chefito escribió:Bueno bueno.....ahí va mi opinión :smt001 .
... Si aprendes un lenguaje, no creo que nunca llege a ser una pérdida de tiempo (por lo menos total :smt003 ). Piensa que aprender un lenguaje no se reduce solamente a eso, sino que te ayudará a programar mejor con cualquier lenguaje.
...
Siempre recomiendan empezar con un lenguaje estructurado (en mi caso, empecé en la Universidad con turbo pascal, modula2). La verdad, yo he intentado ponerme varias veces con Lazarus (freepascal), ya que el pascal siempre me ha gustado, pero al final no lo he hecho. Quien sabe, algún día.
...
eso es muy cierto Chefito, hay un libro que leí y me ha gustado mucho, titulado:

Introduccion a la OOP del grupo Eidos

éste ebook cambió mi perspectiva en cuanto a la forma de ver la programación, es un libro teórico, pero te explica de una manera sencilla las técnicas de programación en cada lenguaje de programación existente.

yo una vez quise entrarle de lleno al C++, pero hay muchas cosas que aprender y es ahí donde digo que para aplicaciones medianamente simples "no hace falta matar un mosquito con un cañón" :smt003

también he de agregar que la OOP, es una forma muy ordenada de llevar la programación, pero es solo factible para programas de gran envergadura y su aprendizaje solo justificaría eso.

si quiero mostrar un mensaje diciendo "Hola Mundo", realmente veo innecesario, crear un objeto , aunque indirectamente el compilador lo use.

por eso es que repito lo de "depende", si me viera obligado a aprender JAVA o C# porque en AutoIt no puedo hacer X cosas, bueno esa sería otra circunstancia.

la idea es que el compilador te la ponga los mas fácil posible a la hora de escribir un programa, implicaciones? claro que las tiene, y forma parte de las características de cada compilador.
La historia de la humanidad, no es, sino una contínua repetición de errores, que cada vez mejoramos.
Responder