Zend Framework 2 sottolineatura privato
-
04-10-2019 - |
Domanda
Will Zend Framework 2 Continuare a posizionare sottolineatura di fronte a membri privati ??e metodi delle classi? per esempio:
class blah {
private $_name;
private function _doSomethingToName()
{
}
}
vedo che sono ancora lì nella versione dev di ZF2.
Soluzione
Probabilmente si, accodring a il sondaggio :
Al momento non ci sono risposte 381:
- 57% voto "Sì" (per rimuovere le sottolineature)
- 38% voto "No" (per mantenere underscore)
- 4% voto "Nessun parere"
Altri suggerimenti
Da ZF2 standard di codifica
Funzioni e metodi
I nomi delle funzioni deve contenere solo caratteri alfanumerici. Sottolineatura non sono consentiti. I numeri sono consentiti in nomi di funzione, ma sono scoraggiati. ... Per i metodi su oggetti che vengono dichiarati con il modificatore "privata" o "protetto", il primo carattere del nome del metodo può essere un carattere di sottolineatura. Questa è l'unica applicazione accettabile di sottolineatura nel nome di un metodo, ed è scoraggiato (in quanto rende Rifattorizzazione visibilità pubblica più difficile). Metodi dichiarato "pubblico" non deve contenere un carattere di sottolineatura.
http://framework.zend.com/wiki/display/ZFDEV2/ codici + Standards
Sì, e perché non dovrebbero? E 'una convenzione per farlo.
Questa è una convenzione in altre linguaggi orientati agli oggetti troppo.
controllare i suddetti indirizzi codice a due convegni:
Ma tutto e tutto questo dovrebbe essere una convenzione squadra, che è probabilmente come è per Zend. Credo che queste convenzioni di codici devono essere utilizzati per chiarezza e coerenza quando si scrive il codice. Per me, l'uso di Zend prefisso di sottolineatura per i soci privati ??è un grande risparmio di tempo, soprattutto quando non sono molto familiare con una classe.
Sono stato recentemente chiedendo a questa domanda e fatto una ricerca attraverso l'intero albero dei sorgenti ZendFramework-2.1.4 per ottenere una risposta definitiva. Gli appare sottolineatura Convenzione non è più in uso per le variabili. Non c'è nemmeno una dichiarazione di variabile privata o protetta in tutto il progetto che inizia con un singolo trattino basso. Ci sono un piccolo numero di variabili nei seguenti tre file che iniziano con due sottolineature, ma questo è tutto.
\ ZendFramework-2.1.4 \ Libreria \ Zend \ Visualizza \ renderer \ PhpRenderer.php \ ZendFramework-2.1.4 \ Libreria \ Zend \ Visualizza \ renderer \ ConsoleRenderer.php \ ZendFramework-2.1.4 \ Libreria \ Zend \ stdlib \ AbstractOptions.php
Almeno uno di questi file contiene il seguente commento:
Nota: tutte le variabili private in questa classe hanno il prefisso "__". Questo è per * Contrassegnarli come parte dell'implementazione interna, e quindi prevenire conflitti * Con variabili iniettate nel rendering.
Per quanto riguarda i metodi sono stato in grado di trovare tre file che utilizzano "funzione privata _" e 89 file che uso "funzione protetta _" per dichiarare metodi. C'erano anche tre file utilizzando "funzione statica privato _" e sette file utilizzando "funzione statica protetta _". Questi sono una minoranza molto piccola del numero totale di dichiarazioni di metodi nel progetto.
Sembrerebbe che questa convenzione è morto o morire entro Zend Framework 2.
EDIT: Sembra che queste due sezioni delle norme ZF2 codign indicarlo chiaramente
.http://framework.zend.com/wiki/ Mostra / ZFDEV2 / Coding Standard + # CodingStandards-variabili http://framework.zend.com/wiki/display/ZFDEV2 / Coding Standard + # CodingStandards-FunctionsandMethods
Variabili
I nomi delle variabili devono contenere solo caratteri alfanumerici. Sottolineatura non sono consentiti. sono consentiti i numeri in nomi di variabili, ma sono scoraggiati nella maggior parte dei casi.
Per le variabili che vengono dichiarati con visibilità privata o protetta, il primo carattere del nome della variabile può essere una singola sottolineatura. Questa è l'unica applicazione accettabile di sottolineatura in un nome variabile, ed è scoraggiato (in quanto rende Rifattorizzazione visibilità pubblica più difficile).
Funzioni e metodi
I nomi delle funzioni deve contenere solo caratteri alfanumerici. Sottolineatura non sono consentiti. sono consentiti i numeri in nomi di funzione, ma sono scoraggiati.
nomi??funzione deve sempre iniziare con una lettera minuscola. Quando un nome di funzione è costituito da più di una parola, la prima lettera di ogni nuova parola devono essere capitalizzati. Questo è comunemente chiamato "camelCase" formattazione.