estrella 0 - fundamentos de la programación programa microsoft desarrollador cinco estrellas

32
Estrella 0 - Estrella 0 - Fundamentos de la Fundamentos de la Programación Programación Programa Microsoft Programa Microsoft Desarrollador Cinco Desarrollador Cinco Estrellas Estrellas

Upload: evita-cruce

Post on 03-Jan-2015

15 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Estrella 0 -Estrella 0 -Fundamentos de la Fundamentos de la

ProgramaciónProgramación

Programa Microsoft Programa Microsoft Desarrollador Cinco Desarrollador Cinco

EstrellasEstrellas

Programa Microsoft Programa Microsoft Desarrollador Cinco Desarrollador Cinco

EstrellasEstrellas

Page 2: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

ObjetivoObjetivo

Mostrar los fundamentos de la Mostrar los fundamentos de la programación a través de ejemplos y programación a través de ejemplos y prácticas utilizadas cotidianamente prácticas utilizadas cotidianamente

en el desarrollo de aplicacionesen el desarrollo de aplicaciones

Page 3: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

PrerrequisitosPrerrequisitos

El presente curso asumirá El presente curso asumirá conocimientos básicos deconocimientos básicos de ComputadoraComputadora Dispositivos de Entrada/SalidaDispositivos de Entrada/Salida Organización Física de una Organización Física de una

computadora (CPU, Memoria)computadora (CPU, Memoria) Sistemas OperativosSistemas Operativos

Page 4: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Temas a Tratar (1/2)Temas a Tratar (1/2)

El Software El Software Lenguajes de programaciónLenguajes de programaciónResolución de problemas con Resolución de problemas con computadoracomputadoraEntorno de programaciónEntorno de programaciónTipos de DatosTipos de DatosVariables y Constantes Variables y Constantes SentenciasSentenciasOperadores y ExpresionesOperadores y Expresiones

Page 5: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Temas a Tratar (2/2)Temas a Tratar (2/2)

Estructuras Básicas de Control Estructuras Básicas de Control Procedimientos y FuncionesProcedimientos y FuncionesVisibilidad de variables Visibilidad de variables BibliotecasBibliotecasArraysArraysEl Estilo de ProgramaciónEl Estilo de Programación

Page 6: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

El SoftwareEl Software

Las operaciones que debe realizar el Las operaciones que debe realizar el hardware son especificadas con una hardware son especificadas con una lista de instrucciones, llamadas lista de instrucciones, llamadas programas o software.programas o software.Dos grandes grupos de softwareDos grandes grupos de software Software del SistemaSoftware del Sistema

Indispensable para que la máquina Indispensable para que la máquina funcione y poder escribir programas funcione y poder escribir programas de aplicaciónde aplicación

Software de AplicaciónSoftware de Aplicación Realizan tareas concretas que tienen Realizan tareas concretas que tienen

utilidad para ciertos usuariosutilidad para ciertos usuarios

Page 7: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Lenguajes de Programación Lenguajes de Programación (1/2)(1/2)

Lenguajes utilizados para escribir Lenguajes utilizados para escribir programas de computadoras que programas de computadoras que puedan ser entendidos por ellaspuedan ser entendidos por ellasSe clasifican en tres grandes Se clasifican en tres grandes categoríascategorías lenguajes de máquinalenguajes de máquina

instrucciones directamente instrucciones directamente entendibles por la computadora entendibles por la computadora (lenguaje binario)(lenguaje binario)

lenguajes de bajo nivellenguajes de bajo nivel Proveen un juego de instrucciones Proveen un juego de instrucciones

más comprensibles por los humanosmás comprensibles por los humanos lenguajes de alto nivellenguajes de alto nivel

Page 8: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Lenguajes de Programación Lenguajes de Programación (2/2)(2/2)

Lenguajes de alto nivelLenguajes de alto nivel Utilizan instrucciones escritas con palabras Utilizan instrucciones escritas con palabras

similares a los lenguajes humanossimilares a los lenguajes humanos Son independientes de la máquina en la que Son independientes de la máquina en la que

se ejecutanse ejecutan Necesitan ser traducidos a instrucciones en Necesitan ser traducidos a instrucciones en

lenguaje máquina (Compilación)lenguaje máquina (Compilación)

Existen diversos tiposExisten diversos tipos EstructuradosEstructurados Orientados a ObjetosOrientados a Objetos DeclarativosDeclarativos FuncionalesFuncionales

Page 9: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Resolución de problemas con Resolución de problemas con computadoracomputadora

El proceso de diseñar un programa El proceso de diseñar un programa es, esencialmente, un proceso es, esencialmente, un proceso creativo.creativo.Sin embargo, hay una serie de Sin embargo, hay una serie de pasos comunes a seguir:pasos comunes a seguir: Análisis del problemaAnálisis del problema Diseño del algoritmo soluciónDiseño del algoritmo solución CodificaciónCodificación Compilación y EjecuciónCompilación y Ejecución VerificaciónVerificación DepuraciónDepuración DocumentaciónDocumentación

Page 10: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Entorno de ProgramaciónEntorno de Programación

También conocidos como IDEsTambién conocidos como IDEsHerramienta esencial a la hora de Herramienta esencial a la hora de desarrollar softwaredesarrollar softwareIncluyeIncluye EditorEditor Intérprete o CompiladorIntérprete o Compilador DepuradorDepurador Ayuda en líneaAyuda en línea

Page 11: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Tipos de DatosTipos de DatosDatos: piezas de información con Datos: piezas de información con las que un programa trabajalas que un programa trabajaCada dato tiene asociado un único Cada dato tiene asociado un único TipoTipoEl Tipo de Dato determina la El Tipo de Dato determina la naturaleza del conjunto de valores naturaleza del conjunto de valores que un dato puede tomarque un dato puede tomarEjemplos:Ejemplos: Número EnteroNúmero Entero Número RealNúmero Real Cadena de CaracteresCadena de Caracteres Valor Lógico (Verdadero o Falso)Valor Lógico (Verdadero o Falso)

Page 12: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Variables y ConstantesVariables y Constantes

Existen dos grupos principales de Existen dos grupos principales de datosdatos Constantes: su valor no puede cambiar Constantes: su valor no puede cambiar

durante la ejecución de un programadurante la ejecución de un programa Variables: su valor puede cambiar Variables: su valor puede cambiar

durante la ejecución de un programadurante la ejecución de un programa

Ambas tienen un nombre y un valorAmbas tienen un nombre y un valorAmbas permiten representar Ambas permiten representar mediante un nombre a una posición mediante un nombre a una posición de memoria que contiene el valorde memoria que contiene el valor

Page 13: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

SentenciasSentencias

Describen acciones algorítmicas que Describen acciones algorítmicas que pueden ser ejecutadaspueden ser ejecutadasSe clasifican enSe clasifican en Ejecutables / No ejecutablesEjecutables / No ejecutables Simples / EstructuradasSimples / Estructuradas

Page 14: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Operadores y Expresiones Operadores y Expresiones (1/2)(1/2)

Sirven para procesar variables y Sirven para procesar variables y constantesconstantesUna expresión es un conjunto de Una expresión es un conjunto de datos unidos por operadores que datos unidos por operadores que tiene un único resultadotiene un único resultado Expresiones aritméticasExpresiones aritméticas

El resultado es un númeroEl resultado es un número a = ((2+6) / 8) * 3a = ((2+6) / 8) * 3

Expresiones lógicasExpresiones lógicas El resultado es un valor verdadero o falsoEl resultado es un valor verdadero o falso (a < 10) y (b > 50)(a < 10) y (b > 50)

Page 15: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Operadores y Expresiones Operadores y Expresiones (2/2)(2/2)

Existen diversos tiposExisten diversos tipos Aritméticos: suma, resta, Aritméticos: suma, resta,

multiplicación, etc.multiplicación, etc. De relación: igual, mayor, menor, De relación: igual, mayor, menor,

distinto, etc.distinto, etc. Lógicos: and, or, not, etc.Lógicos: and, or, not, etc.

Page 16: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Estructuras de ControlEstructuras de Control

El orden de ejecución de las El orden de ejecución de las sentencias de un programa sentencias de un programa determina su flujo de controldetermina su flujo de controlLas estructuras de control permiten Las estructuras de control permiten alterar el orden del flujo de controlalterar el orden del flujo de controlExisten dos tipos básicosExisten dos tipos básicos De SelecciónDe Selección De Repetición o IteraciónDe Repetición o Iteración

Page 17: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Estructuras de Control Estructuras de Control Selectivas (1/2)Selectivas (1/2)

Dirigen el flujo de ejecución según Dirigen el flujo de ejecución según el resultado de evaluación de el resultado de evaluación de expresionesexpresionesIFIF sisi expresion_logica expresion_logica

entoncesentonces hacer acción Ahacer acción A sinosino hacer acción Bhacer acción Bfin_sifin_si

Page 18: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Estructuras de Control Estructuras de Control Selectivas (2/2)Selectivas (2/2)

CASECASE según_seasegún_sea selector selector hacerhacer

C11,C12,…: C11,C12,…: sentencia 1sentencia 1 C21,C22,…: C21,C22,…: sentencia sentencia

22……....

[[sinosino sentencia x] sentencia x]fin_segúnfin_según

Page 19: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Estructuras de Control Estructuras de Control Repetitivas (1/3)Repetitivas (1/3)

Permiten ejecutar un conjunto de Permiten ejecutar un conjunto de sentencias repetidamente una sentencias repetidamente una cierta cantidad de veces o hasta cierta cantidad de veces o hasta que se cumpla una determinada que se cumpla una determinada condicióncondiciónEl conjunto de sentencias se El conjunto de sentencias se denomina bucledenomina bucleCada repetición del cuerpo del bucle Cada repetición del cuerpo del bucle se denomina iteraciónse denomina iteración

Page 20: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Estructuras de Control Estructuras de Control Repetitivas (2/3)Repetitivas (2/3)

WHILEWHILE mientrasmientras condición condición hacerhacer

sentencia/ssentencia/s……....

fin_mientrasfin_mientras

Page 21: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Estructuras de Control Estructuras de Control Repetitivas (3/3)Repetitivas (3/3)

FORFOR desdedesde variable valor_inicial

hastahasta valor_final hacerhacer

sentencia/ssentencia/s……....

fin_desdefin_desde

Page 22: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Procedimientos y Funciones Procedimientos y Funciones (1/4)(1/4)

Descomposición en subprogramas: Descomposición en subprogramas: estrategia para resolver problemas estrategia para resolver problemas complejoscomplejosLos subprogramas se implementan a Los subprogramas se implementan a través de procedimientos y funcionestravés de procedimientos y funciones Compuestos por un grupo de sentenciasCompuestos por un grupo de sentencias Se les asigna un nombreSe les asigna un nombre Pueden invocarse entre sí utilizando ese nombrePueden invocarse entre sí utilizando ese nombre Constituyen una unidad de programaConstituyen una unidad de programa

Page 23: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Procedimientos y Funciones Procedimientos y Funciones (2/4)(2/4)

Los procedimientos y funciones se Los procedimientos y funciones se comunican con su invocador a través comunican con su invocador a través de parámetros.de parámetros.Los parámetros son un medio para Los parámetros son un medio para pasar información, implementados a pasar información, implementados a través de variables con valor.través de variables con valor.Tipos de parámetroTipos de parámetro De Entrada: su valor es proporcionado De Entrada: su valor es proporcionado

por el invocador antes de llamar al por el invocador antes de llamar al subprogramasubprograma

De Salida: su valor es calculado dentro de De Salida: su valor es calculado dentro de un subprograma y devuelto a su un subprograma y devuelto a su invocadorinvocador

Page 24: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Procedimientos y Funciones Procedimientos y Funciones (3/4)(3/4)Ejemplo:Ejemplo:

DefiniciónDefiniciónprocedimiento CalcularSuma( parámetro1 procedimiento CalcularSuma( parámetro1 entero, parámetro2 entero) devuelve entero, parámetro2 entero) devuelve enteroentero

devolver parámetro1 + devolver parámetro1 + parámetro2parámetro2

fin_procedimientofin_procedimiento InvocaciónInvocación desde el programa desde el programa

principal u otro subprogramaprincipal u otro subprogramanúmero entero a = 2número entero a = 2número entero b = 3número entero b = 3número entero c = CalcularSuma(a,b)número entero c = CalcularSuma(a,b)carácter d = CalcularSuma(a,b)carácter d = CalcularSuma(a,b)

ERRORERROR

Page 25: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Procedimientos y Funciones Procedimientos y Funciones (4/4)(4/4)

Ventajas de utilizar procedimientosVentajas de utilizar procedimientos Facilita el diseño descendiente y modularFacilita el diseño descendiente y modular Promueven la reutilización de códigoPromueven la reutilización de código Facilita la división de tareasFacilita la división de tareas Pueden comprobarse individualmentePueden comprobarse individualmente Pueden encapsularse en bibliotecas Pueden encapsularse en bibliotecas

independientesindependientes

Page 26: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Visibilidad de VariablesVisibilidad de Variables

Variable Local:Variable Local: Declarada en un subprogramaDeclarada en un subprograma Sólo está disponible durante el Sólo está disponible durante el

funcionamiento del subprogramafuncionamiento del subprograma Su valor se pierde una vez que el Su valor se pierde una vez que el

subprograma terminasubprograma termina

Variable Global:Variable Global: Declarada en el programa principalDeclarada en el programa principal Está disponible en el programa principal y Está disponible en el programa principal y

en todos los subprogramasen todos los subprogramas Su valor se pierde una vez que el Su valor se pierde una vez que el

programa principal terminaprograma principal termina

Page 27: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

BibliotecasBibliotecas

Archivo independiente que contiene Archivo independiente que contiene un conjunto de subprogramasun conjunto de subprogramasPueden ser incluidas y referenciadas Pueden ser incluidas y referenciadas en el desarrollo de múltiples en el desarrollo de múltiples programasprogramasFacilitan la modularización de un Facilitan la modularización de un programaprogramaDesarrollo Desarrollo Programa Fuente Programa FuenteCompilación Compilación Programa Objeto Programa ObjetoLink-Edición Link-Edición Programa Ejecutable Programa Ejecutable

Page 28: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Arrays (Arreglos) (1/3)Arrays (Arreglos) (1/3)

Son estructuras de datos en las que se Son estructuras de datos en las que se almacenan un conjunto de datos almacenan un conjunto de datos finitos del mismo tipofinitos del mismo tipo Almacenan sus elementos en posiciones Almacenan sus elementos en posiciones

de memoria contiguasde memoria contiguas Tienen un único nombre de variable que Tienen un único nombre de variable que

representa a todos los elementosrepresenta a todos los elementos Permiten acceso directo o aleatorio a sus Permiten acceso directo o aleatorio a sus

elementos individualeselementos individuales

Los arrays se clasifican en Los arrays se clasifican en unidimensionales y unidimensionales y multidimensionales.multidimensionales.

Page 29: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Arrays (Arreglos) (2/3)Arrays (Arreglos) (2/3)

Arrays unidimensionales (Vectores)Arrays unidimensionales (Vectores) Número finito de elementosNúmero finito de elementos Tamaño FijoTamaño Fijo Elementos HomogéneosElementos Homogéneos Se accede a los elementos utilizando el Se accede a los elementos utilizando el

nombre del array y el subíndice nombre del array y el subíndice específicoespecífico

Ejemplo:Ejemplo: salarios(3) Realessalarios(3) Reales Nombre del array, Nombre del array,

de 3 posiciones que contendrán número de 3 posiciones que contendrán número realesreales

salarios[1] = 23,4salarios[1] = 23,4 Asignación de un Asignación de un valor al primer elemento del arrayvalor al primer elemento del array

Page 30: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

Arrays (Arreglos) (3/3)Arrays (Arreglos) (3/3)

Arrays multidimensionalesArrays multidimensionales Arrays bidimensionales (Matrices o Tablas)Arrays bidimensionales (Matrices o Tablas)

Tienen dos índices, uno para filas y otro Tienen dos índices, uno para filas y otro para columnaspara columnas

Ejemplo:Ejemplo:tabla(3,3) enteros tabla(3,3) enteros Declaración de una Declaración de una

matriz de 3 por 3matriz de 3 por 3tabla [1][1] = 2 tabla [1][1] = 2 Elemento de la primer fila y Elemento de la primer fila y

primer columnaprimer columnatabla [2][3] = 5 tabla [2][3] = 5 Elemento de la segunda fila Elemento de la segunda fila

y la tercer columnay la tercer columna

Page 31: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

El estilo de ProgramaciónEl estilo de Programación

Una de las características más Una de las características más importantes de un buen programadorimportantes de un buen programadorUn buen estilo facilita la comprensión, Un buen estilo facilita la comprensión, corrección y mantenimiento de un corrección y mantenimiento de un programaprogramaAlgunos puntos a tener en cuentaAlgunos puntos a tener en cuenta ComentariosComentarios Elección de nombres significativosElección de nombres significativos IdentaciónIdentación Espacios y Líneas en BlancoEspacios y Líneas en Blanco Validación usando datos de pruebaValidación usando datos de prueba

Page 32: Estrella 0 - Fundamentos de la Programación Programa Microsoft Desarrollador Cinco Estrellas

© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or

implied, in this summary.