9/agosto/2016
(TAREA)
¿Qué es un lenguaje
de programación?
Un lenguaje de programación consiste en todos los símbolos,
caracteres y reglas de uso que permiten a las personas "comunicarse"
con las computadoras.
En todo caso los lenguajes de programación deben tener
instrucciones que pertenecen a las categorías ya familiares de entrada/salida,
cálculo/manipulación de textos, lógica/comparación y almacenamiento /
recuperación.
Aunque todos los lenguajes de programación tienen un
conjunto de instrucciones que permiten realizar dichas operaciones, existe una
marcada diferencia en los símbolos, caracteres y sintaxis de los lenguajes de
máquina, lenguajes ensambladores y lenguajes de alto nivel.
CARACTERÍSTICAS:
Existen muchos lenguajes de programación, que responden a
necesidades específicas y que poseen características y funcionalidades
específicas. Por lo tanto, la elección del lenguaje de programación depende,
sobre todo, de los requerimientos a satisfacer, así como de los recursos
existentes para la comprensión y la práctica del lenguaje. Criterios de
selección de un lenguaje de programación.
·
Utilidad: fácil de aprender, fácil de usar por
un programador experimentado
·
Rendimiento: velocidad de ejecución de los
programas, velocidad de ejecución del compilador.
·
Portabilidad y flexibilidad a posibilidad de
desarrollar el lenguaje y su implementación, existencia de bibliotecas de
funciones, clases, etc.
·
Continuidad: continuidad del fabricante,
continuidad del lenguaje, continuidad de implementación, existencia de una
norma internacional para definir el lenguaje, conformidad de implementación con
respecto a la norma, existencia de varios fabricantes para un mismo lenguaje.
Clasificación
Lenguajes de bajo
nivel.
Son lenguajes totalmente dependientes de la máquina, es
decir que el programa que se realiza con este tipo de lenguajes no se puede
migrar o utilizar en otras máquinas, al estar prácticamente diseñados a la
medida del hardware, aprovechan al máximo las características del mismo.
Lenguajes de alto
nivel
Se encuentran más cercanos al lenguaje natural que al
lenguaje máquina, están dirigidos a solucionar problemas mediante el uso de
EDD’s (Estructuras Dinámicas de Datos), son estructuras que pueden cambiar de
tamaño durante la ejecución del programa, permiten crear estructuras de datos
que se adapten a las necesidades reales de un programa, son lenguajes
independientes de la arquitectura de la computadora, es decir que en principio,
un programa escrito en un lenguaje de alto nivel, se puede migrar de una
máquina a otra sin ningún tipo de problema.
Lenguajes de Medio
nivel
Estos lenguajes se encuentran en un punto medio entre los
dos anteriores, dentro de estos lenguajes podría situarse C ya que puede
acceder a los registros del sistema, trabajar con direcciones de memoria, todas
ellas características de lenguajes de bajo nivel y a la vez realizar
operaciones de alto nivel.
Sistema operativo
Es el software básico de una computadora que provee un
interfaz entre el resto del ordenador, los dispositivos hardware y el usuario.
Operativos móviles
|
Operativos en ordenadores
|
iOS
Mayor integración con OSX y la extensión de su ecosistema hacía los
wearables y el Internet of Thinks con el healthkit y homekit respectivamente.
|
Microsoft Windows
Viene preinstalado en la mayoría de las computadoras. El sistema esta
protegido del acceso ilegal. Muestra estadística de errores de sistema.
Tiene ciertas limitaciones por RAM
No soporta archivos NES
No soporta la ejecución de algunas aplicaciones para DOS.
|
Android
Se caracteriza por ser abierto y disponible para cualquier fabricante
interesando en utilizarlo para sus dispositivos móviles.
|
Mac OS X
Compatibilidad al conectar un periférico a la Mac, el SO lo detecta
automáticamente.
La interfaz es intuitiva.
Buena organización. Es más barato que Windows y solo existe una
versión.
Es más vulnerable a virus y malware.
Las piezas pueden ser costosas.
En algunos de ellos la capacidad de expandirlos es limitada.
|
Windows Phone
Se destaca por su pantalla de inicio personalizable que ofrece las
notificaciones de las apps de una manera sencilla y limpia. Además ofrece una
experiencia de usuario muy buena independientemente del tipo y gama de
terminal en que se esté usando.
Aunque con menos apps disponibles que en Android y iOS, Windows Phone
8.1, cuenta ya con más de 300.000 apps en su tienda, además de ofrecer
aplicaciones propias de la compañía como Skype, OneDrive o Xbox Live.
|
Linux Ubuntu
Es un sistema operativo de código abierto, esto significa que puede
ser modificado y distribuido por cualquier usuario. Esta es una de sus
ventajas y que no se tiene q pagar por él, y se puede elegir en las
diferentes versiones que existen.
En los computadores Linux a pesar de ser gratuito es muy poco usado,
pero la mayoría de servidores, en las empresas utiliza Linux por su facilidad
en la personalización.
|
Firefox OS
Un sistema operativo basado en HTML5 con núcleo Linux, de código
abierto.
Pensado para ser un sistema operativo realmente abierto, a diferencia
de Android, donde Google controla ciertos aspectos del sistema. Esta
característica, permite a Firefox OS llegar a cubrir el nicho de mercado de
la gama baja con mayor facilidad que Android.
|
|
Blackberry
Blackberry 10 tiene una interfaz más fluida, un teclado inteligente y
táctil más depurado y otra serie de opciones que lo acercan a las de la
competencia. Al igual que con iOS, el SO es software propietario y solamente
los teléfonos de la compañía llevan su sistema instalado.
|
|
Ubuntu Touch
Otro sistema operativo basado en Linux pero en esta ocasión bajo la
famosa firma Ubuntu.
utiliza las mismas tecnologías de la versión de escritorio, por lo
que ambas comparten apps sin problemas de compatibilidad. Dispone también de
algunas de las aplicaciones más populares como Facebook y Youtube.
|
Compilador
Un compilador es un programa informático, que se encarga de
traducir el código fuente de una aplicación que este en desarrollo, es decir
convierte un programa hecho en lenguaje de programación de alto nivel a un
lenguaje de máquina , el cual es conocido como de bajo nivel, de tal forma que
sea más entendible y mucho más fácil de
procesar en el equipo en el que se está ejecutando.
Interprete
Los intérpretes se diferencian de los compiladores o de los
ensambladores en que mientras estos traducen un programa desde su descripción
en un lenguaje de programación al código de máquina del sistema, los
intérpretes sólo realizan la traducción a medida que sea necesaria,
típicamente, instrucción por instrucción, y normalmente no guardan el resultado
de dicha traducción.
Algoritmo
Se puede definir como una secuencia de instrucciones que
representan un modelo de solución para determinado tipo de problemas. O bien
como un conjunto de instrucciones que realizadas en orden conducen a obtener la
solución de un problema. Por lo tanto podemos decir que es un conjunto ordenado
y finito de pasos que nos permite solucionar un problema.
Los algoritmos pueden ser creados de dos formas:
1)
Seudocódigo.-
Es un conjunto pequeño y claro de instrucciones; en secuencia, que permite
llevar a cabo una tarea. El pseudo código se refiere a crear un código para
orientar a los programadores, pero sin la sintaxis ni la estructura propia de
ningún lenguaje.
2)
Diagrama de flujo.- Es la representación de la
secuencia, a través de símbolos, de la tarea que se va a realizar. Es un
esquema para representar gráficamente un algoritmo. Se basan en la utilización
de diversos símbolos para representar operaciones específicas, es decir, es la
representación gráfica de las distintas operaciones que se tienen que realizar
para resolver un problema, con indicación expresa el orden lógico en que deben
realizarse.
No hay comentarios:
Publicar un comentario