¿tutoriales/manuales de programación?

Buenas. Estaba buscando por el google manuales y tutoriales sobre algoritmia y programación pero nunca encuentro lo que busco... o encuentro manuales muy básicos (explican los operadores, variables, etc...) o encuentro cosas que no me sirven sobre APIs y tutoriales traducidos en indio (con google).


Estoy interesado sobretodo en c++ (me gusta su velocidad y sus posibilidades...), más que nada porque es lo que he dado en los estudios que estoy haciendo. Mi nivel de c++ es de un año de ciclo superior de programación (todo en kutre turbo c++, dimos hasta la herencia de objetos, el polimorfismo, etc...), pero aún sigo sin saber nada de colisiones, gráficos...

Conozco a amigos que sin saber nada sobre el tema hacen programas con interfaz gráfica (ventanitas, vamos) bastante complejos, y siempre me dicen que lo han aprendido todo en internet en pocas semanas. A mí también me interesaría hacer cosas más gráficas y si puede ser, algún matamarcianitos o algo así.

¿sabéis de tutoriales y/o manuales que se adapten a mi nivel en internet? Me interesa c++ y también LUA (aunque de LUA no sé NADA).

Gracias :)
Perdona que me vaya por otra rama pero sólo te lo dejo caer. Yo hace 2 semanas aprendí a hacer esas aplicaciones de ventanitas programando en C#.

Compilador: Visual C# express edition
Manual para iniciarse
Video tutoriales para hacer programas con interfaz gráfica (Los de las ventanas)

Diria que C# es una perfección de Java y a su vez Java es una perfección de C++.

Salu2
JAPosti escribió:
Diria que C# es una perfección de Java y a su vez Java es una perfección de C++.

Salu2


claro, por eso usan java en la nasa y en el mit



empieza por abajo, aprende c, y cuando te sientas cómodo metete en c++

empieza más por abajo todavía, qué quieres programar? cada cosa tiene su lenguaje de programación, si quieres trastear igualmente c me parece un buen comienzo

no empieces con un lenguaje orientado a objetos si quieres que algún día te guste programar
La verdad es que no me gusta el Java ni los lenguajes que cierran los bloques de instrucciones con "end"...supongo que me acostumbré a las llaves del c++ y me resulta todo mucho más claro con las llavecitas {}

A mí me gusta además la velocidad del c++...el Java es una kk, puede que sea más cómodo pero los programas hechos en Java son muy lentos y encima se llevan la ostia de RAM "gracias" a su máquina virtual...
Eso es lo que me gusta de C# con respecto a Java XD que puedo hacer lo mismo y su 'máquina virtual' no es mas que las librerías del NET Framework que practicamente ya lo tienen todos los ordenadores con Win XP

Salu2
Radja escribió:
claro, por eso usan java en la nasa y en el mit



empieza por abajo, aprende c, y cuando te sientas cómodo metete en c++

empieza más por abajo todavía, qué quieres programar? cada cosa tiene su lenguaje de programación, si quieres trastear igualmente c me parece un buen comienzo

no empieces con un lenguaje orientado a objetos si quieres que algún día te guste programar



Pero si ya me conozco la programación de objetos...¿no he dicho que tengo 1 año de c++? Estuvimos 3 meses dando c y luego en el segundo trimestre comenzamos con las particulares del c++ y algo de programación en linux, y en el 3º trimestre nos metimos con los objetos...


Mi intención es "trastear" gráficamente, haciendo juegos sencillos como un matamarcianitos, un plataformas sencillo, efectos de partículas, etc...a mí hacer un programa para la gestión de algo no me divierte.

Por cierto que, ayer hice mi primero programa con GUI de Windows...menudo rollazo las APIs de windows, como no tengas una guía con las funciones al lado o una memoria de elefante me parece que no... porque para hacer una puta ventana de windows en c++ no te digo ná con los procedimientos y las funcioncitas...
Zor escribió:Por cierto que, ayer hice mi primero programa con GUI de Windows...menudo rollazo las APIs de windows, como no tengas una guía con las funciones al lado o una memoria de elefante me parece que no... porque para hacer una puta ventana de windows en c++ no te digo ná con los procedimientos y las funcioncitas...


Algo que ya viene hecho en el entorno de C# [pos eso], con éste sólo tienes que implementar las funciones que se realizan cuando, por ejemplo, haces click sobre un botón. El botón lo creas usando la GUI del compilador, las 5 o 6 líneas de código que se necesiten para la creación del botón se añaden solas.

Por cierto, hcer juegos no es tan fácil como crees. Hace un par de días hice mi primer juego: el pong. Aquí tienes un trozo de código, lo que tuve que escribir yo. El resto (crear la ventana, etc...) viene en otros archivos que crea el entorno.

Form1.cs escribió:using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;

namespace Pong
{
public partial class Form1 : Form
{
private bool andando;

private int vertical;
private int horizontal;
private int cont;

private bool pulsadoAbajo;
private bool pulsadoArriba;

public Form1()
{
InitializeComponent();
iniciar();
cont = 0;
}

private void temporizador_Tick(object sender, EventArgs e)
{

moverBola();
moverBarra();
chocar();

}

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode.Equals(Keys.Down))
{
pulsadoAbajo = true;

if (!andando)
echarAndar();
}

if (e.KeyCode.Equals(Keys.Up))
{

pulsadoArriba = true;

if (!andando)
echarAndar();

}
}

private void Form1_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode.Equals(Keys.Down))
pulsadoAbajo = false;

if (e.KeyCode.Equals(Keys.Up))
pulsadoArriba = false;
}

private void moverBola()
{
//Si choca contra alguna de las paredes verticales
if ((bola.Location.X + 4 + bola.Size.Width) > this.Size.Width)
horizontal = horizontal * (-1);

if (bola.Location.X < 0)
{
cont++;
iniciar();

}

//Si choca contra alguna de las paredes horizontales
if (bola.Location.Y < 0 || ((bola.Location.Y + 2 * bola.Size.Height) > this.Size.Height))
vertical = vertical * (-1);

//Movemos la bola
bola.Location = new Point(bola.Location.X + horizontal, bola.Location.Y - vertical);
}

private void moverBarra()
{
if ((barra.Location.Y + 34 + barra.Size.Height) < this.Size.Height)
if (pulsadoAbajo)
barra.Location = new Point(barra.Location.X, barra.Location.Y + 5);

if (barra.Location.Y > 0)
if (pulsadoArriba)
barra.Location = new Point(barra.Location.X, barra.Location.Y - 5);
}

public void chocar()
{
if (bola.Location.X < (barra.Location.X + barra.Size.Width) &&
bola.Location.Y > (barra.Location.Y - bola.Size.Height) &&
bola.Location.Y < (barra.Location.Y + barra.Size.Height))
horizontal = horizontal * (-1);
}

public void iniciar()
{
bola.Location = new Point(this.Size.Width / 2, this.Size.Height / 2);
label1.Text = cont.ToString();
vertical = 0;
horizontal = 0;
andando = false;
Thread.Sleep(500);
}

public void echarAndar()
{
andando = true;
vertical = 7;
horizontal = 7;
}

private void Form1_SizeChanged(object sender, EventArgs e)
{
label1.Location = new Point(this.Size.Width / 2 ,10);
}

}
}


SAlu2
Zor escribió:La verdad es que no me gusta el Java ni los lenguajes que cierran los bloques de instrucciones con "end
Java es el siguiente paso a C++. No sé a que 'ends' te refieres para terminar los bloques de instrucciones...

Mi consejo es que con lo poco que sabes de c++, te bajes Eclipse y aprendas a hacer cosas xulas como hacen tus amigos, que eso es ir andando poco a poco y te irá saliendo.

Un saludo.
hola, (aprovechando el hilo..)

la verdad es que acabo de meterme en la carrera de informatica y resulkta que empezamos a dar programacion (woo que xulo voy a a aprender... Y UNA MIERDA!! vaya profesora... utilizan un programa llamado "turbopascal"

y me gustaria encontrar algun tutorial sencillo y basico con el que pueda empezar a trastear y que me acabe gustando porque en este plan...

alguien sabe por donde empezar a manejar este programa y como iniciarme en la prograacion?

un saludo y MUCHAS GRACIAS, TODA LA AYUDA ES BIEN RECIBIDA.

(todo sea por librarme de una profesora particular el año que viene...)
Y que esperas aprender en primero? programación orientada a objetos? inteligencia artificial, diseño de sistemas operativos? Siento desilusionarte pero el primero se aprende a PROGRAMAR y para eso se suele usar pascal o modula 2 (hijo de pascal) asi aprenderas lo que se llama programación estructurada y segun donde estudies eso puede durar uno o dos cursos. En google tiene que a ver infinidad de tutoriales o en el rincon del vago, es un lenguaje muy usado en la enseñanza.

Ante todo no te desanimes, cuando tengas la base empezaras a ver cosas mas interesantes como Java, que es tan rapido como C++ incluso mas que este en algunas tareas, y la programación orientada a objetos. Si piensas que te enseñaran algo de videojuegos salte de la carrera porque no estas en el lugar indicado.
pRAXIS escribió:Y que esperas aprender en primero? programación orientada a objetos? inteligencia artificial, diseño de sistemas operativos? Siento desilusionarte pero el primero se aprende a PROGRAMAR y para eso se suele usar pascal o modula 2 (hijo de pascal) asi aprenderas lo que se llama programación estructurada y segun donde estudies eso puede durar uno o dos cursos. En google tiene que a ver infinidad de tutoriales o en el rincon del vago, es un lenguaje muy usado en la enseñanza.

Ante todo no te desanimes, cuando tengas la base empezaras a ver cosas mas interesantes como Java, que es tan rapido como C++ incluso mas que este en algunas tareas, y la programación orientada a objetos. Si piensas que te enseñaran algo de videojuegos salte de la carrera porque no estas en el lugar indicado.


lo mismo me he expresado mal, solo queria decir que en mi uni las clases impartidas en la clase de programacion son aburridas por diferentes circunstancias, que si alguien sabe de algun manual que sea interesante por experiencia propia con el cual pueda iniciarme yo solo o que aunque sea me sirva como un buen apoyo.

enga un saludo y gracias
pRAXIS escribió:Y que esperas aprender en primero? programación orientada a objetos?


XD pues ese paradigma de programación es el que me dieron en el segundo cuatrimestre de mi primer año. No fui a clases de programación del primer cuatrimeste y sin embargo en septiembre aprobé la del segundo (la de programación orientada a objetos con java, me parecía mas fácil que C, que era la otra)

SAlu2
Yo aki te pasteo la web d un profesor mio de ciclo superior d admon d sistemas informaticos, que es una mákina los apuntes que tiene están mas que bien, son los que hemos llevado este año, son muy claros. es C a saco. un saludo espero q t sirva de algo.

http://webs.ono.com/usr021/jmrubira/
xklibur escribió:Yo aki te pasteo la web d un profesor mio de ciclo superior d admon d sistemas informaticos, que es una mákina los apuntes que tiene están mas que bien, son los que hemos llevado este año, son muy claros. es C a saco. un saludo espero q t sirva de algo.

http://webs.ono.com/usr021/jmrubira/

muchas gracias! voy a probar a ver si me sirven!

salu2
¿No teneis nada para aprobar QT en poco tiempo? xD
14 respuestas