Las Herramientas informáticas (tools, en inglés), son programas, aplicaciones o simplemente instrucciones usadas para efectuar otras tareas de modo más sencillo. En un sentido amplio del término, podemos decir que una herramienta es cualquier programa o instrucción que facilita una tarea, pero también podríamos hablar del hardware o accesorios como herramientas.
Importante: Es muy importante usar las herramientas adecuadas para cada tarea. En ese aspecto cada herramienta se crea y diseña para una o varias funciones determinadas, y por tanto podemos hablar de muy diversos tipos de herramientas informáticas según el campo al que se dediquen. Tenemos asi herramientas de sistema, de limpieza, generales, ortográficas, de gestión, de mantenimiento, herramientas web, de programación, de desarrollo, de seguridad, ofimáticas, de edición…
Algunos tipos de herramientas informáticas: Existen herramientas multifunción, también llamadas multipropósito cuando tienen muchas funcionalidades, o bien pueden ser específicas. Una suite sería un ejemplo de las primeras, pues incluye diversos programas de utilidad en un solo paquete, con muchas funciones. La mayor parte de los programas contienen varias herramientas aunque sólo tengan un objetivo, para facilitar cada uno de los procesos que se llevan a cabo. En los navegadores se suelen usar las llamadas barras de herramientas, que definen muy bien el concepto de herramientas integradas en un programa. Estas barras añaden nuevas funciones a las que ya trae consigo el navegador, ampliándolas.
Otro concepto asociado interesante es el de cadena de herramientas, que definimos como las herramientas que están relacionadas y se suelen usar en un orden determinado. Asi, por ejemplo, para hacer un programa, se suele usar un editor, luego un compilador y finalmente un programa que lo transforme en ejecutable. En este proceso podrían intervenir otras herramientas opcionales o accesorias, como por ejemplo un corrector ortográfico, la ayuda del lenguaje de programación.
Desarrollo de nuevas herramientas informáticas: El desarrollo de herramientas nuevas es y será el motor del avance de la informática. A medida que los ordenadores se han universalizado y cada vez son más rápidos y capaces, han surgido nuevas aplicaciones que permiten explotarlos al máximo. Asimismo, con cada avance tecnológico se van creando nuevas herramientas, definidas por la necesidad de los usuarios de hacer alguna tarea concreta, en una relación oferta-demanda que permite el desarrollo continuo de las aplicaciones y tecnologías.
Controla: Herramienta de apoyo al proceso de ingeniería de software en pequeñas empresas.
Facebook presentó su nueva herramienta sociabilizadota: »’Open Graph»’.
ChevronWP7, una herramienta de ‘jailbreak’ para iPhone
CCleaner, la limpieza total de la PC
Herramientas informáticas en la educación a distancia: En relación al aprendizaje y la comunicación existen por lo menos dos modelos, en el primero E-learning el aula se reproduce en la computadora y en el segundo es una herramienta de trabajo que apoya el trabajo docente, Blended learning o aprendizaje semipresencial. Blended Learning es un término que representa un gran cambio en la estrategia de enseñanza. El aprendizaje semi-presencial implica actividades presenciales y virtuales. Ni unas ni otras deberían representar menos del 25% del total de las actividades ni más del 75% de las mismas para ser considerado aprendizaje semi-presencial. Algunas de las ventajas del aprendizaje semi-presencial son: la relación costo- beneficio tanto para la institución que ofrece la formación como para el alumno, la rápida actualización de los materiales, nuevas formas de interacción entre alumno-profesor, flexibilidad en la planificación y la programación del curso.
Algunas de las desventajas son: el acceso a una computadora y a Internet, conocimientos limitados en TICs, habilidades de estudio. Problemas similares a los que pudieran tener quienes acceden a un centro de enseñanza tradicional. Este modelo sugiere un cambio en la metodología docente para lo cual es necesario reflexionar en cómo aprendemos para entonces diseñar una sesión de clase, contenidos, objetos de aprendizaje o ejercicios. Proporcionar actividades que permitan al alumno aprender haciendo, socializando su conocimiento, compartiendo y cooperando en el desarrollo del aprendizaje, asumiendo al alumno como un sujeto con capacidades e intereses, activo, partícipe y responsable directo de su aprendizaje. Por ello en la elaboración de los materiales es válido buscar y utilizar todos los recursos al alcance para estimular el aprendizaje.
Herramientas informáticas para traductores: En los últimos diez años, el número de herramientas de traducción disponibles ha crecido de forma exponencial. Algunas de ellas se han complicado tanto que es necesario asistir a cursos y pasar exámenes para obtener un certificado de aptitud. En contraste, otras herramientas de traducción son tan fáciles de usar que basta con escribir una expresión y presionar un botón para obtener el resultado. Uno de los factores que han impulsado este crecimiento ha sido la disponibilidad de acceso a Internet y la tecnología web. De hecho, son principalmente las tecnologías web y sus derivados las que han elegido mayoritariamente los fabricantes de software para desarrollar soluciones de traducción asistida.
Abundan los manuales, los sitios web y los cursos prácticos para aprender a usar las herramientas que requieren capacitación. Si bien no es desdeñable impartir ese tipo de enseñanza a nivel universitario, parece más acertado presentar un panorama de las principales tecnologías utilizadas en la traducción asistida por ordenador, así como la participación de lingüistas, traductores y terminólogos en su diseño y desarrollo, con el fin de que los alumnos no queden limitados al panorama del usuario final, sino que además tengan los conocimientos necesarios para, si lo desean, adentrarse en el apasionante mundo del procesamiento informático del lenguaje natural, el desarrollo de aplicaciones informáticas para la traducción y la investigación lingüística asistida por ordenador.
Las aplicaciones se han convertido en parte de la vida cotidiana debido a su uso en smartphones y tablets, aunque este no está restringido solo a los dispositivos móviles, sino que también hay algunas aptas para ordenadores de escritorio. Mientras que una aplicación nativa es un tipo de software que se adapta a una plataforma determinada, una web app tiene lugar en el navegador web y guarda ciertas diferencias con respecto a las denominadas aplicaciones nativas.
Definición de web app
Una web app (aplicación web en español) se basa en HTML, JavaScript o CSS. Puesto que se carga en el servidor web y se ejecuta en el navegador, no requiere ninguna instalación. Además, también se puede crear un acceso directo para ella en el escritorio del ordenador o en la pantalla de inicio de los terminales móviles mediante un marcador.
El espectro de aplicaciones web es muy amplio, yendo desde pequeñas herramientas hasta software de gráficos o juegos de navegador, pasando por las adaptaciones de conocidos programas, como servicios de mensajería instantánea o paquetes de Office. Muchos programas y servicios se presentan en dos modalidades: en forma de web app o de native app.
Web app vs. native app
Las diferencias que existen entre ambas se dan en un ámbito técnico, es decir, en el ámbito de la programación.
Native app
Las aplicaciones nativas se programan teniendo en cuenta las características y particularidades de cada plataforma para posteriormente ser instaladas en ellas. Estas plataformas pueden ser tanto un sistema operativo móvil como Android o iOS, como un sistema operativo de escritorio como Windows. Las aplicaciones para dispositivos móviles son las que predominan en el mercado de las apps y estas reciben el nombre de Native Mobile Apps (o simplemente Mobile Apps), aunque en español también son conocidas como aplicaciones móviles nativas, aplicaciones nativas o incluso apps nativas.
Todas las aplicaciones nativas tienen en común que han sido desarrolladas para ser usadas en una determinada plataforma y solo pueden funcionar en esa plataforma en concreto. Esta es la razón por la que, por ejemplo, una aplicación Android no funciona en el sistema operativo de iOS de un teléfono móvil Apple o en los iPads. Esta dependencia de las plataformas tiene sus ventajas y sus inconvenientes. Si los desarrolladores quieren manejar más de un sistema operativo, se ven obligados a programar una aplicación exclusiva para cada uno de ellos, lo que, de cara al desarrollo de una web app, supone un gasto superior. En cambio, una aplicación nativa se adapta de manera ideal a la plataforma correspondiente y puede, incluso, utilizar el espacio de almacenamiento del dispositivo en el que se instala. Al contrario de lo que ocurre con las aplicaciones web, las native apps se prestan mejor, por ello, para funciones más complejas.
Web app. Las aplicaciones web no se adaptan tan bien al hardware del dispositivo en el que se usan, pero sin embargo, funcionan en todos los sistemas operativos y terminales que cuentan con los navegadores web que las soportan (en general, todos los navegadores actuales). En el mejor de los casos, una única aplicación es suficiente para todas las plataformas, aunque no siempre es posible optimizar la aplicación para todos los navegadores.Una ventaja adicional de este tipo de aplicaciones está relacionada con los fallos de seguridad. En el caso de las apps nativas, estos solo se solucionan descargando una nueva versión o llevando a cabo una actualización. Por su parte, la actualización de seguridad de una web app se implementa directamente en el software, de modo que todos los usuarios puedan disfrutar de la versión más segura. Otro rasgo ventajoso de este tipo de aplicaciones es que suelen ser más asequibles y más rápidas.A pesar de la información anteriormente expuesta, no se puede afirmar con rotundidad cuál es el mejor tipo de aplicación, puesto que ello depende de las pretensiones y de los objetivos de los desarrolladores. La siguiente tabla muestra una comparación de las características de los dos tipos de aplicaciones que se exponen en la presente guía:
| |
App nativa |
Web app |
Plataforma
|
Dependiente de la plataforma |
Independiente de la plataforma |
Almacenamiento de datos
|
En el dispositivo del usuario
|
Normalmente en el servidor, aunque en el caso de las aplicaciones web creadas con HTML5, el código de la aplicación y los datos pueden guardarse temporalmente |
Utilización de las funciones del dispositivo
|
Es posible utilizarlas en su totalidad
|
No es posible su utilización en la mayoría de los casos, aunque algunas aplicaciones web pueden acceder de manera limitada a las funciones del dispositivo |
Fuente
|
Descarga en la App Store |
Visita a la página web |
Instalación
|
Necesaria |
No necesaria |
Actualizaciones
|
Deben instalarse (en su caso, debe descargarse la versión actual de la app) |
El proveedor será el encargado de implementarlas y están disponibles para todos los usuarios
|
Conexión a internet
|
No es necesaria en la mayoria de los casos |
Mayoritariamente necesaria, excepto cuando la app se guarde temporalmente con HMTL5
|
Diferencias entre web apps y páginas web
Las diferencias entre aplicaciones web y aplicaciones nativas están claras, pero ¿hasta qué punto se distinguen de las páginas web convencionales? En este caso, la diferenciación no es tan exacta, tal y como muestran algunas de las web apps más conocidas
Ejemplos de web apps
Algunos servicios de Google como Google Maps, Gmail o su buscador entran dentro de la categoría de aplicaciones web, así como también Amazon (no solo la tienda online, sino también servicios como Amazon Video o Amazon Music) e eBay (tanto el portal de subastas como el tablón de anuncios de segunda mano). Con tan solo estos ejemplos ya queda patente que las fronteras entre una página web convencional y una aplicación web no son tan rígidas. Las diferencias son más obvias en el ejemplo de Microsoft Office Online, antes llamado “Office Web Apps”. La aplicación web ofrece el conjunto de programas del paquete de Microsoft Office (Word, Excel, Outlook. etc.) para acceder a ellos desde el navegador y permite, entre otras funciones, crear documentos, editarlos y guardarlos, tal y como se puede hacer con la versión del paquete de Office que requiere instalación.
Una de sus peculiaridades es la conexión con Internet: si al principio era necesario tener una conexión a Internet, hoy se pueden guardar datos en el terminal temporalmente. Si se usa HTML5, las aplicaciones web también pueden ejecutarse offline. No obstante, el número de web apps con esta función es limitado.
Web apps y páginas web: rasgos característicos
Para averiguar cuáles son las diferencias concretas entre las aplicaciones web y las páginas web tradicionales, hay que echar un vistazo al funcionamiento de una página web. En general, las aplicaciones web ponen a disposición de sus usuarios determinados servicios. En el caso de Google se puede hablar, por ejemplo, del uso de un buscador, de un correo web (webmail) o del servicio de mapas. Algunas ofertas de Amazon también pueden ser identificadas como web apps debido a las funciones de la tienda online o del servicio de vídeos a la carta.
Además, mientras que las páginas web suelen tener, en general, carácter informativo y son estáticas, las aplicaciones web contienen elementos interactivos para realizar transacciones, solicitar un servicio o utilizar un software con un determinadofin(aplicación de Office, edición de imágenes, etc.).
Debido a que son fáciles de usar y a que son independientes de cualquier plataforma, además de que no requieren instalación, las web apps contribuirán a transformar el futuro de Internet de manera determinante.

|
Programa informático. Es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar. Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.
Aplicación puede referirse a: Aplicación informática. Programa informático hecho para permitir a un usuario realizar uno o varios tipos de trabajo; p. ej. Microsoft Word. Aplicación portátil, es una aplicación informática, que puede ser utilizada en cualquier computadora, que posea el sistema operativo para el que fue programada. Aplicación web, en la Ingeniería de software se denomina aplicación web a aquellas aplicaciones que los usuarios pueden utilizar accediendo a un Servidor web a través de Internet o de una intranet mediante un navegador.
Hardware: corresponde a todas las partes físicas y tangibles de una computadora, sus componentes eléctricos, electromecánicos y mecánicos; sus cables, gabinetes o cajas, periféricos de todo tipo y cualquier otro elemento físico; contrariamente al soporte lógico e intangible que es llamado software.
Compilador. Un compilador es un traductor que trasforma textos fuentes de lenguaje de alto nivel a lenguajes de bajo nivel. Un compilador típicamente opera en fases, cada una lleva a cabo una tarea sobre el programa fuente.
Ingeniería del Software es una disciplina o área de la Informática que ofrece métodos y técnicas para desarrollar y mantener software de calidad que resuelven problemas de todo tipo.
 

WEB APP


App nativa (III): diseño de aplicaciones móviles
Tras habernos ocupado de la planificación de una app y de la implementación técnica en nuestra serie dedicada a la creación de aplicaciones móviles, ahora toca profundizar en su concepción y diseño. En esta tercera parte hemos hecho una selección de recomendaciones a tener en cuenta en la representación visual del contenido de una aplicación nativa que, en principio, pueden aplicarse tanto a sistemas Android como iOS (las directrices son las mismas para uno y otro formato). En el diseño de aplicaciones no solo es importante prestar atención a la coherencia del aspecto visual, sino también a la usabilidad de la aplicación (app usability). En esto, algunas herramientas de diseño de apps, que presentamos más abajo, pueden ser de gran ayuda. Leer más
App nativa (IV): usability y app testing
Como fase final en el proceso de desarrollo de una aplicación, el app testing representa la oportunidad de evaluar su comportamiento y su madurez. En este estadio se examina la aplicación en lo referente a sus aptitudes funcionales y a su usabilidad, así como se comprueba su compatibilidad con diferentes dispositivos y sistemas operativos. Leer más
Si algo sobra actualmente, son servicios y aplicaciones a los que podemos acceder simplemente usando el navegador, y aunque siempre hay quienes prefieren la experiencia de una aplicación nativa, la realidad es que los navegadores modernos son tan poderosos que pueden incluso hasta ejecutar sistemas operativos completos de hace unos cuantos años. Leer más
|