style guide php javascript oop naming-conventions history

php - guide - javascript naming conventions



_Underscores en nombres de funciones (5)

En muchos idiomas con capacidad OO simple (PHP 4) o capacidades OO mal entendidas (Javascript, C usando punteros de función, etc.), terminará con una convención de nomenclatura de funciones que utiliza guiones bajos para indicar el nivel de privilegio.

//ex. function _myPrivateFunction(){ }

Si bien los equipos individuales siempre van a crear sus propias convenciones de nomenclatura como esta, la convención de subrayado parece tan frecuente que me hizo sentir curiosidad por

  1. De donde vino la técnica por primera vez
  2. Si alguna vez hubo algún sistema estandarizado (parecido a una notación húngara) desarrollado alrededor de la convención

Más allá de la pura curiosidad, estoy viendo esto en unos pocos códigos de base con los que estoy lidiando en este momento, y me gustaría entender los posibles espacios de los desarrolladores a los que originalmente se les ocurrió.


En el mundo de C ++, los nombres de los miembros que comienzan con un guión bajo están reservados para ser utilizados por los compiladores (o API de bajo nivel como los de la API). No está prohibido por los compiladores de ninguna manera, pero esa es la tradición.

Este enlace wiki es bastante informativo en el underscore .


He visto el guión bajo usado como funciones privadas y he visto el guión bajo como funciones globales. También el guión bajo se usa para denotar variables globales dentro de PHP.

$_POST $_GET $_SESSION etc..

Es solo una convención de nombres, así que le preguntaría al autor, si él está cerca.


Lo vi por primera vez cuando codificaba C ++. Marcar variables de miembro con el prefijo "m_" se hizo comúnmente.

Prefiero no usar nada de eso cuando escribo Java. Dejo claras las variables de miembros usando "esto".


No te puedo decir el origen de esta convención. Supongo que, dado que el guión bajo es el único carácter no alfanumérico permitido en los identificadores en la mayoría de los lenguajes de programación, es natural elegirlo como un prefijo para los miembros privados.

En Python, prefijar nombres con un guión bajo es más que una convención: los símbolos que comienzan con un guión bajo no se importan de forma predeterminada al importar "todo" desde un módulo, por lo tanto, el guión bajo indica "privado" / "uso interno".