Devo usare la title case negli URL?

9

Attualmente stiamo decidendo una convenzione di denominazione coerente su un sito con più applicazioni web. Storicamente, sono stato un sostenitore del 'lettere minuscole tutte le lettere!' durante la creazione di URL:

http://example.com/mysystem/account/view/1551

Tuttavia, nell'ultimo anno o due, in particolare da quando ho iniziato a utilizzare ASP.NET MVC & ha avuto più contatti con gli URL basati su REST, sono diventato un fan di capitalizzare la prima lettera di ogni sezione / parola all'interno dell'URL in quanto rende più facile la lettura (imho).

http://example.com/MySystem/Account/View/1551

Non siamo in una situazione in cui le persone hanno bisogno di per leggere o essere in grado di comprendere gli URL, quindi non è un driver di per sé. La cosa principale che cerchiamo è un approccio coerente, razionale e sensato.

Ci sono degli standard che dichiarano che è giusto fare in un modo o nell'altro o problemi che potrebbero verificarsi in configurazioni (almeno realisticamente moderne) che sceglierebbero una preferenza rispetto ad un'altra? Qual è il consenso generale per questo dibattito al momento?

    
posta Amadiere 28.02.2012 - 10:52
fonte

6 risposte

10

Poiché la scelta è principalmente estetica (cioè, la maggior parte dei sistemi non distingue tra lettere maiuscole e minuscole, e certamente gli utenti non lo fanno), quindi suggerirei di andare solo con quello che ti rende felice. La coerenza all'interno dell'applicazione è la chiave , non il modo che scegli.

Poiché stai usando ASP.Net, ti consiglio di andare con l'approccio PascalCase - poiché questo è ciò che tende ad esistere all'interno del framework Microsoft (librerie di sistema, ecc.) Ma non ci sono "best practice" diverse da essere coerenti.

La maggior parte dei browser fa un buon lavoro di nascondere l'URL dall'utente, al punto che moltissime persone che hanno come pagina home google, quindi cercano facebook e cliccano su di esso - piuttosto che entrare in Facebook url nel proprio browser.

    
risposta data 28.02.2012 - 11:00
fonte
4

Per i siti web interni, non importa se si è coerenti con esso.

Per i siti esterni, di pubblico dominio, probabilmente si vuole attenersi alle minuscole, che è più o meno lo standard nel web hosting Linux / Apache. Come ricordo, anche alcune versioni di Firefox sembrano gestire l'involucro dell'URL in modo diverso rispetto a IE. Questo potrebbe valere anche per Chrome.

Avere un involucro coerente è importante anche per l'ottimizzazione dei motori di ricerca. Non vuoi che Google veda lower-case.aspx e Lower-Case.aspx come pagine diverse con contenuti duplicati. Mentre i loro algoritmi cercano di prevenire questa identità errata, accade di tanto in tanto e può causare una pagina penalizzata.

    
risposta data 28.02.2012 - 16:26
fonte
2

Finché gli utenti possono digitarlo come vogliono, non importa. Personalmente, preferisco TitleCase , ma ci sono molti che non sono d'accordo. Se sei coerente, a nessuno importa.

Se il tuo server web non può, per qualche ragione, mostrarmi http://foo.com/HelloWorld quando tento di andare a http://foo.com/helloworld , dovresti optare per tutto minuscolo. Al giorno d'oggi le persone digitano raramente URL completi, gli indirizzi frontali devono essere accessibili senza doversi preoccupare delle lettere maiuscole.

    
risposta data 28.02.2012 - 22:11
fonte
2

Che hai iniziato a utilizzare MVC non dovresti "perdere" nell'astrazione REST. Ci sono buoni motivi per usare tutti gli URL in minuscolo con trattini tra le parole. Gli URI (non i nomi di dominio) SONO case sensitive. Se si mette tutto a lettere minuscole e si usano i trattini per separare le parole, si è eliminato un sacco di lavoro di congettura e una tantum, e se si utilizza un server proxy (nginx, nodejs, apache ...) non si avrà tutto per rompere perché improvvisamente è case-sensitive.

"MiXeD-CaSe NaMeS. Non confondere gli utenti mescolando-Maiuscole-e-Minuscole-Caratteri-nell'URL. Attenersi alle lettere minuscole e don ' Se i tuoi utenti digitano effettivamente un URL in maiuscolo, normalizzalo sul server e serva nel caso appropriato ".

    
risposta data 28.07.2016 - 02:37
fonte
1

Sebbene i TLD non siano sensibili alla distinzione tra maiuscole e minuscole e i percorsi di Windows utilizzino una combinazione di maiuscole e minuscole, le nostre applicazioni sono sensibili ai percorsi delle richieste in entrata, dove i percorsi o i componenti sono normalmente normalizzati in un caso standard, poiché /format/JSON/ e /format/json/ sono richieste per due formati diversi e fanno riferimento a due risorse distinte.

Ogni volta che ho visto link , mi sono sentito come lo sviluppatore l'intento era principalmente di apparire un po 'diverso dal resto, ma non è nulla di innovativo e non aiuta a migliorare la leggibilità, specialmente ora che hai I e l , O e 0 , altre lettere che contendono la tua analisi.

Non sono a conoscenza di alcun consenso, né credo che ci dovrebbe essere uno, perché qualcosa di semplice come capitalizzare solo alcune parti di un URL potrebbe avere un impatto positivo sulla leggibilità e sono sicuro che qualcuno, da qualche parte è già idee interessanti quando si tratta di applicare casi di lettere agli URL.

Tuttavia, a giudicare dal fatto che la maggior parte dei server Web è in esecuzione su Linux e che gli sviluppatori finiscono sempre per standardizzare i dati di testo in arrivo perché l'input fa distinzione tra maiuscole e minuscole, io rimango fedele a come è stato fatto per tutto il tempo.

    
risposta data 28.02.2012 - 11:32
fonte
0

MAI usa la title case per motivi di usabilità! Immagina quante volte dovresti spendere e fare clic per eseguire diversi URL caso nel tuo MOBILE telefono!

    
risposta data 13.11.2012 - 22:46
fonte

Leggi altre domande sui tag