tincho   14-05-2021, 16:21
#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.
cogier   14-05-2021, 17:02
#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.
tincho   14-05-2021, 17:11
#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:
Código:
Public Sub MyFunc() As String
 
  Dim $sData As String
  Dim $iNext As Stream
 
Como se ve ambas son DIM locales.
¿Otra razón?

1 Saludo.
Harpo   14-05-2021, 18:16
#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.
gambafeliz   14-05-2021, 18:38
#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
tincho   14-05-2021, 20:07
#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
Última modificación: 14-05-2021, 20:08 por tincho.

1 Saludo.
vuott   14-05-2021, 20:45
#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, 1983)

« Las ondas nunca regresan. » (Genesis: Ripples, 1976)

« Vita non suavis esse potest, nec Mors amara. »  (...vuott)
gambafeliz   15-05-2021, 08:58
#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.
tincho   15-05-2021, 23:12
#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.
  
Usuarios navegando en este tema: 4 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.