Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Programación 1

Unidad I. Introducción a la programación
by

Lucero Zamora

on 27 August 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Programación 1

Introducción a la programación
Unidad 1
Programación
Definiciones
Lenguaje de programación
Proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos:
2.- Escritura de la lógica del programa empleando un lenguaje de programación especifico (Codificación de programas)
1.- Desarrollo lógico del programa para resolver un problema en particular
3.- Ensamblaje o compilación del programa hasta convertirlo en lenguaje maquina
4.- Prueba y depuración del programa
5.- Desarrollo de la documentación
Idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras.
Usos
Crear programas que controlen el comportamiento físico y lógico de una máquina
Expresar algoritmos con precisión
Como modo de comunicación humana
Código máquina
Historia
La máquina lo comprende fácilmente, pero es excesivamente complicado para las personas.
consiste en cadenas extensas de números 0 y 1
Lenguaje Ensamblador
Lenguaje de programación de bajo nivel para las computadoras, microprocesadores, microcontroladores, y otros circuitos integrados programables.
Implementa una representación simbólica de los códigos de máquina binarios y otras constantes necesarias para programar una arquitectura dada de CPU
Constituye la representación más directa del código máquina
La necesidad de recordar secuencias de programación para las acciones usuales llevó a denominarlas con nombres fáciles de memorizar y asociar
Algunos ejemplos de instrucciones son: ADD (sumar), SUB (restar), MUL (multiplicar), CALL (ejecutar subrutina)
Lenguajes de Alto Nivel
Reciben su denominación porque tienen una estructura sintáctica similar a los lenguajes escritos por los humanos
Ejemplos:
Fortran
Cobol
Pascal
Basic
C/C++
Ada Lovelace
Hija de Anabella Milbanke Byron y Lord Byron
Tradujo y amplió una descripción de la máquina analítica de Charles Babbage
El trabajo que Ada realizó con las máquinas de Babbage le hizo ganarse el título de primera programadora de computadoras del mundo
El lenguaje de programación Ada fue llamado asi como homenaje a esta programadora en la decada de los 70's
Fortran
Creado por Jonh Backus a finales de 1953
Fue una alternativa más práctica que el lenguaje ensamblador para programar la computadora central IBM 704
El primer manual para el lenguaje Fortran apareció en octubre de 1956
El primer compilador Fortran entregado en abril de 1957, era un compilador optimizado, porque los clientes eran reacios a usar un lenguaje de alto nivel
Cobol
Creado en 1960
Es uno de los lenguajes mas utilizados en la actualidad sobre todo en informática de gestión
COmmon Business-Oriented Language, Lenguaje Común Orientado a Negocios
BCPL y B.BCPL
Desarrollados en 1967 por Martin Richards
Lenguaje para escribir SW de SO y compiladores
Unix
Creado por Ken Thompson en 1970
Basado en B y desarrollado en los laboratorios bell en la computadora DEC PDP-7
C/C++
Evolución de B, realizada por Dennis Richie en los laboratorios bell
Implementado en la computadora DEC PDP-11 en 1972
C++ desarrollado por Bjarne Stroustup a principios de los 80's
Proporciona capacidades para la POO
código máquina
Lenguaje Ensamblador
Pascal
Diseñado por Niklaus Wirth en 1971
Basic
Java
El nombre de Pascal fue escogido en honor al matemático Blaise Pascal
Siglas de Beginner's All-purpose Symbolic Instruction Code
Diseñado en 1964 por John George Kemeny y Thomas Eugene Kurtz en el Dartmouth College en New Hampshire, Estados Unidos
Originalmente fue desarrollado como una herramienta de enseñanza
El lenguaje y sus variantes llegaron a estar ampliamente disponibles en los microcomputadores a finales de los años 1970 y en los años 1980
Lenguaje de programación de alto nivel orientado a objetos
Desarrollado por James Gosling en 1995.
Basado en C/C++, Cobol y Visual Basic
Uno de sus atractivos es su portabilidad
¿Qué es?
Paradigma
Ejemplo o modelo
Sinónimo de
conjunto de teorías
Paradigma de Programación
Son las formas en un programador determina los métodos y herramientas que usara en el desarrollo de un sw
Los lenguajes de programación están basados en uno o más paradigmas, a estos podemos llamarles multiparadigmas
Un lenguaje de programación puede soportar distintos paradigmas de programación con el fin de que un programador utilice el mas conveniente a la hr de resolver un problema
Ningún paradigma es capaz de resolver todos los problemas de manera sencilla y eficiente
Imperativo
Tipos
Lógico
Funcional
Declarativo
Orientado a Objetos
Describe la programación en términos del estado del programa y sentencias que cambian dicho estado.
Los programas imperativos son un conjunto de instrucciones que le indican a la computadora cómo realizar una tarea.
La implementación de hardware de la mayoría de computadores es imperativa
Los lenguajes imperativos de alto nivel usan variables y sentencias más complejas, pero aún siguen el mismo paradigma
Algunos lenguajes imperativos son:
BASIC
C
Fortran
Pascal
Perl
PHP
Lua
Java
Encuentra su hábitat natural en aplicaciones de inteligencia artificial o relacionadas
Sistemas expertos, donde un sistema de información imita las recomendaciones de un experto sobre algún dominio de conocimiento.
Demostración automática de teoremas, donde un programa genera nuevos teoremas sobre una teoría existente
Reconocimiento de lenguaje natural, donde un programa es capaz de comprender (con limitaciones) la información contenida en una expresión lingüística humana.
Se basa en el desarrollo de programas especificando o "declarando" un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones que describen el problema y detallan su solución.
La solución es obtenida mediante mecanismos internos de control, sin especificar exactamente cómo encontrarla (tan sólo se le indica a la computadora que es lo que se desea obtener o que es lo que se está buscando).
Imperativo vs Declarativo
Imperativo describe los pasos necesarios para solucionar el problema
Declarativo describe el problema que se quiere solucionar, pero no las instrucciones necesarias para solucionarlo
Demuestra un tipo de programación en forma de funciones matemáticas
Los lenguajes puramente funcionales evitan efectos secundarios que pueden ser comunes en otros tipos de paradigmas
Su objetivo es conseguir lenguajes expresivos y matemáticamente elegantes, en los que no sea necesario bajar al nivel de la máquina para describir el proceso llevado a cabo por el programa
Usa los objetos en sus interacciones, para diseñar aplicaciones y programas informáticos
Está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y encapsulamiento
Los objetos son entidades que tienen un determinado estado, comportamiento (método) e identidad
Algunos lenguajes orientados a objetos son:
ABAP -> SAP Lenguaje orientado a eventos
ABL Lenguaje de programación de OpenEdge de Progress Software
ActionScrip
Ada
C++
C#
Clarion
Clipper (lenguaje de programación) (Versión 5.x con librería de objetos Class(y))
D
Object Pascal (Embarcadero Delphi)
Gambas
Genie
Harbour
Eiffel
Fortran 90/95
Java
JavaScript (la herencia se realiza por medio de la programación basada en prototipos)
Lexico (en castellano)
Objective-C
Ocaml
Oz
R
Perl (soporta herencia múltiple. La resolución se realiza en preorden, pero puede modificarse al algoritmo linearization C3 por medio del módulo Class::C3 en CPAN)
PHP (a partir de su versión 5)
PowerBuilder
Python
Ruby
Smalltalk (Entorno de objetos puro)
Magik (SmallWorld)
Vala
VB.NET
Visual FoxPro (en su versión 6)
Visual Basic 6.0
Visual DataFlex
Visual Objects
XBase++
Lenguaje DRP
Lenguaje de programación Scala (lenguaje usado por Twitter) http://www.scala-lang.org/page.jsp
Análisis
Procesos de desarrollo de SW
Proceso
Define quien esta haciendo que, cuando, y como alcanzar un determinado objetivo
Es la base para que todo proyecto se realice de forma correcta y entendible.
Diseño
Codificación
Pruebas y Depuración
Validación
Se estudian las necesidades de los usuarios
Se decide qué debe hacer la
aplicación informática para satisfacerlas en todo o en parte
Se genera un
Documento de Requisitos.
Se estudia el Documento de Requisitos
Se establece la estructura global de la
aplicación
Se genera un Documento de Diseño
Se fijan las funciones de cada
módulo, con el detalle de su interfaz
Se genera la especificación de cada módulo.
Se desarrolla el código de cada módulo.
Como complemento de la codificación, cada módulo o grupo de módulos se
prueba por separado
En las pruebas se comprueba si cada módulo cumple con su
especificación de diseño detallado
Se hace funcionar la aplicación completa, combinando todos sus módulos
Se realizan ensayos para comprobar que el funcionamiento de conjunto cumple lo
establecido en el documento de diseño.
Como paso final de la integración se realizan nuevas pruebas de la aplicación en
su conjunto
El objetivo es comprobar que el producto desarrollado
cumple con lo establecido en el documento de requisitos, y satisface por tanto las
necesidades de los usuarios en la medida prevista
Léxico y sintaxis
Lenguaje
Conjunto de símbolos y palabras (vocabulario o léxico) y conjunto de reglas (sintaxis y semántica) que permiten agrupar los símbolos para formar las frases del lenguaje
Léxico
Conjunto de símbolos que se pueden usar en un lenguaje
Por ejemplo:
Identificadores.- Nombres simbólicos que se le darán a ciertos elementos de programación
Constantes.- Datos que no cambiarán su valor a lo largo del programa
Operadores.- Símbolos que representan operaciones entre variables y constantes
Instrucciones.- Símbolos especiales que representaran estructuras de procesamiento y de definición de elementos de programación
Comentarios.- Texto que se usará para documentar los programas
Sintaxis
Reglas que dicen si una frase esta bien escrita o no
Operadores aritméticos, lógicos y relacionales y su precedencia
Precedencia de los operadores aritméticos
Operadores aritméticos
Funciones básicas de E/S
#include <iostream.h>
cout<<" "
cin>>
Libreria para E/S de datos
Muestra en pantalla el contenido de la cadena que esta entre paréntesis
Se utiliza para introducir datos
Creado por Gottfried Wilhelm Leibniz en 1679,
Ing. Lucero Zamora M
Full transcript