Cool URIs don't change
URLs organisieren, das bedeutet nicht viel, aber das bitte sauber.
- Clean_URL, eindeutige Regelung ob upperUNDODERlowercase
- keine fiesen slashstrukturen, sondern sparsame Kategorisierung. Von ''ich/urlaub/fotos/gross/'' ist eher abzuraten, Sinn macht das als Datum ''Jahr/Monat'' bei blogs
- no-www.org
- Cool URIs dont change!'
- when embedding, leaving the protocol off.
pagename.html vs pagename
There are several reasons to remove extensions from URLs
- To make the URLs look cleaner.
- To make URLs easier to type.
- To make URLs easier to remember.
- To be able to change technologies
Extensions are not needed on the web because servers send the Internet_Media_Type of document as a header.
trailing slash (/)
Query String?get
Der Query String (auch get parameter) nur für andere abfragen und actions, zb 'edit' oder parse um nur den html inhalt (zB zum asynchronen nachladen) oder raw für den rohen ungeparsten Inhlat.
hash
Der Fragmentbezeichner auch genant der 'hash', kann neben der html nativen Sprungmarke mit javascript genutzt werden und onsite events, einzelne AJAX requests oder der ganze Inhalt angefragt werden.
Viele Systeme bauen aus Überschriften automatische fragment identifier (aus <code><h1 id="hello">Hello</h1></code>. Aus meiner Erfahrung will man die eh immer manuell setzen um prägnanten Schlagwörter nutzen zu können. Überschriften sind Sprache, IDs sind eher Abkürzungen. Und das kann ein (nicht AI) Computer nicht abstrahieren.
ein automatisches
https://de.wikipedia.org/wiki/Hyperlink#Allgemeiner_Aufbau_und_Funktionsweise
ist halt sehhhhr lang und hat zuviel blerk drin, wenn ich schon ein anchor haben will, denn besser wäre:
https://de.wikipedia.org/wiki/Hyperlink#aufbau_funktion
Technik
Den gesamten Inhalt an ein Grundgerüst per AJAX zu kleben nutzte twitter lange, hat davon aber Abstand genommen.
Will man aber nun nicht nur ein Wert übergeben sondern mehrere, kann man dies trennen.
- einen einfachen Wert (string) übergeben ( ''#historie'') wie z.B. iloveleo.de/#/news/
- mit einem Trenner wie ''/'' oder '','' ein einfaches array bekommen um z.B. ein MVC abzubilden (''#person/tplpers/hans''))
- oder mit key-value Paaren ein assotiatives array nutzen. Da bietet sich die Notation von GET als pseudo get parameter an, wie mein areacompare, welches aber kaputt ist. A URL like http://dahl.example.org/#search?q=matilda may look weird, but it is completely in line with RFC 3986
Will man auf einer Site oder Seite alle drei flexibel nutzen bekommt man eine Fehler, daher muss ich etwas bauen was vor der action prüft ob der hash ein Wert, array oder assoziatives array ist.
titel hash
Wenn man per mail oder chat einen Link auf ein nicht lesbare URL (Nummer oder abgekürztes Lemma) verschickt weiss der Empfänger nicht was ihn erwartet, denn aus 'ticketexample.org/tasknr=1234' weiss man noch nicht um was es dort geht.
Mit einem lesbaren hash (z.B. 'ticketexample.org/tasknr=1234#Alugestaenge_rot_lackieren') der auf den Seitentitel (per id) verweist.
Wie
Alle Arten von Websiten (z.B. Staticsitegenerator)
besser
Oder ein Autolemma * task * doku
cool
- Lesbare Artikel-Nummern z.B. Artikel-Nr.: RASP NOOBS B+