Académique Documents
Professionnel Documents
Culture Documents
14 LENGUAJES DE PROGRAMACIÓN
Los lenguajes de programación son herramientas que nos permiten crear programas
y software. Entre ellos tenemos Visual Basic, C, Java, etc.
Una computadora funciona bajo control de un programa el cual debe estar almacenado en
la unidad de memoria; tales como el disco duro.
El lenguaje de programación de una computadora en particular se conoce como código de
máquinas o lenguaje de máquinas.
Estos lenguajes codificados en una computadora específica no podrán ser ejecutados en otra
computadora diferente.
Para que estos programas funcionen para diferentes computadoras hay que realizar una
versión para cada una de ellas, lo que implica el aumento del costo de desarrollo.
Por otra parte, los lenguajes de programación en código de máquina son verdaderamente
difíciles de entender para una persona, ya que están compuestos de códigos numéricos sin
sentido nemotécnico.
Los lenguajes de programación facilitan la tarea de programación, ya que disponen de
formas adecuadas que permiten ser leídas y escritas por personas, a su vez resultan
independientes del modelo de computador a utilizar.
Los lenguajes de programación representan en forma simbólica y en manera de un texto los
códigos que podrán ser leídos por una persona.
Los lenguajes de programación son independientes de las computadoras a utilizar.
Existen estrategias que permiten ejecutar en una computadora un programa realizado en un
lenguaje de programación simbólico. Los procesadores del lenguaje son los programas que
permiten el tratamiento de la información en forma de texto, representada en los lenguajes
de programación simbólicos.
LENGUAJE JAVA
Reconocido por su legibilidad y simplicidad, Java es uno de los lenguajes de
programación más adoptados: más 9 millones de desarrolladores lo usan y está presente en
7 mil millones de dispositivos en todo el mundo. Desde 2001 se mantiene en las primeras
posiciones, llegando al número puesto número 2 como la más baja de todas en marzo de
2015. Su enorme popularidad se debe a su poder de permanencia, cuestión que asegura el
funcionamiento a largo plazo de las aplicaciones que lo utilizan.
Asimismo, cabe destacar que el manejo de Java está incluido dentro de las 20 habilidades
más valoradas por los empleadores en 2016, según un estudio elaborado por LinkedIn.
LENGUAJE Python
Python es un lenguaje de programación poderoso y fácil de aprender. Cuenta con
estructuras de datos eficientes y de alto nivel y un enfoque simple pero efectivo a la
programación orientada a objetos. La elegante sintaxis de Python y su tipado dinámico,
junto con su naturaleza interpretada, hacen de éste un lenguaje ideal para scripting y
desarrollo rápido de aplicaciones en diversas áreas y sobre la mayoría de las plataformas.
El intérprete de Python puede extenderse fácilmente con nuevas funcionalidades y tipos de
datos implementados en C o C++ (u otros lenguajes accesibles desde C). Python también
puede usarse como un lenguaje de extensiones para aplicaciones personalizables.
Un lenguaje de programación multiplataforma y multiparadigma, que también es de
propósito general. Esto significa que soporta la orientación a objetos, la programación
imperativa y funcional. Su simpleza, legibilidad y similitud con el idioma inglés lo
convierten en un gran lenguaje ideal para principiantes.
LENGUAJE C#
También llamado “C Sharp”, este lenguaje de programación orientado a objetos fue
desarrollado en el año 2000 por Microsoft para ser empleado en una amplia gama de
aplicaciones empresariales ejecutadas en el framework .NET. C Sharp es una evolución del
C y C++ que se destaca por su sencillez y modernidad.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET el
cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes (entre
ellos Delphi).
La creación del nombre del lenguaje, C♯, proviene de dibujar dos signos positivos encima
de los dos signos positivos de "C++", queriendo dar una imagen de salto evolutivo del
mismo modo que ocurrió con el paso de C a C++
C# es un lenguaje elegante, con seguridad de tipos y orientado a objetos, que permite a los
desarrolladores crear una gran variedad de aplicaciones seguras y sólidas que se ejecutan en
.NET Framework .NET. Puede usar C# para crear aplicaciones cliente de Windows,
servicios web XML, componentes distribuidos, aplicaciones cliente-servidor, aplicaciones
de base de datos y muchas, muchas más cosas. Visual C# proporciona un editor de código
avanzado, prácticos diseñadores de interfaz de usuario, un depurador integrado y muchas
otras herramientas que facilitan el desarrollo de aplicaciones basadas en el lenguaje C# y
.NET Framework.
LENGUAJE JavaScript
Antes que nada, no confundir con Java. Son lenguajes distintos. Javascript es un
lenguaje de programación que puede ser utilizado para crear programas que luego son
acoplados a una página web o dentro de programas más grandes. Sirve para crear efectos y
realizar acciones interactivas. Podemos ver funcionando este lenguaje en servicios como el
chat, calculadoras, buscadores de información y un sin fin de utilidades más.
JavaScript es un lenguaje de programación que surgió por la necesidad de ampliar las
posibilidades del HTML. En efecto, al poco tiempo de que las páginas web apareciesen, se
hizo patente que se necesitaba algo más que las limitadas prestaciones del lenguaje básico,
ya que el HTML solamente provee de elementos que actúan exclusivamente sobre el texto
y su estilo, pero no permite, como ejemplo sencillo, ni siquiera abrir una nueva ventana o
emitir un mensaje de aviso. La temprana aparición de este lenguaje es posiblemente la
causa de que se haya convertido en un estándar soportado por todos los navegadores
actuales, a diferencia de otros, que solo funcionan en los navegadores de sus firmas
creadoras.
Como tantas otras aportaciones al mundo www, fue Netscape quien inició la
implementación de JavaScript (aunque al principio no se llamaba así), y posteriormente,
una alianza entre Netscape y Sun, creadora del lenguaje Java, permitió que JavaScript
tomase la debida consistencia, definiéndose como una variante de Java, pero mucho más
simple de usar. Esto no significa que JavaScript sea Java simplificado o reducido. Salvo el
nombre y la sintaxis, JavaScript no tiene mucho en común con Java, pero cumple su
propósito de lenguaje auxiliar del HTML en los navegadores, y sólo en ellos ya que no es
posible utilizarlo fuera del entorno de las páginas.
Se utiliza principalmente en su forma del lado del cliente (client-side), implementado como
parte de un navegador web permitiendo mejoras en la interfaz de usuario y páginas
web dinámicas4 aunque existe una forma de JavaScript del lado del servidor(Server-side
JavaScript o SSJS). Su uso en aplicaciones externas a la web, por ejemplo en
documentos PDF, aplicaciones de escritorio (mayoritariamente widgets) es también
significativo.
LENGUAJE PHP
Creado en 1994 por el programador canadiende Rasmus Lerdorf, nunca pretendió
ser un lenguaje de programación, sino que fue creado con la intención de contar con un
conjunto de herramientas para el mantenimiento de las páginas web . Es de fácil acceso
para nuevos programadores y a su vez ofrece a los más experientes muchas posibilidades.
El lenguaje de programación PHP Hypertext Pre-processor , fue desarrollado puntualmente
para diseñar páginas web dinámicas programando scripts del lado del servidor. El lenguaje
PHP siempre va incrustado dentro del HTML y generalmente se le relaciona con el uso de
servidores linux.
Originalmente diseñado por el programador danés-canadiense Rasmus Lerdorf, en el año
1994 en base a la escritura de un grupo de CGI binarios escritos en el lenguaje C. En un
comienzo, PHP sólo estaba compuesto por algunas macros que permitían trabajar más
fácilmente en la creación de páginas web.
En el año de 1995 Rasmus Lerdorf le añadió el analizador sintáctico y se llamó PHP/F1
Versión 2, sólo reconocía texto HTML y algunas directivas de mSQL. Después de esta
fecha la contribución al código fue pública.
LENGUAJE Perl
Creado Larry Wall, Pearl es una sigla que significa Practical Extraction and Report
Language. Es un lenguaje de propósito general que sirve practicamente para todo, como
puede ser la generación y tratamiento de ficheros, para analizar datos y textos, y muchas
otras cosas más. Si bien hay proyectos complejos y completos escritos en Pearl, son los
menos.
Perl es un lenguaje de programación diseñado por Larry Wall en 1987. Perl toma
características del lenguaje C, del lenguaje interpretado bourne shell (sh), AWK, sed, Lisp y,
en un grado inferior, de muchos otros lenguajes de programación.
Estructuralmente, Perl está basado en un estilo de bloques como los del C o AWK, y fue
ampliamente adoptado por su destreza en el procesado de texto y no tener ninguna de las
limitaciones de los otros lenguajes de script.
Perl es un lenguaje que hereda ciertas estructuras de los intérpretes de comandos de UNIX,
especialmente el csh, y de otras utilidades estándar, como awk y sed. Aparte de esto, está
diseñado para hacer todo lo que hacen cualquiera de ellos y todos ellos juntos, y la mayoría
de las veces de forma más simple, comprensible y fácil de depurar (aunque algunas veces
no muy fácil de entender).
LENGUAJE Assembly language (ASL)
Assembly language (lenguaje ensamblador) saltó de la posición número 12 en 2016
al número 10 en 2017. Se trata de un lenguaje de programación de bajo nivel utilizado para
interactuar con hardware informático. Utiliza comandos estructurados, en sustitución de los
números, permitiendo a las personas tener una mayor legibilidad de los códigos. Si bien es
más sencillo de leer que el código binario se trata de un lenguaje difícil que muchas veces
es sustituido por uno superior, como por ejemplo C.
El lenguaje ensamblador, o assembler (en inglés assembly language y la abreviación asm),
es un lenguaje de programación de bajo nivel. Consiste en un conjunto de nemónicos que
representan instrucciones básicas para
los computadores, microprocesadores, microcontroladores y otros circuitos
integrados programables. Implementa una representación simbólica de los códigos de
máquina binarios y otras constantes necesarias para programar una arquitectura de
procesador y constituye la representación más directa del código máquina específico para
cada arquitectura legible por un programador. Cada arquitectura de procesador tiene su
propio lenguaje ensamblador que usualmente es definida por el fabricante de hardware, y
está basada en los mnemónicos que simbolizan los pasos de procesamiento
(las instrucciones), los registros del procesador, las posiciones de memoria y otras
características del lenguaje. Un lenguaje ensamblador es por lo tanto específico de
cierta arquitectura de computadorfísica (o virtual). Esto está en contraste con la mayoría
de los lenguajes de programación de alto nivel, que idealmente son portátiles.
Introducción
Un lenguaje de programación es un lenguaje formal diseñado para realizar procesos que pueden ser
llevados a cabo por máquinas como las computadoras. Pueden usarse para crear programas que
controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con
precisión, o como modo de comunicación humana.1 Está formado por un conjunto de símbolos y
reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y
expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila (de ser necesario) y
se mantiene el código fuente de un programa informático se le llama programación.
Según la definición teórica, como lenguaje se entiende a un sistema de comunicación que posee una
determinada estructura, contenido y uso. La programación es, en el vocabulario propio de la
informática, el procedimiento de escritura del código fuente de un software. De esta manera, puede
decirse que la programación le indica al programa informático qué acción tiene que llevar a cabo y
cuál es el modo de concretarla.
Objetivos
General: Conocer lo que es un lenguaje de programación, así como sus utilidades y su función a
lo largo de las historia y como estos han ido evolucionando
Específicos:
1. Descubrir los distintos tipos de lenguajes de programación que se han desarrollado a lo
largo de los años y como estos han mejorado según salieran nuevas versiones
2. Saber cuales son los lenguajes de programación más utilizados en la actualidad
Historia
Los primeros lenguajes de programación surgieron de la idea de Charles Babagge, la cual se le
ocurrió a este hombre a mediados del siglo XIX. Era un profesor matemático de la universidad de
Cambridge e inventor inglés, que al principio del siglo XIX predijo muchas de las teorías en que se
basan los actuales ordenadores. Consistía en lo que él denominaba la maquina analítica, pero que
por motivos técnicos no pudo construirse hasta mediados del siglo XX. Con él colaboro Ada
Lovedby, la cual es considerada como la primera programadora de la historia, pues realizo
programas para aquélla supuesta máquina de Babagge, en tarjetas perforadas. Como la maquina no
llego nunca a construirse, los programas de Ada, lógicamente, tampoco llegaron a ejecutarse, pero
si suponen un punto de partida de la programación, sobre todo si observamos que en cuanto se
empezó a programar, los programadores utilizaron las técnicas diseñadas por Charles Babagge, y
Ada, que consistían entre otras, en la programación mediante tarjetas perforadas. A pesar de ello,
Ada ha permanecido como la primera programadora de la historia. Se dice por tanto que estos dos
genios de antaño se adelantaron un siglo a su época, lo cual describe la inteligencia de la que se
hallaban dotados.
En 1823 el gobierno británico lo apoyo para crear el proyecto de una máquina de diferencias, un
dispositivo mecánico para efectuar sumas repetidas. Pero Babagge se dedicó al proyecto de la
máquina analítica, abandonando la máquina de diferencias, que se pudiera programar con tarjetas
perforadas, gracias a la creación de Charles Jacquard (francés). Este hombre era un fabricante de
tejidos y había creado un telar que podía reproducir automáticamente patrones de tejidos, leyendo la
información codificada en patrones de agujeros perforados en tarjetas de papel rígido. Entonces
Babagge intento crear la máquina que se pudiera programar con tarjetas perforadas para efectuar
cualquier cálculo con una precisión de 20 dígitos. Pero la tecnología de la época no bastaba para
hacer realidad sus ideas. Si bien las ideas de Babagge no llegaron a materializarse de forma
definitiva, su contribución es decisiva, ya que los ordenadores actuales responden a un esquema
análogo al de la máquina analítica. En su diseño, la máquina constaba de cinco unidades básicas: 1)
Unidad de entrada, para introducir datos e instrucciones; 2) Memoria, donde se almacenaban datos
y resultados intermedios; 3) Unidad de control, para regular la secuencia de ejecución de las
operaciones; 4) Unidad Aritmético-Lógica, que efectúa las operaciones; 5) Unidad de salida,
encargada de comunicar al exterior los resultados. Charles Babbage, conocido como el "padre de la
informática" no pudo completar en aquella época la construcción del computador que había soñado,
dado que faltaba algo fundamental: la electrónica. El camino señalado de Babbage, no fue nunca
abandonado y siguiéndolo, se construyeron los primeros computadores.
Entre algunos de los lenguajes creados a lo largo de la historia podemos encontrar los
siguientes:
1943 - Plankalkül (konrad zuse), diseñado, pero sin implementar durante medio siglo
1943 - se crea el sistema de codificación ENIAC.
1949 - 1954 -- una serie de conjuntos de instrucciones nemotécnicas, como la de ENIAC,
comenzando en 1949 con C-10 para BINAC (que luego evolucionaría en UNIVAC). Cada
conjunto de instrucciones estaba destinado a un fabricante específico.
1959 - COBOL
1959 - RPG
1962 - APL
1962 - Simula
1962 - SNOBOL
1963 - CPL (precursor de C)
1964 - BASIC
1964 - PL/I
1967 - BCPL (precursor de C)
1968 - ALGOL 68
1980 - C++ (C con clases, el nombre cambió en julio de 1983)
1983 - Ada
1984 - Common Lisp
1984 – MATLAB
1991 - HTML (lenguaje de marcado de hipertexto)
1993 - Ruby
1993 - Lua
1994 - CLOS (parte del ANSI Common Lisp)
1995 - Java
1995 - Delphi (Object Pascal)
1995 - JavaScript
Con la entrada al nuevo mileno, los lenguajes de programación sufrieron cambios totales. Se
crearon lenguajes interpretados mediante «frameworks», no había límite para el desarrollo,
existiendo un amplio abanico de nuevos lenguajes de programación, las comunicaciones formaron
una parte importante del desarrollo, y el desarrollo web se convirtió en pieza fundamental.
Programar en lenguajes de bajo nivel perdió sentido, ya nadie programaba en ellos. Los nuevos
dispositivos portables que se estandarizaron para el consumo popular, como la telefonía móvil o las
tabletas digitales, generaron nuevos lenguajes con nuevas filosofías de desarrollo de aplicaciones.
El abanico de lenguajes de programación —y de entornos sobre los que desarrollar— se multiplicó
rápidamente. Y en este nuevo milenio, el software libre adquirió mucha fuerza
Actualmente, existe una gran cantidad de lenguajes de programación que pueden ser destino de
nuestros de desarrollos, prácticamente todos de alto nivel. Y por ello la demanda profesional se ha
diversificado, antes se demandaba simplemente un programador, sin más; ahora se demandan
desarrolladores concretos según la plataforma deseada. Con respecto a la estructura de la
programación, los lenguajes modernos disponen de una estructura mucho más rica en conceptos y
disfrutan de una mayor organización y sentido que la existente en los antiguos lenguajes de
programación, aportando mayor claridad y, sobre todo, aportando humanidad a los desarrollos.
1. Java
Reconocido por su legibilidad y simplicidad, Java es uno de los lenguajes de programación
más adoptados: más 9 millones de desarrolladores lo usan y está presente en 7 mil millones
de dispositivos en todo el mundo.
2. C
Creado entre 1969 y 1972 en los Laboratorios Bell, es uno de los más utilizados en el
mundo. Si bien es ejecutado en la mayoría de los sistemas operativos, es de propósito
general, con lo cual es muy flexible.
3. C++
Conocido por el nombre “C Plus Plus”, este lenguaje de programación orientado a objetos
surge como una continuación y ampliación del C.
4. Python
Un lenguaje de programación multiplataforma y multiparadigma, que también es de
propósito general. Esto significa que soporta la orientación a objetos, la programación
imperativa y funcional.
5. C#
También llamado “C Sharp”, este lenguaje de programación orientado a objetos fue
desarrollado en el año 2000 por Microsoft para ser empleado en una amplia gama de
aplicaciones empresariales ejecutadas en el framework .NET. C Sharp es una evolución del
C y C++ que se destaca por su sencillez y modernidad.
6. Visual Basic. NET
Pasó del número 9 en junio de 2016 al sexto lugar en 2017. Es utilizado por una gran
cantidad de personas a lo largo del mundo que no cuentan con conocimientos profundos
como desarrolladores, quienes encuentran en visual basic, además de una sintaxis sencilla,
la posibilidad de automatizar sus propios procesos y crear sus propias aplicaciones web.
7. JavaScript
Antes que nada, no confundir con Java. Son lenguajes distintos. Javascript es un lenguaje
de programación que puede ser utilizado para crear programas que luego son acoplados a
una página web o dentro de programas más grandes. Sirve para crear efectos y realizar
acciones interactivas.
8. PHP
Creado en 1994 por el programador canadiende Rasmus Lerdorf, nunca pretendió ser un
lenguaje de programación, sino que fue creado con la intención de contar con un conjunto
de herramientas para el mantenimiento de las páginas web .
9. Perl
Creado Larry Wall, Pearl es una sigla que significa Practical Extraction and Report
Language. Es un lenguaje de propósito general que sirve practicamente para todo, como
puede ser la generación y tratamiento de ficheros, para analizar datos y textos, y muchas
otras cosas más.
10. Assembly language (ASL)
Assembly language (lenguaje ensamblador) saltó de la posición número 12 en 2016 al
número 10 en 2017. Se trata de un lenguaje de programación de bajo nivel utilizado para
interactuar con hardware informático.
Conclusiones
Los lenguajes de programación han evolucionado mucho de forma que estos tienen
más utilidades y de alguna forma tienen más facilidades al momento de manejarlos.
Los lenguajes de programación son desarrollados por muchas empresas alrededor
del mundo, debido a la gran demanda que hay de las personas especializadas en el
área de la programación.
Bibliografía
https://definicion.de/lenguaje-de-programacion/
http://es.ccm.net/contents/304-lenguajes-de-programacion
https://colombiadigital.net/actualidad/articulos-informativos/item/7669-lenguajes-
de-programacion-que-son-y-para-que-sirven.html
https://www.ecured.cu/Lenguaje_de_Programaci%C3%B3n
http://www.monografias.com/trabajos99/historia-y-definicion-lenguajes-
programacion/historia-y-definicion-lenguajes-programacion.shtml
https://hipertextual.com/archivo/2014/10/historia-lenguajes-programacion/
PARADIGMAS DE PROGRAMACIÓN
El paradigma debe ser concebido como una forma aceptada de resolver un
problema en la ciencia, que más tarde es utilizada como modelo para la
investigación y la formación de una teoría. También, el paradigma debe ser
concebido como un conjunto de métodos, reglas y generalizaciones utilizadas
conjuntamente por aquellos entrenados para realizar el trabajo científico de
investigación.
Edward Sapir, antropólogo y lingüista americano define al lenguaje como
“un método exclusivamente humano, y no instintivo, de comunicar ideas,
emociones y deseos por medio de un sistema de símbolos producidos de manera
deliberada”. Un lenguaje formal no sólo consta de “palabras”, sino también de su
pronunciación y los métodos para combinar las palabras en frases y oraciones.
Las combinaciones posibles deben respetar un conjunto de reglas sintácticas
establecidas, a lo que se le denomina Sintaxis y además deben tener determinado
sentido para poder ser comprendidas por un grupo humano en un contexto dado,
es decir, deben tener Semántica.
Los lenguajes de programación son lenguajes formales porque poseen un
conjunto de reglas (sintácticas y semánticas), notaciones, símbolos y/o caracteres
que permiten a un programador poder expresar el procesamiento de datos y sus
estructuras en una computadora. Mediante los lenguajes de programación, el ser
humano puede comunicarse con una computadora y decirle qué es lo que tiene
que hacer y, al mismo tiempo, sirven para comunicarse con otros seres humanos y
expresarles qué es lo que se quiere que haga una computadora.
En el contexto de las ciencias de la computación, los paradigmas de
programación fue aplicado por primera vez por Robert Floyd (eminente científico
de las Ciencias de la Computación, reconocido por haber desarrollado el algoritmo
gráfico que lleva su nombre) en coautoría con Richard Beigel en donde se definió
el concepto de Paradigma de Programación como un proceso de diseño que va
más allá de una gramática, semántica y algoritmos, sino que es un conjunto de
métodos sistemáticos aplicables en todos los niveles de diseño de
programas.
Los paradigmas de programación nos indican las diversas formas que, a lo
largo de la evolución de los lenguajes, han sido aceptadas como estilos para
programar y para resolver los problemas por medio de una computadora.
Un modelo de programación muestra un método de realizar cómputos y la
manera en que se deben estructurar y organizar las tareas que debe llevar a cabo
un programa
Paradigmas
de
Programación
Programación Programación
Declarativa Imperativa
Orientada a
Funcional Lógica Estructurada
Objetos
TIPOS DE PARADIGMAS
Paradigma Declarativo: Se enfoca en describir las propiedades de la
solución buscada, dejando indeterminado el algoritmo (conjunto de instrucciones)
usado para encontrar esa solución. Es más complicado de implementar que el
paradigma imperativo, tiene desventajas en la eficiencia, pero ventajas en la
solución de determinados problemas. Describe que se debe calcular, sin explicitar
el cómo
Opera de manera puramente lógica para resolver un problema sin
especificar flujo de control alguno, por lo que se prescinde de definir algoritmos
para la solución del problema, sustituyéndolos por una declaración directa de la
solución en lugar de datar el proceso para llegar hasta ella.
Funcional: Es la que emplea un lenguaje matemáticamente elegante,
empleando principalmente funciones aritméticas; algunos ejemplos son
Haskell, Miranda y Scheme.
Lógico: Permite formalizar hechos del mundo real y forma parte de los
programas declarativos. El lenguaje lógico por excelencia es Prolog, que a
la vez es declarativo.
Paradigma Imperativo: Es el más común y más conocido. Los programas
imperativos son un conjunto de instrucciones que le indican a la computadora
cómo realizar una tarea. Describe la programación como una secuencia
instrucciones o comandos que cambian el estado de un programa. En este
paradigma se incluye el paradigma procedimental (procedural) entre otros. Está
representada por C, Basic, Fortran, etc. Describe cómo debe realizarse el cálculo,
no el porqué.
Orientada a objetos: Intenta simular el mundo real a través del
significado de objetos que contiene características y funciones. Los
lenguajes orientados a objetos se clasifican como lenguajes de
quinta generación. Se basa en la idea de un objeto, que es una
combinación de variables locales y procedimientos llamados
métodos que juntos conforman una entidad de programación. En la
actualidad, existe una gran variedad de lenguajes de programación
que soportan la orientación a objetos. Ejemplos de estos lenguajes
son C++, Java, Smalltalk, Ruby on Rails, Python y JavaScript, entre
muchos otros.
Definición de computador: máquina capaz de realizar de forma automática y en una
secuencia programada ciertos números de operaciones numéricas sobre unos datos
suministrados por un operador. Las computadoras procesan datos bajo el control de un
conjunto de instrucciones denominadas programa de computadoras.
Entrada
Proceso (procedimiento)
Salida
Almacenamiento
Entrada. El usuario introduce los datos e informa a la computadora de las instrucciones a
realizar mediante un programa.
Salida: se extrae la información de salida de modo que el usuario pueda ver los resultados.
Monitor
Teclado
Mouse
Disco duro
Memoria
Discos (CD DVD)
Memoria externa
Cámara de video etc.
Procesamiento de datos
Almacenamiento de datos
Almacenamiento temporal a corto y largo plazo
Transferencia de datos
Control
Hardware
Hardware es una palabra de origen inglés con la que se hace referencia a toda la parte
“dura” de la informática, es decir a la maquinaria real utilizada para el procesamiento
electrónica de datos.
Una computadora, una Tablet o un teléfono inteligente contiene una solo CPU o procesador
sin embargo cada día comienzan a ser más frecuente que incluyan numerosos procesadores
lo que permite la realización de muchas operaciones simultáneas.
Memoria de la computadora.
La memoria ROM.
Normalmente las computadoras contienen mucha más memoria RAM que memoria
ROM interna también la cantidad de memoria se puede aumentar hasta un máximo
especificado, mientras que la memoria ROM normalmente es fija. La memoria RAM es
muy rápida y limitada en tamaño, sin embargo, las computadoras tienen otro tipo de
memoria denominada memoria secundaria o almacenamiento secundario que puede
crecer comparativamente en términos mucho mayor. La memoria secundaria es
realmente un dispositivo de almacenamiento masivo de información y por ello, a veces
se le conoce memoria auxiliar.
El teclado
Mouse
Dispositivos de comunicación.
Modem y
Tarjeta de interfaz de red
Como también las redes inalámbricas se requiere un router inalámbrico que permite
configurar las redes como si fuese cableada. La conexión a internet del PC requiere de la
contratación de un proveedor de servicio de internet. Que es instalado a través de
tecnología ADSL (cables de fibra óptica) por satélite o por mediante tecnología inalámbrica
Wifi o Wimax. El otro modelo de conexión a internet se realiza mediante las redes móviles
(celulares) y los dispositivos móviles (teléfonos inteligentes y tabletas) las redes móviles
actuales vienen soportadas por redes 3G y 4G que alcanzan velocidades de conexión
superiores.
una plataforma altamente escalable que promete un acceso rápido al recurso hardware o
software y donde el usuario no necesita ser experto para su manejo y acceso. Una nube
puede ser privada, pública o híbrida
Es el uso de una serie de recursos informáticos o servicios (infraestructura, plataforma y
software) que están disponibles en todo momento y a los que se puede acceder desde
cualquier lugar con un dispositivo conectado a internet.
Una nube puede ser privad, pública o hibrida. Una nube pública vende servicios a
cualquier usuario de internet. Una nube privada es una red de propiedad o un centro de
datos que proporciona servicios de hospedaje a un número limitado de personas. Cuando
un proveedor de servicio utiliza los recurso públicos nube de crear su nube privada, el
resultado se llama una nube privada virtual una nube hibrida es el resultado de la
combinación de ambos servicios.
Las nubes suelen apoyarse en tecnologías como la multitenancy y/o habilidades para
conseguir ofrecer el recurso de una manera rápida y sencilla.
Características
La computación en nube presenta las siguientes características clave:
- Agilidad: Capacidad de mejora para ofrecer recursos tecnológicos al usuario por
parte del proveedor.
- Costo: los proveedores de computación en la nube afirman que los costos se
reducen. Un modelo de prestación pública en la nube convierte los gastos de
capital en gastos de funcionamiento. Ello reduce barreras de entrada, ya que la
infraestructura se proporciona típicamente por una tercera parte y no tiene que ser
adquirida por una sola vez o tareas informáticas intensivas infrecuentes.
- Escalabilidad y elasticidad: aprovisionamiento de recursos sobre una base de
autoservicio casi en tiempo real, sin que los usuarios necesiten cargas de alta
duración.
- Independencia entre el dispositivo y la ubicación: permite a los usuarios acceder a
los sistemas utilizando un navegador web, independientemente de su ubicación o
del dispositivo que utilice (por ejemplo, PC, teléfono móvil).
- La tecnología de virtualización permite compartir servidores y dispositivos de
almacenamiento y una mayor utilización. Las aplicaciones pueden ser fácilmente
migradas de un servidor físico a otro.
- Rendimiento: Los sistemas en la nube controlan y optimizan el uso de los recursos
de manera automática, dicha característica permite un seguimiento, control y
notificación del mismo. Esta capacidad aporta transparencia tanto para el
consumidor o el proveedor de servicio.
- Seguridad: puede mejorar debido a la centralización de los datos. La seguridad es
a menudo tan buena o mejor que otros sistemas tradicionales, en parte porque los
proveedores son capaces de dedicar recursos a la solución de los problemas de
seguridad que muchos clientes no pueden permitirse el lujo de abordar. El usuario
de la nube es responsable de la seguridad a nivel de aplicación. El proveedor de la
nube es responsable de la seguridad física.
- Mantenimiento: en el caso de las aplicaciones de computación en la nube, es más
sencillo, ya que no necesitan ser instalados en el ordenador de cada usuario y se
puede acceder desde diferentes lugares.
Desventajas
- La centralización de las aplicaciones y el almacenamiento de los datos origina una
interdependencia de los proveedores de servicios.
- La disponibilidad de las aplicaciones está sujeta a la disponibilidad de acceso a
Internet.
- La confiabilidad de los servicios depende de la "salud" tecnológica y financiera de
los proveedores de servicios en nube. Empresas emergentes o alianzas entre
empresas podrían crear un ambiente propicio para el monopolio y el crecimiento
exagerado en los servicios.
- La disponibilidad de servicios altamente especializados podría tardar meses o
incluso años para que sean factibles de ser desplegados en la red.
- La madurez funcional de las aplicaciones hace que continuamente estén
modificando sus interfaces, por lo cual la curva de aprendizaje en empresas de
orientación no tecnológica tenga unas pendientes significativas, así como su
consumo automático por aplicaciones.
- Seguridad. La información de la empresa debe recorrer diferentes nodos para
llegar a su destino, cada uno de ellos (y sus canales) son un foco de inseguridad.
Si se utilizan protocolos seguros, HTTPS por ejemplo, la velocidad total disminuye
debido a la sobrecarga que estos requieren.
- Escalabilidad a largo plazo. A medida que más usuarios empiecen a compartir la
infraestructura de la nube, la sobrecarga en los servidores de los proveedores
aumentará, si la empresa no posee un esquema de crecimiento óptimo puede
llevar a degradaciones en el servicio o altos niveles de jitter.
Seguridad
La seguridad en la computación en la nube puede ser tan buena o mejor que la que
existía en los sistemas tradicionales, porque los proveedores son capaces de
proporcionar recursos que resuelvan problemas de seguridad que muchos clientes no
pueden afrontar. Sin embargo, la seguridad todavía sigue siendo un asunto importante,
cuando los datos tienen un matiz confidencial. Esto atrasa la adopción de la computación
en la nube hasta cierto punto.
Seguridad como servicio: En el entorno de la nube, la seguridad es provista por los
proveedores. Se pueden distinguir dos métodos: El primer método, es que cualquiera
puede cambiar sus métodos de entrega incluidos en los servicios de la nube. El segundo
método es que los proveedores de servicio de la nube proveen seguridad solo como
servicio en la nube, con información de seguridad de las compañías.
Protección de los datos: La computación en la nube pone en riesgo la protección de datos
para los usuarios de la nube y sus proveedores. En muchos casos, ocasiona dificultades
para el proveedor (en el rol del controlador de la información) para asegurar la efectividad
práctica del manejo de los datos del proveedor de la nube y para cerciorar que los datos
van por el camino correcto. Este problema se suele agravar en casos de múltiples
transferencias de datos, por ejemplo entre sistemas federados. Por otra parte, algunos
proveedores de la nube, proporcionan información de sus prácticas de cercenamiento de
datos. También hay algunas ofertas de certificaciones en el procesamiento de datos, las
actividades de seguridad, y los controles de datos que tienen lugar; ejemplo, la
certificación SAS70. Las corrientes de datos de Internet están unidas al malware y de
paquetes señuelo para meter al usuario en una desconocida participación en actividades
delictivas.
Ejemplos
- Box - desarrollado por Box Inc.
- Campaign Cloud - desarrollado por ElectionMall Technologies (Cerrado)
- Doitle ajaxplorer - desarrollado por Doitle
- Dropbox - desarrollado por Dropbox
- Google Drive - desarrollado por Google
- iCloud - desarrollado por Apple
- OneDrive - desarrollado por Microsoft (antes SkyDrive)
- OwnCloud - desarrollado por OwnCloud Inc.
- Salesforce.com - desarrollado por Salesforce.com Inc.
- SugarSync - desarrollado por SugarSync
- Ubuntu One - desarrollado por Canonical (cerrado)
- Wuala - desarrollado por LaCie
- Dataprius - desarrollado por Dataprius
- NetQuatro Cloud - desarrollado por NetQuatro
MOVILIDAD
Cuando se habla de Movilidad en el campo de la informática hay dos puntos de vista,
desde el punto de vista de aplicaciones y de dispositivos.
¿Qué es una aplicación informática móvil?
En un primer momento, las aplicaciones clásicas tenían una función puramente recreativa:
un juego, quizás, o algo que convertía la pantalla del teléfono en (por ejemplo) el teclado
activo de un piano. Recientemente, sin embargo, una serie de aplicaciones útiles ha
despertado gran interés en los usuarios. Entre ellas figuran programas para el registro de
gastos, manuales de modismos en idiomas extranjeros y convertidores de moneda.
Las aplicaciones móviles son extensiones informáticas para dispositivos portátiles, como
los teléfonos inteligentes smartphones y los asistentes digitales personales (PDA). Un
estudio antiguo elaborad por la empresa de investigación Ovum declaró que para el
periodo 2008-2009, prevé un crecimiento del 23 por ciento en el mercado de teléfonos
inteligentes, en comparación con una disminución global en el mercado total de teléfonos
móviles debido a la crisis económica. Está previsto que antes de 2014 se habrán enviado
más de 400 millones de teléfonos inteligentes, casi todos ellos en condiciones de utilizar
aplicaciones de por lo menos una marca, cosa que se ha cumplido con creces.
Dispositivos Móviles
Hay mucho tipo de dispositivo portátil que le puede dar acceso a internet cuando esté
fuera de la casa o en viaje, o sea lejos de su computadora de escritorio. Las
computadoras portátiles tal como los Netbooks, los personal digital assistants (PDA),o sea
el Asistente Personal Digital, los smartphones, los tablets y e-readers (lectores
electrónicos), son algunos de los dispositivos utilizados actualmente para lograr conexión
a internet y realizar comunicación con otros. Los dispositivos de tamaño más pequeño se
conocen como dispositivos handheld (de mano) o simplemente "handhelds".
Aunque hay algunos dispositivos portátiles que tienen tecleados físicos integrados en su
construcción, la mayoridad de los dispositivos de computación móvil tienen pantallas de
tacto, o sea un touch screen. El touch screen es una pantalla sensible al tacto de la mano
humana que le permite al usuario interactuar con la computadora, o sea ejectuar
comandos con la computadora, por medio de la pantalla en vez de un ratón o touchpad. El
touch screen se encuentra integrado comúnmente en los tablets, PDAs y smartphones.
NETBOOK
Netbooks son un tipo de pequeña y liviana computadora portátil de bajo costo. Se portan
con gran facilidad de un lugar al otro. Se suelen utilizar tanto en las escuelas y sitios de
trabajo como en viajes y para entretenamiento por su conexión inalámbrica. En contraste
a las computadoras portátiles, tienen procesadores de bajo consumo y con funciones de
cómputo básicas. Tienen un teclado físico integrado al dispositivo y también los últimos
tienen integrados un webcam y micrófono para realizar conferencias por web. Los
netbooks programados con Windows sólo son una versión pequeña.
ASISTENTE PERSONAL DIGITAL (PDA)
Un dispositivo portátil cuyo programación es de Asistente Personal Digital sirve al usuario
como un administrador, o sea mánager electrónico, de su información personal. Los
últimos PDA tienen una conexión a internet inalámbrica y aplicaciones para organizar la
vida. Las aplicaciones incluyen la agenda, la lista de contactos, el cuaderno para apuntes,
la calculadora y la lista de tareas. También proveen acceso al correo electrónico y a veces
funcionan como celular. Todos tienen touch screen que se emplean con el dedo o con
algún dispositivo señalador que se parece a un bolígrafo. Muchos también tienen
integrados en la pantalla el teclado. El PDA funciona por medio de un sistema operativo
único.
SMARTPHONE
El smartphone es un celular con funciones de computación y conectividad a internet más
avanzadas que un teléfono celular típico. El smartphone tiene todas las características de
un PDA con teléfono además de otras como una cámara de fotos y video, tocador de
música, y navegación por GPS. Muchas veces incluyen un navegador Web y servicio de
correo electrónico. Se suelen utilizar con el touch screen y operar por medio de un
sistema operativa único.
TABLET
Un tablet es otro dispositivo portátil de la computación móvil de un tamaño más grande
que un smartphone o PDA. Tiene muchas de las mismas características de aquellos
dispositivos pero por tener una pantalla más grande son mucho más fáciles de utilizar
para leer una cantidad de texto o visualizar imágenes con mucho detalle. Muchos
prefieren utilizar los tablets en vez de la portátil porque tienen la misma funcionalidad pero
son más pequeñas y livianas y sus funcionalidades son más rápidas. Aunque no so tan
pequeñas que se pueden portar a mano, suelen ocupar poco espacio en la bolsa, mochila
o maletín. Se usan frecuentemente como lectores electrónicos también. Funcionan a
través del touch screen con un teclado integrado dentro de la pantalla pero también se
pueden comprar teclados físicos pequeños que se conectan al dispositivo. También
operan por un sistema único.
E-READER
El e-reader, también se le llama el lector de libro electrónico, funciona específicamente
para leer libros, revistas y periódicos de texto digital. Los libros se pueden descargar al e-
reader desde una variedad de vendedores tal como la Amazon. Suelen tener pantallas
pequeñas, de las 7 pulgadas, baterías de vida larga, y pantallas para leer en condiciones
de alta luz. Los últimos también pueden tener acceso a internet y el correo electrónico y
casi todos ahora tienen touch screens. También operan por un sistema único.
Etimología.
El software es una palabra que proviene del idioma inglés, pero que gracias a la
masificación de uso, ha sido aceptada por la Real Academia Española. Según
la RAE, el software es un conjunto de programas, instrucciones y reglas
informáticas que permiten ejecutar distintas tareas en una computadora.
¿Qué es Software? :
Software es un término informático que hace referencia a un programa o conjunto
de programas de cómputo que incluye datos, procedimientos y pautas que
permiten realizar distintas tareas en un sistema informático.
Clasificación de software:
Software de aplicación
Un software de aplicación son los programas diseñados para facilitar algunas
tareas específicas como procesadores de texto, de imagen, navegadores de
Internet, etc., para cualquier medio informático ya sea en computadores, tabletas o
celulares.
Software educativo
Son los programas informáticos de naturaleza pedagógica creados
para diseñar, facilitar, complementar y/o evaluar un proceso de enseñanza y
aprendizaje. Existen además herramientas genéricas que pueden tener una
utilidad educativa como los programas de presentación de diapositivas o
reproductores de vídeo, aunque no se suelen consideran específicamente como
'software educativo', sino simplemente como 'recurso educativo’.
El software educativo se puede aplicar a distintos tipos de educación y en distintos
niveles. Del mismo modo, el formato, las características y funciones que pueden
presentar son variados. Igualmente, el soporte en que se utilizan es amplio, como
computadoras, tabletas o celulares.
Tipos de software
De forma genérica se pueden distinguir varios tipos de software en función del uso
o utilidad: software de sistema, software de programación y software de aplicación.
El software malicioso o malintencionado (utilizado también en su forma original en
inglés malicious software o simplemente malware) es el que se crea con fines
ilícitos como obtener información privada del usuario o dañar el sistema.
Software de programación.
Una herramienta de programación o herramienta de desarrollo de software es un
programa o aplicación que los desarrolladores de software utilizan para crear,
depurar, mantener, otros programas y aplicaciones. El término usualmente se
refiere a programas relativamente simples que pueden ser combinados para
realizar una tarea.
Categorías del software de programación.
El software de Aplicación
Es aquel que hace que el computador coopere con el usuarioen la realización de
tareas típicamente humanas, tales como gestionar una contabilidad o escribir un
texto.
La diferencia entre los programas de aplicación y los de sistema estriba en que los
de sistema suponen ayuda al usuario para relacionarse con el computador y hacer
un uso más cómo del mismo, mientras los de aplicación son programas que
cooperan con el usuario para la realización de las actividades mencionadas.
Es en este software de Aplicación donde se aprecia en forma más clara la ayuda
que puede suponer un computador en las actividades humanas, ya que la
máquina se convierte en un auxiliar del hombre, liberándole de las tareas
repetitivas.
Los programadores de aplicaciones, a diferencia de los programadores de
sistemas, no necesitan conocer a fondo el modo de funcionamiento interno del
hardware.
Basta con que conozcan las necesidades de información de sus aplicaciones y
cómo usar el sistema operativo, para conseguir satisfacer estas necesidades.
Sus programas deben ser independientes del hardware específico que se utilice y
deben ser transportados sin grandes problemas de adaptación a otras
computadoras y otros entornos operativos.
Algunos ejemplos de software aplicaciones son:
> Procesadores de texto. (Bloc de Notas)
> Editores. (PhotoShop para el Diseño Gráfico)
> Hojas de Cálculo. (MS Excel)
> Sistemas gestores de bases de datos. (MySQL)
> Programas de comunicaciones. (MSN Messenger)
> Paquetes integrados. (Ofimática: Word, Excel, PowerPoint…)
> Programas de diseño asistido por computador. (AutoCAD)
Malware:
Son programas diseñados para infiltrarse en un sistema con el fin de dañar o
robar datos e información.
Se llama malware a todos los programas que ejecutan acciones no deseadas en
un sistema informático y es una de las principales preocupaciones del campo de la
seguridad informática.
Tipos de malware
Dentro de los malware, podemos encontrar, por ejemplo:
Virus: pueden eliminar ficheros, directorios y datos sin autorización.
Spyware: colecta datos del usuario sin su permiso, desde mensajes de correos
electrónicos hasta números de tarjetas de crédito.
Gusanos: se alojan en un sistema creando copias infinitas de sí mismos, con la
finalidad de colapsar la red o el dispositivo bloqueando cualquier trabajo adicional.
Caballos de Troya o troyanos: al ser activados o abiertos, permite el acceso no
autorizado a datos en el computador o sistema informático infectado.
Bots maliciosos: diseñados para ejecutar acciones no deseadas por el usuario.
Adware: programas diseñados para invadir sistemas con publicidad no deseada.
Proceso de creación del software
Se define como proceso, al conjunto ordenado de pasos a seguir para llegar a la
solución de un problema u obtención de un producto, en este caso particular, para
lograr un producto software que resuelva un problema específico. El proceso de
creación de software o también llamado ciclo de vida del desarrollo de software.,
Puede llegar a ser muy complejo, dependiendo de su porte, características y
criticidad del mismo. Hay varios modelos para perfilar el proceso de desarrollo, El
proyecto debería escoger el más apropiado para sus necesidades. En ocasiones
puede que una combinación de varios modelos sea apropiado.
Modelo cascada. El modelo en cascada es un proceso de desarrollo secuencial,
en el que el desarrollo de software se concibe como un conjunto de etapas
que se ejecutan una tras otra. Se le denomina así por las posiciones que ocupan
las diferentes fases que componen el proyecto, colocadas una encima de otra, y
siguiendo un flujo de ejecución de arriba hacia abajo, como una cascada. El
modelo de cascada es el modelo más antiguo y más ampliamente utilizado en el
campo de desarrollo de software. Hay ciertas ventajas del modelo de cascada, No
hace falta mencionar, es un modelo lineal y, por supuesto, los modelos lineales
son las más simples a ser implementadas. La cantidad de recursos necesarios
para implementar este modelo es mínima.
SCO: es el proveedor mundial líder en sistemas operativos para servidores Unix, y uno
de los principales proveedores de software de integración de clientes que integra PCs
Windows y otros clientes con servidores UNIX de los principales fabricantes.
Microsoft Windows 98: Este Windows soporta todos los tipos de Hardware,
incluyendo a los estándares más recientes como el DVD-ROM y la capacidad para ver
televisión en la PC.
Windows 2000: Windows 2000 Professional es rápido. Más rápido que Windows 98.
Con 64 MB de memoria, Windows 2000 se ejecuta un promedio de un 25% más rápido
que Windows 98. Y no se ralentiza con cargas pesadas. Soporta hasta 4 GB de RAM y
hasta dos procesadores simétricos.
Windows XP: Este ofrece un reforzó Menú de salida. El menú de salida ahora puede
agrupar sus más frecuentes arribos y aplicaciones, Enfoco de tarea este plan permite
que vea sus opciones del Windows como asociado con su tarea presente.
Ahora se puede:
Impresiones del orden directamente del Internet.
Eslabón directamente a cámaras mago del explorador.
Imágenes de la vista en Slideshow.
Publique cuadros al Internet.
Cuadros de empresas por distribución del e-mail más fácil.
Perfecciona la impresión, pinta y hacer el mejor trabajo de fotografías.
Medios
Los medios utilizan el Internet de las cosas principalmente para mercadeo y estudiar los hábitos
de los consumidores. Mediante segmentación por comportamiento estos dispositivos recolectan
información útil sobre millones de individuos. Utilizando los perfiles construidos durante el
proceso de segmentación, los productores de medios presentan al consumidor publicidad en
pantalla alineada con sus hábitos conocidos en el lugar y momento adecuados para maximizar
su efecto. Se recolecta más información haciendo un seguimiento de cómo los consumidores
interactúan con el contenido. Esto se hace midiendo indicadores de desempeño como la tasa
de abandono, proporción de clics, tasa de registro y tasa de interacción. La cantidad de
información que se maneja representa un reto, ya que empieza a adentrarse dentro de los
dominios del big data. Sin embargo los beneficios obtenidos de la información superan
ampliamente a las complicaciones de manejarla.
Administración de infraestructura
El monitoreo y control de operaciones de infraestructura urbana y rural como puentes, vías
férreas y parques eólicos es una aplicación clave de IoT. La infraestructura de IoT puede
utilizarse para monitorear cualquier evento o cambio en las condiciones estructurales que
puedan comprometer la seguridad e incrementar el riesgo. También puede utilizarse para
planificar actividades de reparación y mantenimiento de manera eficiente, coordinando tareas
entre diferentes proveedores de servicios y los usuarios de las instalaciones. Otra aplicación de
los dispositivos de IoT es el control de infraestructura crítica, como puentes para permitir el
pasaje de embarcaciones. El uso de dispositivos de IoT para el monitoreo y operación de
infraestructura puede mejorar el manejo de incidentes, la coordinación de la respuesta en
situaciones de emergencia, la calidad y disponibilidad de los servicios, además de reducir los
costos de operación en todas las áreas relacionadas a la infraestructura. Incluso áreas como el
manejo de desperdicios puede beneficiarse de la automatización y optimización que traería la
aplicación de IoT
Medicina y salud
Los dispositivos de IoT pueden utilizarse para el monitoreo remoto de pacientes y sistemas de
notificación de emergencias.
Estos dispositivos pueden variar desde monitores de presión sanguínea y control de
pulsaciones hasta dispositivos capaces de monitorear implantes especializados, como
marcapasos, pulseras electrónicas o audífonos sofisticados. Algunos hospitales comenzaron a
utilizar camas "inteligentes" que detectan cuándo están ocupadas y cuándo un paciente intenta
levantarse. También puede ajustarse automáticamente para asegurar que el paciente tenga un
soporte adecuado sin interacción del personal de enfermería.
Pueden instalarse sensores especializados en espacios habitacionales para monitorear la salud
y el estado de bienestar general de las personas mayores, mientras además aseguran que se
administre un tratamiento adecuado y se las asista a recuperar movilidad mediante terapia.
Otros dispositivos de consumo IoT alientan la vida sana, por ejemplo, balanzas conectadas o
monitores cardíacos portátiles. Más y más plataformas IoT de monitoreo integrales están
apareciendo para pacientes prenatales y crónicos, ayudando a hacer un seguimiento de los
signos vitales y de la administración de medicación necesaria.[cita requerida]Según las últimas
investigaciones, el Departamento de Salud de EE. UU. Planea ahorrar hasta USD 300 mil
millones del presupuesto nacional debido a innovaciones médicas.
La Corporación de Investigación y Desarrollo (DEKA), una compañía que crea extremidades
protésicas, ha creado un brazo alimentado por baterías que transforma la actividad eléctrica de
los músculos esqueléticos para controlarlo. El brazo fue bautizado Luke Arm (el brazo de Luke,
en inglés) en honor a Luke Skywalker (Star Wars).
Transporte
IoT puede asistir a la integración de comunicaciones, control
y procesamiento de información a través de varios
sistemas de transporte.
La aplicación de IoT se extiende a todos los aspectos de los
sistemas de transporte (vehículos, infraestructura,
conductores o usuarios). La interacción dinámica entre estos
componentes de un sistema de transporte permite la
comunicación inter e intra vehicular, el control
inteligente del tránsito, estacionamiento inteligente, cobro
electrónico de peajes, logística y manejo de flota, control
vehicular, seguridad y asistencia en rutas. En logística y manejo
de flota, por ejemplo, la plataforma de IoT puede monitorear continuamente la ubicación y las
condiciones de la carga y los activos mediante sensores inalámbricos que envían alertas en
caso de eventualidades (demoras, daños, robos, etc.)
Control de objetos
Se estima que el proyecto cuesta 19 mil millones de dólares estadounidenses, según el director
ejecutivo de Cisco y, como eso, muchos dispositivos del Internet de las cosas formarán parte
del mercado internacional. Jean-Louis Gassée (miembro inicial en el grupo de alumnos de
Apple y cofundador de BeOS) ha escrito un artículo interesante en el Monday Note, hablando
del problema que surgirá con mayor probabilidad: hacer frente a los cientos de aplicaciones
que habrá para controlar esos dispositivos personales.
Existen múltiples enfoques para resolver este problema, uno de ellos es la llamada “Interacción
predecible”, donde las decisiones se tomarán en la nube independientemente y se predecirá la
siguiente acción del usuario para provocar alguna reacción. A pesar de que esto es interesante,
siempre se necesitará ayuda manual.
Algunas empresas ya han visto el vacío existente en este mercado y están trabajando en la
creación de protocolos de comunicación entre dispositivos. Algunos ejemplos son la alianza
AllJoyn que está compuesta por 20 líderes en tecnología a nivel mundial y otras compañías
como Intel que está elaborando el CCF (siglas en inglés: Common Connectivity Framework,
significa Marco de Conectividad Común).
Consideraciones temporales
En este Internet de los objetos, hecha de miles de millones de eventos paralelos y simultáneos,
el tiempo ya no será utilizado como una dimensión común y lineal, sino que dependerá de la
entidad de los objetos, procesos, sistema de información, etc. Este Internet de las cosas tendrá
que basarse en los sistemas de TI en paralelo masivo (computación paralela).
Seguridad
La empresa Hewlett Packard realizó un estudio en 2015, reportando que entre otros hallazgos
respecto a los dispositivos IoT, el 70% de ellos tiene vulnerabilidades de seguridad en sus
contraseñas, hay problema con el cifrado de los datos o los permisos de acceso, y el 50% de
las aplicaciones de dispositivos móviles no encriptan las comunicaciones. La firma de
seguridad Kaspersky Lab realizó pruebas en objetos conectados al IoT y encontró que una
cámara monitor para bebé podía hackearse para interceptar el vídeo y en una cafetera que
transmitía información sin encriptar, se podía conocer la contraseña de la red WiFi en donde
estuviera conectada.
Dado esto, la seguridad se ha convertido en una situación de mucha importancia, porque
pareciera que estos dispositivos no tienen riesgo para los datos que transmiten y almacenan,
pareciera que no son vulnerables, pero la realidad es que estos dispositivos junto con otros que
no tienen una debida protección, hicieron posible los ataques del 21 de octubre de 2016, donde
los atacantes usaron miles de estos dispositivos, los cuales habían sido previamente infectados
con código malicioso para formar una botnet.
La proyección de crecimiento de dispositivos IoT ha sido exponencial, y se estima que para el
año 2020 habrá 50 000 millones de dispositivos conectados en todo el mundo. Este crecimiento
puede hacer que el tema de seguridad de los datos desemboque en una situación más crítica
ante la falta de procesos que aseguren la integridad y encriptación de los datos.
Los datos que guardan los dispositivos IoT son altamente codiciados debido a que son de uso
cotidiano y almacenan información acerca de los hábitos de los usuarios, por lo que contar con
esas bases de datos es valiosa para varias empresas, que pueden dirigir sus esfuerzos en
productos y servicios enfocados en los hábitos y preferencias de las masas. Lo que podrá
ayudar a aminorar el problema, será el cifrado y la encriptación de datos, para poder subir los
datos a la nube.
QUÉ ES EL BIG DATA
Desde la presentación del término por el MGI (McKinsey Global Insitute) en
Junio de 2011 han existido diversos intentos de acotación del concepto.
(Manyika, J y otros, 2011) definen Big Data como el conjunto de datos cuyo
tamaño va más allá de la capacidad de captura, almacenado, gestión y análisis de las
herramientas de base de datos.
Una de las aproximaciones más completas de Big Data es la facilitada por
Gartner (2012): “Son activos de información caracterizados por su alto volumen,
velocidad y variedad, que demandan soluciones innovadoras y eficientes de procesado
para la mejora del conocimiento y toma de decisiones en las organizaciones.”
Según Wikipedia Big Data es término aplicado a: “Un conjuntos de datos que
superan la capacidad del software habitual para ser capturados, gestionados y
procesados en un tiempo razonable”.
Según el artículo “In Perspective” de Fidelity Worldwide Investment2 (2012) Big
Data es: “el término inglés que designa los conjuntos de datos de gran tamaño y
generalmente desestructurados que resultan difíciles de manejar usando las
aplicaciones de bases de datos convencionales”.
El informe de TicBeat (2012) define Big Data como: “la enorme cantidad de
datos que desde hace unos años se genera constantemente a partir de cualquier
actividad.”; más adelante dicho informe recalca que: “el Big Data bien entendido en la
búsqueda del mejor camino para aprovechar dicha avalancha de datos”.
Sin embargo un estudio realizado por IBM Institute for Business Value junto con
la colaboración de Saïd Business School (2012) el cual consistió en dar a los
encuestados (más de 1144 negocios y profesionales de TI de 95 países y docenas de
expertos en la materia) una serie de características sobre Big Data para que
escogieran las dos que mejor describiera el concepto.
Como se puede observar existe gran variedad de definiciones de Big Data todas
con cierto parecido, pero que en conjunto puede producir cierta confusión sobre el
término. Desde mi punto de vista la definición más clara no tiene que hacer ni
referencias a nuevas tecnologías como dicen algunos autores, ni a cambios de
software. La definición de Big Data es: la que se centra en el tratamiento y análisis de
grandes volúmenes de datos.
IMPORTANCIA DEL BIG DATA
Con el término Big Data se hace referencia a la tendencia del avance de las
tecnologías que han abierto las puertas hacia un nuevo enfoque de entendimiento y
toma de decisiones, la cual es utilizada para describir enormes cantidades de datos
que llevaría demasiado tiempo cargarlos en una base de datos relacional para su
posterior análisis. Por lo tanto, el Big Data se aplicará para toda aquella información
que no pueda ser procesada por los métodos tradicionales.
Una base de datos es un conjunto de datos interrelacionados. Cuando se habla de
base de datos relacional se hace referencia a la teoría del modelo de datos relacional
obra del investigador de IBM Edgar Codd en 1970 y que goza de una fuerte base
matemática. El modelo relacional se caracteriza a muy grandes rasgos por disponer
que toda la información que debe de estar contenida en tablas, y las relaciones entre
datos deben ser representadas explícitamente de ese mismo modo. Lo que se
consigue con este modelo es trabajar siempre sobre tablas relacionadas entre sí.
Evitando duplicidad de registros y garantizando la integridad referencial, es decir que si
se elimina un registro, se eliminan todos los relacionados. El gran inconveniente que
presenta es el tiempo necesario para manejar grandes cantidades de datos, pero esto
se logra gracias al Big Data. Por otro lado lo que se consigue al trabajar con bases de
datos es combinar diferentes tipos de datos y de una manera formalizada.
Por lo tanto las ventajas de una base de datos relacional se podrían definir en:
Integridad referencial (sin duplicidad…).
Normalización (surgen estándar SQL...).
Permite establecer roles (permisos de entradas a tablas).
No obstante también surgen desventajas de la utilización de bases de datos
relacionales, aunque en este trabajo solo se va a nombrar tres:
Cantidad de manejo de datos limitada.
Lectura exclusiva de lenguajes estructurados.
Orientadas a satisfacer objetivos de aplicaciones anteriores.
Estas tres desventajas nombradas anteriormente las resuelve Big Data, gracias a
que su estructura es capaz de almacenar y procesar grandes cantidades de datos y de
los tres tipos de datos posibles (estructurados, semi-estructurados y sin estructurar)
además es una arquitectura orientada a los programas actuales.
BENEFICIOS DEL BIG DATA
Una vez que se sabe la importancia de Big Data sobre todo gracias a la mejora
que supuso respecto a los modelos relaciónales se citaran los beneficios más
habituales del Big Data, no obstante estos benéficos no se tienen porque aplicar a
todas las organizaciones, ya que cada organización tiene y actúa en diferentes
condiciones.
A continuación se citan los beneficios e inconvenientes más relevantes que han
sido extraídos de un artículo publicado en Eureka-startups (2013) por Vauzza:
Gestión del cambio:
Las denominas 3 V del Big Data: Volumen: Suele utilizarse como sinónimo de Big
Data. A pesar de ser uno de los aspectos más llamativos, no es el único. El reto
relacionado con el volumen de datos se ha puesto de manifiesto recientemente, debido
a la proliferación de los sistemas de información e inteligencia, el incremento del
intercambio de datos entre sistemas y dispositivos nuevos, nuevas fuentes de datos, y
el nivel creciente de digitalización de los medios de comunicación que antes sólo
estaban disponibles en otros formatos, tales como texto, imágenes, videos y audio. La
cantidad de datos día a día será muy superior a las que actualmente existen con lo cual
se obtiene un valor añadido d. Las empresas están cubiertas de una cantidad cada vez
mayor de datos de todo tipo, acumulando fácilmente terabytes, incluso peta bytes, de
información.
¿Qué es la geolocalización?
Es la capacidad para obtener la ubicación geográfica real de un objeto, como un radar,
un teléfono móvil o un ordenador conectado a Internet. La geolocalización puede
referirse a la consulta de la ubicación, o bien para la consulta real de la ubicación en
términos simples es la práctica de asociar un recurso digital con una locación física.
Los recursos digitales pueden ser fotografías, vídeo, textos y/o metadatos. La
información del lugar se calcula con base a coordenadas de altitud y longitud para
marcar un lugar específico en cualquier parte del mundo. El término geolocalización
está estrechamente relacionado con el uso de sistemas de posicionamiento, pero
puede distinguirse de estos por un mayor énfasis en la determinación de una posición
significativa (por ejemplo, una dirección de una calle) y no sólo por un conjunto de
coordenadas geográficas. Este proceso es generalmente empleado por los sistemas de
información geográfica, un conjunto organizado de hardware y software, más datos
geográficos, que se encuentra diseñado especialmente para capturar, almacenar,
manipular y analizar en todas sus posibles formas la información geográfica
referenciada.
La identificación de la posición geográfica real de un objeto o persona, ya sea un
dispositivo conectado a Internet, un teléfono móvil o cualquier otro aparato que sea
posible rastrear. Dicha localización puede ser en un plano de dos dimensiones, como
en un plano de tres dimensiones (GPS).
APLICACIONES QUE PERMITEN LA GEOLOCALIZACION
Es una nueva tecnología que aumenta o mejora la visión que el usuario tiene del
mundo real con información adicional sintetizada mediante un modelo computarizado.
(RA) es el término que se usa para definir una visión directa o indirecta del mundo real,
cuyos elementos se combinan con elementos virtuales para la creación de una realidad
mixta en tiempo real.
CARACTERISTICAS DE REALIDAD ACUMULADA (RA)
• Combina lo real y lo virtual.
• Funciona en tiempo real.
• Se registra en tres dimensiones
Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y
'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y a
otros más, como por ejemplo HTML (lenguaje para el marcado de páginas web que no es
propiamente un lenguaje de programación, sino un conjunto de instrucciones que permiten
estructurar el contenido de los documentos).
Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómo
deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de
circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al
lenguaje humano o natural. Una característica relevante de los lenguajes de programación es
precisamente que más de un programador pueda usar un conjunto común de instrucciones que
sean comprendidas entre ellos para realizar la construcción de un programa de forma
colaborativa.
Para que la computadora entienda nuestras instrucciones debe usarse un lenguaje específico
conocido como código máquina, el cual la máquina comprende fácilmente, pero que lo hace
excesivamente complicado para las personas. De hecho sólo consiste en cadenas extensas
de números 0 y 1.
Para facilitar el trabajo, los primeros operadores de computadoras decidieron hacer un traductor
para reemplazar los 0 y 1 por palabras o abstracción de palabras y letras provenientes del inglés;
éste se conoce como lenguaje ensamblador.
A medida que la complejidad de las tareas que realizaban las computadoras aumentaba, se hizo
necesario disponer de un método más eficiente para programarlas.
Entonces, se crearon los lenguajes de alto nivel, como lo fue BASIC en las versiones
introducidas en los microordenadores de la década de 1980. Mientras que una tarea tan sencilla
como sumar dos números puede necesitar varias instrucciones en lenguaje ensamblador, en un
lenguaje de alto nivel bastará una sola sentencia.
Variables y vectores
Las variables son títulos asignados a espacios en memoria para almacenar datos específicos. Son
contenedores de datos y por ello se diferencian según el tipo de dato que es capaces de
almacenar. En la mayoría de lenguajes de programación se requiere especificar un tipo de
variable concreto para guardar un dato específico. Por ejemplo, en Java, si deseamos guardar una
cadena de texto debemos especificar que la variable es del tipo String. Por otra parte, en
lenguajes como PHP este tipo de especificación de variables no es necesario. Además, existen
variables compuestas llamadas vectores. Un vector no es más que un conjunto de bytes
consecutivas en memoria y del mismo tipo, guardadas dentro de una variable contenedor.
En el caso de variables booleanas, el cero es considerado para muchos lenguajes como el literal falso
("False"), mientras que el uno se considera verdadero ("True").
Condicionales.
Las sentencias condicionales son estructuras de código que indican que, para que cierta parte del
programa se ejecute, deben cumplirse ciertas premisas; por ejemplo: que dos valores sean
iguales, que un valor exista, que un valor sea mayor que otro... Estos condicionantes por lo
general solo se ejecutan una vez a lo largo del programa. Los condicionantes más conocidos y
empleados en programación son:
1. If: Indica una condición para que se ejecute una parte del programa.
2. Else if: Siempre va precedido de un "If" e indica una condición para que se ejecute una parte del
programa siempre que no cumpla la condición del if previo y si se cumpla con la que el "else if"
especifique.
3. Else: Siempre precedido de "If" y en ocasiones de "Else If". Indica que debe ejecutarse cuando
no se cumplan las condiciones previas.
4. Bucles.
Los bucles son parientes cercanos de los condicionantes, pero ejecutan constantemente un código
mientras se cumpla una determinada condición. Los más frecuentes son:
For: Ejecuta un código mientras una variable se encuentre entre 2 determinados parámetros.
While: Ejecuta un código mientras que se cumpla la condición que solicita.
Hay que decir que a pesar de que existan distintos tipos de bucles, todos son capaces de realizar
exactamente las mismas funciones. El empleo de uno u otro depende, por lo general, del gusto
del programador.
Funciones.
Las funciones se crearon para evitar tener que repetir constantemente fragmentos de
código. Una función podría considerarse como una variable que encierra código dentro de
sí. Por lo tanto cuando accedemos a dicha variable (la función) en realidad lo que estamos
haciendo es ordenar al programa que ejecute un determinado código predefinido
anteriormente. Todos los lenguajes de programación tienen algunos elementos de
formación primitivos para la descripción de los datos y de los procesos o transformaciones
aplicadas a estos datos (tal como la suma de dos números o la selección de un elemento que
forma parte de una colección). Estos elementos primitivos son definidos por reglas
sintácticas y semánticas que describen su estructura y significado respectivamente.
Sintaxis.
A la forma visible de un lenguaje de programación se le conoce como sintaxis. La mayoría de los
lenguajes de programación son puramente textuales, es decir, utilizan secuencias de texto que
incluyen palabras, números y puntuación, de manera similar a los lenguajes naturales escritos.
Por otra parte, hay algunos lenguajes de programación que son más gráficos en su naturaleza,
utilizando relaciones visuales entre símbolos para especificar un programa.
Sistema de “Tipos”.
Un sistema de tipos define la manera en la cual un lenguaje de programación clasifica los valores
y expresiones en tipos, cómo pueden ser manipulados dichos tipos y cómo interactúan. El
objetivo de un sistema de tipos es verificar y normalmente poner en vigor un cierto nivel de
exactitud en programas escritos en el lenguaje en cuestión, detectando ciertas operaciones
inválidas. Cualquier sistema de tipos decidirle tiene sus ventajas y desventajas: mientras por un
lado rechaza muchos programas incorrectos, también prohíbe algunos programas correctos
aunque poco comunes. Para poder minimizar esta desventaja, algunos lenguajes incluyen,
conversiones explícitas no verificadas que pueden ser usadas por el programador para permitir
explícitamente una operación normalmente no permitida entre diferentes tipos. En la mayoría de
los lenguajes con tipos, el sistema de tipos es usado solamente para verificar los tipos de los
programas.
Los lenguajes débilmente tipados permiten que un valor de un tipo pueda ser tratado
como de otro tipo, por ejemplo una cadena puede ser operada como un número.
Esto puede ser útil a veces, pero también puede permitir ciertos tipos de fallas que no
pueden ser detectadas durante la compilación o a veces ni siquiera durante la ejecución.
Los lenguajes fuertemente tapados evitan que pase lo anterior. Cualquier intento de llevar
a cabo una operación sobre el tipo equivocado dispara un error. A los lenguajes con tipos
fuertes se les suele llamar de tipos seguros.
Lenguajes con tipos débiles como Perl y JavaScript permiten un gran número de
conversiones de tipo implícitas.
Se puede también utilizar una alternativa para traducir lenguajes de alto nivel. En lugar de
traducir el programa fuente y grabar en forma permanente el código objeto que se produce
durante la compilación para utilizarlo en una ejecución futura, el programador sólo carga el
programa fuente en la computadora junto con los datos que se van a procesar. A continuación, un
programa intérprete, almacenado en el sistema operativo del disco, o incluido de manera
permanente dentro de la máquina, convierte cada proposición del programa fuente en lenguaje de
máquina conforme vaya siendo necesario durante el procesamiento de los datos. El código
objeto no se graba para utilizarlo posteriormente. La siguiente vez que se utilice una instrucción,
se la deberá interpretar otra vez y traducir a lenguaje máquina.
La mayoría de lenguajes de alto nivel permiten la programación multipropósito, aunque muchos
de ellos fueron diseñados para permitir programación dedicada, como lo fue el Pascal con las
matemáticas en su comienzo. También se han implementado lenguajes educativos infantiles
como
Corrección. Un programa es correcto si hace lo que debe hacer tal y como se estableció en las
fases previas a su desarrollo. Para determinar si un programa hace lo que debe, es muy
importante especificar claramente qué debe hacer el programa antes de desarrollarlo y, una vez
acabado, compararlo con lo que realmente hace.
Claridad. Es muy importante que el programa sea lo más claro y legible posible, para facilitar
así su desarrollo y posterior mantenimiento. Al elaborar un programa se debe intentar que su
estructura sea sencilla y coherente, así como cuidar el estilo en la edición; de esta forma se ve
facilitado el trabajo del programador, tanto en la fase de creación como en las fases posteriores
de corrección de errores, ampliaciones, modificaciones.
Eficiencia. Se trata de que el programa, además de realizar aquello para lo que fue creado (es
decir, que sea correcto), lo haga gestionando de la mejor forma posible los recursos que utiliza.
Normalmente, al hablar de eficiencia de un programa, se suele hacer referencia al tiempo que
tarda en realizar la tarea para la que ha sido creado y a la cantidad de memoria que necesita, pero
hay otros recursos que también pueden ser de consideración al obtener la eficiencia de un
programa, dependiendo de su naturaleza.
Portabilidad. Un programa es portable cuando tiene la capacidad de poder ejecutarse en una
plataforma, ya sea hardware o software, diferente a aquella en la que se elaboró. La portabilidad
es una característica muy deseable para un programa, ya que permite, por ejemplo, a un
programa que se ha desarrollado para sistemas GNU/Linux ejecutarse también en la familia
de sistemas operativos Windows. Esto permite que el programa pueda llegar a más usuarios más
fácilmente.
Paradigmas.
Los programas se pueden clasificar por el paradigma del lenguaje que se use para producirlos.
Los principales paradigmas son: imperativos, declarativos y orientación a objetos.
Los programas que usan un lenguaje imperativo especifican un algoritmo, usan declaraciones,
expresiones y sentencias
Los programas que usan un lenguaje declarativo especifican las propiedades que la salida debe
conocer y no especifican cualquier detalle de implementación. Dos amplias categorías de
lenguajes declarativos son los funcionales los lenguajes lógicos. Los lenguajes funcionales no
permiten asignaciones de variables no locales, así, se hacen más fácil.
El principio detrás de los lenguajes lógicos es definir el problema que se quiere resolver (el
objetivo) y dejar los detalles de la solución al sistema El objetivo es definido dando una lista de
sub-objetivos. Cada sub-objetivo también se define dando una lista de sus sub-objetivos, etc. Si
al tratar de buscar una solución, una ruta de sub-objetivos falla, entonces tal sub-objetivo se
descarta y sistemáticamente se prueba otra ruta.
La forma en la cual se programa puede ser por medio de texto o de forma visual. En la visualizar
elementos son manipulados gráficamente en vez de especificarse por medio de texto.
1.7 Internet y la Web.
La World Wide Web por sus siglas en ingles WEB o www es solo una manera de acceder a la
información a través de Internet, y aunque representa una gran porción de esta, no deben tratarse
como sinónimos, porque no son lo mismo.
Las tres W que van en las direcciones de los sitios web a los que accedemos. La World Wide
Web o simplemente “web” es una manera de acceder a la información a través de Internet. La
web es un modelo para compartir información que está construido sobre Internet. El protocolo
que usa la web es HTTP, este es solo una de las muchas maneras en las que se puede transmitir
información a través de Internet.
Si un servicio usa HTTP para permitir que aplicaciones se comuniquen, este es un servicio web.
Los navegadores web, como Chrome o Firefox, nos permiten acceder a documentos web que
conocemos principalmente como páginas o sitios web. Estos sitios están conectados unos a otros
a través de hiperenlaces como si se tratara de una telaraña (de ahí el nombre de web -telaraña en
inglés-), y todo esto gracias al protocolo de transferencia HTTP. Entonces, la Web es sólo una
de las maneras en las que la información puede fluir a través de Internet, es sólo una
porción, y aunque es muy grande y la parte más popular, no incluye la totalidad de Internet.
La potencia del World Wide Web reside en que nos permite acceder a la información más
variada a golpe de ratón. Información de la que podemos obtener más información usando los
enlaces que tienen incorporados los documentos, esto es, nos permite navegar por el espacio
virtual de documentos llamado WWW. Si no sabemos por dónde empezar, podemos recurrir a un
catálogo o a un buscador.
El buscador a una petición nuestra de información, nos construirá una página Web a medida, con
la información solicitada. El buscador no sólo es un servidor Web, sino que además es,
normalmente, una poderosa base de datos, con una cantidad ingente de información, que se
moviliza a nuestra voluntad.
Otra gran revolución de la Web es que gracias a la facilidad de acceso a Internet, y a la facilidad
del formato HTML, el contenido de la WWW es muy plural y variado. Cualquiera de nosotros
puede ser un editor y ofrecer información a otros colegas o amigos sobre nuestro trabajo o sobre
nuestras aficiones. Y cada vez es más fácil con la proliferación de nuevas herramientas para
publicar en Internet y cada vez más proveedores de Internet ofrecen espacio gratuito a sus
suscriptores para la realización de páginas Web.
Internet.
Internet es una red masiva, es la red de redes. Internet conecta millones de ordenadores en
todo el mundo a través de una red que permite que cualquier computador pueda comunicarse con
otro sin importar en qué lugar del planeta se encuentren, siempre y cuando los dos estén
conectados a Internet. Una red es cualquier conexión entre dos o más clientes. Por ejemplo,
puedes tener acceso a una red local en tu hogar a la que sólo pueden acceder los ordenadores de
los miembros de tu familia y que están conectados a través de un switcher o router; o a una red
de trabajo a la que sólo tienen acceso las personas que trabajan en una misma empresa. Internet
es una red global a gran escala que permite la conexión de millones y millones de
dispositivos al mismo tiempo, y que es completamente libre y abierta.
Toda la información que viaja a través de Internet lo hace a través de un protocolo, y existen
varios de estos. Como ya explicamos el protocolo HTTP es el que usa la web para compartir
información. Entonces, las páginas web como Twitter, Google, Facebook, o un blog, forman
parte de la web, esta información viaja a todos nosotros a través de Internet.
El futuro de la Web y de Internet ha de pasar por la mejora de los accesos desde los hogares. La
velocidad de los módems es insuficiente para disponer de páginas multimedia de calidad. La
confidencialidad y seguridad de la información que circula por la red es también un punto de
importancia que es necesario mejorar para que aumente nuestra confianza a la hora de comprar
por Internet, o de acceder a servicios en los que revelamos nuestra identidad u otro tipo de
información privada.
Internet y la WWW, junto con las tecnologías de la información, ya han introducido muchos
cambios en nuestra vida y lo harán todavía más en el futuro. Si ya eres usuario de Internet,
habrás reconocido alguno de estos cambios. Si no lo eres, tal vez no seas consciente de cómo te
están afectando, pero es seguro que lo hacen.
Internet ha evolucionado de tal forma, que en los albores del siglo XXI, cien millones de
ordenadores están conectados y el ritmo de crecimiento es asombroso.
Navegar por Internet no era entonces muy atractivo, ya que los primeros navegadores sólo
mostraban texto. Pero esta situación cambiaría rápidamente. En 1993 nace Mosaic, el primer
navegador que mostraba en pantalla las imágenes que contenían los documentos WWW. Mosaic
tenía una interface gráfico agradable y funcionaba en ordenadores UNIX, Macintosh y PC. En
1993 ya era utilizado por más de un millón de personas alrededor de todo el mundo. Tal fue su
éxito, que no tardó en rebasar la barrera universitaria para convertirse en un producto comercial.
Mosaic fue reescrito en la empresa privada para convertirse en Netscape.
Al año y medio tenía 65 millones de usuarios. En 1995 Microsoft entró en el mercado de los
navegadores ofreciendo gratis su navegador “Internet Explorer”. A la par que se desarrollaba la
oferta de navegadores, crecía el número de servidores Web. En 1995 ya había 10.000 servidores
y en este año, por primera vez, el tráfico generado por la Web supera al resto del producido por
otras aplicaciones en Internet.
2. Minicomputadora.
Las minicomputadoras son computadoras de tamaño pequeño o mediano. Estas se encuentran
en un punto medio entre las computadoras centrales y las microcomputadoras. Al igual que las
computadoras centrales, las minicomputadoras pueden realizar varios trabajos al mismo tiempo.
Estas pueden dar servicios a un número limitado de usuarios mediante el uso de periferales. Pero
su capacidad de almacenamiento y rapidez no es tan amplia como la de una computadora central
y su costo no es tan elevado. Son utilizadas en los diferentes departamentos de grandes
compañías, universidades, trabajos de investigación o empresas medianas.
Generación de computadoras.
Primera Generación (1951-1958)
En esta generación había un gran desconocimiento de las capacidades de las computadoras,
puesto que se realizó un estudio en esta época que determinó que con veinte computadoras se
saturaría el mercado de los Estados Unidos en el campo de procesamiento de datos. Esta
generación abarco la década de los cincuenta. Y se conoce como la primera generación.
FABRICANTES Algunos de los mejores fabricantes de computadoras modernas son: Apple, dell
Alienware Corporation es una compañía de hardware estadounidense; tiene la reputación de
ofrecer lo último en tecnología para Ordenadores personales y portátiles que se especializan
en Edición de vídeo, edición digital de audio, y particularmente en juegos de ordenador.
Ejemplo: Laptops: Escritorio
COMPUTADORAS MODERNAS
La palabra moderno significa novedoso, objeto el cual sus características, usos, o ideales superan
a las estándar en su época o tiempo actual. En base a esto las computadoras modernas son
aquella que sus características y aplicaciones van más allá del estándar actual de nuestra época.
Características: Actualmente para que una computadora sea llamada moderna debe contar con
algunas de los siguientes aspectos:
Procesador: 4núcleos o mas
Intel o AMD-RAM: 4 GB en adelante
SO:64-bits
Tarjeta de Video PCI-Ex 2.0 GDDR5 DirectX11-Nvidia o Ati
Disco Duro: 250 GB en adelante-
Monitor: Full HD 22" en adelante
Quemador: CD/DVD y Blu-ray
Entre los principales tipos de computadoras modernas se pueden encontrar:
Supercomputadoras: Una supercomputadora es un tipo de computadora muy potente y rápida,
diseñada para procesar enormes cantidades de información en poco tiempo y dedicada a una
tarea específica. (Tecnología de Defensa de Potencias mundiales)
Macrocomputadoras (Mainframes): Son utilizadas principalmente por entidades gubernamentales
y empresas que manejan grandes cantidades de información, operaciones bancarias o bases de datos.
Son sistemas grandes, rápidos y caros con capacidad de controlar cientos de usuarios en forma
simultánea, así como manejar cientos de dispositivos de entrada y salida.
Computadora Portátil: El término laptop viene del inglés lap –regazo- y top –encima-,
mientras que se les llama también notebooks por su similitud con los cuadernos. Tienen pantalla,
teclado, touchpad, procesador, discos duros, memorias y batería.
Computadoras Hibridas: Las computadoras híbridas son una mezcla entre una laptop y una
tableta.
Computadoras Notebook: Son laptops con pantallas de 10 pulgadas en promedio, pero con
menor potencia y capacidad que las computadoras portátiles más grandes.
Tablet: Las tablets o tabletas son computadoras muy portátiles destinadas a tareas de
entretenimiento, web y productividad. Su principal característica es su pantalla táctil, que elimina
el teclado y mouse para interactuar con sus contenidos y los reemplaza por gestos con los dedos.
Telefonos Inteligentes: Los Smartphone son computadoras convertidas en teléfono. En menos
de 6 pulgadas de tamaño incorporan, además de batería, procesador, pantalla táctil y sensores
como acelerómetro, brújula, giroscopio y GPS. Tienen la capacidad de conectarse a Internet por
medio de WiFi o conexiones móviles, así como hacer y recibir llamadas y mensajes. Los
teléfonos inteligentes pueden hacer muchas tareas de las computadoras personales, como
administrar el correo electrónico, navegar por internet y utilizar elementos multimedia.
Para la taxomomia es necesario conocer que a cada año las computadoras se remodelan ya sea
física o internamente y es por eso que el mercado de las computadoras es variable dependiendo
del uso que el usuario le de así será su rendimiento, desde un estudiante, empresario, profesional
o científico es por eso que se debe conocer los siguientes términos:
La memoria RAM : Memoria RAM es un chip o tarjeta que forma parte de un dispositivo
electrónico como un ordenador o un teléfono que sirve para el almacenamiento de información
o datos de acceso directo. RAM son una siglas en inglés que significan “Random Access
Memory” al traducirlo al español obtenemos “Memoria de Acceso Aleatorio”. Junto a la
Memoria ROM, forman el espacio del terminal que se encarga de guardar todos los datos que
ingresan a este. La Memoria RAM en todos los casos, actúa como una memoria de corto
plazo ya que esta se usa para guardar todos los archivos y datos generados para el
funcionamiento de aplicaciones que se mantengan abiertas al mismo tiempo en el equipo.
Por lo general, se ejecuta en el equipo cuando la encendemos. Todo ordenador debe tener
instalado un sistema operativo para poder funcionar. Sin organización, el funcionamiento de la
PC sería un caos. Cada dispositivo del hardware, cada aplicación del software, cada componente
de la unidad central iría por su lado y la computadora sería una máquina imposible de manejar.
La mayoría de los sistemas operativos actuales reúnen funciones como gestionar los programas
que se han de ejecutar y como han de hacerlo, así como los distintos dispositivos hardware de
entrada/salida por medio de un conjunto de rutinas y datos necesarios, también permite el uso de
memoria por parte de los programas, de la forma más segura y eficiente posible, y organiza la
información que se va generando y almacenando en el sistema.
Los sistemas operativos han evolucionado con el paso de los años. Los primeros tenían
unesquema monolítico (un programa global, por lo que no existen módulos), que eran difíciles de
mantener y trabajar con ellos. Más adelante se crearon sistemas basados en laestructura por
niveles o capas, donde cada parte de éstos se encarga de una función. Esta característica permite
depurar de una forma simple y añadir nuevos módulos sin tener que variar la estructura básica
(fácil mantenimiento).
Hoy en día, los sistemas operativos que más se usan son el MS-DOS, popular entre los usuarios
de computadoras personales, sólo permite un usuario y una tarea. En cuanto a los multiusuario y
multitarea son OS/2, desarrollado inicialmente por Microsoft Corporation e IBM, y Windows-
NT (Windows 7, Vista, XP, Windows Server 2003,Windows 2000) desarrollado por Microsoft.
Otro contendiente importante en el mundo de los computadoras personales es UNIX y sus
derivados (AIX, Xenix, Linux, GNU, etc.), permiten múltiples tareas y múltiples usuarios.
También se encuentra el Mac OS, sistema operativo multitarea de las computadoras Apple y
diseñado por Macintosh.
Hay que tener en cuenta también que un sistema operativo no solo se encuentra en un
computador o servidor, sino que igualmente lo podemos encontrar en la mayoría de los aparatos
electrónicos que utilicen microprocesadores para funcionar, teléfonos móviles, reproductores
DVD, entre otros.
Entre las computadoras portátiles modernas y actualizadas para el 2018 según
www.cnet.com están:
Lenovo Yoga 910 tiene una pantalla casi sin casi biseles
La nueva híbrida de Lenovo es una de las pocas con una pantalla sin mucho bisel y se puede
configurar con resolución 4K, procesador Intel Core i7 de séptima generación y mantiene su
flexibilidad.
MacBook 2016: Apple reinventa el teclado de sus laptops
Todo en estos nuevos modelos de MacBook es diferente, desde el diseño del teclado hasta el
trackpad y su increíble Touch Bar. También, viene en color gris espacial.
Las pantallas OLED llegan a las laptops Lenovo con la ThinkPad X1 Yoga
La Lenovo ThinkPad X1 Yoga se lleva la corona de ser la primera computadora híbrida con
pantalla OLED. Estará disponible en enero con un precio inicial de US$1,449.
La Dell Inspiron 7000 2-in-1 viene con todas las características -- un chasís delgado de metal,
pantalla flexible y táctil, un veloz disco interno y un 'touchpad' preciso -- por cientos de dólares
menos de lo que esperarías. Su cámara frontal, algo raro en una laptop, es la cereza en el pastel.
La Samsung Galaxy Tab Pro S quiere ser la mejor tableta híbrida del mundo
¿Lo logrará? La Samsung Galaxy Tab Pro S es la primera tableta en llevar el nombre Galaxy y
no ejecutar Android, sino Windows. Además, es más delgada y liviana que la Microsoft Surface
Pro 4 y el iPad Pro.
La HP Spectre x360 quiere ser una laptop para toda ocasión
HP ha actualizado una de nuestras laptops flexibles preferidas, añadiendo una batería más
grande, dos nuevas bocinas y una pantalla sin marco.
La Samsung Chromebook Pro es probablemente la Chromebook más completa, integrando lápiz
óptico y pantalla QHD que se puede girar para convertirse en tableta; ejecuta apps de Android y
ofrece un buen desempeño.
Surface Pro 4 es una victoria de Microsoft, y bien ganada
Después de tres generaciones de ofrecer "una tableta que puede reemplazar su computadora
portátil" -- con un éxito que no fue total -- la fórmula finalmente ha echado raíces. La versión del
2015 de la tableta de Microsoft cuenta con los procesadores más avanzados de Intel, una pantalla
ligeramente más grande (con un tamaño perfecto de 12.3 pulgadas y una proporción ideal de
3:2), así como varios ajustes de componentes y software, pero no cambia radicalmente al ADN
de su predecesora, la excelente Surface Pro 3 del 2014. Es una decisión inteligente, porque en
este momento la línea Surface Pro se trata menos de intentar vender el concepto de una tableta
PC con teclado desprendible a consumidores recelosos, y más de ver hasta dónde puede llegar en
refinar el producto.
lll