Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Clase01

1,113 views

Published on

Explicación de los objetivos del curso, contenidos, historia de los lenguajes, paradigmas de programación, lenguajes de programación, solución de problemas.

Published in: Education
  • Be the first to comment

Clase01

  1. 1. Introducción a la Programación Leonel Morales Díaz Ingeniería Simple [email_address] Disponible en: http://www.ingenieriasimple.com/introprogra Copyright 2008 by Leonel Morales Díaz – Ingeniería Simple. Derechos reservados
  2. 2. Objetivos <ul><li>Aprender a programar </li></ul><ul><ul><li>Importancia de la sintáxis </li></ul></ul><ul><ul><li>Estructuras de programación </li></ul></ul><ul><li>Programar en cualquier computadora </li></ul><ul><ul><li>HTML - DHTML </li></ul></ul><ul><ul><li>VBScript – Javascript </li></ul></ul><ul><ul><li>HTML Applications </li></ul></ul>
  3. 3. Contenidos <ul><li>Breve historia de los lenjuages </li></ul><ul><li>Categorías de los lenguajes </li></ul><ul><li>Estructuras de programación </li></ul><ul><li>Formular soluciones algorítmicas </li></ul><ul><li>Implementar soluciones en lenguajes </li></ul><ul><li>Programación básica de objetos </li></ul>
  4. 4. Contenidos adicionales <ul><li>Familias de objetos: </li></ul><ul><ul><li>DOM, Excel, FileSystemObject (Windows) </li></ul></ul><ul><li>Teoría básica del color </li></ul><ul><li>Metodologías de diseño y prototipado </li></ul><ul><li>Tipos de algoritmos </li></ul><ul><ul><li>Recursivos, backtracking, dividir y conquistar, fuerza bruta, ascenso de colina, etc. </li></ul></ul>
  5. 5. Historia de los lenguajes Breve...
  6. 6. Prehistoria <ul><li>Charles Babbage </li></ul><ul><ul><li>Construyó computadora </li></ul></ul><ul><li>Ada Lovelace </li></ul><ul><ul><li>Lenguaje para programar telares </li></ul></ul>
  7. 7. II Guerra Mundial <ul><li>Alan Turing </li></ul><ul><ul><li>Máquinas de Turing </li></ul></ul><ul><ul><li>Test de Turing </li></ul></ul><ul><li>ENIAC </li></ul><ul><ul><li>Programación por conmutadores </li></ul></ul><ul><li>John Von Neumann </li></ul><ul><ul><li>El programa almacenado </li></ul></ul>
  8. 8. Primeros lenguajes <ul><li>Decada de los 40: </li></ul><ul><ul><li>Código de máquina </li></ul></ul><ul><ul><li>Binario </li></ul></ul><ul><ul><li>Códigos de operación </li></ul></ul><ul><ul><ul><li>Sumar 0001 </li></ul></ul></ul><ul><ul><ul><li>Restar 0010 </li></ul></ul></ul><ul><li>Más adelante: PNemónicos </li></ul>
  9. 9. Lenguajes de “alto nivel” <ul><li>Más próximos al lenguaje natural </li></ul><ul><li>Los primeros (1955 ->) </li></ul><ul><ul><li>FORTRAN (Formula Translator) </li></ul></ul><ul><ul><li>COBOL (Common Business Oriented Language) </li></ul></ul><ul><ul><li>ALGOL (Algorithmic Language) (60s) </li></ul></ul><ul><ul><ul><li>Pascal, C, SmallTalk, Java </li></ul></ul></ul><ul><ul><li>LISP (List Procesor) (60s) </li></ul></ul>
  10. 10. ¿Cuándo aparecieron? <ul><li>Pascal 1970 </li></ul><ul><li>C 1972 </li></ul><ul><li>Prolog 1973 </li></ul><ul><li>SEQUEL 1975 </li></ul><ul><ul><li>SQL 1992 </li></ul></ul><ul><li>Visual Basic 1992 </li></ul><ul><ul><li>Basic 1960 </li></ul></ul><ul><li>Java 1996 </li></ul>
  11. 11. Paradigmas de programación <ul><li>Lenguajes imperativos </li></ul><ul><ul><li>Programa: serie de pasos </li></ul></ul><ul><ul><ul><li>Un cálculo, una entrada o una salida </li></ul></ul></ul><ul><ul><ul><li>Condicionales, bucles y secuencias </li></ul></ul></ul><ul><ul><li>Cobol, Fortran, C </li></ul></ul><ul><li>Orientado a objetos </li></ul><ul><ul><li>Programa: colección de objetos </li></ul></ul><ul><ul><ul><li>Objetos interactúan entre sí </li></ul></ul></ul><ul><ul><li>Smalltalk, Java, C++ </li></ul></ul>
  12. 12. Paradigmas de programación <ul><li>Programación funcional </li></ul><ul><ul><li>Programa: colección de funciones </li></ul></ul><ul><ul><ul><li>Funciones matemáticas: dominio y contradominio </li></ul></ul></ul><ul><ul><ul><li>Interactúan entre sí </li></ul></ul></ul><ul><ul><ul><ul><li>Condicionales, recursividad, composición funcional </li></ul></ul></ul></ul><ul><ul><li>Lisp, Scheme </li></ul></ul>
  13. 13. Paradigmas de programación <ul><li>Programación Lógica </li></ul><ul><ul><li>Programa: declaraciones lógicas </li></ul></ul><ul><ul><ul><li>Falso o verdadero </li></ul></ul></ul><ul><ul><ul><li>Backtracking </li></ul></ul></ul><ul><ul><li>Prolog </li></ul></ul><ul><li>Guiada por eventos </li></ul><ul><ul><li>Programa: ciclo de respuesta a eventos </li></ul></ul><ul><ul><ul><li>Evento: suceso generado por el entorno </li></ul></ul></ul><ul><ul><li>Visual Basic, Java </li></ul></ul>
  14. 14. Paradigmas de programación <ul><li>Programación concurrente </li></ul><ul><ul><li>Programa: colección de procesos cooperativos </li></ul></ul><ul><ul><ul><li>Comparten información y recursos </li></ul></ul></ul><ul><ul><li>Simulación por computadora </li></ul></ul><ul><ul><li>Sistemas operativos </li></ul></ul><ul><ul><li>GPSS, Java, SQL </li></ul></ul>
  15. 15. Lenguajes de Programación Contexto de uso
  16. 16. Programación de sistemas <ul><li>Sistema: </li></ul><ul><ul><li>Conjunto de elementos </li></ul></ul><ul><ul><li>Que interactúan </li></ul></ul><ul><ul><li>Para lograr un fín </li></ul></ul><ul><li>Ludwing Von Bertalanffy </li></ul><ul><ul><li>El enfoque sistémico </li></ul></ul><ul><li>Sistemas informáticos </li></ul>
  17. 17. Solución de problemas <ul><li>Contexto más general </li></ul><ul><li>Se plantea un problema </li></ul><ul><li>Se diseña un algoritmo de solución </li></ul><ul><li>Se traslada el algoritmo a programa </li></ul><ul><li>Se corre el programa </li></ul><ul><li>Se obtiene la solución </li></ul>

×