Informática
Infor=
información matica=automática
La informática,
también llamada computación,1 es
una ciencia que
administra métodos, técnicas y procesos con el fin de almacenar, procesar y
transmitir información y datos en formato digital.
De
esta forma, la informática se refiere al procesamiento automático de
información mediante dispositivos electrónicos y sistemas
computacionales. Los sistemas informáticos deben contar con la capacidad de
cumplir tres tareas básicas: entrada (captación de la
información), procesamiento y salida (transmisión de los
resultados). El conjunto de estas tres tareas se conoce como algoritmo.
DATO,
PROCESO E INFORMACIÓN
Dato
e información son dos términos que suelen confundirse. Se consideran datos a
toda entrada de información a una computadora. Estos datos pueden ser
administrativos, científicos, comerciales, etc. son elementos primitivos, de los
cuales a través del procesamiento se obtiene la información.
La
computadora se utiliza para procesar en forma automática y a gran velocidad
esos datos. Como resultado del procesamiento de esos datos se obtiene la
información deseada, la cual será útil en la toma de decisiones.
DATO
PROCESO
INFORMACION
Partes
del computador
UCP Y Periféricos
UCP
Unidad
central de procesamiento, donde se ejecutan las instrucciones de programas y se
controla el funcionamiento de los distintos componentes de una computadora;
Periféricos
En informática, un periférico de
entrada/salida o E/S (en inglés: input/output o I/O) es aquel
tipo de dispositivo periférico de un computador capaz de interactuar con los
elementos externos a ese sistema de forma bidireccional, es decir, que permite
tanto que sea ingresada información desde un sistema externo, como emitir
información a partir de ese sistema.
PROGRAMA
INFORMÁTICO
Un
programa informático o programa de computadora es una secuencia de
instrucciones, escritas para realizar una tarea específica en una
computadora.1 Este dispositivo requiere programas para funcionar, por lo
general, ejecutando las instrucciones del programa en un procesador central.2
El programa tiene un formato ejecutable que la computadora puede utilizar
directamente para ejecutar las instrucciones. El mismo programa en su formato
de código fuente legible para humanos, del cual se derivan los programas
ejecutables (por ejemplo, compilados), le permite a un programador estudiar y
desarrollar sus algoritmos. Una colección de programas de computadora y datos
relacionados se conoce como software.
TIPOS
DE PROGRAMAS
Software
del sistema. Aquellos programas básicos que permiten el uso
del computador, vinculando al usuario con los distintos aspectos de hardware
y/o redes del sistema, así como con las aplicaciones instaladas en el mismo.
Este tipo de programas dan soporte a las aplicaciones y en muchos casos vienen
ya instalados e incluso empotrados en el computador. Por ejemplo: controladores
de hardware, Sistemas Operativos, líneas de comandos, etc.
Software
de aplicación. Toda la
diversidad de programas secundarios que podemos descargar o instalar en nuestro
computador y que permiten llevar a cabo numerosas funciones: procesadores de
texto, hojas de cálculo, exploradores Web, videojuegos, software de
telecomunicaciones, reproductores multimedia, etc.
Software
lenguaje de programación:
Un lenguaje de programación es un lenguaje
formal que proporciona una serie de instrucciones que permiten a un programador
escribir secuencias de órdenes y algoritmos a modo de controlar el
comportamiento físico y lógico de una computadora con el objetivo de que
produzca diversas clases de datos. A todo este conjunto de órdenes y datos
escritos mediante un lenguaje de programación se le conoce como programa.
Algunos
de estos lenguajes están formados por un conjunto de símbolos (llamado
alfabeto), reglas gramaticales (léxico/morfológicas y sintácticas) y reglas
semánticas, que en conjunto definen las estructuras válidas en el lenguaje y su
significado. 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, que es la que define la creación de
software mediante la aplicación de procedimientos lógicos a través de los
siguientes pasos:
El
desarrollo lógico del programa para resolver un problema en particular.
Escritura
de la lógica del programa empleando un lenguaje de programación específico
(codificación del programa).
Ensamblaje
o compilación del programa hasta convertirlo en lenguaje de máquina.
Prueba
y depuración del programa.
Desarrollo
de la documentación.
¿Qué
es un lenguaje de programación?
En informática, se conoce como lenguaje de
programación a un programa destinado a la construcción de otros programas
informáticos. Su nombre se debe a que comprende un lenguaje formal que está
diseñado para organizar algoritmos y procesos lógicos que serán luego llevados
a cabo por un ordenador o sistema informático, permitiendo controlar así su
comportamiento físico, lógico y su comunicación con el usuario humano.
Dicho lenguaje está compuesto por símbolos y
reglas sintácticas y semánticas, expresadas en forma de instrucciones y
relaciones lógicas, mediante las cuales se construye el código fuente de una
aplicación o pieza de software determinado. Así, puede llamarse también
lenguaje de programación al resultado final de estos procesos creativos.
Generaciones
de lenguajes de programación
Primera generación: Los primeros ordenadores
se programaban directamente en código de máquina (basado en sistema binario),
que puede representarse mediante secuencias de ceros y unos sistema binario.
Cada modelo de ordenador tiene su propio código, por esa razón se llama
lenguaje de máquina u ordenadores.
1GL: Código máquina y Ensambladores
La primera generación de lenguajes de
programación consistía enteramente de una secuencia de 0s y 1s que los
controles de la computadora interpretan como instrucciones, eléctricamente.
Representan
los primeros lenguajes de programación que la computadora podía entender, son
conocidos como lenguaje máquina.
Segunda
generación: Los lenguajes simbólicos, asimismo propios de la máquina,
simplifican la escritura de las instrucciones y las hacen más legibles. También
surgieron en esta generación los lenguajes ensambladores.
2GL:
Primeros
lenguajes de alto nivel, no estructurados – Fortran, Cobol, Basic
La segunda generación de lenguajes de
programación consistía se identificaron como lenguajes ensambladores. Un
lenguaje ensamblador convierte las secuencias de 0s y 1s a un lenguaje
entendido por los seres humanos, como “añadir”, “sumar”, etc.
El código escrito en un lenguaje ensamblador
se convierte en lenguaje de máquina (1GL)
Tercera
generación: Los lenguajes de alto nivel sustituyen las instrucciones simbólicas
por códigos independientes de la máquina, parecidas al lenguaje humano o al de
las Matemáticas.
3GL: Lenguajes estructurados: Algol, Pascal, C,
ADA.
Lenguajes
Específicos: Lisp, Prolog, Smalltalk
La tercera generación de lenguajes de
programación se conoce como lenguajes de alto nivel. Un lenguaje de alto nivel
tiene una gramática y sintaxis similar a las palabras en una oración. Un
compilador se encarga de traducir el lenguaje de alto nivel a lenguaje
ensamblador o código máquina.
Todos los lenguajes de programación de
software necesitan ser traducidos a código de máquina para una computadora para
utilizar las instrucciones que contienen.
Cuarta
generación:
Se ha dado este nombre a ciertas herramientas
que permiten construir aplicaciones sencillas combinando piezas prefabricadas.
Hoy se piensa que estas herramientas no son, propiamente hablando, lenguajes.
Algunos proponen reservar el nombre de cuarta generación para la programación
orientada a objetos.
Estos lenguajes tienen una estructura lo más
parecido al idioma inglés, algunas características son:
- Acceso a base de datos. - Capacidades Gráficas. - Generación de código automáticamente.
- Puede programarse visualmente como Visual
Basic (Programación Visual).
4GL:
Lenguajes Declarativos: SQL Generadores
de aplicaciones, Herramientas CASE (Computer Aided Software Engineering, ingeniería
de software asistida por computador).
Programación Visual: Visual Basic, Visual C
Lenguajes Orientados a Objeto C++, Java,
Eiffel
La cuarta generación de lenguajes de
programación avanza en la sintaxis utilizada. Lenguajes 4GL se utilizan
típicamente para acceder a bases de datos.
Quinta
generación:
se
llama así a veces a los lenguajes de la inteligencia artificial, aunque con el
fracaso del proyecto japonés de la quinta generación el nombre ha caído en
desuso.
5GL:
Imitación de la mente humana
La
quinta generación de lenguajes de programación es utilizada para redes
neuronales. Una red neuronal es una forma de inteligencia artificial que trata
de imitar la mente humana.
ALGORITMOS
En informática, un algoritmo es una secuencia
de instrucciones secuenciales, gracias al cual pueden llevarse a cabo ciertos
procesos y darse respuesta a determinadas necesidades o decisiones. Se trata de
conjuntos ordenados y finitos de pasos, que nos permiten resolver un problema o
tomar una decisión.
Los algoritmos no tienen que ver con los
lenguajes de programación, dado que un mismo algoritmo o diagrama de flujo
puede representarse en diversos lenguajes de programación, es decir, se trata
de un ordenamiento previo a la programación.
Visto así, un programa no es otra cosa que una
serie compleja de algoritmos ordenados y codificados mediante un lenguaje de
programación para su posterior ejecución en un computador.
Los algoritmos también son frecuentes en la
matemática y la lógica, y son la base de la fabricación de manuales de usuario,
folletos de instrucciones, etc. Su nombre proviene del latín algoritmus y éste
apellido del matemático persa Al-Juarismi. Uno de los algoritmos más conocidos
de la matemática es el atribuido a Euclides, para obtener el máximo común
divisor de dos enteros positivos, o el llamado “método de Gauss” para resolver
sistemas de ecuaciones lineales.
Partes
de un algoritmo
Todo
algoritmo debe constar de las siguientes partes:
Input
o entrada. El ingreso de los datos que el algoritmo necesita para operar.
Proceso.
Se trata de la operación lógica formal que el algoritmo emprenderá con lo
recibido del input.
Output
o salida. Los resultados obtenidos del proceso sobre el input, una vez
terminada la ejecución del algoritmo.
¿Para qué sirve un algoritmo?
Dicho muy llanamente, un algoritmo sirve para
resolver paso a paso un problema. Se trata de una serie de instrucciones
ordenadas y secuenciadas para guiar un proceso determinado.
En las Ciencias de la computación, no
obstante, los algoritmos constituyen el esqueleto de los procesos que luego se
codificarán y programarán para que sean realizados por el computador.
Tipos de
algoritmos
Existen
cuatro tipos de algoritmos en informática:
Algoritmos computacionales. Un algoritmo cuya resolución depende del
cálculo, y que puede ser desarrollado por una calculadora o computadora sin
dificultades.
Algoritmos no computacionales. Aquellos que no requieren de los procesos de
un computador para resolverse, o cuyos pasos son exclusivos para la resolución
por parte de un ser humano.
Algoritmos cualitativos. Se trata de un algoritmo en cuya resolución
no intervienen cálculos numéricos, sino secuencias lógicas y/o formales.
Algoritmos cuantitativos. Todo lo contrario, es un algoritmo que
depende de cálculos matemáticos para dar con su resolución.
Características
de los algoritmos
Algoritmo
informático
Un
algoritmo debe ofrecer un resultado en base a sus funciones.
Los
algoritmos presentan las siguientes características:
Secuenciales. Los algoritmos operan en secuencia, debe
procesarse uno a la vez.
Precisos. Los algoritmos han de ser precisos en su
abordaje del tema, es decir, no pueden ser ambiguos o subjetivos.
Ordenados. Los algoritmos se deben establecer en la
secuencia precisa y exacta para que su lectura tenga sentido y se resuelva el
problema.
Finitos. Toda secuencia de algoritmos ha de tener un
fin determinado, no puede prolongarse hasta el infinito.
Concretos. Todo algoritmo debe ofrecer un resultado en
base a las funciones que cumple.
Definidos. Un mismo algoritmo ante los mismos elementos
de entrada (input) debe dar siempre los mismos resultados.
Fuente:
https://concepto.de/algoritmo-en-informatica/#ixzz5yyrY8K00
TIPOS
DE LENGUAJES DE PROGRAMACION
Lenguajes de
bajo nivel. Se trata de lenguajes de
programación que están diseñados para un hardware específico y que por lo tanto
no pueden migrar o exportarse a otros computadores. Sacan el mayor provecho
posible al sistema para el que fueron diseñados, pero no aplican para ningún
otro.
Lenguajes de
alto nivel. Se trata de
lenguajes de programación que aspiran a ser un lenguaje más universal, por lo
que pueden emplearse indistintamente de la arquitectura del hardware, es decir,
en diversos tipos de sistemas. Los hay de propósito general y de propósito
específico.
Lenguajes de
nivel medio. Este término no
siempre es aceptado, que propone lenguajes de programación que se ubican en un
punto medio entre los dos anteriores: pues permite operaciones de alto nivel y
a la vez la gestión local de la arquitectura del sistema.
Programación
orientada a objetos
La programación orientada a objetos o POO (OOP según
sus siglas en inglés)
es un paradigma de programación que usa los objetos en sus interacciones,
para diseñar aplicaciones y programas informáticos.
Está basado en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo,
acoplamiento y encapsulamiento. Su uso se popularizó a principios de
la década de los
años 1990. En la actualidad, existe una gran variedad de lenguajes de
programación que
soportan la orientación a objetos.
CONCEPTOS FUNDAMENTALES
La programación orientada a objetos es una forma de programar que trata de
encontrar una
solución a estos problemas. Introduce nuevos conceptos, que superan y
amplían conceptos
antiguos ya conocidos. Entre ellos destacan los siguientes:
Definiciones de las propiedades y
comportamiento de un tipo de objeto concreto. La instanciación es la
lectura de estas definiciones y la creación de un objeto a partir de ellas.
(Por ejemplo, herencia de la clase C a
la clase D) es la facilidad mediante la cual la
clase D hereda en ella cada uno de los atributos y operaciones de C, como
si esos atributos y operaciones hubiesen sido definidos por la misma D.
Por lo tanto, puede usar los mismos métodos y variables públicas
declaradas en C. Los componentes registrados como "privados" (private)
también se heredan, pero como no pertenecen a la clase, se mantienen escondidos
al programador y sólo pueden ser accedidos a través de otros métodos públicos.
Esto es así para mantener hegemónico el ideal de POO.
Instancia de una clase. Entidad provista
de un conjunto de propiedades o atributos (datos) y de comportamiento o
funcionalidad (métodos), los mismos que consecuentemente reaccionan a eventos. Se
corresponden con los objetos reales del mundo que nos rodea, o con objetos
internos del sistema (del programa). Es una instancia a una clase.
Algoritmo asociado a un objeto (o a una
clase de objetos), cuya ejecución se desencadena tras la recepción de un
"mensaje". Desde el punto de vista del comportamiento, es lo que el
objeto puede hacer. Un método puede producir un cambio en las propiedades del
objeto, o la generación de un "evento" con un nuevo mensaje
para otro objeto del sistema.
Evento
Es un suceso en el sistema (tal como una
interacción del usuario con la máquina, o un mensaje enviado por un objeto). El
sistema maneja el evento enviando el mensaje adecuado al objeto pertinente.
También se puede definir como evento la reacción que puede desencadenar un
objeto; es decir, la acción que genera.
Atributos
Características que tiene la clase
Mensaje
Una comunicación dirigida a un objeto,
que le ordena que ejecute uno de sus métodos con
ciertos parámetros asociados al evento que lo generó.
Propiedad o atributo
Contenedor de un tipo de datos asociados
a un objeto (o a una clase de objetos), que hace los datos visibles desde
fuera del objeto y esto se define como sus características predeterminadas,
y cuyo valor puede ser alterado por la ejecución de algún método.
Estado interno
Es una variable que se declara privada,
que puede ser únicamente accedida y alterada por un método del objeto, y que se
utiliza para indicar distintas situaciones posibles para el objeto (o
clase de objetos). No es visible al programador que maneja una instancia de la
clase.
Componentes de un objeto
Atributos, identidad, relaciones y
métodos.
Identificación de un objeto
Un objeto se representa por medio de una
tabla o entidad que esté compuesta por sus atributos y funciones
correspondientes.
En comparación con un lenguaje imperativo, una "variable" no es
más que un contenedor interno
del atributo del objeto o de un estado interno, así como la "función"
es un procedimiento interno
del método del objeto.
CARACTERÍSTICAS DE LA POO]
Existe un acuerdo acerca de qué características contempla la
"orientación a objetos". Las características siguientes son las más
importantes:
Denota las características esenciales de
un objeto, donde se capturan sus comportamientos. Cada
objeto en el sistema sirve como modelo de un "agente" abstracto que
puede realizar trabajo,
informar y cambiar su estado, y "comunicarse" con otros objetos en el
sistema sin revelar
cómo se implementan estas características. Los procesos, las
funciones o los métodos
pueden también ser abstraídos, y, cuando lo están, una variedad de
técnicas son requeridas para ampliar una abstracción. El proceso de
abstracción permite seleccionar las características relevantes dentro de
un conjunto e identificar comportamientos comunes para definir nuevos tipos de
entidades en el mundo real. La abstracción es clave en el proceso de análisis y
diseño orientado a objetos, ya que mediante ella podemos llegar a armar un
conjunto de clases que permitan modelar la realidad o el problema que se
quiere atacar.
Significa reunir todos los elementos que
pueden considerarse pertenecientes a una misma entidad, al mismo nivel de
abstracción. Esto permite aumentar la cohesión de
los componentes del sistema. Algunos autores confunden este concepto con el
principio de ocultación, principalmente porque se suelen emplear conjuntamente.
Se denomina modularidad a la propiedad
que permite subdividir una aplicación en partes más pequeñas (llamadas
módulos), cada una de las cuales debe ser tan independiente como sea posible de
la aplicación en sí y de las restantes partes. Estos módulos se pueden compilar
por separado, pero tienen conexiones con otros módulos. Al igual que la
encapsulación, los lenguajes soportan la modularidad de diversas formas.
Cada objeto está aislado del exterior,
es un módulo natural, y cada tipo de objeto expone una interfaz a
otros objetos que especifica cómo pueden interactuar con los objetos de la
clase. El aislamiento protege a las propiedades de un objeto contra su modificación
por quien no tenga derecho a acceder a ellas; solamente los propios métodos
internos del objeto pueden acceder a su estado. Esto asegura que otros objetos
no puedan cambiar el estado interno de un objeto de manera inesperada,
eliminando efectos secundarios e interacciones inesperadas. Algunos lenguajes
relajan esto, permitiendo un acceso directo a los datos internos del objeto de
una manera controlada y limitando el grado de abstracción. La aplicación entera
se reduce a un agregado o rompecabezas de
objetos.
Comportamientos diferentes, asociados a
objetos distintos, pueden compartir el mismo nombre; al llamarlos por ese
nombre se utilizará el comportamiento correspondiente al objeto que se esté
usando. O, dicho de otro modo, las referencias y las colecciones de objetos
pueden contener objetos de diferentes tipos, y la invocación de un
comportamiento en una referencia producirá el comportamiento correcto para el
tipo real del objeto referenciado. Cuando esto ocurre en "tiempo de
ejecución", esta última característica se llama asignación tardía o asignación
dinámica. Algunos lenguajes proporcionan medios más estáticos (en
"tiempo de compilación") de polimorfismo, tales como las plantillas y
la sobrecarga de operadores de
C++.
Las clases no están aisladas, sino que
se relacionan entre sí, formando una jerarquía de clasificación. Los objetos
heredan las propiedades y el comportamiento de todas las clases a las que
pertenecen. La herencia organiza y facilita el polimorfismo y el
encapsulamiento, permitiendo a los objetos ser definidos y creados como tipos
especializados de objetos preexistentes. Estos pueden compartir (y extender) su
comportamiento sin tener que volver a implementarlo. Esto suele hacerse
habitualmente agrupando los objetos en clases y estas en árboles o enrejados que
reflejan un comportamiento común. Cuando un objeto hereda de más de una clase
se dice que hay herencia múltiple.
La recolección de basura o garbage
collector es la técnica por la cual el entorno de objetos se encarga
de destruir automáticamente, y por tanto desvincular la memoria asociada, los
objetos que hayan quedado sin ninguna referencia a ellos. Esto significa que el
programador no debe preocuparse por la asignación o liberación de memoria, ya
que el entorno la asignará al crear un nuevo objeto y la liberará cuando nadie
lo esté usando. En la mayoría de los lenguajes híbridos que se extendieron para
soportar el Paradigma de Programación Orientada a Objetos como C++ u Object Pascal, esta
característica no existe y la memoria debe desasignarse expresamente.
Informática
Infor=
información matica=automática
La informática,
también llamada computación,1 es
una ciencia que
administra métodos, técnicas y procesos con el fin de almacenar, procesar y
transmitir información y datos en formato digital.
De
esta forma, la informática se refiere al procesamiento automático de
información mediante dispositivos electrónicos y sistemas
computacionales. Los sistemas informáticos deben contar con la capacidad de
cumplir tres tareas básicas: entrada (captación de la
información), procesamiento y salida (transmisión de los
resultados). El conjunto de estas tres tareas se conoce como algoritmo.
DATO,
PROCESO E INFORMACIÓN
Dato
e información son dos términos que suelen confundirse. Se consideran datos a
toda entrada de información a una computadora. Estos datos pueden ser
administrativos, científicos, comerciales, etc. son elementos primitivos, de los
cuales a través del procesamiento se obtiene la información.
La
computadora se utiliza para procesar en forma automática y a gran velocidad
esos datos. Como resultado del procesamiento de esos datos se obtiene la
información deseada, la cual será útil en la toma de decisiones.
|
DATO
|
PROCESO
|
INFORMACION
|
|
|
|
|
Partes
del computador
UCP Y Periféricos
UCP
Unidad
central de procesamiento, donde se ejecutan las instrucciones de programas y se
controla el funcionamiento de los distintos componentes de una computadora;
Periféricos
En informática, un periférico de
entrada/salida o E/S (en inglés: input/output o I/O) es aquel
tipo de dispositivo periférico de un computador capaz de interactuar con los
elementos externos a ese sistema de forma bidireccional, es decir, que permite
tanto que sea ingresada información desde un sistema externo, como emitir
información a partir de ese sistema.
PROGRAMA
INFORMÁTICO
Un
programa informático o programa de computadora es una secuencia de
instrucciones, escritas para realizar una tarea específica en una
computadora.1 Este dispositivo requiere programas para funcionar, por lo
general, ejecutando las instrucciones del programa en un procesador central.2
El programa tiene un formato ejecutable que la computadora puede utilizar
directamente para ejecutar las instrucciones. El mismo programa en su formato
de código fuente legible para humanos, del cual se derivan los programas
ejecutables (por ejemplo, compilados), le permite a un programador estudiar y
desarrollar sus algoritmos. Una colección de programas de computadora y datos
relacionados se conoce como software.
TIPOS
DE PROGRAMAS
Software
del sistema. Aquellos programas básicos que permiten el uso
del computador, vinculando al usuario con los distintos aspectos de hardware
y/o redes del sistema, así como con las aplicaciones instaladas en el mismo.
Este tipo de programas dan soporte a las aplicaciones y en muchos casos vienen
ya instalados e incluso empotrados en el computador. Por ejemplo: controladores
de hardware, Sistemas Operativos, líneas de comandos, etc.
Software
de aplicación. Toda la
diversidad de programas secundarios que podemos descargar o instalar en nuestro
computador y que permiten llevar a cabo numerosas funciones: procesadores de
texto, hojas de cálculo, exploradores Web, videojuegos, software de
telecomunicaciones, reproductores multimedia, etc.
Software
lenguaje de programación:
Un lenguaje de programación es un lenguaje
formal que proporciona una serie de instrucciones que permiten a un programador
escribir secuencias de órdenes y algoritmos a modo de controlar el
comportamiento físico y lógico de una computadora con el objetivo de que
produzca diversas clases de datos. A todo este conjunto de órdenes y datos
escritos mediante un lenguaje de programación se le conoce como programa.
Algunos
de estos lenguajes están formados por un conjunto de símbolos (llamado
alfabeto), reglas gramaticales (léxico/morfológicas y sintácticas) y reglas
semánticas, que en conjunto definen las estructuras válidas en el lenguaje y su
significado. 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, que es la que define la creación de
software mediante la aplicación de procedimientos lógicos a través de los
siguientes pasos:
El
desarrollo lógico del programa para resolver un problema en particular.
Escritura
de la lógica del programa empleando un lenguaje de programación específico
(codificación del programa).
Ensamblaje
o compilación del programa hasta convertirlo en lenguaje de máquina.
Prueba
y depuración del programa.
Desarrollo
de la documentación.
¿Qué
es un lenguaje de programación?
En informática, se conoce como lenguaje de
programación a un programa destinado a la construcción de otros programas
informáticos. Su nombre se debe a que comprende un lenguaje formal que está
diseñado para organizar algoritmos y procesos lógicos que serán luego llevados
a cabo por un ordenador o sistema informático, permitiendo controlar así su
comportamiento físico, lógico y su comunicación con el usuario humano.
Dicho lenguaje está compuesto por símbolos y
reglas sintácticas y semánticas, expresadas en forma de instrucciones y
relaciones lógicas, mediante las cuales se construye el código fuente de una
aplicación o pieza de software determinado. Así, puede llamarse también
lenguaje de programación al resultado final de estos procesos creativos.
Generaciones
de lenguajes de programación
Primera generación: Los primeros ordenadores
se programaban directamente en código de máquina (basado en sistema binario),
que puede representarse mediante secuencias de ceros y unos sistema binario.
Cada modelo de ordenador tiene su propio código, por esa razón se llama
lenguaje de máquina u ordenadores.
1GL: Código máquina y Ensambladores
La primera generación de lenguajes de
programación consistía enteramente de una secuencia de 0s y 1s que los
controles de la computadora interpretan como instrucciones, eléctricamente.
Representan
los primeros lenguajes de programación que la computadora podía entender, son
conocidos como lenguaje máquina.
Segunda
generación: Los lenguajes simbólicos, asimismo propios de la máquina,
simplifican la escritura de las instrucciones y las hacen más legibles. También
surgieron en esta generación los lenguajes ensambladores.
2GL:
Primeros
lenguajes de alto nivel, no estructurados – Fortran, Cobol, Basic
La segunda generación de lenguajes de
programación consistía se identificaron como lenguajes ensambladores. Un
lenguaje ensamblador convierte las secuencias de 0s y 1s a un lenguaje
entendido por los seres humanos, como “añadir”, “sumar”, etc.
El código escrito en un lenguaje ensamblador
se convierte en lenguaje de máquina (1GL)
Tercera
generación: Los lenguajes de alto nivel sustituyen las instrucciones simbólicas
por códigos independientes de la máquina, parecidas al lenguaje humano o al de
las Matemáticas.
3GL: Lenguajes estructurados: Algol, Pascal, C,
ADA.
Lenguajes
Específicos: Lisp, Prolog, Smalltalk
La tercera generación de lenguajes de
programación se conoce como lenguajes de alto nivel. Un lenguaje de alto nivel
tiene una gramática y sintaxis similar a las palabras en una oración. Un
compilador se encarga de traducir el lenguaje de alto nivel a lenguaje
ensamblador o código máquina.
Todos los lenguajes de programación de
software necesitan ser traducidos a código de máquina para una computadora para
utilizar las instrucciones que contienen.
Cuarta
generación:
Se ha dado este nombre a ciertas herramientas
que permiten construir aplicaciones sencillas combinando piezas prefabricadas.
Hoy se piensa que estas herramientas no son, propiamente hablando, lenguajes.
Algunos proponen reservar el nombre de cuarta generación para la programación
orientada a objetos.
Estos lenguajes tienen una estructura lo más
parecido al idioma inglés, algunas características son:
- Acceso a base de datos. - Capacidades Gráficas. - Generación de código automáticamente.
- Puede programarse visualmente como Visual
Basic (Programación Visual).
4GL:
Lenguajes Declarativos: SQL Generadores
de aplicaciones, Herramientas CASE (Computer Aided Software Engineering, ingeniería
de software asistida por computador).
Programación Visual: Visual Basic, Visual C
Lenguajes Orientados a Objeto C++, Java,
Eiffel
La cuarta generación de lenguajes de
programación avanza en la sintaxis utilizada. Lenguajes 4GL se utilizan
típicamente para acceder a bases de datos.
Quinta
generación:
se
llama así a veces a los lenguajes de la inteligencia artificial, aunque con el
fracaso del proyecto japonés de la quinta generación el nombre ha caído en
desuso.
5GL:
Imitación de la mente humana
La
quinta generación de lenguajes de programación es utilizada para redes
neuronales. Una red neuronal es una forma de inteligencia artificial que trata
de imitar la mente humana.
ALGORITMOS
En informática, un algoritmo es una secuencia
de instrucciones secuenciales, gracias al cual pueden llevarse a cabo ciertos
procesos y darse respuesta a determinadas necesidades o decisiones. Se trata de
conjuntos ordenados y finitos de pasos, que nos permiten resolver un problema o
tomar una decisión.
Los algoritmos no tienen que ver con los
lenguajes de programación, dado que un mismo algoritmo o diagrama de flujo
puede representarse en diversos lenguajes de programación, es decir, se trata
de un ordenamiento previo a la programación.
Visto así, un programa no es otra cosa que una
serie compleja de algoritmos ordenados y codificados mediante un lenguaje de
programación para su posterior ejecución en un computador.
Los algoritmos también son frecuentes en la
matemática y la lógica, y son la base de la fabricación de manuales de usuario,
folletos de instrucciones, etc. Su nombre proviene del latín algoritmus y éste
apellido del matemático persa Al-Juarismi. Uno de los algoritmos más conocidos
de la matemática es el atribuido a Euclides, para obtener el máximo común
divisor de dos enteros positivos, o el llamado “método de Gauss” para resolver
sistemas de ecuaciones lineales.
Partes
de un algoritmo
Todo
algoritmo debe constar de las siguientes partes:
Input
o entrada. El ingreso de los datos que el algoritmo necesita para operar.
Proceso.
Se trata de la operación lógica formal que el algoritmo emprenderá con lo
recibido del input.
Output
o salida. Los resultados obtenidos del proceso sobre el input, una vez
terminada la ejecución del algoritmo.
¿Para qué sirve un algoritmo?
Dicho muy llanamente, un algoritmo sirve para
resolver paso a paso un problema. Se trata de una serie de instrucciones
ordenadas y secuenciadas para guiar un proceso determinado.
En las Ciencias de la computación, no
obstante, los algoritmos constituyen el esqueleto de los procesos que luego se
codificarán y programarán para que sean realizados por el computador.
Tipos de
algoritmos
Existen
cuatro tipos de algoritmos en informática:
Algoritmos computacionales. Un algoritmo cuya resolución depende del
cálculo, y que puede ser desarrollado por una calculadora o computadora sin
dificultades.
Algoritmos no computacionales. Aquellos que no requieren de los procesos de
un computador para resolverse, o cuyos pasos son exclusivos para la resolución
por parte de un ser humano.
Algoritmos cualitativos. Se trata de un algoritmo en cuya resolución
no intervienen cálculos numéricos, sino secuencias lógicas y/o formales.
Algoritmos cuantitativos. Todo lo contrario, es un algoritmo que
depende de cálculos matemáticos para dar con su resolución.
Características
de los algoritmos
Algoritmo
informático
Un
algoritmo debe ofrecer un resultado en base a sus funciones.
Los
algoritmos presentan las siguientes características:
Secuenciales. Los algoritmos operan en secuencia, debe
procesarse uno a la vez.
Precisos. Los algoritmos han de ser precisos en su
abordaje del tema, es decir, no pueden ser ambiguos o subjetivos.
Ordenados. Los algoritmos se deben establecer en la
secuencia precisa y exacta para que su lectura tenga sentido y se resuelva el
problema.
Finitos. Toda secuencia de algoritmos ha de tener un
fin determinado, no puede prolongarse hasta el infinito.
Concretos. Todo algoritmo debe ofrecer un resultado en
base a las funciones que cumple.
Definidos. Un mismo algoritmo ante los mismos elementos
de entrada (input) debe dar siempre los mismos resultados.
Fuente:
https://concepto.de/algoritmo-en-informatica/#ixzz5yyrY8K00
TIPOS
DE LENGUAJES DE PROGRAMACION
Lenguajes de
bajo nivel. Se trata de lenguajes de
programación que están diseñados para un hardware específico y que por lo tanto
no pueden migrar o exportarse a otros computadores. Sacan el mayor provecho
posible al sistema para el que fueron diseñados, pero no aplican para ningún
otro.
Lenguajes de
alto nivel. Se trata de
lenguajes de programación que aspiran a ser un lenguaje más universal, por lo
que pueden emplearse indistintamente de la arquitectura del hardware, es decir,
en diversos tipos de sistemas. Los hay de propósito general y de propósito
específico.
Lenguajes de
nivel medio. Este término no
siempre es aceptado, que propone lenguajes de programación que se ubican en un
punto medio entre los dos anteriores: pues permite operaciones de alto nivel y
a la vez la gestión local de la arquitectura del sistema.
Programación
orientada a objetos
es un paradigma de programación que usa los objetos en sus interacciones,
para diseñar aplicaciones y programas informáticos.
Está basado en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo,
acoplamiento y encapsulamiento. Su uso se popularizó a principios de la década de los
años 1990. En la actualidad, existe una gran variedad de lenguajes de programación que
soportan la orientación a objetos.
CONCEPTOS FUNDAMENTALES
solución a estos problemas. Introduce nuevos conceptos, que superan y amplían conceptos
antiguos ya conocidos. Entre ellos destacan los siguientes:
clase D hereda en ella cada uno de los atributos y operaciones de C, como si esos atributos y operaciones hubiesen sido definidos por la misma D. Por lo tanto, puede usar los mismos métodos y variables públicas declaradas en C. Los componentes registrados como "privados" (private) también se heredan, pero como no pertenecen a la clase, se mantienen escondidos al programador y sólo pueden ser accedidos a través de otros métodos públicos. Esto es así para mantener hegemónico el ideal de POO.
ciertos parámetros asociados al evento que lo generó.
y cuyo valor puede ser alterado por la ejecución de algún método.
del atributo del objeto o de un estado interno, así como la "función" es un procedimiento interno
del método del objeto.
CARACTERÍSTICAS DE LA POO]
objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo,
informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar
cómo se implementan estas características. Los procesos, las funciones o los métodos
pueden también ser abstraídos, y, cuando lo están, una variedad de técnicas son requeridas para ampliar una abstracción. El proceso de abstracción permite seleccionar las características relevantes dentro de un conjunto e identificar comportamientos comunes para definir nuevos tipos de entidades en el mundo real. La abstracción es clave en el proceso de análisis y diseño orientado a objetos, ya que mediante ella podemos llegar a armar un conjunto de clases que permitan modelar la realidad o el problema que se quiere atacar.
Casi todas las cosas buenas que suceden en el mundo, nacen de una actitud de aprecio por lo demás.
ResponderEliminarDalai Lama