Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: SuperDraco en 21 Marzo 2011, 23:42 pm



Título: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: SuperDraco en 21 Marzo 2011, 23:42 pm
Hola, me gustaría empezar a aprender un lenguaje de programación... No tengo una base, y lo único que se relacionado a la programacion es batch (YA, YA SE QUE NO ES PROGRAMACIÓN, HE DICHO RELACIONADO XD), entonces, sabiendo un poco de eso, me podria ayudar aunque sea un poco, en el lenguaje al que yo decida meterme?

Otra duda que tengo es cual lenguaje elegir... entre Java, C, o C++... .NET
No me importan lo dificil que sea cada uno, lo que más me importa es cual es "MEJOR" relativamente, porque ya que me voy a meter en el tema, pues aunque sea dificil acabaré aprendiendolo asi que quiero aprender el mejor de esos 4.

He leido sobre la orientación de objetos de C++, asi que sin duda alguna C++ es mejor que C, verdad? pero entonces porque hay gente que se decide por C y nunca pasa a C++? ¿Simplemente es por vagancia?

Repito, no tengo una base... así que si estoy equivocado y primero debo intentar aprender el más fácil, y luego otro...pues porfavor decirmelo...

¿Que más puedo decir? MmM en la página de Java, me he mirado todas sus funcionalidades, ahora no me acuerdo como se le llamaban a esas cosas.. así que las llamaré "comandos" xD, me miré todos.. y me parece algo casi imposible de aprender!! quien puede aprenderse todas sus funciones, vi miles en la página! Creo que ese lenguaje debe ser el más dificil de los 3...pero sin una base... que se yo, decirme algo!


Tambíen me gustaría saber (Si es posible) el tiempo estimado de aprendizaje digamos de nivel medio, para cada lenguaje, Más que nada para no desanimarme muy pronto (Ojo, no he dicho rendirme!).

A todo esto, tengo que decir que hace 2 años decidí instalarme visualbasic studio 2010, lo hice solamente para ver como se me daba, no tenía a nadie que me dijera que habia que hacer, y además, para cada problema que yo tenía con este lenguaje, no pude buscar información en internet, osea, para visual no encontré nada nisiquiera ejercicios ni tutoriales ni información sobre cosas básicas, esto consiguió que me desquitase de utilizarlo, porque una cosa es aprender, pero otra..que nisiquiera pueda buscar informacion?? entonces como iba a aprender lo básico? un lenguaje tan conocido como visualbasic sin info en internet sobre nada.. y mira que buscaba bien... pero nada, aparte, es que hay tantas versiones, que si visualbasic 2005, vb6, vbstudio, VB.NET... que me volvía loco no sabia cual era la mejor ni nada de nada, así que descarto el VisualStudio.

Así que necesito un lenguaje de programación, pero que pueda encontrar lo que necesite para ir aprendiendo en internet, por eso os pido PORFAVOR, que me aconsejeis tambien un tutorial, una página, una lista con funciones básicas, cualquier cosa que os haya ayudado a aprender el lenguaje paso a paso, porque para estas cosas, google no es nada fácil!

__________________________________________________________________
Todavía no tengo en mente el tipo de programas que quiero hacer, no, porque aún no se las posibilidades que me brindan cada uno de estos lenguajes, pero me gustaría probar diversas cosas, y serían programas para windows con compatibilidad de 64 bit , más o menos al estilo de los programas de Piriform como Recuva, Ccleaner, etc... (Me refiero a su interfaz, el diseño, y como hacen las cosas las funciones visto desde fuera)

Tambien me gustaría jugar con funciones de internet en ese lenguaje, y quien sabe, si llego a tener muchos problemas, pues poder usar la consola de comandos de windows para salir de ese bache, usando batch...dentro de ese lenguaje.
Y tambien, poder jugar con la interactividad del ratón y el teclado, que que eso se hace con un controlador que se llama "hookeys.sys" lo siento ahora no me sale el maldito nombre


Todo esto último que dije creo que es lo más importante de todo.

Si me ayudan con sus respuestas, porfavor no dejen este tema en el olvido, quizás me surgan nuevas dudas... Porque elegir no es fácil !

Gracias por leer.



Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Akai en 21 Marzo 2011, 23:55 pm
Veamos... Respuesta rápida? C++,luego ya verás que te apetece.

Respeusta en profundidad:

Mientras que no se puede decir que un lenguaje sea mejor que otro, a menos que los pongas frente a un objetivo en concreto, por experiencia como estudiante, te diré que C y C++ hacen un buen partido como lenguajes para empezar. Llegarás a punteros, y será una putada, si se me permite la expresión, pero uan vez los controles, te sientes dios.

En C y C++ el programa hace exactamente lo que tu le digas, manejo de memoria incluido. Eso añade potencia, mucha, pero también una posible dificultad de desarrollo.

Y es cuando llegamos a Java y la plataforma .net (Hablaré de C# que si no me equivoco es el más próximo a java). Estos lenguajes hacen el siguiente intercambio: Pierden en rendimiento (recordemos que no corren de forma nativa), ocultan detalles de bajo nivel al programador (manejo de memoria, entre otras cosas) y a cambio proveen de un desarrollo de aplicaciones más rápido.

Pero recordemos, no podemos decir que un lenguaje sea peor que otro a menos que nos centremos en un aspecto.

En el caso que nos interesa, el aprendizaje, posiblemente sea más interesante C o C++. Los detalles a bajo nivel ayudan para cuando subes a nivel alto y sigues necesitando ese chute de velocidad, poder poner código de un nivel inferior.
(hablo de nivel como próximidad a la máquina como tal).

Como ya he dicho otras veces, lo que interesa hacer después de aprender suele surgir mientras aprendes. Te decidas por lo que te decidas, céntrate en ello, no vayas de uno a otro sin llegar a tener un dominio firme de nada.

En caso de que al final tomases la ruta del C++, te dejo un par de referencias en forma de libros:

C++ estándar (Programación con el estándar ISO y la Biblioteca de Plantillas (STL))
Enrique Hernández Orallo, José Hernandez Orallo, Mª Carmen Juan Lizandra
Paraninfo - Thomson Learning
ISBN: 84-9732-040-9

(daría un enlace para descargarlo, pero no he encontrado, la vez que busqué, algún pdf o similar con el libro)

Por otro lado, Littlehorse (moderador del subforo) suele recomendar uno que hay colgado en este post: http://foro.elhacker.net/programacion_cc/librospapers_cc-t296234.0.html

Name: Cómo Programar en C/C++
Author(s): Harvey M. Deitel, Paul J. Deitel
Hardcover: 1072 pages
Publisher: Prentice Hall; 2nd edition (February 1998)
ISBN-10: 9688804711
ISBN-13: 978-9688804711

(hay un enlace para descargarlo)

Yo utilizo el de C++ estándar porque me gustó cuando me lo recomendó un profesor en la facultad y lo saqué una temporada de la bilioteca y al final me lo terminé comprando. Sobre el de Deitel & Deitel, no tengo mayor referencia que el hecho que Littlehorse lo recomiende. (Si vas a buscar el de Deitel & Deitel, intenta buscar una edición más actual, que imagino que la habrá)

Para los otros lenguajes no tengo referencias, lo siento.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: SuperDraco en 22 Marzo 2011, 13:36 pm
Muchas gracias por tu respuesta Akai, aprecio todo lo que has comentado y suena muy interesante, pero aún así necesito más opiniones, no puedo basarme solamente en la de una persona!

Espero que me den m'as información u opiniones sobre el resto de lenguajes, gracias.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Novlucker en 22 Marzo 2011, 14:23 pm
Creo que la pregunta al igual que la respuesta, esta gastada, no hay un lenguaje mejor que otro.
Citar
A todo esto, tengo que decir que hace 2 años decidí instalarme visualbasic studio 2010, lo hice solamente para ver como se me daba, no tenía a nadie que me dijera que habia que hacer, y además, para cada problema que yo tenía con este lenguaje, no pude buscar información en internet, osea, para visual no encontré nada nisiquiera ejercicios ni tutoriales ni información sobre cosas básicas, esto consiguió que me desquitase de utilizarlo
visualbasic studio 2010 no existe, en todo caso lo que bajaste fue el entorno de programación Visual Studio, no debes de confundir Visual Studio con VB.NET. Por otra parte, no se donde habrás buscado, pero hay info a patadas :-X

Si tuviese que recomendar un lenguaje sería JAVA o C# en el caso de la plataforma .NET, nada de VB.NET. Ambos lenguajes son muy populares (http://www.tiobe.com/content/paperinfo/tpci/index.html) y encuentras información en todas partes. Tener en cuenta además que ambos son muy similares, así que migrar de uno a otro no tiene mayores dificultades.

En mi caso por que elijo estos dos? Basicamente porque con ambos puedes desarrollar aplicaciones para entornos de escritorio, web o móvil, y estos dos últimos cada vez cobran mayor importancia, sobre todo el web. A día de son muchisimos los sistemas de gestión (ERP, CRM, SCM, etc) y aplicaciones de negocio que se migran a entornos web, y doy por seguro que lo seguirán haciendo :P

Saludos


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Tyrz en 22 Marzo 2011, 14:35 pm
Conste que no he leido las demas respuestas ya que voy algo mal de tiempo.

Yo programo en JAVA, basicamente porque uso ubuntu y me tira bastante el tema de la portabilidad. Para buscar curro (al menos en mi islita) es mucho mas facil como programador java, es más nunca he visto un anuncio de trabajo que busque programador en c++.

Aparte de esto, he de reconocer que me dan envidia los programadores c++ porque pueden hacer cosas malas. (Troyanos, Botnets, blabla canela!).

Se que no ayudo mucho pero algo es algo jaja

Suete!


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: TheInfinityJoker en 22 Marzo 2011, 15:15 pm
Te voy a dar las mismas respuestas que mi profesor de programación:

C y C++, porque te dan una base, y a partir de esta base puedes elegir el lenguaje de programación que quieras. Es mejor acostumbrarse a C/C++ que si te acostumbras a otros lenguajes de programación, ya que si en algún momento quieres aprender C la mayoría de las personas tienen doficultades ;)


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: leogtz en 22 Marzo 2011, 15:30 pm
C#, VB. Net, Java, me atrevo a decir que son los que más salida laboral tienen. Yo comenzaré a aprender C# y VB .Net, a ver cómo me va.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: oxydec en 22 Marzo 2011, 15:51 pm
Yo también te recomiendo C / C++ para aprender, por el hecho de que si dominas la programación a bajo nivel luego aprender lenguajes mas abstractos como Java es cuestión de horas/días.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Иōҳ en 22 Marzo 2011, 16:03 pm
Citar
En el caso que nos interesa, el aprendizaje, posiblemente sea más interesante C o C++. Los detalles a bajo nivel ayudan para cuando subes a nivel alto y sigues necesitando ese chute de velocidad, poder poner código de un nivel inferior.
(hablo de nivel como próximidad a la máquina como tal).

hablas de usar inline assembly o.O, si es así pierdes portabilidad. :)

Conste que no he leido las demas respuestas ya que voy algo mal de tiempo.

Yo programo en JAVA, basicamente porque uso ubuntu y me tira bastante el tema de la portabilidad. Para buscar curro (al menos en mi islita) es mucho mas facil como programador java, es más nunca he visto un anuncio de trabajo que busque programador en c++.

Aparte de esto, he de reconocer que me dan envidia los programadores c++ porque pueden hacer cosas malas. (Troyanos, Botnets, blabla canela!).

Se que no ayudo mucho pero algo es algo jaja

Suete!
con java tambien se puede :)

Salu2!


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: seba123neo en 23 Marzo 2011, 04:52 am
que tonteria perdona que lo diga asi (hiba a poner una palabra mas fuerte pero una vez me banearon por eso), eso de decir "cual es el mejor lenguaje" , como si esto seria igual que ir a comprar un auto y vas viendo cual es el mejor.

aca no se trata de eso, sino todos estariamos programando en ese "lenguaje" que todos dicen que es el mejor, y no es asi, cada uno programa en el lenguaje que le da la gana, o en el lenguaje que le gusta.

si uno ya se empieza a hacer esa pregunta..o termina programando en pascal (sin discriminar) o no termina haciendo nada.

es cierto que hay lenguajes que son indispensables para aprender los cuales son la base de todo, pero si no queres no programar en esos lenguajes, no pasa nada.

Leo Gutiérrez la dio en el clavo, fijate lo que piden las empresas.

saludos.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Akai en 23 Marzo 2011, 09:01 am
hablas de usar inline assembly o.O, si es así pierdes portabilidad. :)

hablo de malloc, calloc, realloc, free, new, delete, mmap, munmap, etc etc etc. Manejo más o menos directo de memoria. La lectura de ficheros, por ponerte un ejemplo, con streams es un pecado en cuanto a velocidad. Eso si, hazlo con un mmap y verás.

Por otro lado, lenguajes interpretados si no me equivoco, tienden a perder rendimiento frente a su compañero compilado/nativo.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: allanxs en 23 Marzo 2011, 20:44 pm
viejo te recomiendo C# es uno de los mejores! a mi vista! veras q si empiezas con ese luego los demas no los sentiras tan dificiles como parecian!


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: TheInfinityJoker en 23 Marzo 2011, 23:31 pm
Lo malo es que con autoaprendozaje se tarda bastante paea aprender la base, pero después lo otro es cuestión de días ;)


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: gotenx en 24 Marzo 2011, 19:45 pm
Java es lo mas demandado ultimamente, es dificil, si, pero se hacen cosas increibles en pocas lineas de codigo, ademas no necesitas bajar nada mas que el SDK para tener AWT por ejemplo.

C++ es sin duda mi preferido, mucho poder, tampoco es muy dificil, gran soporte, etc. etc.

C#... no lo he usado mucho, no me gusta el hecho de ser propietario y tal.

Por ultimo te recomiendo que le heches un vistazo a Python, merece la pena !


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: d(-_-)b en 27 Marzo 2011, 21:43 pm
aca no se trata de eso, sino todos estariamos programando en ese "lenguaje" que todos dicen que es el mejor, y no es asi, cada uno programa en el lenguaje que le da la gana, o en el lenguaje que le gusta.

Puede que tangas razón como también puede que no la tenga, todo depende de como lo veamos.

saludos...


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: TheInfinityJoker en 27 Marzo 2011, 22:56 pm
Me has quedado con la boca abierta :O


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Stormtrooper en 4 Abril 2011, 15:57 pm
Te cuento desde mi experiencia (por cierto, es mi primer post en este foro, saludos!):

Yo comencé en el mundillo de la programación haciendo un curso muy corto y básico de C# dónde aprendí las cosas básicas. Tenés que entender que para empezar con la programación lo principal es que entiendas como PENSAR como programador, antes que aprender el lenguaje en si mismo. Una vez que entiendes como enfrentarte a los problemas y las cosas básicas que vas a usar en cualquier lenguaje (iteraciones por ejemplo), es cuando aprendes la sintaxis que utiliza el lenguaje en el que vas a trabajar, para aplicar todo el razonamiento que viene atrás.

Ahora estoy haciendo una carrera en dónde las materias de programación que tuve hasta el momento han sido con JAVA, lo cual me ha resultado bastante fácil por dos razones. La primera, es que ya entiendo como pensar los problemas (otra cosa muy diferente es saber como plasmar eso en código!) y lo segundo, es porque al menos para las cosas básicas, JAVA y C# son muy, MUY parecidos. Entre ambos no vas a encontrar diferencias significativas en la sintaxis, todo depende de que te guste más, si la portabilidad y "libertad" de JAVA o la comodidad de C#

Sobre C/C++ nunca los toqué, ya que más adelante en mi carrera veremos C++ a la hora de dar técnicas de algoritmia. En fin, es otro tema; pero he visto muchisimas veces que se los recomienda para empezar, tal vez sean una buena opción, aunque personalmente te recomendaría otras dos opciones. La primera es usar Python, que se utiliza actualmente en el MIT para enseñar introducción a la programación. La segunda es que empieces con PASCAL ya que está hecho justamente para que aprendas a pensar como programador. Nunca maneje ninguno de los dos pero por lo que he visto, leído y conversado, son buenas opciones.

De todas formas, para terminar esta chorrada, te recomiendo que tengas claro lo que dije al principio. Cuando estés empezando concentrate en aprender los conceptos, ya vas a tener tiempo para aprender y consultar lo que sea necesario de sintaxis.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: xeldon en 8 Abril 2011, 15:32 pm
+1000 a empezar con C. En la uni empezamos con java y (a parte de no se explicaba nada) hubo un monton de complicaciones. Odie la programación. Un año después volví a estudiar programación empezando con C, y como bien han dicho antes, cuando dominas punteros te crees dios.

Una vez llegues a ese punto, pasar de un lenguaje a otro será decir lo mismo cambiando unas pocas palabras.

Suerte


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: 79137913 en 8 Abril 2011, 16:56 pm
HOLA!!!

En mi opinion...

Me decantaria por Java y Net (Csharp y VB). Y ademas agregaria Delphi.

GRACIAS POR LEER!!!


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: sunbqto99 en 30 Mayo 2011, 18:42 pm
   Que hubo PitoLoko
    Tuve tus mismas inquietudes, asi que  tome Deitel & Deitel, y me arroje al C,  te aclaro ya sabia algo de Pascal y Cobol, pero los recursos de C son inagotables, estoy mas que satisfecho. Aun me falta pasar a la Programacion Orientada a Objetos, que lo hare en C++, porsupuesto. Y despues ya vere.

  Me fue muy bien con los menus, ventanas y paneles en la Interfaz Grafica usando NCurses, Pero estoy pasando por un tramo muy, muy amargo, con el uso de los formularios, es que no creo que se pueda hacer todo como botones de radio, casillas de verificacion, listas desplegables, eso que te hace la vida tan facil, a la hora de ingresar data.

  Para rematar puedo  acceder  mis Bases de Datos elaboradas en Postgres desde C/C++ rapido, conciso, claro  y seguro.

   Porsupuesto, todo desde la consola 100% Linux, tratanto no perder portabilidad, solo me he descargado la libreria NCurses, porque el editor VIM y 2 o 3 compiladores ya vienen en la distribucion Gentoo que utilizo.

   Si te decides, estoy a la orden.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: SuperDraco en 11 Julio 2011, 09:24 am
estoy pasando por un tramo muy, muy amargo, con el uso de los formularios, es que no creo que se pueda hacer todo como botones de radio, casillas de verificacion, listas desplegables, eso que te hace la vida tan facil, a la hora de ingresar data.

Hola, gracias por la info y consejos, pero entonces... eso significa que usando C no se puede crear una cosa tan simple como una casilla de verificación? O lo he entendido mal?

¿En c++ seguro que se ppuede hacer...no?


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Queta en 11 Julio 2011, 14:15 pm
Sí se puede, pero lo ideal en cualquier lenguaje de programación es aprender, primeramente, a usarlo mediante la consola:

http://foro.elhacker.net/programacion_general/paper_introduccion_a_la_metodologia_de_programacion-t310961.0.html (http://foro.elhacker.net/programacion_general/paper_introduccion_a_la_metodologia_de_programacion-t310961.0.html)

Y bueno, en general, a todos aquellos que dicen que Java y compañía tienen más salida laboral, no lo dudo, pero la recompensa de estarse más tiempo aprendiendo C/C++ y ASM junto con programación a bajo nivel y especializarse en un determinado campo, es mayor que saber hacer cuatro ventanas y conectarse a una base de datos.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: Tyrz en 11 Julio 2011, 14:36 pm
Cada uno disfruta con lo suyo. Yo me lo gozo haciendo aplicaciones portables ;)

Mi recomendación es Java y C#


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: [Case] en 12 Julio 2011, 02:27 am
Te recomiendo que veas Introduction to Computer Science del MIT, las clases duran 1 hora mas o menos,esta en youtube, ahi utilizan python, ahora en mi opinion personal aprender con C no creo que sea lo mejor que si aprendes con el paradiga orientado a objetos que es uno de los que maneja python.


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: $Edu$ en 12 Julio 2011, 03:16 am
Que paso pitoloko, que lenguaje empezaste a aprender?


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: leogtz en 12 Julio 2011, 06:56 am
Yo lo ví pidiendo ayuda en el subforo de C/C++, supongo que fue C++


Título: Re: ¿Me ayudan a decidirme? C / C++ o Java o .NET?
Publicado por: kiriost en 14 Julio 2011, 20:32 pm
Te recomiendo C y luego C++..Sabiendo C++ y los conceptos de programación orientada a objetos ya estaría listo para pasarte a cualquier otro lenguaje o seguir con C++.

Si deseas pasarte a Java por ejemplo, sólo tendrías que aprender a utilizar las clases y funciones que dispone porque sabiendo C++ ya sabrías Java.

Python que es mucho más simple también te sería fácil aprenderlo, sólo necesitarías información sobre los paquetes y clases con que dispone para diferentes objetivos.