Está en la página 1de 7

Ejercicio de Estndar de Codificacin (R2)

1 Prerrequisitos y referencias

Prerrequisitos:
! Leer Captulo 4
! Completar el ejercicio del reporte R1
! Completar el reporte R1

2 Objetivos del Ejercicio

Despus de completar el ejercicio el alumno:
! Entender la importancia de un estndar de codificacin.
! Estar preparado para elaborar el reporte R2.

3 Instrucciones del ejercicio

Para completar el ejercicio:
! Revisa el Ejemplo de un estndar de codificacin para Visual Basic.
! Revisa lnea por lnea el cdigo fuente de ejemplo:
o En la seccin Descripcin y Mejoras, anota en Lnea(s) el nmero
o nmeros de lneas del cdigo que no se adaptan a una regla
establecida en el estndar y en Descripcin menciona cul es la
regla a la cual no se adaptan esas lneas.
! Observa cuidadosamente el cdigo fuente de ejemplo:
o Trata de detectar algo, que desde el punto de vista de una buena
prctica de programacin, no debera existir en el cdigo y que
consideras pudiera incluirse en el estndar de codificacin para
facilitar el conteo y/o hacer el cdigo ms legible y estructurado.
o En la seccin Descripcin y mejoras, anota tus hallazgos.




4 Ejemplo de un estndar de codificacin para Visual Basic

El siguiente estndar de codificacin est orientado al lenguaje de programacin
Visual Basic.NET, no es un estndar que cubra todos los aspectos necesarios,
solo se incluyen algunos a manera de ejemplo.

Al leer la plantilla se puede interpretar la forma en que se decidi llevar a cabo la
codificacin. En l se especifica:
! Que todo programa deber llevar un formato de encabezado que lo
identifique.
! Reglas para dar nombre a los identificadores, que son todas las palabras
utilizadas para dar nombre a procedimientos, funciones y variables.
! El uso de las maysculas y minsculas al especificar estos nombres.
! El uso de los comentarios de manera correcta
! La forma de separar las lneas lgicas





Estndar de Codificacin para Visual Basic .Net

Propsito Guiar el desarrollo de programas de VB .NET
Encabezados de
Programa
Todos los programas inician con un desplegado de comentarios descriptivo
Formato del
Encabezado
' Programa : Calcula.vb
' Descripcin : Calcula el rea de un circulo
' Desarrollador: Carlos Hctor Castaeda Ramrez
' Fecha : 01-Enero-2006
' Actualizacin: v0.2 del 10-Junio-2006
Identificadores Use nombres descriptivos para variables, mdulos, procedimientos y otros
identificadores. Evite el uso de abreviaciones o variables de una sola letra, a
menos que sean variables de control de un ciclo.
Declarar constantes y variables en la parte superior de su estructura de
alcance aplicable (mdulo, procedimiento).
Declarar como mximo tres variables por lnea (si no son inicializadas).
Declarar e inicializar slo una variable por lnea.
Ejemplo de
identificadores
' Ejemplos correctos
' Dim numeroLineas as Integer
' Dim cadenaInvertida As String, cadenaTemporal As String
' Public Sub CuentaLineas(ByVal archivo As String)
'
' Ejemplos incorrectos
' Dim i,j,k,l,m As Single
' Dim c as String
Uso de
maysculas /
minsculas
Al nombrar mdulos, clases o procedimientos, el primer caracter de cada
palabra es mayscula y el resto son minsculas.
Al nombrar variables o parmetros de procedimientos, el primer caracter de
cada palabra, excepto la primera, son maysculas y el resto son minsculas.
Ejemplo de uso
correcto
maysculas /
minsculas
Public Sub Agregar(ByVal valor As Single)
Public Function EsVacia() As Boolean
Public cabezaLista As Nodo
Public colaLista As Nodo
Ejemplo de uso
incorrecto
maysculas /
minsculas
Public Function esVacia() As Boolean
Public cablis As Nodo

Comentarios Documentar el cdigo de tal forma que el lector pueda entender su operacin.
No comente el cdigo que es obvio.
No use comentarios al final de la lnea de cdigo, pngalos en una lnea
separada
Comentarios
Correctos
' Si es el primer elemento lo agrega al inicio si no checa su posicin
If cabeza Is Nothing Then

' Bandera para indicar que el proceso termino correctamente
Dim procesoTerminado As Bolean

Comentarios
Incorrectos
'Le suma uno al contador
contador = contador + 1

If (numeroLineas > 200) Then ' Si excedio el ancho total mandar





Lneas Lgicas No ponga dos lneas lgicas en una lnea fsica, ni una lgica en dos lneas
fsicas. Es decir evitar el uso de dos puntos ( : ) y guin bajo ( _ ) como
separadores de lneas de cdigo.





5 Cdigo Fuente de Ejemplo

1. ' Programa : Empleado.vb
2. ' Descripcin : Almacena los datos de empleados
3. ' Desarrollador: Juan Carlos Ramrez Salas
4. ' Fecha : 01-Enero-2012
5. ' Actualizacin: v0.2 del 10-Junio-2012
6.
7. Imports Microsoft.VisualBasic
8. Imports System.IO
9.
10. Module ModuleE
11.
12. ' Clase Empleado
13.
14. Public Class Empleado
15.
16. ' Campos de la Clase
17. Public Id As Integer
18. Public nombre As String
19. Public r As Double
20. Public costoHora As Integer
21. Public horasTrabajadas As Integer
22.
23. ' Variables de propiedad de la Clase
24. Private e As String
25. Private FechaIng As Date
26.
27. ' Propiedad de slo escritura
28. Public WriteOnly Property CtaBancaria() As String
29.
30. Set(ByVal Value As String)
31. Select Case Microsoft.VisualBasic.Left(Value, 4)
32. Case "1111"
33. e = "Banco De Crdito del Per"
34. Case "2222"
35. e = "Banco Continental"
36. Case "3333" : e = "Caja Municipal de Trujillo"
37. Case Else : e = "no existe entidad"
38. End Select
39. End Set
40.
41. End Property
42.
43. ' Propiedad de lectura y escritura
44. Public Property FechaIngreso() As Date
45. Get
46. Return FechaIng
47. End Get
48.
49. Set(ByVal Value As Date)
50. FechaIng = Value
51. End Set
52. End Property
53.
54. ' Propiedad de slo lectura
55. Public ReadOnly Property Entidad() As String
56. Get
57. Return e
58. End Get
59. End Property
60.
61. ' Propiedad virtual
62. Public ReadOnly Property mesingreso() As String
63. Get
64. Return Format(FechaIng, "MMMM")
65. End Get
66. End Property
67.
68. ' Mtodo que calcula y devuelve el sueldo




69. Public Function sueldo(ByVal HORAS As Integer)
70. r = horas * CostoHora
71. Return r
72. End Function
73.
74. End Class
75.
76. Sub Main()
77.
78. ' Variables para almacenar los datos de entrada
79. Dim oempleados(10) As Empleado
80. Dim oEmpleado As New Empleado
81.
82. ' Almacena los datos de un empleado
83. oEmpleado.Id = "11": oEmpleado.nombre = "Juan Diaz Perez"
84. oEmpleado.CtaBancaria = "2222-6891653455"
85. oEmpleado.FechaIngreso = "12/01/2004"
86. oEmpleado.CostoHora = "35"
87. oEmpleado.HorasTrabajadas = "26"
88. oEmpleado.r = _
89. oEmpleado.Sueldo(oEmpleado.HorasTrabajadas)
90. oempleados(0) = oEmpleado
91.
92. End Sub
93.
94. End Module





6 Descripcin y Mejoras

Descripcin de lneas que no se ajustan al estndar de codificacin

Linea(s) Descripcin








Posibles mejoras al estndar de codificacin para hacer ms legible y estructurado
el cdigo fuente

Lnea(s) Sugerencia

También podría gustarte