Download - Tecnología de Inmobiliarios.com.ve
Motor... Caja... Carrocería... Accesorios... Estadísticas
La Tecnología tras Inmobiliarios.com.ve¿Qué hace funcionar al Buscador Inmobiliario de
Venezuela?
Ernesto Hernández-Novich <[email protected]>Luis E. Muñoz <[email protected]>
Inmobiliarios.com.ve
agosto, 2007 / Perl Mongers, Caracas
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
Agenda
1 Motor...
2 Caja...
3 Carrocería...
4 Accesorios...
5 Estadísticas
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
Software de Inmobiliarios.com.ve
Todo el software que usamos es libreTodos los procesos de la operación son automáticos . . .
. . . la instalaciónTodo el software está en paquetes Debian.. . . despliegueLas estructuras de base de datos se generanprogramáticamente.. . . las pruebas de regresiónPruebas automatizadas sobre todos los aspectos del sitio web.
No, no necesitamos ISO-9000, gracias
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
PostgreSQLMotor de base de datos
El mejor y más completo manejadorde base de datos relacional, libre . . .
. . . cumple con todos los estándares
. . . 100% ACID, fuera de la caja
. . . se inicia el desarrollo en los 80 –más de 7 años de evolución en el core
Replicación SM-MS con promociónautomática – 3 seg de latenciaobservada sobre Internet públicoProcedimientos almacenados en varioslenguajes, incluyendo PerlManejo eficiente de contenidono-escalar, como fotos
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
Debian/GNU LinuxLibertad bajo el capó
No tenemos que preocuparnos por lalicencia: Todo es libreLa más ámplia cobertura de CPAN ensistemas Linux – lo que falta se instalacon dh-make-perl
Abundantes herramientas de controlde calidadSoporte multi-plataforma perfecto:Servidores idénticos bajo arquitecturasIntel y PPCHerramientas para construcción ydistribución de paquetes
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
DBIx::Class + SQL FairyAceleración del desarrollo
Nuestros programas no contienen SQL– sólo PerlCrear el esquema de base de datos esmuy simple. . .
$ ch−dep l oy −−with−drop
Podemos usar bases de datos máslivianas en nuestros equipos personalesy de desarrollo sin cambiar elcódigo. . .. . . de hecho, cualquier base de datossoportada por DBI
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
mod_perl + Apache Web ServerMás kilómetros por litro
Seguridad y confiabilidadHacemos modificaciones profundas enla forma de atender las peticiones webPersistencia. . .
. . . conexiones a la base de datos
. . . en los programas
. . . en las plantillas, ayudando aHTML::Template
Configuración simple, junto a la deApache
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
CGI::Application¿Para qué retroceso?
Aplicaciones web simples, basadas enestadosMenú de plugins para muchasfunciones . . .
. . . autenticación
. . . CAPTCHAMínima exposición de información
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
Template::Toolkit + HTML::TemplateLatonería y pintura
El layout del sitio se generaestáticamente, cuando hay cambiosque lo requierenLas aplicaciones mantienen laseparación con la vista – look & feeluniformeEl contenido puede guardarse dondetenga más sentido: Archivos planos obase de datos
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
Test::More
Arnés de prueba que acompaña a las aplicacionesFácil de usar – muchas pruebas en poco código . . .@rs = $schema−>rate_data ( ’ n1 ’ ) ;i s ( $ r s [ 0 ] , 5 , ’ C o r r e c t count o f r a t i n g s ’ ) ;i s ( $ r s [ 1 ] , 3 , ’ C o r r e c t ave rage o f r a t i n g s ’ ) ;i s ( $ r s [ 2 ] , 15 , ’ C o r r e c t sum o f r a t i n g s ’ ) ;
. . . no sólo prueban el software . . .l i k e ( $msg−>head−>get ( ’ Reply−To ’)−>unfo ldedBody ,
qr /^<? i c v \ . t e s t e r \ @foo \ . com>?/ i ," $s : Reply−To s e t to the s e n d e r " ) ;
l i k e ( $msg−>head−>get ( ’To ’)−>unfo ldedBody ,qr /^<? i c v \ . t e s t e r \ @foo \ . com>?/ i ," $s : To s e t to the i n v i t e e " ) ;
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
WWW::Mechanize
Fácil acceso al contenido web, siguiendo todos los estándaresIntegración elemental con otros módulos útiles . . .Útil para generar casos de prueba . . .my $ j a r 1 = HTTP : : Cook ies−>new ( ) ;my $mech1 = Test : :WWW: : Mechanize−>new
( c o o k i e _ j a r => $ j a r 1 ) ;$mech1−>get_ok ( " h t tp : // $s . i n m o b i l i a r i o s . com . ve /" ,
" $s : H i t 1" ) ;$ j a r1−>scan (\& cb_check_cookie ) ;
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
La magia de /quiero. . .
Espacio web virtual, generado para ayudar al usuario y aGoogleManipulación del URL para mantener legibilidad – RESTEl más rápido acceso posible a la búsquedahttp://inmobiliarios.com.ve/quiero/apartamento/ya
Compatible con cualquier navegador webImplementación ligera – mínimo consumo de recursos
Hernández-Novich, Muñoz Inmobiliarios.com.veICV
Motor... Caja... Carrocería... Accesorios... Estadísticas
Algunas estadísticas.... . . al 14 de agosto del 2007
Líneas de código: 9987Funciones / métodos: 144Líneas / método: 6.3Complejidad de McCabe: 6.35 (main), 1.6 (métodos)Pruebas
Calidad y correctitud de código: 3577Regresión: 794Líneas de código: 8626
Velocidad de desarrolloAproximadamente 180 horas hombre en ingeniería de softwarePrimer commit: enero 28, 2007Último commit: agosto 14, 2007639 revisiones (Una nueva versión cada 3 días)
Hernández-Novich, Muñoz Inmobiliarios.com.veICV