Entradas relacionadas con la palabra clave
Mis patrones de diseño preferidos: Parte 1
Publicado por Francisco Cifuentes Silva el 18 de julio de 2010, visto 227 veces.
Haciendo un rápido balance de mi primer año en el Máster en Ingeniería Web en la Uniovi, puedo decir que he aprendido mucho, y cuando digo mucho creo que es poco. El enfoque duro de ingeniería de software, el nivel de exigencia y la calidad de los profesores encaja excelente con quienes tomamos a la informática como algo que es mucho más que el trabajo o una diversión, como algo que nos motiva día a día. En este post, que he decidido dividir en tres partes dada su extensión, voy a hablar sobre los patrones de diseño que más me han gustado durante los primeros cursos del Máster. El primer patrón del cual voy a hablar, y sobre el cual trata este post es el patrón Command ( del GOF). El Patrón Command Este patrón de diseño es mi favorito, a grandes rasgos permite encapsular cada operación de negocios en lo que se define un “comando” ejecutado por un “ejecutor” que supervisará la...
Estudio de la evolución temática en Twitter asociada al terremoto de Chile del 27 de febrero de 2010
Publicado por Francisco Cifuentes Silva el 13 de julio de 2010, visto 436 veces.
A lo largo del máster he desarrollado muchos trabajos, y este es uno de los que más creo que les puede interesar a más de alguno de mis compatriotas (Gracias Dani Gayo por toda tu ayuda).Es Twitter hoy en día uno de los principales canales de difusión de contenidos a nivel mundial, y en Chile particularmente uno de los más utilizados.Les dejo tal como lo enuncia el título, un artículo que escribí para la asignatura de Web Semántica (la del lado obscuro por así llamarlo) en donde se muestra la evolución temática que ocurrió los días posteriores sobre Twitter al analizar la información marcada por algunas hashtags (#terremotochile y #chile). Les dejo el abstract para que lo miren, si les interesa lo pueden descargar al final de la página para leerlo completo. En el apartado siguiente, se describe el método utilizado en profundidad realizando una descripción de cada uno de los pasos...
Generar keywords automáticas usando el API Yahoo Terms Extraction
Publicado por Francisco Cifuentes Silva el 08 de julio de 2010, visto 194 veces.
Muchas veces nos hemos encontrado con la problemática de definir las palabras claves de un texto que hemos escrito, lo cual por muy fácil que parezca no siempre se realiza ni tampoco correctamente. De hecho, por ejemplo en los blogs, muchos blogueros no nos damos el trabajo de escribir palabras clave para cada entrada en el blog, lo cual de cierta forma nos hace perder ápices de lo que máquinas podrían concebir como “riqueza semántica” y por qué no, también los humanos. Para estos casos (y para muchos otros con gran probabilidad de ser más importantes) es que Yahoo ha definido hace ya bastante tiempo un conjunto de APIs que permiten realizar extracción de términos clave dado un texto. Este servicio, denominado “Yahoo Terms Extraction” (desde ahora YTE), permite realizar este trabajo de forma limpia y rápida utilizando PHP, CURL y REST. Utilización YTE permite uso comercial y no...
Comparativa plataformas Java y .NET
Publicado por Francisco Cifuentes Silva el 27 de noviembre de 2009, visto 262 veces.
A continuación les presento una comparación sobre aspectos generales de las plataformas Java y .NET, realizaré un paralelo entre las características consideradas fundamentales. La idea principal del post es mostrar las potencialidades básicas de cada una de estas plataformas, visualizando ventajas y desventajas desde una perspectiva exclusivamente técnica sin generar conclusiones que puedan evidenciar preferencias de algún tipo. Cabe señalar que, este trabajo fue realizado como uno de los tantos entregados para el Máster en Ingeniería Web. Reseña histórica Plataforma .NET La plataforma .NET nace el año 2000 como un proyecto de Microsoft Corp. Con la idea de crear una plataforma de desarrollo de software que permitiera unificar todos los productos Microsoft, desde las herramientas de desarrollo hasta el sistema operativo. La idea central de .NET en términos tecnológicos es generar...
Resumen de comandos Linux/Unix
Publicado por Francisco Cifuentes Silva el 09 de junio de 2009, visto 359 veces.
En nuestro trabajo cotidiano es muy común que deseemos realizar alguna operación por consola que no conocemos, para estos casos en el siguiente link les dejo la solución a esta problemática, una enorme tabla de comandos con descripciones. http://www.pixelbeat.org/cmdline_es_AR.html ¿Quién conoce alguno más que sea interesante?
Forma fácil de comprimir carpeta usando PHP
Publicado por Francisco Cifuentes Silva el 09 de junio de 2009, visto 910 veces.
Esta es una forma fácil, y por qué no decirlo, curiosa de comprimir una carpeta usando PHP y la función exec();. Lo interesante es que dentro de una sola instrucción ejecuto muchos comandos. (Esto es efecto de la desesperación al no haber encontrado una biblioteca PHP que funcionara...jejej)
Forma simple de remover XSS para una extensión TYPO3
Publicado por Francisco Cifuentes Silva el 18 de mayo de 2009, visto 288 veces.
Normalmente en casi todas mis implementaciones de extensiones Frontend Plugin TYPO3 agrupo las llamadas básicas del programa (inicialiaciones, cargas, lipiezas, etc.) en un método init(); para no tener que repetir aquellos trozos de código. Este método init pertenece a una clase base que es común a las clases de los plugins, pero eso es tema para otro post.El tema central en esta ocasión es la limpieza de parámetros, en rigor, la limpieza de los temidos ataques XSS (Cross Site Scripting).Para explicar más claramente lo haré por medio del siguiente código: Para quienes estén familiarizados con la programación para el CMS TYPO3, estas fáciles líneas les servirán de mucho. Las 4 primeras líneas del método init() sirven para lo siguiente: 1) Leer las variables desde el backend pasadas por Flexforms 2) Leer los métodos de entrada GET y POST y asignarlos a un arreglo denominado...
Megazine 3: una alternativa free a pageflip
Publicado por Francisco Cifuentes Silva el 19 de abril de 2009, visto 644 veces.
Openfactory volvió a la vida, y qué mejor que con un nuevo post.Lo primero antes de hablar de MegaZine 3, es contar qué es Paperflip. La "tecnología" Paperflip es un sistema construido en Flash que permite publicar contenidos en formato de libro virtual, muy similar al que utilizan los diarios, periódicos y revistas, el cual permite, además de muchas otras características, navegar por la publicación avanzando y retrocediendo sus páginas hojeandolas. Buscando a alternativas libres al ya conocido Paperflip encontré MegaZine 3, el cual otorga un resultado bastante similar al de Pageflip. Además del funcionamiento básico de publicación de imágenes y archivos swf, permite la incorporación de videos, exportación a PDF (solo para Windows momentáneamente), y acceder a los fuentes mediante SVN. Si están interesados en utilizarlo, ahora solo deben hacerlo, lo que es yo lo estoy probando y...
Nueva lista de appfuse en español
Publicado por Leo Barrientos C el 09 de junio de 2008, visto 350 veces.
Hoy 9 de Mayo Matt Raibles, creador de appfuse, ha abierto una lista de correo en español (Castellano) para este maravilloso framework de desarrollo java llamado appfuse, donde un servidor estará de moderador :-) . Así que todos invitados a suscribirse: users-es-subscribe@appfuse.dev.java.net Para los que no conozcan appfuse les dejo este link: http://www.appfuse.org
¿Por qué la mascota de PHP es un elefante?
Publicado por Leo Barrientos C. el 09 de junio de 2008, visto 280 veces.
En la imagen se muestra como el acrónimo PHP (PHP Hypertext PreProcessor) toma la forma del elePHPante que es la mascota de PHP. Curioso .... Incluso puedes comprar peluches del elePHPante si eres fanático. En lo personal yo voy por el lado Java de la vida, pero PHP es un recurso muy Útil especialmente desde que conocí Symfony. Mis agradecimientos a PHP.
Appfuse 2.0.2
Publicado por Leo Barrientos C el 16 de mayo de 2008, visto 854 veces.
Desde el día 11 de Mayo está disponible Appfuse 2.0.2 - para los que no le conozcan les cuento que es una base pre-configurada de varios framework para aplicaciones java - puedes elegir tu "stack" y desarrollar muy rápido y profesionalmente aplicaciones ya que trae todo lo que se necesita: Autenticación, gestión de usuarios, menu, generación de código(Mapeo de classes desde BD), generación de CRUD, etc. Personalmente lo uso con la stack de Spring/Hibernate con excelentes resultados. Más información sobre appfuse en este post. Las mejoras de esta versión están detalladas en http://appfuse.org/display/APF/Release+Notes+2.0.2 . Les dejo una invitación a usar Appfuse ya que este "hijo" de Matt Raibles me ha solucionado la vida en el desarrollo de software. PD.: Odio los formularios web.
Mis tips de diseño software orientado a objetos
Publicado por Leo Barrientos C el 27 de abril de 2008, visto 1169 veces.
A continuación algunos de los tips de diseño software que me han servido para dejar mis diseños extensibles y elegantes. Utilizaré un diagrama de classes de ejemplo de un sistema de gestión de eventos para mostrar de mejor forma lo que cuento en cada punto. Programación por interfaces Si tus classes tienen dependencias con otras, es mucho mejor depender de una interface (Classe Abstract o Interface), así pues puedes extender la funcionalidad agregando classes concretas que implementen la interface y por lo tanto nuevos comportamientos sin modificar otras clases (Una forma del principio open/close) En el diagrama de classes de ejemplo se ve en Role. Objetos como parámetros No se porqué todos cuando salimos de la universidad tendemos a pensar en parámetros como variables nativas y no como objetos. La cosas es que si vas a pasar parámetros pasa objetos, por que de esa forma se...
Cómo extender una extensión de TYPO3?
Publicado por Ricardo Mieres el 25 de abril de 2008, visto 404 veces.
Una de las caracteristicas más potentes de TYPO3 es la capacidad de adaptarse a las necesidades de nuestro proyecto, generalmente la parte visual es las más facil, pero no se olviden de la capacidad de typo y las extensiones para typo de extenderse sin control... ahhhhhhh!!!.
¿qué me pregunto al diseñar un componente de software?
Publicado por Francisco Cifuentes Silva el 24 de abril de 2008, visto 196 veces.
Cada vez que diseño un componente de software hay ciertas cosas que pregunto que me hacen pensar en miles de requerimientos extra a lo primitivamente funcional. Les cuento cuáles son las principales preguntas que me hago y cosas que pienso (que recuerdo en este momento) cuando desarrollo un componente de software: - ¿rapidez de desarrollo o diseño perfeccionista? - ¿y esto cómo lo paso a UML? - ya!, este es el lenguaje indicado! - la cantidad de clases concuerda con las los tipos de comportamientos de la realidad entorno al sistema? - la cantidad de clases persistentes y o de acceso a datos es similar al nÚmero de tablas en la base de datos? - voy a utilizar XML para configuración y multiidioma y no escribiré un solo texto estático - mmm, pero y si hay un modelo mejor para la db?...no, es casi imposible! :D - utilizaré los estándares en pro de la interoperatividad (qué...
10 errores comunes de programación en Actionscript 2
Publicado por Francisco Cifuentes Silva el 23 de abril de 2008, visto 14113 veces.
A continuación enumero 10 de los errores más comunes que me ha tocado enfrentar en mi vida de programador actionscript (Últimos 6 meses): utilizar letra del mismo color que el fondo en campos dinámicos (°por qué no escribe esta porquería! :S)reemplazar clips en la biblioteca que contienen otros clip que están en usono agregar la declaración de caracteres irregulares (como la ñ o acentuadas) a las áreas dinámicas de texto ni agregar las fuentes de letrautilizar en el código una instancia que aun no aparece en la línea de tiempono usar funciones de conversión de tipos (el truncamiento no es fiable, una mal apráctica de algunos en muchos lenguajes)no incluir las bibliotecas tween a los clip animados por códigono usar nombres para los fotogramas en vez de acceder por su nÚmero (ej gotoAndStop(1) = mal; gotoAndStop("f1"), en realidad más una mala práctica que puede conllevar a un...
¿MiClase o MyClass?
Publicado por Leo Barrientos C el 19 de abril de 2008, visto 241 veces.
Ser de una lengua materna que no es la que se supone es la usada en la industria del software - de la cual obtenemos dinero - presenta el problema práctico siguiente : ¿Programo en mi lengua materna o en inglés?. Suponiendo que hablamos castellano como lengua materna y que normalmente el software se escribe en inglés ¿Qué idioma elijo para continuar la aplicación o construirla sobre un framerwork?. Hay proyectos y comunidades donde se ponen de acuerdo y problema resuelto, pero si no está definido puede ser muy confuso. Por supuesto que no tengo antipatía en contra de un idioma u otro pero creo firmemente que las cosas tienen sentido conceptual en el idioma en el cual se conciben, al menos en software, puesto que lo aprendemos así No creo que alguien entienda el concepto de bean si se lo explico como "poroto" o "judía", usemos el patrón del solitario en vez del singleton. No...
Introducción a la programación orientada a aspectos por Gregor Kiczales
Publicado por Francisco Cifuentes Silva el 15 de abril de 2008, visto 229 veces.
El presente vídeo es una reseña bastante completa acerca de qué es la programación orientada a aspectos POA (aspect oriented programming AOP) dado nada más ni nada menos que por Gregor Kiczalez, académico de la University of British Columbia y uno de los principales impulsores de este paradigma de programación que se complementa a otros como la programación orientada a objetos. Cabe señalar que la principal funcionalidad de la POA es mejorar los diseños de software permitiendo una mejor modularidad ya que logra separar requerimientos desacoplando "aspectos" normalmente transversales a la aplicación como el logging, el manejo de excepciones, sincronización entre otros. Luego en este mismo espacio haré una breve introducción traducida y posteriormente mostraré ejemplos en AspectJ, un lenguaje de aspectos complementrio a Java.



compartir
permalink

