Respuesta de:
La respuesta de Abdelrahman Hamdy a ¿Qué proyectos de C ++ debería comenzar para aprender mucho?
En mi opinión, el mejor proyecto con el que puedes comenzar es un JUEGO.
- ¿Escribir un código ordenado para encontrar LCA de dos nodos? y cual es la complejidad?
- ¿Cuál es el algoritmo más eficiente para encontrar el patrón en las cadenas en un conjunto de caracteres pequeños?
- ¿Cuál es el enfoque algorítmico para encontrar la ruta en una matriz booleana bidimensional que tiene más 1s?
- Puedo resolver las preguntas de entrevistas de ingeniería de software técnico para las principales empresas como Google, Facebook, Apple, Microsoft y Amazon con bastante facilidad. Pero no puedo conseguir una entrevista. ¿Cómo consigo una entrevista con una empresa de tecnología de primer nivel?
- Cómo asegurarse de que me he preparado exhaustivamente para las ubicaciones
Mi primer proyecto fue un juego simple hecho por C ++ con una biblioteca llamada SFML, es una biblioteca de gráficos, algo que le permite agregar colores e imágenes a su consola. Aprendí mucho de esta experiencia, y tengo mucha confianza en mí mismo.
Hará un gran uso de estructuras de datos y algoritmos aquí, y tal vez también alguna base de datos si le gustó eso.
Te daré un poco de motivación para ir con un juego, describiendo mi primer juego.
Mi primer proyecto, fue una caja de juego simple hecha en SFML usando C ++, y no sabía nada en ese momento, excepto C ++ muy básico.
Mi caja de juego consistía en dos juegos, el muy famoso juego pack-man, un juego en el que estás jugando con esa criatura amarilla que intenta comer esos puntos, y que los monstruos están tratando de comerte.
El otro juego fue el asombroso Bomber-man, un juego en el que estás jugando con ese héroe blanco, y estás tratando de bombardear todos los bloques para encontrar el puerto para ganar.
En realidad, SFML es genial, pero será cada vez más sorprendente si trabajaste duro con él, SFML no te dará muchas opciones avanzadas como XNA (codificado en C #), ¡pero eso no es malo! esa es una gran oportunidad para liberar su creatividad, resolución de problemas y habilidades de cómo hacerlo, por ejemplo, hice un menú, aunque SFML no le da la posibilidad de agregar un menú, pero usando algunas imágenes que cambiarán si presionaste algunas teclas del teclado, en realidad podría hacerlo.
SFML te permitirá agregar videos o imágenes o incluso sonidos (mi juego contiene muchos sonidos).
Usar una herramienta no muy avanzada no significa que no puedas hacer cosas mágicas, mira:
Algunas de las cosas mágicas que podría hacer es que, los lugares de monstruos y bloques se generan aleatoriamente en bomber-man, es un truco muy fácil, solo use la función aleatoria de generación de c ++ (función incorporada) pero no en números, en posiciones de bloques
Otro truco es cómo hacer que los monstruos sigan al héroe en pack-man.
De hecho, te divertirás y aprenderás mucho simplemente usando una biblioteca de gráficos no muy avanzada como SFML.
Puedes descargar mi código fuente del juego y todo el proyecto desde aquí:
AbdelrahmanRadwan / X-Game
NOTAS
Cuando hice ese proyecto, no sabía que había algo llamado OOP, así que escribí todo mi código en un archivo.cpp como algunas funciones, a través de eso, pude saber cuál es realmente la importancia de OOP, justo después escribiendo más de 3500 líneas de código.
El proyecto me llevó 2 semanas aprendiendo SFML e implementando el juego.
También puede consultar algunos proyectos de código abierto aquí:
La respuesta de Abdelrahman Hamdy a ¿Cuáles son algunos buenos proyectos de código abierto para principiantes en línea en los que puedo involucrarme?
Espero que haya sido útil de todos modos.