entre algunos chats, tengo un ex-companiero de facultad quien es Dot Net Developer. Nunca tuve interes en aprender este …. lenguaje(?), pero lo que si sabia es que es muy usado para aplicaciones complejas, es un tanto lento, es uno de los mejores pagos si sos Developer. Aclaro que no se nada de programacion en Dot Net.
decia que tuve una charla con un ex-companiero, el seria en este caso Dot Net Developer ( DND )y yo sere PHP Developer (PD), mas o menos decia asi:
- DND : no sabes el proyecton qe me estoy haciendo -haciendo alusion a un proyecto personal
- PD: asi? que estas haciendo?
- DND: una clase que te recupera los nombres de las tablas y de los campos en la base de datos y te crea automaticamente los ABMs.
- PD: ???? estas inventando la rueda nuevamente?? crei que Dot Net contaba con algo asi
- DND : si tiene , pero mezcla todo en uno y no m gusta
El pibe hablaba con tanto entusiasmo que parecia que estuviera creando la Web 3.0 . Si bien los ABMs, consumen un minimo del 50% de un proyecto, creo que las tecnologias avanzadas deberian contar con “algo” que haga automatico esta parte para que el desarrollador se centre solo en la demas logica del negocio, que es la que mas importa.
- PD: que raro que lo tengas que hacer por vos mismo, que no hay Frameworks en Dot Net que haga un mapeo de las bases de datos?
- DND : si, pero mezcla todo el abm en un solo codigo, esto que estoy haciendo me va a servir para todos lo proyectos…bla-bla-bla
No pude evitar mi sarcasmo, y recordar como muchos se burlaban de PHP porque en la epoca que ellos lo conocian, no existia Framework PHP y la programacion era estructurada, un desastre…
- PD: que raro, en PHP tenemos bien definido el Model que se encarga de ello a traves de un ORM que te mapea automaticamente las tablas y te construye automaticamente los CRUDs o ABMs a traves de comandos del tipo:
Symfony: php symfony propel-generate-crud nombre_tabla
CakePHP: cake bake Model nombre_tabla

y no solo eso, sino que tambien identifica el tipo de campo de la tabla y de acuerdo a ello genera el formulario con los campos correspondientes, por ejemplo si es un ID, un archivo Blob, un enumerado….
tambien, es independiente del Motor de base de datos que estes usando, o sea, el comando siempre es el mismo, pero el ORM se encarga de generar el ABM correspondiente tanto si se trata de PostgreSQL, MySQL o Oracle.
y por si fuera poco, cakephp tambien te genera las relaciones: Has Many, Has One y Has And Belong To Many, de esta forma, por ejemplo, cuando editas un Alumno , podes acceder facilmente a todas sus relaciones como Materias, Cursadas, etc.
o seaa….. tenes uqe pensar en todo eso para tu “mega proyecto”
- DND: si…. tengo que salir ahora, nos estamos viendo…. chau