Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Hablemos de los nombres de las variables.
#1

Hola amigos.
Cuando leemos el código de otros ademas de existir diferencias en la forma de abordar los mismos problemas como por ejemplo algunos prefieren IF en lugar de Select o For each en lugar de For x = 0, existen otras diferencias mas notorias a la hora de nombra las variables.
¿Por que algunos usan "$" en los nombres de las variables? ¿Es algo arcaico arrastrado del viejo basic?
Saludos.

1 Saludo.
    ¡Gracias!
#2

Cita:¿Por que algunos usan "$" en los nombres de las variables? ¿Es algo arcaico arrastrado del viejo basic?

El $ se utiliza a menudo para indicar que la variable es global.
    ¡Gracias!
#3

(14-05-2021, 17:02)cogier escribió:  El $ se utiliza a menudo para indicar que la variable es global.

Si eso creía pero a veces veo código como este:
GAMBAS
  1. Public Sub MyFunc() As String
  2.  
  3.   Dim $sData As String
  4.   Dim $iNext As Stream
  5.  


Como se ve ambas son DIM locales.
¿Otra razón?

1 Saludo.
    ¡Gracias!
#4

En mi caso suelo utilizar $ + letra ($s - $b - $i - ...) en las variables privadas de propiedades de clases o componentes. Me permite identificarlas y diferenciarlas de variables locales. $sText almacena el string de una propiedad, sText un string genérico.
Utilizo el IF en casos SI/NO y SELECT cuando hay varias alternativas, pero no es una regla fija, depende cómo vea que queda más limpio el código.
Y normalmente utilizo FOR EACH en objetos enumerables y/o cuando el acceso no necesita un índice. El FOR x = 0 cuando me hace falta un índice o no queda más remedio. Tampoco sigo una regla fija.

Supongo que cada uno tiene sus costumbres, yo cuando veo un "Dim j as String" se me nubla la vista, más adelante no sabré qué tipo tiene y qué almacena esa variable. Aunque más de una vez lo habré hecho.

Un saludo.
    ¡Gracias!
#5

Que yo sepa la explicación es esta:

Variable a nivel de clase comienza por $ para diferenciarlas de las variables locales a nivel de Subrutina o Función.

Por otra parte yo uso siempre un Módulo para crear variables globales y siempre empiezan por "g" para saber que son globales.

Y a nivel general uso la nomenclaturas que usa camelCase para las variables y donde LowerCamelCase para variables y UpperCamelCase para Subrutinas y Funciones y por último para los objetos uso notación Húngara algo como TextBox para mi es igual a tb ó txt

En fin existe muchas formas pero esta es mi forma.

Saludos.

Nota: a veces me salto mis propias normas y hago lo que me da la gana y cuando reviso mi código, ya saben, me cago en 10) Smile
    ¡Gracias!
#6

(14-05-2021, 18:16)Harpo escribió:  Supongo que cada uno tiene sus costumbres, yo cuando veo un "Dim j as String" se me nubla la vista

Si, al final, como nombremos las variables, se convierte en un tema importante en el sentido que otros programadores y nosotros mismos luego de un tiempo, tendremos dificultad para leer el código.
Yo trato de seguir unas normas de un apunte de estos temas que hice hace un tiempo y de vez en cuando le cambio algo que veo que no era lo que la mayoría usaba y con el tiempo voy mejorando, creo Smile, por ejemplo hace mucho se me ocurrió que todas las matrices de texto tenían que comenzar por "stx" pero ahora cambie a la que usan en gambas en los atajos y uso la letra "a" al comienzo de la variable y es mas fácil en parte porque el fragmento de código ya te plantea un nombre estándar.
Creo que al ver como se llaman las variables en los atajos de teclado que propone el ide de gambas es una buena practica porque hace de unificador.
Saludos

(14-05-2021, 18:38)gambafeliz escribió:  a veces me salto mis propias normas y hago lo que me da la gana y cuando reviso mi código, ya saben, me cago en 10

Se de lo que hablas. Smile

1 Saludo.
    ¡Gracias!
#7

Sin perjuicio de las estrictas normas del lenguaje, el resto es una elección personal o convencional.

"Los horizontes perdidos nunca regresan. " (F. Battiato, La stagione dell'amore, 1983)

"Las ondas nunca regresan. " (Genesis: Ripples - A trick of the tail, 1976)
    ¡Gracias!
#8

No, vuott

Es de libre elección, si, pero no creo que en el mundo de la lógica sea libre. En el foro anterior conté una historia donde un programador compañero de trabajo se enfado con la empresa y desde el enfado estuvo 3 meses escribiendo código sin que nadie lo supiera donde cada variable era el nombre de cada jugador de la liga BBVA de aquel año, cuando lo descubrimos por un lado era gracioso pero nos volvió loco durante un tiempo a todos.

Por lo tanto la moraleja es que puedes escribir como te de en gana pero sinceramente si vas a escribir para mas gentes que tú pues no considero que sea ni libre ni personal, ¿no crees vuott?

Oye es una opinión más igual que la tuya, no?

Saludos, joven.
    ¡Gracias!
#9

(14-05-2021, 20:45)vuott escribió:  el resto es una elección personal o convencional.

Si en la practica es personal pero el caracter personal puede verse afectado dependiendo del ámbito en que el código sera manejado.
Saludos.

1 Saludo.
    ¡Gracias!


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)