¿Me ayudan a decidirme? C / C++ o Java o .NET?

Iniciado por SuperDraco, 21 Marzo 2011, 23:42 PM

0 Miembros y 1 Visitante están viendo este tema.

SuperDraco

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.

No he vuelto, solo estoy de paso.

Akai

#1
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.

SuperDraco

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.
No he vuelto, solo estoy de paso.

Novlucker

Creo que la pregunta al igual que la respuesta, esta gastada, no hay un lenguaje mejor que otro.
CitarA 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 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
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Tyrz

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!
Web dedicada por completo al surf. Hablamos de tablas de surf, videos de surf, fotos, juegos y mucha información sobre como aprender a surfear, spots famosos como mundaka, pipeline y zonas como vizcaya, surf españa, sopelana y mucho más. Trucos y peligros del surf. A que esperas? Entra en  Surf

TheInfinityJoker

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 ;)
Ingeniería Informática de Software - UNEX

leogtz

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.
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

oxydec

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.

Иōҳ

#8
CitarEn 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. :)

Cita de: 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!
con java tambien se puede :)

Salu2!
Eres adicto a la Ing. Inversa? -> www.noxsoft.net

seba123neo

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.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson