SlideShare una empresa de Scribd logo
1 de 2
Descargar para leer sin conexión
Subtema 1 Lista de Buenas Prácticas
Consejo 1: Evitar el uso de variables globales.
Justificación: Una variable global es una variable colocada fuera del ámbito
de varias funciones y que es globalmente accesible por todas ellas. No se
debe confundir con un atributo de una clase, que es un campo dentro de un
registro que varias funciones manipulan. Un consejo útil para distinguir
atributos de variables globales es pensar si la variable corresponde a una
característica identificable del conjunto de individuos representado por una
clase.
El uso de variables globales pueda resultar tentador por lo cómodo de evitar
tener que estar pasando la variable global como parámetro. Sin embargo, el
uso de variables globales puede tener efectos laterales bastante peligrosos
(cf [4]). El problema es que al ser la variable globalmente accesible, ésta
puede, por malicia o simple infortunio, ser modificada fácilmente por terceras
funciones, asignando a la variable un valor no deseado. Este valor no
deseado puede desencadenar una serie de fallos en cadena. Al ser la
variable accesible por un número potencialmente largo de funciones, una vez
producido el fallo, depurar el programa hasta averiguar cuál es la causa del
fallo puede ser un proceso largo y tedioso. En muchas Escuelas de Ingeniería
Informática el uso no justificado de variables globales es causa directa de
suspenso en un examen o práctica de programación.
NOTA: Linux Torvas realiza la misma recomendación para la creación de
código para el núcleo de Linux: sólo usar variables globales cuando es
realmente necesario.
NOTA: El uso de variables globales no será causa directa de suspenso en
las prácticas y pruebas correspondientes a las asignaturas que el autor de
esta página imparta en la Universidad de Cantabria o centros similares, pero
si rebajará sensiblemente la calificación de las mismas. Un abuso en el uso
de variables globales si será causa automática de suspenso.
Evitar escribir funciones y procedimientos
demasiado largos.
Justificación: Según estudios psicológicos, la mente humana no es capaz
de procesar más de 6 o 7 detalles diferentes a la vez (y a mí, particularmente,
me parece éste un número bastante generoso). Las funciones demasiado
largas suelen contener un número de detalles superior a este límite. Ello
dificulta su legibilidad y comprensión y por tanto, su mantenimiento.
En general, en funciones demasiado largas hay trozos claramente
diferenciados de código, débilmente acoplados. Cada uno de estos bloques
suele realizar una tarea distinta. Por ejemplo, es habitual en muchas
funciones que al principio se preparen los datos para realizar un cómputo, o
se inicialice alguna estructura. A continuación se realizan una serie de
cálculos y por último se presenten por la salida los resultados.

Más contenido relacionado

La actualidad más candente (19)

Resumen claudia u5
Resumen claudia u5Resumen claudia u5
Resumen claudia u5
 
IDAT 9principios usabilidad_2011
IDAT 9principios usabilidad_2011IDAT 9principios usabilidad_2011
IDAT 9principios usabilidad_2011
 
Introducción
IntroducciónIntroducción
Introducción
 
Encontrar un botón
Encontrar un botónEncontrar un botón
Encontrar un botón
 
Solución examen 3 con ollydbg
Solución examen 3 con ollydbgSolución examen 3 con ollydbg
Solución examen 3 con ollydbg
 
Hola mundorafaelnavarroprieto
Hola mundorafaelnavarroprietoHola mundorafaelnavarroprieto
Hola mundorafaelnavarroprieto
 
Conversiones(2)
Conversiones(2)Conversiones(2)
Conversiones(2)
 
Laboratorio virtual
Laboratorio virtualLaboratorio virtual
Laboratorio virtual
 
Practica 4 tania
Practica 4 taniaPractica 4 tania
Practica 4 tania
 
Practica 5 tania
Practica 5 taniaPractica 5 tania
Practica 5 tania
 
Practica#10
Practica#10Practica#10
Practica#10
 
Vocabulario java isabella o'byrne paz 11 2
Vocabulario java isabella o'byrne paz 11 2Vocabulario java isabella o'byrne paz 11 2
Vocabulario java isabella o'byrne paz 11 2
 
Tema 10
Tema 10Tema 10
Tema 10
 
Act30 35
Act30 35Act30 35
Act30 35
 
Informe menu de opciones try
Informe menu de opciones tryInforme menu de opciones try
Informe menu de opciones try
 
Informe menu de opciones
Informe menu de opcionesInforme menu de opciones
Informe menu de opciones
 
NETLOGO
NETLOGONETLOGO
NETLOGO
 
Act 30,32,33,34,35
Act 30,32,33,34,35Act 30,32,33,34,35
Act 30,32,33,34,35
 
Ciclia y repititibas
Ciclia y repititibasCiclia y repititibas
Ciclia y repititibas
 

Similar a Subtema1 mejores practicas programación usc

Unidad 7 conceptos Avanzados en la Programacion orientado a objetos
Unidad 7 conceptos Avanzados en la Programacion orientado a objetosUnidad 7 conceptos Avanzados en la Programacion orientado a objetos
Unidad 7 conceptos Avanzados en la Programacion orientado a objetosAmado Arcaya
 
Mejores formas de aprender a programar
Mejores formas de aprender a programarMejores formas de aprender a programar
Mejores formas de aprender a programarEduardo Enriquez
 
Español estructurado
Español estructuradoEspañol estructurado
Español estructuradoJorge Garcia
 
Manual.curso.de.java.desde.cero
Manual.curso.de.java.desde.ceroManual.curso.de.java.desde.cero
Manual.curso.de.java.desde.ceroLalo Pérez
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 prejtk1
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 prejtk1
 
Programación Modular y Estructyrada
Programación Modular y EstructyradaProgramación Modular y Estructyrada
Programación Modular y Estructyradaguestefc95b
 
Java desde 0
Java desde 0Java desde 0
Java desde 0Saviotec
 
Modularización efectiva - domando a la hidra
Modularización efectiva - domando a la hidraModularización efectiva - domando a la hidra
Modularización efectiva - domando a la hidraAgustin Ramos
 
09. Java desde Cero autor UNAM_1.111.pdf
09. Java desde Cero autor UNAM_1.111.pdf09. Java desde Cero autor UNAM_1.111.pdf
09. Java desde Cero autor UNAM_1.111.pdfIrene619127
 
Metodologías de programación.pptx
Metodologías de programación.pptxMetodologías de programación.pptx
Metodologías de programación.pptxHctorFabela1
 
Programación multihebra en java
Programación multihebra en javaProgramación multihebra en java
Programación multihebra en javaLaboratorios ACME
 

Similar a Subtema1 mejores practicas programación usc (20)

Compendio u1
Compendio u1Compendio u1
Compendio u1
 
Unidad 7 conceptos Avanzados en la Programacion orientado a objetos
Unidad 7 conceptos Avanzados en la Programacion orientado a objetosUnidad 7 conceptos Avanzados en la Programacion orientado a objetos
Unidad 7 conceptos Avanzados en la Programacion orientado a objetos
 
Mejores formas de aprender a programar
Mejores formas de aprender a programarMejores formas de aprender a programar
Mejores formas de aprender a programar
 
Español estructurado
Español estructuradoEspañol estructurado
Español estructurado
 
Informatica
InformaticaInformatica
Informatica
 
Tap04 poo
Tap04 pooTap04 poo
Tap04 poo
 
Manual.curso.de.java.desde.cero
Manual.curso.de.java.desde.ceroManual.curso.de.java.desde.cero
Manual.curso.de.java.desde.cero
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 pre
 
Java desde 0 pre
Java desde 0 preJava desde 0 pre
Java desde 0 pre
 
Buenasprcticas
BuenasprcticasBuenasprcticas
Buenasprcticas
 
Programación Modular y Estructyrada
Programación Modular y EstructyradaProgramación Modular y Estructyrada
Programación Modular y Estructyrada
 
Java desde 0
Java desde 0Java desde 0
Java desde 0
 
Java desde Cero.pdf
Java desde Cero.pdfJava desde Cero.pdf
Java desde Cero.pdf
 
Modularización efectiva - domando a la hidra
Modularización efectiva - domando a la hidraModularización efectiva - domando a la hidra
Modularización efectiva - domando a la hidra
 
Tc2 301403 21
Tc2 301403 21Tc2 301403 21
Tc2 301403 21
 
09. Java desde Cero autor UNAM_1.111.pdf
09. Java desde Cero autor UNAM_1.111.pdf09. Java desde Cero autor UNAM_1.111.pdf
09. Java desde Cero autor UNAM_1.111.pdf
 
Metodologías de programación.pptx
Metodologías de programación.pptxMetodologías de programación.pptx
Metodologías de programación.pptx
 
Hilos java
Hilos javaHilos java
Hilos java
 
Programación multihebra en java
Programación multihebra en javaProgramación multihebra en java
Programación multihebra en java
 
Programacion I- JAVA
Programacion I- JAVAProgramacion I- JAVA
Programacion I- JAVA
 

Último

EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicaFlor Idalia Espinoza Ortega
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 

Último (20)

EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamica
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 

Subtema1 mejores practicas programación usc

  • 1. Subtema 1 Lista de Buenas Prácticas Consejo 1: Evitar el uso de variables globales. Justificación: Una variable global es una variable colocada fuera del ámbito de varias funciones y que es globalmente accesible por todas ellas. No se debe confundir con un atributo de una clase, que es un campo dentro de un registro que varias funciones manipulan. Un consejo útil para distinguir atributos de variables globales es pensar si la variable corresponde a una característica identificable del conjunto de individuos representado por una clase. El uso de variables globales pueda resultar tentador por lo cómodo de evitar tener que estar pasando la variable global como parámetro. Sin embargo, el uso de variables globales puede tener efectos laterales bastante peligrosos (cf [4]). El problema es que al ser la variable globalmente accesible, ésta puede, por malicia o simple infortunio, ser modificada fácilmente por terceras funciones, asignando a la variable un valor no deseado. Este valor no deseado puede desencadenar una serie de fallos en cadena. Al ser la variable accesible por un número potencialmente largo de funciones, una vez producido el fallo, depurar el programa hasta averiguar cuál es la causa del fallo puede ser un proceso largo y tedioso. En muchas Escuelas de Ingeniería Informática el uso no justificado de variables globales es causa directa de suspenso en un examen o práctica de programación. NOTA: Linux Torvas realiza la misma recomendación para la creación de código para el núcleo de Linux: sólo usar variables globales cuando es realmente necesario. NOTA: El uso de variables globales no será causa directa de suspenso en las prácticas y pruebas correspondientes a las asignaturas que el autor de esta página imparta en la Universidad de Cantabria o centros similares, pero si rebajará sensiblemente la calificación de las mismas. Un abuso en el uso de variables globales si será causa automática de suspenso.
  • 2. Evitar escribir funciones y procedimientos demasiado largos. Justificación: Según estudios psicológicos, la mente humana no es capaz de procesar más de 6 o 7 detalles diferentes a la vez (y a mí, particularmente, me parece éste un número bastante generoso). Las funciones demasiado largas suelen contener un número de detalles superior a este límite. Ello dificulta su legibilidad y comprensión y por tanto, su mantenimiento. En general, en funciones demasiado largas hay trozos claramente diferenciados de código, débilmente acoplados. Cada uno de estos bloques suele realizar una tarea distinta. Por ejemplo, es habitual en muchas funciones que al principio se preparen los datos para realizar un cómputo, o se inicialice alguna estructura. A continuación se realizan una serie de cálculos y por último se presenten por la salida los resultados.