Download introducción a la programación

Document related concepts
Transcript
INTRODUCCIÓN A LA
PROGRAMACIÓN
1.1 Software de desarrollo

Categorías de los lenguajes
1.2 Software de aplicación
REPASO GENERAL





Software
Hardware
Sistemas
Circuitos
Programación
¿Qué es Programación?
Definiciones de Programación en la web:

Programación es el acto de crear un programa de
computadora, un conjunto concreto de instrucciones
que una computadora puede ejecutar. El programa se
escribe en un lenguaje de programación, aunque
también se pueda escribir directamente en lenguaje
de máquina, con cierta dificultad. Un programa se
puede dividir en diversas partes, que pueden estar
escritas en lenguajes distintos.
es.wikipedia.org/wiki/Programaci%C3%B3n

La acción de escribir un programa de computación.
www.laopinion.com/glossary/p.html
Para qué estudiar Programación?




Cultura General
Curiosidad
“Para desarrollar las habilidades que nos
permitan crear y diseñar una aplicación que
solucione nuestros problemas”.
Conocer el proceso del desarrollo de una
aplicación para lograr resultados
satisfactorios.
INTRODUCCIÓN
DESARROLLADORES
USUARIOS
TÉCNICOS
¿Quiénes son los personajes
principales de la Computadora?
SOFTWARE DE DESARROLLO


El software o programas de desarrollo se
utilizan para crear aplicaciones para resolver
problemas científicos, comerciales,
administrativos o de cualquier tipo.
Estos programas se denominan lenguajes de
programación y están integrados por
programas y utilerías que facilitan la
construcción para los usuarios del sistema
informático.
SOFTWARE DE DESARROLLO


Utilizan directamente el lenguaje nativo de la
computadora.
Debido a la dificultad para usar este
lenguaje, se inventaron otros lenguajes que
permitieron crear programas en cualquier
computadora y traducirlos al lenguaje de una
máquina en particular.
SOFTWARE DE DESARROLLO





Un lenguaje de programación es un conjunto de
símbolos, instrucciones y enunciados que están
sujetos a una serie de reglas.
Utilizan un léxico, una sintaxis y una semántica.
Léxico: conjunto de símbolos conocido como
vocabulario
Sintaxis: reglas para construir el lenguaje
Semántica: conjunto de significados de un
lenguaje
SOFTWARE DE DESARROLLO
Categorías de los Lenguajes de
Programación
1. Lenguaje máquina (lenguaje de bajo nivel)
 Es el que entiende la computadora.
 Las instrucciones se expresan en forma
binaria.
 Los programas creados en lenguaje máquina
solo pueden ejecutarse en los procesadores
para los que fueron creados.
SOFTWARE DE DESARROLLO
Categorías de los Lenguajes de
Programación
2. Lenguaje Ensamblador (lenguaje de nivel
medio)

Emplea representación simbólica y utiliza
procedimientos mnemotécnicos de funciones
matemáticas. Los datos se identifican con
nombres y permiten la introducción de
comentarios para entender el programa con
mayor facilidad y optimiza los recursos del
hardware.
3. Lenguaje de alto nivel





Lenguajes más acorde con el lenguaje humano.
Utilizan palabras y frases (por lo general en inglés).
Permiten modificar los códigos de los programas
con facilidad.
Son independientes de la estructura física de la
computadora, contando con instrucciones de uso
frecuente como las funciones matemáticas.
Son lenguajes de programación alejados del
lenguaje máquina lo cual necesitan ser traducidos
antes de ejecutarse y esta tarea se realiza por
medio de los intérpretes o los compiladores:

INTÉRPRETES: traducen el programa instrucción
por instrucción y este proceso se realiza cada vez
que se ejecuta el programa. Permiten al
programador realizar correcciones durante el
proceso de compilación.

COMPILADORES: funciona en dos etapas: en la
primera traducen el programa y en la segunda crean
un programa objeto en lenguaje máquina. Indican
antes de su ejecución si existen errores para que el
programador realice sus correcciones.
SOFTWARE DE APLICACIÓN




Conjunto de aplicaciones que realizan las funciones
más comunes dentro de la casa, escuela u oficina.
Son aplicaciones básicas que todo usuario debe
conocer.
Procesador de textos: Word, WordPad, Block de
Notas, Edit Pad, Ultra Edit 32, …
Hoja de Cálculo: Excel, Quattro Pro, GS-Calc,
yCode, …
Programa de Presentaciones: PowerPoint,
Freelance Graphics, Corel Presentations, …





Editor de gráfico: Corel Draw, Publisher,
PageMaker, QuarkXpress, …
Administrador de base de datos: dBase,
Access, MySQL, FoxPro, …
Navegador de Internet: Explorer, Netscape
Navigator, Mozilla,…
Correo electrónico: Outlook, CC-Mail,
Eudora,…
Agenda Electrónica: Outlook, PDA´S,…
Evolución de los Lenguajes de
Programación



Primera Generación: se relacionan con las
máquinas integradas por bulbos. Se
programaban con base en instrucciones en
lenguaje máquina.
Segunda Generación: se desarrollan los
lenguajes ensambladores.
Tercera Generación: aparecen los primero
lenguajes de alto nivel, algunos de los cuales
están vigentes hasta la fecha como BASIC,
PASCAL, FORTRAN, C++ y COBOL entre otros.


Cuarta Generación: son los lenguajes
orientados a objetos y gestión de base de
datos, tales son los casos de Visual Basic o
SQL
Quinta Generación: son los lenguajes
orientados hacia las aplicaciones de
inteligencia artificial. Algunos ejemplos son:
LISP y PROLOG.
Características de los
lenguajes de alto nivel



Los programas creados con ellos se pueden
ejecutar en computadoras de distinta
arquitectura.
El programa escrito debe ser traducido a
lenguaje máquina.
Al traducir una instrucción del programa
fuente, genera varias instrucciones en
lenguaje máquina.



Las instrucciones se parecen al lenguaje
natural de las personas. (inglés)
Incluyen funciones matemáticas, de texto y
lógicas.
No aprovechan completamente los recursos
internos de la máquina.
Ejercicio:

Escribe los pasos que realizas un viernes por la
noche cuando tienes boletos para una fiesta.

Algunos de los pasos que realizas pudieran hacerse
de una manera más sencilla y eficiente. Si las
analizas, verás que existe una mejor manera de
hacerla sin repeticiones, con esto programarás tus
actividades de una manera lógica, tal como lo
resuelve la computadora.
Metodología para la solución de
problemas con la computadora
1.
2.
3.
4.
5.
6.
7.
ESPECIFICACIÓN DEL PROBLEMA
ANLÁLISIS DEL PROBLEMA
CODIFICACIÓN
DIGITALIZACIÓN
COMPILACIÓN
VERIFICACIÓN
DOCUMENTACIÓN
ESQUEMA DE UN COMPILADOR
DATOS
Programa
fuente
Compilador
Programa
objeto
Ejecución del
programa
Resultados
ESQUEMA DE UN INTÉRPRETE
DATOS
Programa
fuente
Compilador
Resultados
SOLUCIÓN DE PROBLEMAS
APLICANDO MODELOS MATEMÁTICOS
DATOS
FÓRMULAS
RESULTADOS
SOLUCIÓN DE PROBLEMAS
APLICANDO MODELOS MATEMÁTICOS
ANALISIS
¿Qué datos necesito?
ALGORITMO
Capturar el numero 1
Capturar el numero 2
¿Qué formulas voy a
utilizar?
Algoritmo de la suma:
¿Qué resultados voy a
obtener?
Imprimir el resultado de la
suma.
Suma = numero 1 + numero 2
Características y formas de los
algoritmos
Tres características básicas:
1. Preciso: debe ser concreto, no tener pasos
de mas y la solución tiene que ser clara y
concreta.
2. Congruente: al probarse varias veces los
resultados deben ser los mismos.
3. Finito: al seguir los pasos deben llegar a la
solución, es decir, debe tener termino.
Características y formas de los
algoritmos
Los algoritmos pueden ser creados de dos
formas distintas:
1. Pseudo-código: es un conjunto pequeño y
claro de instrucciones; en secuencia, que
permite llevar a cabo una tarea.
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.
Características y formas de los
algoritmos
En pseudo-código
Inicio
Escribe: (“calcula el area de cualquier rectangulo”)
Escribe: (“de largo mide”)
Captura: (largo)
Escribe: (“de ancho mide”)
Captura: (“ancho”)
Formula: área = largo x ancho
Escribe: (“ el area mide:” , area)
fin
Características y formas de los
algoritmos
En diagrama de flujo
Entrada (in)
inicio
ancho
Entrada (in)
largo
Salida (out)
fin
área
Área = largo x ancho
Estructura para crear un
modelo lineal.


Para elaborar programas que emplean
distintos tipos de valores, debemos conocer
la estructura necesaria:
TIPOS DE VARIABLES: los datos deben ser
almacenados en casillas o celdas de
memoria. Reciben el nombre de variables y
en ellas se almacenan los valores numéricos
o alfanuméricos.


VARIABLES REALES: únicamente
almacenan números “reales”, enteros o
decimales, positivos o negativos.
VARIABLES ALFANUMÉRICAS: almacenan
cualquier valor que no se utilice para realizar
cálculos aritméticos. Una letra, cadena de
letras, direcciones, nombres de personas,
palabras…
OPERADORES ARITMÉTICOS
Operador
Operación
Ejemplo
Resultado
^
Potencia
4^3
64
*
Multiplicación
4*3
12
/
División
4/2
2
+
Suma
4+2
6
-
Resta
4–2
2
=
Asignación
A=3
JERARQUÍA DE OPERACIONES
Jerarquía
Resultado
Comentario
1a.
( 4 / 2) paréntesis
Se ejecutan antes que
ninguna.
2a
4^3 = 64
Después del ()
3a.
4 * 8 = 32 ó 4 / 2 = 2
Tienen la misma
jerarquía
4a.
7–2=5
Tienen la misma
jerarquía
5a.
ó 2+3=5
A=A+1
Al final de la
operación se asigna el
valor