Sé sobre reglas de casos de camellos, pero estoy confundido con esta regla m. Que significa? Soy un desarrollador de PHP. "Nosotros" utilizamos las primeras letras de variables como indicación de tipo, como 'b' para booleano, 'i' para entero y así sucesivamente.
¿Es 'm' una cosa de Java? ¿Es sinónimo de móvil? ¿mezclado?
android
coding-style
pambuk
fuente
fuente
Respuestas:
Esta notación proviene de las Directrices de estilo de código de AOSP (Proyecto de código abierto de Android) para contribuyentes :
Tenga en cuenta que la guía de estilo vinculada es para que el código se contribuya al proyecto de código abierto de Android.
No es una guía de estilo para el código de aplicaciones individuales de Android.
fuente
computedValues
..."Muchas líneas de guía de codificación usan m para 'miembros' de una clase. Entonces, cuando está programando, puede ver la diferencia entre las variables locales y las miembros.
fuente
m
prefijo.¿Qué es el mprefijo?
msignifica miembro variable o miembro de datos. Utilice el mprefijo para campos no públicos y no estáticos.
¿Cuándo usar?
¿Cuándo no usar?
¿Lo que hago?
Personalmente, no lo uso. Hace que el código sea más complicado y caos la legibilidad. Si todavía está usando el Bloc de notas para la codificación, no tengo palabras, pero los IDE modernos son capaces de resaltar y colorear las variables miembro y locales o cualquier otra cosa.
Conclusión
¿Utilizar? "Sí" o "No" es su elección personal.
fuente
public static int
, pero use ens
lugar dem
:public static int sFirstNumber;
consulte stackoverflow.com/a/49453184/7767664Si se trata de variables miembro en clases, la 'm' significa 'miembro'. Muchos programadores de Java hacen eso, aunque con IDEs modernos no es necesario ya que tiene resaltado, mouse sobre información sobre herramientas, etc.
fuente
Según el libro Clean Code, no es un código limpio.
fuente
Si tienes problemas como
No olvide hacer lo siguiente ( Configuración / Editor / Estilo de código / Java / Generación de código ):
Actualización: no usamos algo como esto en Kotlin (por lo que es mejor cambiar a él y no usar prefijos más)
fuente
Creo que es muy individual qué convenciones de código se utilizan. Prefiero nombrar mis variables con los siguientes prefijos:
Pero supongo que cada programador tiene su propio estilo.
fuente
Para demostrar que definitivamente no debe tratar esta convención para nombrar variables en su código, le paso una captura de pantalla de un Android Studio principal a continuación.
Encuentra las variables dentro de un objeto especialmente ordenadas para poner las variables m más bajas que tus variables nativas . Entonces, al nombrarlos en su código con el prefijo "m", los oculta en un montón de usted mismo .
fuente
El único beneficio que encontré de este estilo de código es cuando durante un autocompletado de alguna referencia a una variable, sé que puedo escribir "m" para ver solo las variables miembro.
fuente
Como se mencionó anteriormente, está diseñado para diferentes variables. Pero también es muy útil para la generación de código. Si presiona "Alt + Insertar" obtendrá ventanas para las propiedades de generación de código más comunes. Si desea generar el método "get" para su variable, obtendrá.
Pero si declaras "m, s" obtendrás:
Se generará automáticamente y se eliminará "m" o "s" del constructor, get, set nombre de métodos. Después de esto, "get" 'y "set" para el campo se generarán sin "m". Andoroid Fle-> Setting-> Code Style-> Java-> Code Genenretion. Y hacer como en una foto. Tal vez te ayude. Perdón por mi eng. Configurar android
fuente
Parece haber sido una preferencia personal de algunos de los primeros ingenieros de Android / Google comenzar las variables miembro con 'm', por lo que lo recomendaron.
Ahora, esta regla está siendo forzada por los desarrolladores de empresas que no son contribuyentes de AOSP, simplemente porque esa página se considera reglas de estilo de código de Android. Hay poco o ningún beneficio en esa regla. Google debería considerar eliminarlo. De lo contrario, especifique que para las aplicaciones de Android cuáles de las reglas de estilo de código son opcionales.
Agregue su comentario de apoyo a esta petición para eliminar la regla https://code.google.com/p/android/issues/detail?id=226814
fuente
Como cuestión de legibilidad, la convención de las
m
variables miembro ys
los campos estáticos ya no se deben usar si está utilizando un IDE moderno como Android Studio. Android Studio puede diferenciar entre aquellos sin agregarm
os
.fuente
También se puede afirmar que significa "mío", ya que en la Clase / Instancia se dice "Esta variable es mía y nadie más puede acceder a ella". Diferente al estático que, si bien puede estar disponible solo para la Clase, todas las instancias de esa clase lo comparten. Como si estuvieras dibujando círculos, necesitarías saber qué tan grande es el radio de cada círculo
pero al mismo tiempo desea un contador para realizar un seguimiento de todos los círculos, dentro de la clase de círculo que podría tener
y luego solo tienes miembros estáticos para aumentar y disminuir la cuenta de los círculos que tienes actualmente.
fuente
Las siguientes son las convenciones de nomenclatura,
Ejemplo:
fuente