estilo de programación

Upload: lycan-frenrihr

Post on 07-Jul-2018

247 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 Estilo de Programación

    1/11

  • 8/18/2019 Estilo de Programación

    2/11

    Lenguajes de Programación

    Definición: Es un idiomaartificial para expresar

    instrucciones que pueden serejecutadas por las

    computadoras.

    Tipos

    Bajo Nivel: es el queproporciona poca oninguna abstraccióndel microprocesador

    de unacomputadora.Consecuentemente

    es fácilmentetrasladado a lenguaje

    de máquina.

    Medio Nivel: es unlenguaje de

    programación comoel lenguaje C, que seencuentran entre los

    lenguajes de altonivel y los lenguajes

    de bajo nivel.

    Alto Nivel: secaracterizan porexpresar losalgoritmos de unaforma adecuada a lacapacidad cognitivahumana, en lugar dea la capacidadejecutora de lasmáquinas.

    Evolución

    Código máquina(binarios) 

    Ensambladores 

    Lenguajes deprogramación

    interpretes 

    Lenguajes deprogramacióncompilables 

    Lenguajesvisuales 

    Características

    Claro, legible,natural, eficiente,

    portable, expresivo,sencillo, compatible,

    portable.   c   o   m   p   r   e   n    d   e   n

    Sintaxis

    semántica

    • Es la estructurade una gramática.• Reglas y principios

    para formarexpresiones.• Forma en la que

    se debe escribirun enunciado.

    Es lainterpretaciónde lasexpresiones

    Paradigmas de Programación

    Métodos para laconstrucción de programas 

    Programación ImperativaProgramación Declarativa

    Describe la programaciónen términos del estado delprograma y sentencias quecambian dicho estado. Losprogramas imperativos son

    un conjunto deinstrucciones que le indican

    a la computadora cómorealizar una tarea. 

    Orientada aobjetos

    Estructurada

    Declarativa

    Orientada aeventos

    Orientada aaspectos

    Turbo-basic,pascal 

    C++, Smalltalk 

    Visual Basic 

    Java 

    Pseudocódigo 

    Se basa en el desarrollo deprogramas "declarando" un

    conjunto de condiciones,proposiciones, afirmaciones,restricciones, ecuaciones o

    transformaciones que describenun problema pero no las

    instrucciones necesarias pararesolverlo. La solución se

    obtiene mediante mecanismosinternos..

    Funcional

    Lógica

    Lisp, ML, Haskell 

    Prolog 

    Procedural Basic, ADA 

    Lenguajes deRepresentación y

    Consulta

    Representación:Son lenguajesque describendocumentos

    XML, HTML,PDF, LATEX 

    Consulta:lenguajes para

    realizar consultasa bases de datos

    o sistemas derecuperación de

    información

    SQL, CQL,YQL 

  • 8/18/2019 Estilo de Programación

    3/11

    1. Esti lo de Programación

    Definición: Son una serie deconvenciones que se siguenal desarrollar código fuente

    en algún lenguaje deprogramación.

    Tipos• Es el más usado en el lenguaje C y PHP.• Se debe a Brian W. Kerninghan y Dennis M.

    Ritchie.• Se trata de abrir la llave en la misma línea de

    declaración de la orden, indentando lossiguientes pasos al mismo nivel que la llave ycerrando la llave en el mismo nivel que ladeclaración.Componentes a

    considerar:

    Expresividad 

    Estructura 

    Robustez 

    Documentacióndel programa 

    Un buen estilo debecontener

    • Extensibilidad.• Verificabilidad.• Reparabilidad.• Capacidad de

    evolución.

    Estilo K & R

    Estilo Allman

    • Se debe a Eric Allman• Se trata de crear una nueva línea para las

    llaves e indentar el código debajo de ellas. La

    llave de cierre tiene el mismo indentado quela de inicio.

    EstiloWhitesmiths

    • Coloca llaves asociadas con las instruccionesde control indentada en la siguiente línea.

    Estilo GNU

    • coloca una llave sobre la siguiente línea. Las

    llaves son indentadas por 2 espacios, y elcódigo que contiene indentado por 2 espaciosadicionales.

  • 8/18/2019 Estilo de Programación

    4/11

    Esti lo de Programación

    NOTACIONES

    CAMELCASE

    • Las palabras se unen sin espacios y se capitalizan.• La primera letra de cada palabra en mayúsculas, el

    resto en minúsculas. 

    En el lenguaje JAVA se usa la notaciónCamelCase en identificadores para clases, ydromedaryCase para métodos y variables. 

    UpperCamelCase, CamelCase, o PascalCase: la

    primera letra es mayúscula: DosPalabras.

    lowerCamelCase, camelCase, o dromedaryCase: la

    primera letra es minúscula: dosPalabras.

    HUNGARA

    • Está basada en Camel.• Está dada por una secuencia de letras en

    minúscula que indica alguna característica delidentificador. 

    Ejemplos:

    fpPrecio : Precio es una variable de punto flotante

    rgEstudiantes : Estudiantes es una variable del tipo arreglo

    rgfpBalances : Balances es un arreglo de punto flotante

  • 8/18/2019 Estilo de Programación

    5/11

    Estilo Whitesmith (uno de los primeros compiladores de C)

    if(condicion)

    {

    sentencia0;

    sentencia1;

    }

    Estilo GNU

    if(condicion)

    {

    sentencia0;

    sentencia1;

    }

    Estilo Allman

    if(condicion)

    {

    sentencia0;

    sentencia1;

    }

    Estilo K & R

    if(condicion) {

    sentencia0;

    sentencia1;

    }

    Forma Básica

    If (condicion) sentencia;

  • 8/18/2019 Estilo de Programación

    6/11

    Tipo  PHP  C#  Java 

    Clase PascalCase PascalCase PascalCase

    Constante ALL_CAPS PascalCase ALL_CAPS

    Método camelCase PascalCase camelCase

    Namespace / Package small_caps (5.3x) PascalCase small_caps

    Propiedades camelCase PascalCase camelCase

    Parámetro camelCase camelCase camelCase

    Variable local camelCase camelCase camelCase

    Interface PascalCase PascalCase PascalCase

    Convenciones usadas por algunos lenguajes de programación

  • 8/18/2019 Estilo de Programación

    7/11

    a + 5*b

    (a >= 0) and ((b+5) > 10)

    -z-a * 2 + b

    -b + sqrt(b**2 - 4*a*c)

    length(s) > 0

    [ ]

    aritméticos

           

    relacionales

    > < =  

    lógicos

    not and or

    operandos  operandos operadores ◄►  ◄►  valor 

    • constantes• variables

    • funciones

    • constantes• variables

    • funciones

    ( )

    expresión Forma general

    2. Evaluación de Expresiones

    Tipos de Datos

    simples 

    Numéricos : (enteros, reales, etc.)

    Lógicos: (boleanos)

    Alfanuméricos: (cadenas)

    estructurados 

    Arreglos : (vectores, matrices)

    Registros: (bases de datos)

    Archivos.

    Punteros.

  • 8/18/2019 Estilo de Programación

    8/11

    2. Evaluación de Expresiones

    Son el método fundamental que tiene elprogramador de expresar cálculos.

    expresión

    operandos operandosoperadores◄►  ◄►  valorSe evalúan de acuerdo con la jerarquía de

    los operadores.

    UNARIOS Sólo tienen un operando. Son operadores prefijos.

    usan el formato , como en "-5" .

    BINARIOS

    Tienen dos operandos. Son operadores infijos.

    usan el formato operando_izquierdo>

    , como en "a + b"  

    TERNARIOS Tienen tres operandos. La estructura del operador ternario es la siguiente

    (en Java):resultado = (condicion)?valor1:valor2

    Donde a la variable resultado recibirá el valor1 en el caso de que la

    condición sea true o bien el valor2 en el caso de que la condición sea false.

    Ejemplo: para calcular el mayor de dos números se tiene el código:

    mayor = ( x > y )? x : y ;

  • 8/18/2019 Estilo de Programación

    9/11

    2. Evaluación de Expresiones

    Son el método fundamental que tiene elprogramador de expresar cálculos.

    expresión

    Se evalúan de acuerdo con la jerarquía delos operadores.reglas

    DE PRECEDENCIA

    DE ASOCIATIVIDAD

    DE USO DE PARENTESIS

       

    var mySum:Number; 

    mySum = 2 + 4 * 3; 

    trace(mySum); // 14 

    trace(3 > 2 < 1); // false

    trace((3 > 2) < 1); // false 

    var mySum:Number; 

    var myOtherSum:Number; 

    mySum = 2 * 4 * 3; 

    myOtherSum = (2 * 4) * 3; 

    trace(mySum); // 24 

    trace(myOtherSum); // 24 

    • Todas las expresiones entre paréntesis se evalúan primero.

    • Las expresiones con paréntesis anidados se evalúan de adentro hacia

    afuera, el paréntesis mas interno se evalúa primero. 

  • 8/18/2019 Estilo de Programación

    10/11

  • 8/18/2019 Estilo de Programación

    11/11

    2. Evaluación de Expresiones

    Ejercicios : aplicar las reglas de precedencia y

    asociatividad a las siguientes expresiones