Hola.
Pronto hará un año que empecé a "programar" en C.
Por ahora he aprendido lo que viene en los libros y manuales de C, pero me estoy dando cuenta que solo sé crear aplicaciones por consola "no útiles" (solo tienen la finalidad de aprender a programar, supongo).
¿Qué debo empezar a aprender para hacer cosas "útiles" en C?
Gracias!
Saludos.
Combina todo lo que sabes no pienses que la programación es una estructura fija y cerrada, o tienes imaginación o no sirve de nada. Planteate programas que puedan servir de algo, cualquier tontería para empezar, una calculadora, conversores etc, irás ganando práctica.
Por otro lado, parece que te lamentes por crear aplicaciones por consola, déjame decirte que hay muchas utilidades en modo no gráfico más útiles que con GUI. De todas formas si quieres programar gráficos búscate alguna librería que los maneje. En C++ creo que allegro se suele utilizar y no sé que más habrá por ahí, todo es ponerse a buscar.
Aprende a manejar algun framework, ya sea Qt, Xlib, la API de windows o GTK+. Podras crear programas con interfaz que hagan muchas mas cosas de las que se pueden hacer por consola, y ademas Qt, Xlib y creo que GTK+ son multiplataforma.
Muchas gracias a los dos.
La verdad es que me da igual hacer programas por consola o en modo gráfico. Me gustaría aprender a hacerlos de las dos formas. Pero lo que quiero es hacer algún "proyecto" más largo y difícil de lo que suelo hacer normalmente, ya que este año he estado haciendo muchos ejercicios (cortos) y ya por mucho que sigo haciendo más, no aprendo nada nuevo...
Saludos.
Si quieres crear Programas/aplicaciones (no de consola) te recomiendo que uses .NET ya que es mucho mas facil que C, y ademas hay tutoriales de .NET a montones :)
Gracias por tu respuesta.
La verdad es que como C lo estoy aprendiendo por gusto, y me encantan los retos difíciles, pues me da igual que tenga mayor dificultad en C que en otro lenguaje de programación.
Además, ya que he empezado con C, ¿por qué dejarlo? No me gusta dejar las cosas a medias :D
Saludos.
Bueno, si no es molestia, quisiera proponerte un reto, o, mejor dicho, un programa que hice relacionado con bases de datos.
Lo que es el reto/programa en si, tiene tres partes; la primera seria crear un programa donde puedes insertar categorias, subcategorias y productos, y hay que mencionar que las subcategorias deben estar dentro de una categoria y estas no pueden ser creadas si no se han creado previamente categorias, y tampoco productos sin haber creado antes una subcategoria, puesto que estos han de estar dentro una subcategoria, y tambien han de tener un precio por unidad y, aparte, indicar cuantas copias del producto en cuestion dispones.
La segunda parte seria insertar parametros de busqueda (o caracteristicas) para los productos, en los cuales, primero se inserta una serie de caracteristicas generales (como pueden ser cosas como peso del producto, color, etc) y luego, dentro de estas caracteristicas principales, le enlazamos una serie de parametros (como pueden ser dentro del color, poner rojo, verde, etc, y, al peso, 200, 300, etc); entonces, cuando ya se dispongan de parametros dentro de las caracteristicas, pues poner una tercera opcion que nos permita enlazar un valor a cada parametro (por ejemplo, si el producto es "manzana", indicar que el peso sea de, por ejemplo, 200 gramos, y color amarillo, entre otras cosas).
Por ultimo, la tercera parte seria añadirle al programa un sistema de busquedas que muestre todos los productos de una categoria, subcategoria o que tengan un valor dentro de una o mas caracteristicas de busqueda, incluyendo el hecho de que puedas buscar productos en diferentes categorias por su nombre.
Quizas te parezca algo liado y dificil, pero es mas simple de lo que parece, y es mas, es algo que realice por mi cuenta y dispongo del codigo, y, bueno, he comentado esta idea mas que nada porque he pensado que te puede interesar realizar esto.
Saludos.
¡Muchas gracias, crazykenny!
Intentaré hacer el programa!
La verdad es que se podría hacer un tema en el que planteáramos problemas así para la gente que quiera hacer cosas nuevas.
Se aceptan más sugerencias ^^
Saludos.
Crear malware es muy divertido >:D
¿Y dónde puedo aprender a hacerlos en C? Por más que busqué ayer en google sólo encontré para hacerlos en C++...
Una cosa que se me olvidaba sobre el programa; te recomiendo realizarlo utilizando variables tipo float, no bytes, ya que sino no aprovecharas la RAM de tu maquina puesto que solo podras almacenar 255 en memoria (256 dependiendo de como lo hagas) productos y caracteristicas de productos a la vez (y te lo comento porque a mi, aun teniendo poco mas de 2000 productos con una veintena de terminos de busqueda, el programa creo que no llega a ocupar los 16 MB de RAM), a no ser que prefieras estar accediendo al disco duro para comprobar los datos de los productos y demas, y que uses dos directorios; uno para guardar los datos de categorias, subcategorias, productos, disponibilidad de productos y nombres de productos, y el otro para los valores de los terminos de busqueda que se asignan a los productos.
Dicho sea de paso, y sin animo de ofender ni nada, quisiera comentarte que una variable tipo byte solo puedes asignarle un valor comprendido entre 0 y 255, y en una variable tipo float, el valor que creo que le puedes asignar creo que oscila entre varios millones (o almenos uno y pico).
Dicho sea de paso, espero que, al realizar este programa, te pueda servir para programas de IA, o almenos en la parte de como realizar busquedas sobre cosas con una serie de caracteristicas con la base de datos del programa.
Saludos.
¿Tanto te ocupó el programa? :-( Creo que entonces tendré para un tiempo :D
Por cierto, ya que hablas de IA, y aunque no sé si se podrá hablar de ese tema por aquí, ¿sabes dónde puedo aprender algo de IA?
Es un tema que me llama mucho, pero no encuentro información por internet...
Saludos.
http://es.scribd.com/doc/54245333/Cuaderno-de-Ejercicios-y-Practicas-c-Winapi
Ahi tienes ejercicios y soluciones asi para que te vayas familiarizando con la programacion de ventanitas usando el api de windows....
y aqui un curso: http://winapi.conclase.net/ para que vayas entiendolo
Aunque ese curso sea de C++, supongo que será igual en C, ¿no?
Muchas gracias a todos, me estáis dando muchas cosas para elegir ^^
Bueno, en realidad me ocupa aproximadamente sobre los 16 MB de RAM, y en disco no mucho, pero ten en cuenta que yo estoy utilizando un compilador llamado "Blitz 3D", y a decir verdad, pues es algo antiguo, por no decir que requiere DirectX 6 para que los programas creados en dicho compilador puedan funcionar en un ordenador, por lo que me imagino que, al cargar mas cosas (tipo librerias) en memoria, pues hace que, muy probablemente, ocupe mas de lo que el programa en si requiere, pero que vamos, ya ves, cosas del compilador, por lo que me imagino que si lo haces en C es muy probable que te ocupe bastante menos.
Por otra parte, y en lo que respeta a aprender algo de IA, pues, para aprender a programarla, no tengo ni idea de como hacerlo, pero podrias buscar datos de redes neuronales, que viene a ser un sistema de IA que emula el funcionamiento de la mente humana (u algo asi, no estoy del todo seguro), que seguro que encontraras datos de lo que son, entre otras cosas.
Dicho sea de paso, me disculpo por no poder ser de mas ayuda.
Saludos.
Muchas gracias, crazykenny, me has ayudado mucho.
Bueno, pues ya tengo bastantes cosas que buscar y hacer. Gracias a todos!
Saludos.
Hola! Si estas trabajando sobre linux, despues de saber C yo te recomendaria este libro: "Programacion en Linux de Kurt Wall".... y si te interesa algo de videojuegos podes programar con SDL
Saludos