Publicado el 24 de Enero del 2020
1.280 visualizaciones desde el 24 de Enero del 2020
864,7 KB
49 paginas
Creado hace 15a (23/09/2009)
Introducción a la
Programación
Programación I
¿Qué es Programación?
• Un proceso por el cual se escribe (en
un lenguaje de programación), se
prueba, se depura y se mantiene el
código fuente de un programa
informático.
¿Qué es Programación?
• Para construir programas, las
personas usan lenguajes que son
similar al idioma humano. Los
resultados se traducen en código de
máquina que las computadoras
entienden.
Lenguaje de Programación
• Es un conjunto de símbolos y reglas
sintácticas y semánticas que definen
su estructura y el significado de sus
elementos y expresiones. Es utilizado
para controlar el comportamiento
físico y lógico de una máquina.
La Evolución de los lenguajes de la
Programación
• Los lenguajes de programación entran en tres
categorías extensas:
Lenguajes de máquina
Lenguajes de ensamblado
Lenguajes altos o de nivel.
La Evolución de los lenguajes de Programación:
Lenguaje de Máquina
•
•
Lenguaje de máquina (idiomas de la primera-
generación) es el tipo más básico de lenguaje de la
computadora y consiste en series de números del
hardware de la computadora .
Los Tipos diferentes de uso en el hardware en el
código de la máquina son diferentes. Por ejemplo,
las computadoras de IBM usan lenguaje de máquina
diferente que las computadoras de las Apple.
La Evolución de los lenguajes de la
Programación: Lenguaje de ensamblado
•
Lenguaje de ensamblado (idiomas de la segunda-
generación) es sólo algo más fácil que trabajar con
el lenguaje de máquina.
• Para crear programas en lenguaje de ensamblado,
diseñadores acostumbran frases en ingles para
representar series de números.
• El código se traduce entonces en el código del
objeto y usa a un traductor llamado ensamblador.
Código
ensamb
de
le
Ensamblad
or
Código de
Objeto
La Evolución de los lenguajes de la
Programación : Lenguajes altos o de nivel.
•
•
Los lenguajes de alto nivel son más poderosos que el lenguaje de ensamble y
le permiten al programador trabajar en un ambiente mas agradable.
Los lenguajes de la programación de alto nivel son dividido en tres "las
generaciones," cada uno más poderoso que el último:
● Lenguaje de 3ra. Generación
● Lenguaje de 4ta. Generación
● Lenguaje de 5ta. Generación
La Evolución de los lenguajes de la
Programación : Lenguajes de 3a.
Generación.
• Consta de la gama de lenguajes de programación
para ámbitos computacionales donde se logra un
alto rendimiento con respecto a lenguajes de
generaciones anteriores.
• Dichos lenguajes son utilizados por especialistas,
programadores, y otros para desarrollar
programas y sistemas que requieren de un
procedimiento especifico para la pc.
FORTAN
COBOL
BASIC
Pascal
C
C++
Java
ActiveX
• Los lenguajes 3GLs siguientes son :
La Evolución de los lenguajes de la
Programación : Lenguajes de 4a.
Generación.
• Son lenguajes que se relacionan menos con
procedimientos y que son aun mas parecidos al
ingles que los lenguajes de tercera generación.
• Algunas características incluyen capacidades de
consulta y base de datos, de creación de códigos
y capacidades gráficas.
Ejemplos Visual C++, Visual Basic, Power
Builder, Forte, Delphi y muchos otros.
La Evolución de los lenguajes de la
Programación : Lenguajes de 5a. Generación.
• Alrededor de la mitad 1998 surgieron grupos de
herramientas de lenguajes de quinta generación,
los cuales combinan la creación de códigos
basadas en reglas, la administración de
reutilización y otros avances.
• Programación basada en conocimiento. Método
para el desarrollo de programas de computación
en el que se le ordena ala computadora realizar
un propósito en vez de instruirla para hacerlo.
Ejemplos: C#, Haskell, Modula 3.
Lenguajes Orientados a
Objetos
• Simula
• Smalltalk
• C++
• Delphi
• Java
• C#
BASIC, Visual Basic, Visual C++, C# y . NET
• BASIC, fue desarrollado a mediados de los
sesenta; su propósito principal era que los
principiantes se familiarizaran con las técnicas de
programación.
• Visual Basic, se introdujo en 1991 para simplificar
el desarrollo de aplicaciones para Windows.
BASIC, Visual Basic, Visual C++, C# y . NET
• Visual Basic .NET, ofrece una orientación
mejorada a objetos. Posee una poderosa
biblioteca que incluye componentes de software
reutilizables.
• Visual C++, es una implementación de C++.
Comparte la misma biblioteca de componentes
que VB.
BASIC, Visual Basic, Visual C++, C# y . NET
• C# fue desarrollado en Microsoft,
específicamente para la plataforma .NET como un
lenguaje que permitiera a los programadores
migrar fácilmente a .NET
Historia: OO
• OO (Orientación a Objetos): desarrollo y modelización de
software que facilita la construcción de sistemas complejos
a partir de componentes.
Se modela el mundo real tan fielmente como sea posible.
Al comparar la OO y las Tradicionales (Procedimentales
estructuradas) hay una reducción de código como mínimo del
40%.
Historia: Desarrollo Tradicional frente
al OO
Tradicional
Descendente.
Estructurados.
Operaciones.
Descomponer
una Aplicación en
programas
más pequeños.
OO
Ascendente.
OO.
Los Objetos
Reales.
Reflejar el mundo
real mediante el
ensamblado de
Clases.
Diseño
Lenguajes
Se Centra en
Idea
Clave
Historia: Evolución en cuanto
conceptualizacion
Programación lineal:
Cada línea de programa debe ir precedida de un identificador
(una etiqueta) para poder referenciarla, para este ejemplo
hemos utilizado números, aunque podría utilizarse
cualquier otro identificador:
1. Hacer una variable igual a 0
2. Sumar 1 a esa variable
3. Mostrar la variable
4. Si la variable es 100 -> terminar, Si_no -> saltar a 1:
Historia: Evolución en cuanto
conceptualizacion
Programación estructurada.
Hacer una variable igual a 0
Mientras que sea menor que 100 -> sumar 1 y mostrarla
Lo importante aquí, es que cuando escribimos un programa
usando las técnicas de programación estructurada, los saltos están
altamente desaconsejados, por no decir prohibidos; en cambio en
BASIC, por ejemplo, son muy frecuentes (todos conocemos el
prolífico GOTO <nLínea>), lo que no es nada conveniente si
queremos entender algo que escribimos hace tres meses de forma
rápida y clara.
Historia: Evolución en cuanto al enfoque
La evolución de los lenguajes de programación, en cuanto a
enfoque es también una evolución conceptual, pero ésta es
tan profunda que supone un cambio drástico en cuanto al
modo de concebir el tratamiento de la programación.
En este sentido, y dependiendo del autor a quien se
consulte, existen dos o tres enfoques diferentes:
Programación procedural
Programación declarativa
Programación orientada a objetos
Historia: Programación Procedural
Casi todos los lenguajes que conocemos trabajan de forma
procedural. Java, C, Pascal, BASIC, Cobol,
Fortran, APL, RPG, Clipper, etc.
En ellos, debemos establecer, hechos (datos), reglas para el
manejo de esos datos y de decisión y tenemos que decirle al
lenguaje cómo alcanzar el objetivo que se persigue. Es
decir, donde buscar la información, cómo manipularla,
cuando parar, etc.
Historia: Programación Declarativa
Los lenguajes más conocidos que existen hasta ahora, salvo
PROLOG, son todos procedurales, éste es declarativo.
En ProLog no programamos, sino que declaramos hechos,
es la maquinaria del lenguaje quien se encargará de extraer
las conclusiones que resulten inferibles de estos hechos.
A esta maquinaria se le llama motor de inferencias, que es,
por otro lado, el corazón de un Sistema Experto.
Probablemente de este tipo de programas -los más famosos
de la Inteligencia Artificial-, habrá usted oído hablar.
Historia: Programación Orientada a Objetos
La OOP es un conjunto de técnicas.
La OOP es casi 100% procedural y, desde
luego, no es en absoluto declarativa.
Historia: OO
Las 4 Propiedades más fuertes de OO son:
• Abstracción: Vista externa del Objeto, con el fin de separar
el Acceso a los Objetos, de su implementación interna.
• Encapsulación: Propiedad que asegura que el contenido de
la información de un objeto está oculto al mundo exterior.
• Modularidad: Permite dividir una aplicación en partes más
pequeñas llamadas módulos, tan independientes como sea
posible.
Jerarquía: Ordena la Abstracción con la Herencia. O La
jerarquía es un ordenamiento de abstracciones
•
-
>
Abstracción
<-
Encapsulamiento
Abstracción y encapsulamiento son conceptos complementarios: la
abstracción enfoca la vista externa de un objeto, y el encapsulamiento
(ocultamiento de la información) previene que los clientes vean la parte
interna, donde el comportamiento de la abstracción es implementada.
<-
Modularidad
<-
Jerarquía
Las
abstrac
ciones
forman
una
jerarquí
a
<-
¿Qué es un Objeto?
• Objeto:Un objeto es una abstracción de un
conjunto de cosas del mundo real de tal forma
que:
● Todos los elementos del conjunto (las instancias)
tienen las mismas características.
● Todas las instancias están sujetas a y conforman
las mismas reglas.
Mundo
Real
Softwar
e
Abstracció
n
¿Qué es un Objeto?
• Características de los objetos:
● Identidad
● Clasificación
● Herencia
● Polimorfismo
• Estas características pueden ser usadas en
forma independiente, pero juntas se
complementan.
Identidad
Una bicicleta roja
Doris
caballo
antena parabólica
Mi Computadora
Variable
unCredito
unDebito
unaCuenta
unaCuentadeAhorros
Dirección
10001324
54647875
87896545
87020486
Una tabla de símbolos
Residencia de Doris
cuenta bancaria
Clasificación
Animal
Vehícu
lo
Figura
Punto
(5,2.5)
(1,3)
(2,2)
(2,1)
Clases y Objetos
Class Template
Objetos
Clase
• Es la plantillas que describe a un
conjunto de objeto, con los mismos
● atributos (variables)
● métodos (funciones)
● relaciones
• Un objeto es una
Comentarios de: Introducción a la Programación - Programación I (0)
No hay comentarios