Está en la página 1de 46

Programación

11

Prof. Gonzalo Müller


gmullerb@mail.com
Facultad de Ingeniería
Universidad Central de Venezuela
Clase Anterior
 Programación Modular
1. Declaración.
2. Definición.
3. Llamada.
 Declaración y Definición en Javascript: function
 Bloque <script> de declaración en <head>
 Reglas para identificadores
 Subrutina
 Función: return
 Variable retorno
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 2
Clase Anterior
 Llamada:
 Subrutina: Sentencia de Llamada.
 Función: Asignación, Expresión, Argumento.
 Parámetros de entrada: variables, constantes o
expresiones.
 Ámbito: Local y Global
 local predomina sobre el global.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 3


Normalización de un programa
El código fuente debe contener la mayor cantidad de
información posible de tal manera de que sea posible
familiarizarse con éste de forma fácil y rápida, esto
debido a que:
 Este puede ser utilizado o revisado por otro
programador.
 Pase un tiempo razonable desde la creación del
programa y se requiera realizar una mejora,
modificación o corrección.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 4


Normalización de un programa
 Para lograr reducir el tiempo de compresión de un
código se puede recurrir a:
 Notación.
 Documentación.
 Indentación.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 5


Notación
 Convenciones para la creación de identificadores:
identificadores
Consisten de un conjunto de reglas utilizadas para la
creación de un identificador.
 Proporciona información importante sobre las
características de lo nombrado.
 Aumenta la legibilidad del código.
 Existen una gran variedad de convenciones.

Un nombre bien escogido puede facilitar la


corrección de errores o mejora de un código

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 6


Notación
 Notación CamelCase: permite la creación de
identificadores de múltiples palabras.
 El identificador debe tener un significado.
 En ocasiones una sola palabra no es suficiente.
Existen dos formas para utilizar esta convención:
1.Utilizar letras mayúsculas al comienzo de cada
palabra.
2.Una variante es utilizar el carácter _ para separar las
palabras.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 7


Notación
Ejemplo: Establecer el identificador para una variable
que almacena la sumatoria de números pares:

SumatoriaPares
o
sumatoriaPares
o
sumatoria_pares
o
Sumatoria_pares

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 8


Notación
 Notación a utilizar
utilizar:

 No se utilizará el _.
 Los contadores pueden ser representados con una
sola letra minúscula.
 El identificador de las variables y módulos debe
empezar con una letra minúscula.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 9


Notación
Ejemplo: Establecer el identificador para una variable
que almacena la sumatoria de números pares:

SumatoriaPares
o
sumatoriaPares
o
sumatoria_pares
o
Sumatoria_pares

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 10


Documentación
Consiste colocar comentarios el código fuente, los
cuales son ignorados por el interprete, pero permiten
describir la funcionalidad algunas sentencias que
puede resultar ambiguas o complejas.

 Nunca son suficientes comentarios.

 No se debe comentar lo obvio.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 11


Documentación
 Comentarios en Javascript: es posible introducir
comentarios en el programa fuente, que permitan
aclarar parte del mismo.
 El interprete ignora los comentarios.
/* : indica al interprete el comienzo de un
comentario.
*/ : indica al interprete el final de un comentario.
// : indica al interprete que el resto de la línea es un
comentario.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 12


Documentación
 /* y */ Siempre deben ser usados en pareja.

Ejemplo:

/* Este es un comentario: lenguaje C++ es el


mejor lenguaje de programación */

// Otro comentario: la mayoría de los


// sistema operativos son desarrollados
// en C++

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 13


Documentación
 Comentarios en HTML: es posible introducir
comentarios en el documento web, que permitan
aclarar parte del mismo.
 El navegador ignora los comentarios.
<!--: indica al navegador el comienzo de un
comentario.
-->: indica al navegador el final de un comentario.
Siempre deben ser usados en pareja.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 14


Documentación
 En general se comenta:
 Encabezado del programa.
 Variables.
 Bloque de sentencia.
 Funciones.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 15


Documentación
 Encabezado del programa: generalmente se coloca:
 Nombre del programa.
 Autor.
 Fecha de creación.
 Descripción general con el propósito del programa.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 16


Documentación
 Encabezado:

<!--
Autor
Email
Creación
Descripción
-->
<html>
… *.html

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 17


Documentación
Ejemplo:

<!--
Gonzalo Müller
gmullerb@mail.com
31/12/2060
Calcula la factorial de un número
-->
<html>
… *.html

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 18


Documentación
 Variables: normalmente se indica su uso en el
programa.

Ejemplo:

<script>
/// Acumulador de producto de los números
var factorial;

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 19


Documentación
 Variables: normalmente se indica su uso en el
programa.

Ejemplo:

<script>
var factorial; // Acumulador de producto

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 20


Documentación
 Bloque de sentencias: generalmente se indica el
propósito de la sentencia o bloque de sentencias en
caso de no ser evidente.

Ejemplo:
// Acumula números para la media
while(muestra != 0)
{
media = media + muestra;
muestra = muestra - 1;
}

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 21


Documentación
 Bloque principal:


<script>
// Declaraciones
//
var …
// Algoritmo
//

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 22


Documentación
 Módulos:
function nombre(parámetro1, parámetro2, …)
{
// Declaraciones locales
//
var resultado;

// Algoritmo
//

//
return resultado;
}

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 23


Documentación
 Encabezado de funciones:
/// Descripción de la función
/// \param parámetro1 descripción
/// \param parámetro2 descripción

/// \return descripción de retorno
function nombre(parámetro1, parámetro2, …)

Ejemplo:
/// Calcula el cubo de un número dado
/// \param numero Número a elevar
/// \return Resultado de elevar número a la 3
function cubo(numero)
… Programación – Prof. Gonzalo Müller – Clase 11 – GM - 24
Documentación
 Encabezado de subrutinas:
/// Descripción de la subrutina
/// \param parámetro1 descripción
/// \param parámetro2 descripción

function nombre(parámetro1, parámetro2, …)

Ejemplo:
/// Escribe en pantalla resultado
/// \param resultado Resultado a escribir
function escribeResultado(resultado)

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 25
Documentación
 Documentación a utilizar:
utilizar
Se debe documentar:
 Encabezado.
 Bloque Principal.
 Módulos: Bloque y Descripción.

De ser necesario:
 Variables.
 Bloque de sentencias.
 Módulos: Parámetros y Retorno.
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 26
Indentación
Acción de colocar espacios al comienzo de una línea
de código.
 La adecuada indentación siempre mejora la
legibilidad.
 Permite identificar claramente las estructuras básicas.
 Las reglas son:
 Usar indentaciones de 3, 4 ó 8 espacios.
 No utilizar tabulaciones para la indentación.
Los editores de los ambientes de desarrollo sustituyen automáticamente
la tabulación por los espacios establecidos en la configuración
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 27
Indentación
Ejemplo:
while(f < filas)
{
c = 0;
while(c < columnas)
{
if(f + c > 10) Indentación es un anglicismo de la palabra
“indentation”, no es una palabra reconocida
{ por la Real Academia Española.
n = n + 1;
}
c = c + 1;
}
f = f + 1;
}
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 28
Indentación
Ejemplo:
while(f < filas)
{
c = 0;
while(c < columnas)
{
if(f + c > 10)
{
n = n + 1;
}
c = c + 1;
}
f = f + 1;
}
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 29
Indentación
Ejemplo:
while(f < filas)
{
c = 0;
while(c < columnas)
{
if(f + c > 10) Se identifican claramente
{ las estructuras
n = n + 1;
}
c = c + 1;
}
f = f + 1;
}
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 30
Indentación
Ejemplo: Se identifican claramente las estructuras
while(f < filas)
{
c = 0;
while(c < columnas) mientras
{
if(f + c > 10) mientras
{
condicional sencilla
n = n + 1;
}
c = c + 1;
}
f = f + 1;
}
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 31
Indentación
Ejemplo: Se identifican claramente donde se
while(f < filas) ejecutan las sentencias
{
c = 0; sentencias del
while(c < columnas) mientras
{
sentencias del
if(f + c > 10)
mientras
{
sentencias de la
n = n + 1;
condicional sencilla
}
c = c + 1;
}
f = f + 1;
}
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 32
Errores de Programación
Al diseñar, construir y codificar un algoritmo pueden
surgir diferentes tipos de errores:

 Error Algorítmico.
 Error de Codificación.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 33


Errores de Programación
 Error Algorítmico: Son errores que ocurren en el
diseño y construcción del algoritmo.
 Son los más difíciles de localizar y corregir.
 Al presentarse este tipo de error no se obtiene los
resultados esperados al ejecutar el programa.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 34


Errores de Programación
 Los errores algorítmicos se pueden clasificar:
 Error de Concepción: Cuando no se tiene claro el
objetivo, lo cual se manifiesta el resultados no
deseados.
Es recomendable para evitar este tipo de error
resolver de forma manual el problema.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 35


Errores de Programación
 Los errores algorítmicos se pueden clasificar:
 Error de Concepción: Cuando no se tiene claro el
objetivo, lo cual se manifiesta el resultados no
deseados.
Es recomendable para evitar este tipo de error
resolver de forma manual el problema.
 Error de Lógica: Cuando se desarrolla una secuencia
de pasos que se supone debería realizar un función y
realmente no lo hace.
Es recomendable para evitar este tipo de error
resolver de forma manual el problema y realizar
al menos una corrida en frío del algoritmo.
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 36
Errores de Programación
 Error de Codificación: Son errores que ocurren en
la codificación del algoritmo.
 Son los más fáciles de localizar y corregir.
 En ocasiones se manifiestan como errores de
ejecución.

Un Error de Ejecución es aquel que ocurren durante


la ejecución del programa y es notificado por el
interprete

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 37


Errores de Programación
 Generalmente se deben a que no se tiene un
conocimiento sólido del lenguaje de programación o
no se maneja adecuadamente el vocabulario del
mismo.
 También es llamado Error de Sintaxis.

 Existen diferentes tipos:


 Error de Trascripción.
 Error de Omisión.
 Error de Uso.
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 38
Errores de Programación
 Error de Trascripción: Es aquel que se comete al
realizar la trascripción.
Ejemplo:
 Escribir alguna palabra clave incorrectamente (While
en lugar de while).
 Etc.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 39


Errores de Programación
 Error de Trascripción: Es aquel que se comete al
realizar la trascripción.
Ejemplo:
 Escribir alguna palabra clave incorrectamente (While
en lugar de while).
 Etc.
Lenguaje Genera un error de compilación.
Compilado
Lenguaje Genera un error de ejecución, que usualmente
Interpretado se manifiesta con pagina en blanco

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 40


Errores de Programación
 Error de Omisión: Es aquel en cual no se incluyen
que no forma parte del algoritmo, pero es necesaria
en el lenguaje.
Ejemplo:
 Omitir un ;
 Omitir la declaración de variables.
 Etc.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 41


Errores de Programación
 Error de Omisión: Es aquel en cual no se incluyen
que no forma parte del algoritmo, pero es necesaria
en el lenguaje.
Ejemplo:
 Omitir un ;
 Omitir la declaración de variables.
 Etc.
Lenguaje Genera un error de compilación.
Compilado
Lenguaje Genera un error de ejecución, que usualmente
Interpretado se manifiesta con pagina en blanco
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 42
Errores de Programación
 Error de Uso: Es aquel se utiliza de forma correcta
un identificador, operador o función.
Ejemplo:
 Utilizar = en lugar de ==
 Utilizar , en lugar de .
 Etc.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 43


Errores de Programación
 Error de Uso: Es aquel se utiliza de forma correcta
un identificador, operador o función.
Ejemplo:
 Utilizar = en lugar de ==
 Utilizar , en lugar de .
 Etc.
El programa no presenta los resultados esperados o:
Lenguaje Genera un error de compilación o mensajes
Compilado de precaución.
Lenguaje Genera un error de ejecución, que usualmente
Interpretado se manifiesta con pagina en blanco
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 44
Ejercicios
Construir una pagina web con Javascript con
acoplamiento de datos básicos para:
f(x) = sen(2*x)+x4
a) Dado N puntos encontrar cual da el máximo de f(x)
b) Encontrar una solución para f(x) = 0 por Bisección
Fase 1: Diseño y Análisis: DTD
DES, DRE ó DF y LV de Módulos y TM.
DES, DRE ó DF, LV y CF de Bloque Principal.
Fase 2: Codificación: pagina Web con Javascript.
Notación, Documentación e Indentación.
Programación – Prof. Gonzalo Müller – Clase 11 – GM - 45
Resumen
 Normalización de un programa:
 Notación.
 Documentación.
 Indentación.
 Errores de Programación:
 Error Algorítmico:
Error de Concepción. Error de Lógica.
 Error de Codificación o Sintaxis:
Error de Trascripción. Error de Omisión.
Error de Uso.

Programación – Prof. Gonzalo Müller – Clase 11 – GM - 46