of 44
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
1/44
Programacin I
Ing. Elctrica, Electrnica
Unidad 1
Conceptos Generales
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
2/44
Docente
Ing. Orlando Barcia Ayala
Website: www.orlandobarcia.com
E-mail: [email protected]
Cursos online:Blog.orlandobarcia.comwww.orlandobarcia.com/cursos
http://www.orlandobarcia.com/mailto:[email protected]://www.orlandobarcia.com/cursoshttp://www.orlandobarcia.com/cursoshttp://www.orlandobarcia.com/cursoshttp://www.orlandobarcia.com/cursoshttp://www.orlandobarcia.com/cursosmailto:[email protected]://www.orlandobarcia.com/7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
3/44
AGENDA
Conceptos Generales
Conceptos Bsicos
Etapas del ciclo de vida del software
Tipos de Lenguajes de programacin.
Terminologa
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
4/44
Informacin
Cualquier proceso de comunicacin.
En informtica realizamos: Tratamiento o procesamiento de la
informacin por medio del computador
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
5/44
Dato vs Informacin
Lluvia de ideas :
Qu diferencias existe(n) entre dato e
informacin?
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
6/44
Computador
Es una mquina que realiza y controla agran velocidad clculos y procesoscomplicados, y que es capaz dealmacenar y ejecutar ordenes oinstrucciones conocida como programas.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
7/44
Estructura del computador(John Von Neumann)
ENTRADAPROCESADORCPU SALIDA
MEMORIA
TRES PARTES +almacenamiento
Interna
Externa (auxiliar)
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
8/44
Estructura del computador
Procesador. CPU. Permite interpretar las rdenes y los programas. Realizar los clculos necesarios.
Memoria. Permite almacenar programas y datos. Memoria interna. Almacena los datos frecuentes utilizados. RAM
Memoria externa. Almacena de forma permanente. HD
Dispositivos de entrada y salida. E/S Permiten recibir los datos, los programas y lasordenes.
Proporcionar y mostrar las respuestas pedidas
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
9/44
Dispositivos perifricos
Que se encuentran en la periferia opermetro :
Disco duro Dispositivos entrada y salida Teclado
Monitor impresoras
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
10/44
Hardware
Parte fsica del computador, tangible
Conjunto de dispositivos fsicos del
computador y de los perifricos.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
11/44
Software
Parte lgica o intangible Conjunto de programas con los que el
computador trabaja. Instrucciones que cuando se ejecutan
proporcionan la funcin y el rendimientodeseado.
Estructuras de datos que permiten a losprogramas manipular adecuadamente lainformacin.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
12/44
Indique ejemplos : CPU. Procesadores
pentium, celeron, dual core, core 2 duo , quad core, I3, I5, I7 INTEL Athlon, XP, 64, X2, Turion, PHENOM I, II, FX 4GHZ
Dispositivo de entrada. Teclado, mouse, pantalla tactil (touch screen),
Dispositivo de salida Monitor, impresora, proyector,
Memoria interna Memoria RAM 512MB, 1GB , ,2GB, 4GB (DDR, DDR2, DDR3)
Memoria externa Disco Duro, 80GB, 150GB, 400GB , 800 GB, 1000GB = 1 TB (sata 2 , sata 3.0 antes IDE)
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
13/44
Caractersticas del software
El software se desarrolla, no se fabrica.
El software no se estropea fsicamente
La mayora del software se construye amedida, en vez de ensamblarcomponentes existentes.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
14/44
Aplicaciones del software
Software de sistemas
Software de tiempo real
Software de gestin comercial Software de ingeniera y cientfico
Software empotrado
Software de computadores personales Software de inteligencia artificial
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
15/44
Ciclo de vida del software
Son modelos, existen muchos
Explican estrategias para resolver losproblemas durante su desarrollo, puesta aprueba y ejecucin.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
16/44
Etapas del ciclo de vida delsoftware
Modelo de cascada o secuencial
Modelo DRA. Desarrollo rpido deaplicaciones
Modelo incremental
Modelo espiral Boehm
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
17/44
MODELO LINEAL SECUENCIAL OCASCADA
Anlisis,
Diseo,
Implementacin, pruebas y mantenimiento.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
18/44
ANALISIS. Qu, requerimientos
DISEO . Cmo resolver problema, pasos, algoritmos.
IMPLEMENTACIN.
Resolverel problema medianteprogramacin.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
19/44
Pero :
Qu es programa?
Qu es Programacin? Lenguaje de programacin?
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
20/44
Programa
Una lista de instrucciones u ordenes,que indican al computador que es lo quetiene que hacer para resolver los
problemas que planteemos. Las instrucciones deben ser acordes al
lenguaje
1) El programa debe ser eficiente 2) El programa debe ser claro
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
21/44
Ejemplos de Programas
Word, Excel PowerPoint AutoCad MatLab Explorer Adobe Acrobat e inclusive Windows
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
22/44
Programacin
Eslaaccinyefectoderealizarprogramas
Laprogramacinserigeporreglas
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
23/44
QueesLenguaje?
Sedefinecomounsistemadecomunicacin,quenospermiteabstraerycomunicarconceptos
Eltrmino"lenguajenatural"defineunmediodecomunicacincompartidoporungrupodepersonas(porejemplo:inglsofrancs
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
24/44
Lenguaje de programacin
Es un lenguaje diseado para describir elconjunto de acciones consecutivas que unequipo debe ejecutar.
un lenguaje de programacin es un modoprctico para que los seres humanospuedan dar instrucciones a un equipo
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
25/44
Otras definiciones
Lenguaje de programacin
Lenguaje artificial que puede ser usadopara controlar el comportamiento de unamquina, especialmente unacomputadora.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
26/44
Lenguaje de programacin.
Se componen de un conjunto de reglassintcticas y semnticas que permitenexpresar instrucciones que luego serninterpretadas
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
27/44
El programadores el encargado de utilizarun lenguaje de programacin para crearun conjunto de instrucciones que, al final,
constituir un programa o subprogramainformtico
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
28/44
Lenguajes de programacin
Definicin Tcnica: Es cualquier conjunto de cadenas de
caracteres.
Cada cadena debe ser de longitud finita Incluir caracteres elegido de algn Alfabeto
finito fijo de smbolos
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
29/44
Atributos de un buen lenguaje deprogramacin.
Claridad y sencillez
Crear nuevos tipos de datos (abstraccin)
Facilidad para verificar programas Entorno de programacin.(IDE)
Portabilidad del programa
lenguaje es independiente de una mquinaen particular
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
30/44
Sistema Operativo
Es un programa que administra losrecursos del computador.
Ejemplos: OS/2, DOS
MacOs
GNU Linux distribuciones redhat, mandrake, ubuntu, fedora
Windows 95, 98, 2000, Me, XP, Vista
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
31/44
Lenguaje alto y bajo nivel
Lenguaje Alto nivel. Programacin ms fcil Mas entendible por el ser humano.
Lenguaje de Bajo nivel. Menos entendible por el ser humano.
Lenguaje Ensamblador.
Pocas instrucciones. Programas largos y complejos Lenguaje mquina. (1 y 0)
Entendible por el computador El computador solo comprende lenguaje mquina
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
32/44
Evolucin de los lenguajescomputacionales
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
33/44
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
34/44
Traductores
Convierte programas De cdigo fuente a Otro lenguaje equivalente (cdigo objeto).
Por lo general es a lenguaje de mquina de la computadora.
Cdigo fuente Cdigo objetotraductor
Alto o bajo nivel Alto o bajo nivel
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
35/44
Traductores
Traduccin: Alto a alto nivel
Traduccin: Alto a bajo nivelCdigo fuente Cdigo objetotraductor
Lenguaje JAVA Cdigo bytecode
Cdigo fuente Cdigo objetotraductor
Rational Rose CASE Lenguaje JAVA
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
36/44
Traductores
Traduccin: Bajo a bajo nivel
Traduccin: Bajo a bajo nivelCdigo fuente Cdigo objetotraductor
Ensamblador Lenguaje mquina
Cdigo fuente Cdigo objetotraductor
Mquina virtual Lenguaje mquina
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
37/44
TIPOS DE TRADUCTORES
ENSAMBLADOR
COMPILADOR ****
CARGADOR o EDITOR DE VINCULOS PREPROCESADOS
INTERPRETADOS.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
38/44
TIPOS DE TRADUCTORES
COMPILADOR:
Lenguaje fuente: lenguaje de alto nivel
Lenguaje objeto: se aproxima al lenguajemquina de la computadora.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
39/44
Tipos de lenguajes deprogramacin
Los lenguajes de programacin puedenclasificarse segn el paradigma que usan en: procedimentales,
orientados a objetos, funcionales,
lgicos, hbridos, etc.
Son ejemplos de lenguajes de programacin: php,prolog, Asp, python, pascal, c, basic, JAVA, etc.
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
40/44
Visual basic 5 y 6
Php 4
TIPOS DE LENGUAJES DE
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
41/44
Estructurados. C
Basic
Foxpro
Pascal
Visual basic 5, 6
Php 4
TIPOS DE LENGUAJES DEPROGRAMACIN
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
42/44
TIPOS DE LENGUAJES DEPROGRAMACION
ORIENTADOSAOBJETOS JAVA
Smalltalk
Pascalobject
C++
Php5
Dot NET
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
43/44
Lluvia de ideas:
Qu ser Java?
Un programa, un lenguaje de programacin,
Ser software?
7/27/2019 2012 1 Unidad 1 ProgI ConceptosGenerales Ing Elec Obarcia
44/44
Bibliografa
DEITEL,Harvey. DEITEL Paul(2004). Cmo programar en Java. QuintaEdicin. Pearson Educacin. Mexico.
CEBALLOS, Javier(2006). Curso de Programacin Java 2,. Editorial RAMA.
HOLZNER, Steven. (2007)La Biblia de Java 2. Anaya Multimedia.
ECKEL, Bruce. (2000)Thinking in Java. Second Edition. Prentice Hall.
JALON, Javier et all. (2000.)Aprenda Java como si estuviera en primero.Universidad de Navarra.Escuela de Ingenierios Industriales.
JOYANES, L. (2008). Fundamentos de la programacin. Algoritmos yEstructura de Datos, 4 Edicin. Madrid: McGraw-Hill.
JOYANES, L.; RODRIGUEZ, L; FERNANDEZ, M. (2003). Fundamentos de
programacin Libro de problemas. 2 Edicin. Madrid: McGraw-Hill.