Erweiterter Ansatz für den Seitenaufbau

Tuesday, 28 August 2007, 10:03 von Blackflash

Da ich bei meinem derzeitigen Ansatz an die Grenzen stoße - oder zumindest deren Schwachstellen erkenne -, habe ich mir gedacht, ich muss einen neuen Ansatz entwickeln, oder den alten zumindest erweitern. Aber bevor ich es zum Besten gebe, werde ich nochmal den alten Ansatz erläutern.

Allerdings werde ich zuerst noch die Problemstellung beschreiben.
Bei der Seitenstruktur geht es um das Erstellen einer beliebig tiefen Hierarchie - im technischen Sinne ein Baum oder ein Wald - die die Struktur der Seite angibt. Wie diese Struktur auf meiner Seite aussieht, ist auf der Sitemap ersichtlich. Man kann dabei gut sehen, welche Struktur die Seite hat. Diese Seitenstruktur ist zum Einen notwendig, um die so genannte Sitemap zu kreieren und zum Anderen kann man seine Seite dadurch klarer strukturieren. Auch für das "Sie sind hier:" wird die Struktur der Seite genutzt. Der Komfort wird dadurch signifikant erhöht, was bei größeren Internetpräsenzen durchaus notwendig ist.

Eine Erklärung meines derzeitigen Ansatzes nach dem Prinzip KKP (Kurz, Knapp, Präzise): Es gibt Knoten, die einen Link und andere Metainformationen enthalten. Jene können Eltern- und/oder Kindknoten haben. Dadurch strukturiert man einen Baum oder Wald. Es entsteht eine flexible Seitenstruktur.
Das derzeitige Problem tritt z.B. bei diesem Blog auf. Wenn man auf einen Blogeintrag klickt, dann kriegt man im "Sie sind hier:" den Titel "Blogeintrag" angezeigt statt des korrekten Namens. Abhilfe könnte man schaffen, indem man jeden neuen Blogeintrag in die Navigationstabelle schreibt. Klingt gut, hat aber auch seine Schattenseiten. Bei einer großen Webseite werden die Tabellen mit jedem noch so kleinen Eintrag befüllt. Die Geschwindigkeit der ganzen Seite würde darunter leiden, da bei jedem Aufruf die Seitenstruktur genutzt wird. Natürlich könnte man es optimieren, sodass auch in jenen Fällen performant ist, aber das widerspricht meinem Verlangen nach simplen und dafür effektiven Lösungen.

Man kann die o.g. Idee weiterverwenden, man muss also nicht alles komplett umgestalten. Das Prinzip ist einfach zu verstehen: Ich füge eine Klasse hinzu, die den derzeitigen Pfad (Weg von der Wurzel zum derzeitigen Knoten) enthält. Eine neue Funktionalität lässt mich neue, temporäre Knoten zu dem Pfad hinzufügen. Sodass statt "Blog - Blogeintrag" z.B. "Blog - Erweiterter Ansatz für den Seitenaufbau" steht. Meiner Meinung nach viel sinnvoller als vorher. Eine weitere Stärke ist, dass man den Link von "Blog" so modifzieren kann, sodass man auf die Seite zurückkommt, von der man gekommen ist. Wenn z.B. der Eintrag "Foobar" auf Seite 42 steht, so würde "Blog" auf Seite 42 des Blogs zeigen. Das nenne ich Flexibilität. Also müsste es sicherlich auch die Möglichkeit geben, bereits existente Knoten zu entfernen und sie damit durch andere zu ersetzen. Das System, welches ich oben beschrieben habe, könnte genutzt werden, um einen Anfangszustand zu definieren. Aber der Rest wird dann durch den Controller bestimmt.

Ich hoffe, ich konnte die Idee einigermaßen gut erklären. Werde mich alsbald ransetzen und diesen Ansatz implementieren. Wird dann auch direkt auf dieser Seite getestet werden. ;-)

Kommentare


Kommentiere!

Your Name:


Your Email:


Your URL:


Spam Prevention:
Enter the text above into the box below.
If you are unable to read it, refresh the page.


Your Comment: