[Php] ¿Que es un ORM?

Pues como has visto en los últimos artículos de este blog he hablado mucho del famosísimo ORM que si bien aun me falta mucho, para poder usar todas sus características, lo poco que he aprendido a usarlo me ha resultado maravilloso.

El mapeo objeto-relacional u ORM (Object-Relational Mapping), una técnica de programación para convertir datos entre el sistema de tipos utilizado en un lenguaje de programación orientado a objetos y el utilizado en una base de datos relacional. En la práctica esto crea una base de datos orientada a objetos virtual, sobre la base de datos relacional. Wikipedia

Ose nos permite “pasar” una base de datos a programación orientada objetos, es decir tu solo te encargas de configurar tu conexión y mediante métodos puedes hacer los querys que quieras, y todo son objetos.

Existen muchos ORMS, para diferentes lenguajes de programación, pero obviamente nos enfocaremos a Php, y según se (no estoy 100% seguro) pero los ORMS están basados en Hibérnate de Java se supone que fue como el primer ORM.

En Php tenemos los siguientes ORMS:

Yo no he visto como trabajan cada una y se dé muy buenas fuentes que las mejores estan entre Doctrine y Propel.

Claro que depende de que desees hacer, de hecho aun no he probado bender-modeler pero por lo que veo es muy completa :-) (Y no es comercial he) ya que como dije va mas allá ya que te genera los modelos que usaras en tu bd automáticamente (incluidos getters y setter).

Voy a mostrar a que me refiero con todo esto del ORM desde la vista de Kohana ORM ya que es donde he trabajado y es muy fácil.

Antes que nada quiero aclarar que son solo ejemplos, prometo que después de esto seguirá nuestra primer MVC con base datos, ORMS y todo, esto solo es para que se den una idea de que hablo cuando digo que esta buenos los ORM´s.

Para empezar solo necesitamos crear nuestra tabla (p.ejem. ‘usuarios’), y crear un modelo con la siguiente sintaxis.

usuarios.php


<?php

class Model_Usuarios extends ORM {

}

?>

Seguir leyendo [Php] ¿Que es un ORM?

[Php: Kohana 3]El framework Kohana 3 y el MVC

Bien después del error que se presento en el penultimo post, y ya resuelto seguimos posteando “ahora si que voy tendido”.

Yo supongo que ya leyeron el post anterior sobre instalación de Kohana 3, si no este es el link [Framework Kohana 3] Instalando y configurando Kohana 3 #Ko3

Bien teniendo eso, hoy haremos un pequeño ejemplo de MVC, recordemos que el paradigma MVC (Modelo, Vista, Controlador) nos permite desarrollar mejor, mas rápido, organizar nuestro proyecto y hacerlo abstracto.

Lo anterior es porque nos permite programar de la siguiente manera:

  • Modelo: Capa de datos, la cual se encarga de la petición de datos
  • Vista: capa de presentación, es la que se encarga de mostrar el resultado al cliente
  • Controlador: capa de negociación, esta se encarga de organizar al información, en otras palabras identifica que es lo que necesitas, pide los datos al modelo y los presenta en la vista.

Bien ahora veamos cómo trabaja Kohana 3 con esto

Como podemos ver Kohana consta de 3 carpetas:

  • Application: es donde estará nuestra aplicación donde tendremos nuestras carpetas de MVC, digamos que es lo publico
  • Modules: es donde residen los módulos que le podemos agregar a Kohana por ejemplo la conexion a la base de datos, el ORM(luego hablaremos de este),autenticación etc.
  • System: pues como su nombre lo indica es donde está el core del Kohana 3 o el núcleo, este pues casi no hay que tocarlo en la mayoría de proyectos de hecho casi nunca se toca o no debería tocarse.

Ahora lo que nos interesa en este caso es la carpeta Application, al abrimos y veremos las siguiente carpetas:

Seguir leyendo [Php: Kohana 3]El framework Kohana 3 y el MVC

[Java] Jonathan Bruce habla sobre el Futuro de Java en cuanto a Persistencia JDBC, JPA, NoSQL

Esto lo pongo por que me parecio muy interesante, ya que aunque si bien esta en ingles, Jonathan Bruce, nos halba a cerca de como se ve el futuro de Java por parte de Oracle refirindose a la persistencia sobre todo en lo que se refiere a NoSQL.

Les invito a que lo vean yo no lo he podido ver completo solo una parte, lo veo en cuanto llege a casa.

A por cierto Jonathan Bruce es Senior Product Manager de Progress DataDirect. Su compañía es conocida por sus drivers para Java y .NET. En esta entrevista, Jonathan da sus pensamientos sobre cómo JDBC y el mapeo objeto-relacional se desarrollará en los próximos años.

Lo encontré aquí : JDBC, JPA, NoSQL – The Future of Java Persistence

[Eventos] El Google Developer Fest 2010

Si pues así fue, hoy tuve la gran oportunidad de ir al Google Developer Fest 2010.

Les voy a contar un poco de que se trato y como me pareció este fabuloso evento.

Google Developer Fest

Google Developer Fest

Me fui temprano, y llegue a eso de las 8 y media el registro empezó como a las 9 con playera incluida aunque un poco grande para mi tamaño :-) y el evento inicio a eso de las 9:30, algo raro de parte de Google, aunque pues al parecer hubo mucho trafico.

Pero bueno, después de una breve introducción por parte de Jhon Farrel, toco el turno a Don Dodge el cual nos hablo de los cambios que ha tenido el desarrollo en la Web (La nube / Cloud Computing) así como el avance tecnológico de los móviles pasando de un teléfono celular que era solamente eso y nada mas hasta ser un completo smartphone o micro-pc “diria yo”.

Posteriormente tuvimos un descanso muy breve y de ahí, vino una especie de resumen de lo que veríamos durante todo el evento, presentado por cada uno de los expositores, esto considero que fue muy importante por que nos permitió ver a cuales conferencias iríamos ya que como iba a haber conferencias simultaneas no podríamos estar en todas. Afortunadamente mis gustos coincidieron con los de mi empresa, ya que me sugirieron que fuera a las conferencias de Geolocalización y Andriod cosa que me gusto y me llamo mucho la atención.

Después vino la comida, la cual por cierto estuvo muy rica y fue bastante.

Geo Web Track

Temas: Las APIs Geo de Google, cuándo utilizarlas y Mapeo avanzado: Rendimiento y escalabilidad

Seguir leyendo [Eventos] El Google Developer Fest 2010

[Framework Kohana 3] Instalando y configurando Kohana 3 #Ko3

Para empezar con con Kohana, necesitamos tener instalado un entorno de pruebas el cual debe tener lo siguiente.

  • Apache o un servidor Web como Lighttpd
  • Php 5 o superior (de preferencia 5.3)
  • MySQL 5

Funcionando y correctamente configurado
Imaginemos que tenemos nuestro Htdocs en E:\www y que ese es nuestro htdocs.

Ahora procedamos

  • Bajaremos nuestro kohana 3
  • Para ello iremos a la siguiente pagina http://v3.kohanaphp.com/download
    Y descargaremos la versión v3.0.0 “renaissance” que es la estable de la rama 3.x
  • Lo descomprimimos y veremos dentro una carpeta que se llama kohana, y dentro de ella el framework
  • Copiamos esta carpeta kohana a nuestro Htdocs
  • Quedaría así E:\www\kohana

Ahora vayamos a nuestro dirección http://localhost/kohana y veremos lo siguiente.

kohana 3

kohana 3

Seguir leyendo [Framework Kohana 3] Instalando y configurando Kohana 3 #Ko3

[Programación PHP]El Framework Kohana 3 el elegido

Después de varios días sin actividad, hoy platicare de varias cosas.

Pues como sabrán (x vía Twitter), no tengo pc, por ello no he posteado, y bueno tengo un proyecto entre manos el cual empezare a partir del día de hoy, pensaba hacerlo con Python con el Framework Django o en su caso con Ruby on Rails.

Y la verdad estaba pensando muy seriamente hacerlo con Django pero la verdad estoy con poco tiempo, y después de haber estado usando Kohana en el trabajo me decante por este Framework en su versión 3.0.

El proyecto es un website, pero no daré mas pistas hasta que este casi listo(pronto), lo importante es que se que quiero hacer y tengo con que hacerlo.

kohana 3

kohana 3

Pero el propósito de este post va mas haya les platicare un poco de que se trata este Framework y en medida de lo posible pondré documentación en español la cual esta un poco escasa.

Kohana es un Framework escrito en Php, el cual comenzó siendo un Fork del Framework CodeIgniter, el cual trata de ser mejor que este, esto es en su version 2.3.4

Pero en su nueva versión 3.0 el Framework fue reescrito completamente, agregando mas características importantes, como una mejor implementación de su ORM, se implemento el uso de métodos estáticos para prácticamente todo, para instalarlo se requiere PHP 5 obligatorio, entre otras mejoras.

Además de que a diferencia de Codeigniter la carpeta de la aplicación esta fuera de la del sistema, haciéndolo mas seguro.

Bien ahora a programar, les informare de los avances.

Corporacion Dermoestetica

La Junta General de Accionistas de Corporación Dermoestética, tiene mas de 25 años y esta vez han rediseñado su website, vamos ha ver como ha quedado.

Corporacion dermoéstetica

Corporacion dermoéstetica

El website carga bastante rápido y es bastante minimalista, aunque el tamaño de letra en el contenido es algo pequeño para mi gusto, Algo que note, es que no valida la W3C hay bastantes errores, y que usa bastantes tablas, las cuales pudieron ser capas (divs). Posee una sección de descarga de sus informes financieros en formato PDF los cuales supongo deben ser de gran interés para quien los necesita.

Una cosa negativa que me llamo fuertemente la atención es que su buscador no funciona, y no me refiero a que no busca bien, si no que nos manda a una pagina que no funciona.

Hay un icono que nos dice que al dar click iremos al sitemap del sitio lo cual no funciono y el menú inferior también no se entiende bien su funcionamiento, ya que lo único que hace es desplegar el menú de arriba.

Un plus al cual es bastante fácil acceder es que ver la misma pagina en ingles, y también tiene un informe de cómo va la cotización en la bolsa, del grupo.

Personalmente creo que la idea de optimización es buena, solo hay que corregir estos detalles que nos hacen como usuario, una experiencia incompleta.

Page 4 of 96« First...23456102030...Last »

Recibe nuestro contenido por email

Vas a recibir un email con los artículos escritos durante el día.

Categorias

Historico de entradas publicadas