Forums » Funktionserweiterungen »
Weitere Tutorials :)
Added by TheJeed over 1 year ago
Hallo!
Ich teste SIMON nun seit etwa drei Monaten, habe aber das Gefühl, aus eigener Kraft nicht wirklich verstehen und erforschen zu können, wozu das Ding noch in der Lage sein kann. Das hier ist nicht wirklich ein Feature Request im Sinne der Technik, aber für mich spielt die Dokumentation grundsätzlich eine große Rolle. An den JavaDocs ist kaum was auszusetzen, doch wie wäre es, wenn die Möglichkeiten von SIMON noch in ein paar weiteren Tutorials aufgezeigt würden? Alternativ würde ich mich riesig über Beispielprojekte freuen, anhand derer ich "SIMON best practices" verstehen lernen kann.
Btw: Tolles Projekt - gute Arbeit :) Ich habe seit meinem Post im Hilfeforum in meiner ersten SIMON-Woche keinerlei Probleme mehr :)
Beste Grüße,
David
Replies (1)
RE: Weitere Tutorials :) - Added by achristian over 1 year ago
Danke für dein Feedback.
In der Tat könnte man bei den Samples und Tutorials noch mehr tun. Nur leider hat es zeitllich bei mir noch nicht für mehr gereicht.
Im großen und ganzen zeigen die bestehenden Samples schon einen recht großen Funktionsumfang von SIMON.
habe aber das Gefühl, aus eigener Kraft nicht wirklich verstehen und erforschen zu können, wozu das Ding noch in der Lage sein kann.
Nun, im großen und ganzen war's das eigentlich. Du kannst damit prinzipiell alles genau so machen, wie du's auch ohne Netzwerkkommunikation tun würdest.
Was noch fehlt ist u.a.
- Finden einen Servers im LAN wenn das RemoteObjekt "gepublished" wurde
- Ersetzen des Protokolls mit einem eigenen Protokoll: Das ist ziemlich aufwendig, da für jede "Message-Art" ein Encoder und Decoder geschrieben werden muss. Denke das ist 'eh nur etwas für "Cracks" die darauf aus sind eine weitere Sprache (C/C++/C#/...) SIMON-kompatibel zu machen
- Verbinden zu einem SIMON Server via Web-Proxy: Im Prinzip sehr simpel. JavaDOC sollte hier eigemltich ausreichend sein.
- Sauberes erkennen einer unterbrochenen Verbindung mit dem "ClosedListener" und einem "globalen Exceptionhandler"
- Abrufen und auswerten der Verbindungsstatistiken: Im Prinzip sehr simpel. JavaDOC sollte hier eigemltich ausreichend sein.
- Ein Artikel über das Einstellen des Worker-Threadpools. Für den 0815 Anwender wohl eher uninteressant. Für große Server (>1000 Calls/sek) aber der erste Anlaufpunkt wenn es um Feintuning geht.
Gerne nehm ich auch Tutorials von Usern entgegen und veröffentliche sie im Wiki. Wer möchte kann sich also an eines der noch offenen Themen versuchen.
An den JavaDocs ist kaum was auszusetzen,
Danke auch für dieses Feedback.
doch wie wäre es, wenn die Möglichkeiten von SIMON noch in ein paar weiteren Tutorials aufgezeigt würden?
Hmm, ich bin mir nicht sicher wie genau du dir das vorstellst. SIMON stellt im Prinzip ja nur die Möglichkeit zur Verfügung Methoden auf einer Remote-Maschine aufzurufen, eban so, als ob das Objekt lokal existieren würde. Das Hello-World Beispiel zeigt das bereits, inklusive Callback-Aufruf vom Server zum Client.
Wenn du dich also nicht auf die Sonderfunktionen wie z.B. das auffinden eines Servers im Netzwerk beziehst, dann bleibt ja nur noch eins:
Alternativ würde ich mich riesig über Beispielprojekte freuen, anhand derer ich "SIMON best practices" verstehen lernen kann.
Und das würde heissen: Einfach weitere Projekte die SIMON benutzen um die RPC Funktionalität nochmal aus anderen Blickwinkeln und anderen Einsatzszenarien zu sehen. Sprich: Ein paar komplexere Anwendungsbeispiele wie nur das simple "Hello World" Beispiel. Hier kann man seiner Fantasie natürlich freien lauf lassen.
Weitere OpenSource-Projekte die auf SIMON basieren habe ich leider nicht im Angebot. Aber aus meiner Closed-Source Entwicklung kann ich dir ein bisschen was aufzählen:
- Für einen Gameserver (der nichts mit Java zu tun hat) habe ich einen "CommunityServer" geschrieben. Dieser läuft parallel zum Gameserver und synchronisiert die GameAccounts mit den Forum-Accounts (Passwörter etc). Wenn ein Spieler sich in den Gameserver einloggen will, muss er sich erst mit dem "CommunityClient" anmelden. Dies schaltet dann den Gameserver-Account, sowie andere Accounts (Teamspeak, ...) frei. Als Ergänzung dazu, zeigt der CommunityClient Daten zum Server (Latenz, Verfügbarkeit, ...), die neusten News aus dem Forum und die eigenen Benutzerdaten an. Damit muss ein Spieler nicht immer im Forum vorbeischauen um auf dem Laufenden zu bleiben. Zuguter letzt, ist der CommunityClient auch eine erweiterte Schutzfunktion für die ganzen Accounts: Der CC identifiziert den Computer des Users und gleicht die Infos mit einer Datenbank ab. Ein fremder User mit einem Fremden Computer kann nicht einfach den Account eines anderen Users benutzen. Das ist in den Grundsätzen ein recht wirkungsvoller Schutz gegen Account-Klau oder Account-Sharing. Die ganze Kommunikation zwischen CommunityServer und CommunityClient wird über SIMON geregelt.
- Bin gerade dabei eine Vereinsverwaltung zu schreiben. Natürlich in Client-Server-Architektur. Der Server läuft über ein eigenes kleines, modulares Framework. Darin gibt es dann ein Modul das die SIMON-Schnittstelle ins Netzwerk bereit stellt. Der Client wird eine Netbeans RCP Anwendung, welche ebenfalls über ein Modul, welches sich auf SIMON sützt, mit dem Server redet.
Weitere Projekte sind in Planung. Das eine oder andere wird vielleicht noch OpenSource.
Daneben gibt es hier etliche Entwickler die SIMON mit der GPL Lizenz einsetzen. Ich vermute hier ein paar Dutzend Projekte. Aber den Quellcode habe ich davon noch nicht gesehen. Wäre halt schön wenn die Entwickler hier im Forum ein Feedback zusammen mit einem Link auf ihr Projekt geben würden...
- Alex
(1-1/1)