[C con Clase] ¿Alguien sabe destripar librerías...?

Salvador Pozo salvador en conclase.net
Sab Ago 30 19:12:55 CEST 2008


El pasado 2008-08-30 13:41:17, xonly escribió:

Hola:

Respondo, por alusiones. ;-)
 
x> ciertamente, no me lo he leido porque está al final, pero hecho en falta un poco de eso de que expliquen al principio que para poder trabajar con el Dev-C++ hay que hacer una plantilla, aunque te digan en principio (por ejemplo en ese apartado que dice al principio "toma de contacto", en el que por ejemplo si quieres ver algo de resultado, se necesita utilizar el debugger, y por defecto no lo tiene puesto, e incluso creo que si no se hace un proyecto o plantilla como la llamas, creo que no funciona bien del todo, pues a menos a mi se me vuelve totalmente loco para poder ver si en la variable numero hay efectivamente un 4...

Bueno, el ejemplo de "toma de contacto" quise simplificarlo hasta el punto de que no fuera necesario usar ni siquiera un fichero de cabecera. Seguramente me he excedido, pero sé que puede asustar ver cosas como "include <iostream>" o "cout << numero << endl;" en un primer programa de ejemplo.

Es posible que modifique este ejemplo en futuras versiones del curso...

Lo que nunca pretendí es que nadie se pusiese a usar el debuger en el primer capítulo del curso. :-D

Otra cosa, creo que para ningún ejemplo del curso es necesario usar proyectos. Los programas de consola son la opción por defecto en Dev-C++, y todos los ejemplos son sencillos, y sólo usan un fichero fuente.

No pretendo desanimarte, del mismo modo que no creo que el resto de los compañeros que han respondido a este hilo hayan pretendido hacerlo. Actualmente, hay tantos conceptos que hay que comprender y dominar para hacer las cosas a bajo nivel, que la tarea me parece inhumana.

No digo que no se pueda hacer, la cuestión es decidir qué pretendes hacer en programación:
1) Resolver problemas (tuyos o de "clientes", o compañeros), creando programas útiles o juegos o aplicaciones más o menos específicas u
2) Optimizar "un" sistema para aprovecharlo al 90% (o más).

Probablemente ambos objetivos son mutuamente excluyentes.

Yo también programé para Spectrum y Amstrad, ignorando las rutinas de la ROM para escribir en pantalla, creando mis propias funciones para trazar líneas y curvas, etc. Era algo apasionante, y se echa de menos ahora. Pero, francamente, aunque pudiera hacer lo mismo para los ordenadores actuales, no podría hacerlo para todas las funcionalidades que ahora uso: gráficos, bases de datos, conexiones de red, sonido, etc.

Para la mayoría de esas cosas, actualmente se necesitan equipos de programadores, a tiempo completo. Eso sin tener en cuenta que todo se queda anticuado casi antes de terminarlo (eso con suerte). 

Por ejemplo, mantener al día la página de Con Clase es prácticamente imposible. Cuando empecé el curso de MySQL, la versión 4 llevaba relativamente poco tiempo de uso, cuando la terminé (tal como está ahora) acababa de salir la 5, y cuando quiera actualizarla, probablemente esté por la 7 (la 6 está ahora en fase Alpha, creo).

Lo mismo pasa con el curso del API de Windows, empecé con la de 32 bits, y ahora va por la de 64. Además, con cada versión de IE aparecen nuevos controles "estándar", de tal modo que cuanto más avanzamos, más queda por hacer...

Actualmente nadie pretende aprovechar la potencia de los ordenadores tal como se hacía con los antiguos micros de 8 bits. Sencillamente, se conforman con que la tecnología del software aplicada sea productiva con la tecnología del hardware existente.

Al contrario de lo que pasaba en un principio, ahora las máquinas evolucionan en función del software, y no a la inversa. Por eso los nuevos micros tienen capacidades multimedia y multitarea.

Personalmente, me gustaría que hubiese un "parón" en la evolución de los ordenadores, para que nos diera tiempo a asimilarlo todo y poder aprovechar las máquinas mucho más de lo que se aprovechan ahora. 

Pero, ¿para qué?

Si abres el administrador de tareas verás que generalmente, más del 95% del tiempo de proceso de la CPU no se usa (salvo que estés editando video o jugando), ¿qué sentido puede tener aumentar ese porcentaje en dos o tres puntos?

Por último, te recomiendo que uses el compilador Code::blocks, en lugar de Dev-C++, que lleva mucho tiempo sin actualizarse, y que se quedó en una beta a perpetuidad. He comprobado que, al menos el debuger funciona mejor en ese entorno. Haré esta recomendación el la página también, cuando se revise (próximamente).

Ánimo, y hasta pronto.

-- 
Salvador Pozo (Administrador)
mailto:salvador en conclase.net


Más información sobre la lista de distribución Cconclase