Programacion C / C++

Buenos dias a todos. Antes de nada decir que he buscado ete tema en busqueda pero no he visto nada. Aun asi recuerdo haber visto un hilo sobre este tema pero no he dado con el, y soy consciente de que este hilo morira en breve [buuuaaaa]

Me he propuesto este año aprender a programar en C / C++ pero todo lo que he conseguido encopntrar en la red es confuso y mal explicado para alguien como yo que tarda en coger los conceptos. Lo explican muy rapido y llega un momento que me pierdo bastante. Habria algun PDF o libro que fuera todo paso a paso, con ejemplos bien explicados y todo eso??

Muchas gracias por adelantado amiguetes!
Lo que comentas es el pan de cada dia del programador autodidacta... Antes de aconsejarte nada, ¿tienes alguna noción de programación en general? Lo digo porque la mayoría de gente que conozco que quiere aprender a programar se obsesiona con C o C++ (que poco tiene que ver uno con el otro) porque ven que lo damos en la carrera y se creen que es "lo básico" cuando son 2 lenguajes como cualquier otros.

Salu2
Dadrimoon escribió:Lo que comentas es el pan de cada dia del programador autodidacta... Antes de aconsejarte nada, ¿tienes alguna noción de programación en general? Lo digo porque la mayoría de gente que conozco que quiere aprender a programar se obsesiona con C o C++ (que poco tiene que ver uno con el otro) porque ven que lo damos en la carrera y se creen que es "lo básico" cuando son 2 lenguajes como cualquier otros.

Salu2



Hace 8 años estudie un grado superior de programacion. Basicamente era Visual Basic. Y no se me daba mal. Pero con C++ ( que es lo que estoy mirando principalmente ) veo que es mas complejo.

Logann escribió:Compra este libro http://en.wikipedia.org/wiki/The_C_Programming_Language
en amazon está.


Pues no es mala idea. Voy a mirarlo
"Thinking in C++" es un buen libro. El de "The C Programming Language" es para C, no C++.
Y para cuando domines la OOP en C++, que es solo el principio, te pillas Modern C++ Design de Alexandrescu.
MARIOCOM escribió:
Dadrimoon escribió:Lo que comentas es el pan de cada dia del programador autodidacta... Antes de aconsejarte nada, ¿tienes alguna noción de programación en general? Lo digo porque la mayoría de gente que conozco que quiere aprender a programar se obsesiona con C o C++ (que poco tiene que ver uno con el otro) porque ven que lo damos en la carrera y se creen que es "lo básico" cuando son 2 lenguajes como cualquier otros.

Salu2



Hace 8 años estudie un grado superior de programacion. Basicamente era Visual Basic. Y no se me daba mal. Pero con C++ ( que es lo que estoy mirando principalmente ) veo que es mas complejo.


Vale, partiendo de esa base, me centraría en la programación orientada a objetos, luego en aprender un lenguaje concreto (C++) y luego ya patrones de diseño. De todas maneras C++ yo lo veo un lenguaje mil veces mas jodido que java, por ejemplo, y creo que sin tener profesores como he tenido en la universidad jamás podría haberlo "entendido".

Me imagino que con lo que has dado de visual, la semántica básica de la programacion la dominaras. Te recomiendo comprender bien el paradigma de la programacion orientada a objetos, porque si no vas a dar mas vueltas que un tonto (eso suponiendo que eres una persona normal como yo xD, que luego aquí aparece cada superdotado que tela). Este libro me lo leí yo y la posterior adaptación que hizo uno de mis profesores en castellano y la verdad es que ayuda bastante. No se centra en ningun lenguaje en particular e intenta cubrir la mayoría de temas: http://www.amazon.com/Introduction-Object-Oriented-Programming-Timothy-Budd/dp/0201824191

Una vez comprendas eso bien, podrás saltar a cualquier lenguaje OOP sin mucha complicacion, centrate en C++ si es lo que quieres, cualquiera de los libros que te han recomendado te sirven.

Salu2
comalies escribió:"Thinking in C++" es un buen libro. El de "The C Programming Language" es para C, no C++.


"The C Programming Language" és un buen libro para aprender a programar y aprender C
Esta bien ordenado, es bastante corto, es completo y esta lleno ejercicios.
Haces bien,C/C++ es el lenguaje FUNDAMENTAL,una vez dominados estos,el resto de lenguajes que estan ultimamente mas de moda te sera muy facil aprenderlos.
Joder tios muchisimas gracias a todos. En media hora de posteo he recopilado mas informacion util que una semana de busqueda en la red por mi cuenta.

Pero que grandes sois, cojones! [amor]
Yo buscaría páginas pero si te decides por un libro, tienes la enciclopedia de C++ de RA-MA que explica todo al detalle, con muchos ejemplos y está muy actualizada.
Esa página es muy buena, yo la usé para algunas dudas, si tienes dudas también tienes:

http://www.lawebdelprogramador.com/

Para mi la mejor en consultas de este tipo, además tienes muchísimo material.
A todo esto, ¿porqué quieres aprender a programar en C++ si se puede saber?

Hoy en día solo se valora en sectores muy muy pero que muy técnicos, videojuegos e investigación. Si hablamos de videojuegos, mejor que empieces por algún framework como Unity3D.
Para mi los mejores siguen siendo los de la Universidad de Navarra:
"Aprenda Ansi C como si estuviera en Primero" y una vez acabado
"Aprenda C++ como si estuviera en Primero". Búscalos en Google.
Elelegido escribió:A todo esto, ¿porqué quieres aprender a programar en C++ si se puede saber?

Hoy en día solo se valora en sectores muy muy pero que muy técnicos, videojuegos e investigación. Si hablamos de videojuegos, mejor que empieces por algún framework como Unity3D.


Por el simple hecho de aprender pero ahora que me hablas de programar videojuegos... no estaria mal. De que va el Unity3d?
Recomendarle un game enginye como unity cuando lo que quiere es aprender a programar desde las bases de forma correcta, lo veo poco menos que fuera de lugar.

Las recomendaciones que te han dado anteriormente para aprender C / C++ las veo acertadas. Suerte (perseverancia más bien).
Yo creo que el mejor lenguaje para aprender a programar OO es Python, da buenas costumbres al desarrollador.

Rojos saludos.
A mi este curso siempre me ha gustado, muy bien resumido y explicado para mi gusto...
http://www.elrincondelc.com/cursoc/cursoc.html
Muchas gracias de nuevo a todos. Con tanta info no se por donde emepezar! [carcajad]
Me gustaría aprender C++ en mi tiempo libre, pero no tengo mucho. ¿Cuantos meses/años creéis que se necesitan para programar medianamente bien en C++ echándole 1 o 2 horas como mucho al día?

Sé programar algo en Visual Basic, así que no empiezo de 0, sino de 0.5% xD
Que recuerdos me trae el "C"... los diagramas de flujo de datos... y luego a programar y programar lineas y lineas... que recuerdos...

Yo lo aprendi en el modulo de grado superior, en un año lo teniamos dominao y me curraba unos programas bastante completitos.

C++ apenas lo tocamos y para el año siguiente ya tocaba trabajar con Oracle y Visual Basic...

Suerte con tu aprendizaje [oki]
MARIOCOM escribió:
Elelegido escribió:A todo esto, ¿porqué quieres aprender a programar en C++ si se puede saber?

Hoy en día solo se valora en sectores muy muy pero que muy técnicos, videojuegos e investigación. Si hablamos de videojuegos, mejor que empieces por algún framework como Unity3D.


Por el simple hecho de aprender pero ahora que me hablas de programar videojuegos... no estaria mal. De que va el Unity3d?


Un engine para hacer videojuegos que está teniendo bastante acogida. Se programa en un sucedáneo de JavaScript, C# o Boo. No es del todo profesional, pero es inmensamente más asequible en muchos aspectos que casi cualquier otra alternativa.

Por otro lado, si no te interesa especialmente ninguna de las áreas que te he dicho, te aconsejo Java, o si te interesa mucho el mundo web, PHP.
Elelegido escribió:
MARIOCOM escribió:
Elelegido escribió:A todo esto, ¿porqué quieres aprender a programar en C++ si se puede saber?

Hoy en día solo se valora en sectores muy muy pero que muy técnicos, videojuegos e investigación. Si hablamos de videojuegos, mejor que empieces por algún framework como Unity3D.


Por el simple hecho de aprender pero ahora que me hablas de programar videojuegos... no estaria mal. De que va el Unity3d?


Un engine para hacer videojuegos que está teniendo bastante acogida. Se programa en un sucedáneo de JavaScript, C# o Boo. No es del todo profesional, pero es inmensamente más asequible en muchos aspectos que casi cualquier otra alternativa.

Por otro lado, si no te interesa especialmente ninguna de las áreas que te he dicho, te aconsejo Java, o si te interesa mucho el mundo web, PHP.


Tambien me interesa mirar java, pero como me paso con C/C++ el simple hecho de saber como se empieza y todo eso es incluso mas lioso todavia. Voy a empezar por C e intentare ser constante.

Si aprendo este lenguaje para defenderme , para que me puede servir o que uso le puedo dar?. Os recuerdo que mi unica meta es el simple hecho de aprender.
Pues básicamente C te va a dar unas bases a más bajo nivel para que no hagas disparates ni tomes malas costumbres, aprendas a hacer un uso correcto y limitado de los recursos a tu alcance, etc. Luego, cuando pases a C++ ya puedes hacer absolutamente de todo de una forma más libre, tienes muchas librerias que te ahorrarán trabajo en temas como audio o pintado, etc.

A más bajo nivel, mayor esfuerzo, menos recursos. En un PC por ejemplo puedes programar un juego en el lenguaje que te de la gana, porque se considera una plataforma de recursos ilimitados entre comillas (evidentemente esto no es así, pero se entiende que es un sistema en que puedes disponer del hardware necesario). En este caso, el optimizado será obligado solo para cosas puntuales.

En cambio, pongamos que un día quieres desarrollar para una consola portátil (plataforma cerrada), en que trabaja con un sdk con un lenguaje "por defecto" de más alto nivel. En una máquina de recursos tan limitados, más vale que sepas cuándo emplear cada cosa, o te verás en problemas. En realidad, cuando se trabaja para consolas es frecuente tener el groso del juego en un lenguaje, y luego tener cosas puntuales en ASM para que sea capaz de tragarse lo que pretendes sin que haya una caída de rendimiento.

Así que mira para todo lo que te sirve. Yo te recomiendo encarecidamente que empieces por C y continúes por C++.
Disculpad la tardanza en responder pero desde que vi todos vuestras respuestas no he hecho otra cosa que no sea leer los enlaces que me habeis aconsejado.

Uff que duro se me va a hacer por que es dificil de cojones. Pero sere constante!

Muchas gracias a todos
Yo aprendi con estos y la verdad que me fueron muy bien ;).

http://www.fjceballos.es/publicaciones_c_c++.html
MARIOCOM escribió:Disculpad la tardanza en responder pero desde que vi todos vuestras respuestas no he hecho otra cosa que no sea leer los enlaces que me habeis aconsejado.

Uff que duro se me va a hacer por que es dificil de cojones. Pero sere constante!

Muchas gracias a todos



Eso es lo que requiere el auto-aprendizaje: constancia y mucha paciencia. Pero sobretodo escribir programas. Aunque sean chorras. Estúpidos ejercicios de matemáticas son ideales al principio para ejercitar un poco la cabeza. Los típicos cálculos de maximo comun divisor, cambios de base, etc...
Hola yo estoy como tu y parece que voy controlando, a mi me paso una buena guía mi profesor de informática de grado medio.. ya que en grado medio no se da programación.
te lo dejo aquí y le hechas un ojo, hay muchos ejemplos y ejercicios.
30 respuestas