SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
GUIA DE
PROGRAMACION
JAVA
Por qué convenciones de código
• El 80% del coste del código de un programa va a
su mantenimiento.
• Casi ningún software lo mantiene toda su vida el
autor original.
• Las convenciones de código mejoran la lectura
del software, permitiendo entender código nuevo
mucho más rápidamente y más a fondo.
• Si distribuyes tu código fuente como un producto,
necesitas asegurarte de que está bien hecho y
presentado como cualquier otro producto.
Para que funcionen las convenciones, cada persona
que escribe software debe seguir la convención.
Todos.
Comentarios de comienzo
• Todos los ficheros fuente deben comenzar con un
comentario en el que se lista el nombre de la clase,
información de la versión, fecha, y copyright:
/*
* Nombre de la clase
*
* Información de la versión
*
* Fecha
*
* Copyright
*/
Sentencias package e import
• La primera línea no-comentario de los
archivos fuente Java es la sentencia package.
Después de esta, pueden seguir varias
sentencias import. Por ejemplo:
package java.awt;
import java.awt.peer.CanvasPeer;
Ejemplos de cómo romper la llamada a
un método
Dos ejemplos de rotura de líneas en expresiones aritméticas. Se
prefiere el primero, ya que el salto de línea ocurre fuera de la
expresión que encierra los paréntesis.
Ejemplos de cómo romper la llamada a
un método
Ejemplos de cómo romper la llamada a
un método
Dos ejemplos de indentación de declaraciones de métodos.
El primero es el caso convencional. El segundo conduciría la
segunda y la tercera línea demasiado hacia la
izquierda con la indentación convencional, así que en su
lugar se usan 8 espacios de indentación.
Ejemplos de cómo romper la llamada a
un método
Ejemplos de cómo romper la llamada a
un método
Saltar de líneas por sentencias if deberá seguir
generalmente la regla de los 8 espacios, ya que la
indentacion convencional (4 espacios) hace difícil ver el
cuerpo. Por ejemplo:
Ejemplos de cómo romper la llamada a
un método
}
Ejemplos de cómo romper la llamada a
un método
Hay tres formas aceptables de formatear
expresiones ternarias:
Comentarios
2 tipos de comentarios:
• Comentarios de implementación
• Comentarios de documentación
Comentarios de implementación
• Delimitados por /*…*/
• Son para comentar nuestro código o para
comentarios acerca de una implementación
particular.
Comentarios de documentación
• Delimitados por /**…*/
• Se pueden exportar con javadoc.
• Son para describir la especificación del código,
libre de una perspectiva de implementación, y
para ser leídos por desarrolladores que pueden
no tener el código fuente a mano.
Comentarios
• Los comentarios deben contener sólo
información que es relevante para la lectura y
entendimiento del programa.
• Evitar cualquier comentario que pueda quedar
desfasado a medida que el código evoluciona.
• La frecuencia de comentarios a veces refleja
una pobre calidad del código. Cuando se
sienta obligado a escribir un comentario
considere reescribir el código para hacerlo
más claro.
Comentarios
• Un cometario de bloque debe ir precedido por
una línea en blanco que lo separe del resto del
código.
Comentarios de bloque
Comentarios de remolque
• Pueden aparecer comentarios muy pequeños
en la misma línea que describen, pero deben
ser movidos lo suficientemente lejos para
separarlos de las sentencias.
• Si más de un comentario corto aparecen en el
mismo trozo de código, deben ser indentados
con la misma profundidad.
• Ejemplos:
Comentarios de fin de línea
Declaraciones
Cantidad por línea
• Se recomienda una declaración por línea, ya
que facilita los comentarios. En otras palabras,
se prefiere
int nivel; // nivel de indentación
int tam; // tamaño de la tabla
• antes que
int nivel, tam;
• No poner diferentes tipos en la misma línea.
Ejemplo:
int foo, fooarray[]; //ERROR!
• Nota: Los ejemplos anteriores usan un espacio
entre el tipo y el identificador. Una alternativa
aceptable es usar tabuladores, por ejemplo:
int level; // nivel de indentación
int size; // tamaño de la tabla
Object currentEntry; // entrada de la tabla
seleccionada actualmente
Declaraciones
Inicialización
• Intentar inicializar las variables locales
donde se declaran. La única razón para no
inicializar una variable donde se declara es
si el valor inicial depende de algunos
cálculos que deben ocurrir.
Declaraciones
Colocación
Ej:
Declaraciones
Declaraciones de class e interfaces
Los métodos se separan con una línea en
blanco.
Hábitos de programación
Proporcionando acceso a variables de instancia y
de clase
• No hacer ninguna variable de instancia o clase
pública sin una buena razón.
• Un ejemplo apropiado de una variable de
instancia pública es el caso en que la clase es
esencialmente una estructura de datos, sin
comportamiento. En otras palabras, si usaras la
palabra struct en lugar de una clase (si Java
soportara struct), entonces es adecuado hacerlas
variables de instancia públicas.
Referencias a variables y métodos de clase
• Evitar usar un objeto para acceder a una variable
o método de clase (static). Usar el nombre de la
clase en su lugar. Por ejemplo:
metodoDeClase(); //OK
UnaClase.metodoDeClase(); //OK
unObjeto.metodoDeClase(); //EVITAR!
Constantes
• Las constantes numéricas (literales) no se deben
codificar directamente, excepto -1, 0, y 1, que
pueden aparecer en un bucle for como
contadores.
Hábitos de programación
Asignaciones de variables
• No usar el operador de asignación en un lugar
donde se pueda confundir con el de igualdad.
• Ejemplo:
if (c++ = d++) { // EVITAR! (Java lo rechaza)
…
}
• se debe escribir:
if ((c++ = d++) != 0) {
...
}
Hábitos de programación
Bibliografía
Adapted with permission from JAVA CODE
CONVENTIONS. Copyright 1995-1999 Sun
Microsysytems, Inc. All rights reserved.
Copyright 2001 www.javaHispano.com. Todos
los derechos reservados.
Otorgados derechos de copia y redistribución
para uso interno y no comercial.
http://www.javaHispano.com

Weitere ähnliche Inhalte

Was ist angesagt?

Pseint Variables Y Comentarios
Pseint Variables Y ComentariosPseint Variables Y Comentarios
Pseint Variables Y ComentariosMonjeOneble
 
Consideraciones pragmatica
Consideraciones pragmaticaConsideraciones pragmatica
Consideraciones pragmaticaJose Gallardo
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradawellington018
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEfrain Godoy
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEfrain Godoy
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVAjesanchez5
 
Fundamentos de programación Java
Fundamentos de programación JavaFundamentos de programación Java
Fundamentos de programación Javaquesada_diego
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: PascalCarola511
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacionguest9a91e2
 
Programacion logica y funcional ejer1
Programacion logica y funcional ejer1Programacion logica y funcional ejer1
Programacion logica y funcional ejer1isidro luna beltran
 

Was ist angesagt? (19)

Pseint Variables Y Comentarios
Pseint Variables Y ComentariosPseint Variables Y Comentarios
Pseint Variables Y Comentarios
 
Consideraciones pragmatica
Consideraciones pragmaticaConsideraciones pragmatica
Consideraciones pragmatica
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajes
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajes
 
Visual Basic
Visual BasicVisual Basic
Visual Basic
 
Lenguaje de Alto Nivel
Lenguaje de Alto NivelLenguaje de Alto Nivel
Lenguaje de Alto Nivel
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVA
 
Fundamentos de programación Java
Fundamentos de programación JavaFundamentos de programación Java
Fundamentos de programación Java
 
Test
TestTest
Test
 
Cuida tu código: Clean Code
Cuida tu código: Clean CodeCuida tu código: Clean Code
Cuida tu código: Clean Code
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Todo sobre C#
Todo sobre C#Todo sobre C#
Todo sobre C#
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Presentación: xUnit y Junit
Presentación: xUnit y JunitPresentación: xUnit y Junit
Presentación: xUnit y Junit
 
Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: Pascal
 
Introducción A C# (VersióN Charla)
Introducción A C# (VersióN Charla)Introducción A C# (VersióN Charla)
Introducción A C# (VersióN Charla)
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacion
 
Programacion logica y funcional ejer1
Programacion logica y funcional ejer1Programacion logica y funcional ejer1
Programacion logica y funcional ejer1
 

Ähnlich wie Programacion java

Lenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosLenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosDoris Aguagallo
 
Tutorial de prolog
Tutorial de prologTutorial de prolog
Tutorial de prologPedro Vera
 
Programación básica en java
Programación básica en javaProgramación básica en java
Programación básica en javaJorge Tapia
 
Introducción a JAVA
Introducción a JAVAIntroducción a JAVA
Introducción a JAVAjohitafresh
 
Estructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosEstructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosspedy93
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...Eudris Cabrera
 
Información básica Java
Información básica JavaInformación básica Java
Información básica JavaFordBull2er
 
Instrucciones Basicas para C++
Instrucciones Basicas para C++Instrucciones Basicas para C++
Instrucciones Basicas para C++Dj109
 
Fund progbd 3_u1_lenguajeprogramacionjava1
Fund progbd 3_u1_lenguajeprogramacionjava1Fund progbd 3_u1_lenguajeprogramacionjava1
Fund progbd 3_u1_lenguajeprogramacionjava1armando_cardenas
 

Ähnlich wie Programacion java (20)

Lenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosLenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetos
 
Tutorial de prolog
Tutorial de prologTutorial de prolog
Tutorial de prolog
 
Prog_BasicaJava.pdf
Prog_BasicaJava.pdfProg_BasicaJava.pdf
Prog_BasicaJava.pdf
 
Programación básica en java
Programación básica en javaProgramación básica en java
Programación básica en java
 
Introducción a JAVA
Introducción a JAVAIntroducción a JAVA
Introducción a JAVA
 
lenguaje c.ppt
lenguaje c.pptlenguaje c.ppt
lenguaje c.ppt
 
Portafolio de evidencias
Portafolio de evidenciasPortafolio de evidencias
Portafolio de evidencias
 
Portafolio de evidencias
Portafolio de evidenciasPortafolio de evidencias
Portafolio de evidencias
 
Estructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosEstructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datos
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
 
tutorial de c++
tutorial de c++tutorial de c++
tutorial de c++
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
 
Información básica Java
Información básica JavaInformación básica Java
Información básica Java
 
Instrucciones Basicas para C++
Instrucciones Basicas para C++Instrucciones Basicas para C++
Instrucciones Basicas para C++
 
Prolog
PrologProlog
Prolog
 
Prolog2
Prolog2Prolog2
Prolog2
 
Fund progbd 3_u1_lenguajeprogramacionjava1
Fund progbd 3_u1_lenguajeprogramacionjava1Fund progbd 3_u1_lenguajeprogramacionjava1
Fund progbd 3_u1_lenguajeprogramacionjava1
 
Introducción a la Algoritmia
Introducción a la AlgoritmiaIntroducción a la Algoritmia
Introducción a la Algoritmia
 
Javadoc
JavadocJavadoc
Javadoc
 
Tema 1[1][1]
Tema 1[1][1]Tema 1[1][1]
Tema 1[1][1]
 

Kürzlich hochgeladen

INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesYanirisBarcelDelaHoz
 
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
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfNancyLoaa
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
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í
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptxRigoTito
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
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
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosJonathanCovena1
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 

Kürzlich hochgeladen (20)

INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonables
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
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
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
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
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
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
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 

Programacion java

  • 2. Por qué convenciones de código • El 80% del coste del código de un programa va a su mantenimiento. • Casi ningún software lo mantiene toda su vida el autor original. • Las convenciones de código mejoran la lectura del software, permitiendo entender código nuevo mucho más rápidamente y más a fondo. • Si distribuyes tu código fuente como un producto, necesitas asegurarte de que está bien hecho y presentado como cualquier otro producto. Para que funcionen las convenciones, cada persona que escribe software debe seguir la convención. Todos.
  • 3. Comentarios de comienzo • Todos los ficheros fuente deben comenzar con un comentario en el que se lista el nombre de la clase, información de la versión, fecha, y copyright: /* * Nombre de la clase * * Información de la versión * * Fecha * * Copyright */
  • 4. Sentencias package e import • La primera línea no-comentario de los archivos fuente Java es la sentencia package. Después de esta, pueden seguir varias sentencias import. Por ejemplo: package java.awt; import java.awt.peer.CanvasPeer;
  • 5. Ejemplos de cómo romper la llamada a un método
  • 6. Dos ejemplos de rotura de líneas en expresiones aritméticas. Se prefiere el primero, ya que el salto de línea ocurre fuera de la expresión que encierra los paréntesis. Ejemplos de cómo romper la llamada a un método
  • 7. Ejemplos de cómo romper la llamada a un método Dos ejemplos de indentación de declaraciones de métodos. El primero es el caso convencional. El segundo conduciría la segunda y la tercera línea demasiado hacia la izquierda con la indentación convencional, así que en su lugar se usan 8 espacios de indentación.
  • 8. Ejemplos de cómo romper la llamada a un método
  • 9. Ejemplos de cómo romper la llamada a un método Saltar de líneas por sentencias if deberá seguir generalmente la regla de los 8 espacios, ya que la indentacion convencional (4 espacios) hace difícil ver el cuerpo. Por ejemplo:
  • 10. Ejemplos de cómo romper la llamada a un método }
  • 11. Ejemplos de cómo romper la llamada a un método Hay tres formas aceptables de formatear expresiones ternarias:
  • 12. Comentarios 2 tipos de comentarios: • Comentarios de implementación • Comentarios de documentación
  • 13. Comentarios de implementación • Delimitados por /*…*/ • Son para comentar nuestro código o para comentarios acerca de una implementación particular. Comentarios de documentación • Delimitados por /**…*/ • Se pueden exportar con javadoc. • Son para describir la especificación del código, libre de una perspectiva de implementación, y para ser leídos por desarrolladores que pueden no tener el código fuente a mano. Comentarios
  • 14. • Los comentarios deben contener sólo información que es relevante para la lectura y entendimiento del programa. • Evitar cualquier comentario que pueda quedar desfasado a medida que el código evoluciona. • La frecuencia de comentarios a veces refleja una pobre calidad del código. Cuando se sienta obligado a escribir un comentario considere reescribir el código para hacerlo más claro. Comentarios
  • 15. • Un cometario de bloque debe ir precedido por una línea en blanco que lo separe del resto del código. Comentarios de bloque
  • 16. Comentarios de remolque • Pueden aparecer comentarios muy pequeños en la misma línea que describen, pero deben ser movidos lo suficientemente lejos para separarlos de las sentencias. • Si más de un comentario corto aparecen en el mismo trozo de código, deben ser indentados con la misma profundidad.
  • 18. Declaraciones Cantidad por línea • Se recomienda una declaración por línea, ya que facilita los comentarios. En otras palabras, se prefiere int nivel; // nivel de indentación int tam; // tamaño de la tabla • antes que int nivel, tam;
  • 19. • No poner diferentes tipos en la misma línea. Ejemplo: int foo, fooarray[]; //ERROR! • Nota: Los ejemplos anteriores usan un espacio entre el tipo y el identificador. Una alternativa aceptable es usar tabuladores, por ejemplo: int level; // nivel de indentación int size; // tamaño de la tabla Object currentEntry; // entrada de la tabla seleccionada actualmente Declaraciones
  • 20. Inicialización • Intentar inicializar las variables locales donde se declaran. La única razón para no inicializar una variable donde se declara es si el valor inicial depende de algunos cálculos que deben ocurrir. Declaraciones
  • 22. Declaraciones de class e interfaces Los métodos se separan con una línea en blanco.
  • 23. Hábitos de programación Proporcionando acceso a variables de instancia y de clase • No hacer ninguna variable de instancia o clase pública sin una buena razón. • Un ejemplo apropiado de una variable de instancia pública es el caso en que la clase es esencialmente una estructura de datos, sin comportamiento. En otras palabras, si usaras la palabra struct en lugar de una clase (si Java soportara struct), entonces es adecuado hacerlas variables de instancia públicas.
  • 24. Referencias a variables y métodos de clase • Evitar usar un objeto para acceder a una variable o método de clase (static). Usar el nombre de la clase en su lugar. Por ejemplo: metodoDeClase(); //OK UnaClase.metodoDeClase(); //OK unObjeto.metodoDeClase(); //EVITAR! Constantes • Las constantes numéricas (literales) no se deben codificar directamente, excepto -1, 0, y 1, que pueden aparecer en un bucle for como contadores. Hábitos de programación
  • 25. Asignaciones de variables • No usar el operador de asignación en un lugar donde se pueda confundir con el de igualdad. • Ejemplo: if (c++ = d++) { // EVITAR! (Java lo rechaza) … } • se debe escribir: if ((c++ = d++) != 0) { ... } Hábitos de programación
  • 26. Bibliografía Adapted with permission from JAVA CODE CONVENTIONS. Copyright 1995-1999 Sun Microsysytems, Inc. All rights reserved. Copyright 2001 www.javaHispano.com. Todos los derechos reservados. Otorgados derechos de copia y redistribución para uso interno y no comercial. http://www.javaHispano.com