"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002
Je kan java Corba niet met Delphi sockets vergelijken. Sockets zijn wel de meest lage vorm van verbinding, en daar moet je dus overal zelf rekening mee houden. Corba daarin tegen is een veel hogere laag waarin veel meer voor je gedaan worden.
Als je dan iets wilt zeggen, dan moet je zeggen Sockets met taal X, of corba met taal X. Dan heb je tenmisnte een eerlijke vergelijking.
Het ligt er eerlijk gezegd maar net aan wat je wilt. Als student zijnde (waar de jonge onderzoeken nog in verscholen zit) raad ik je natuurlijk aan om met sockets of RMI (java) te gaan werken. Dan weet je tenminste waar je later niet mee wilt werken
Je leert dan veel meer problemen kennen zoals crashende clients of concurrency problemen of wat voor problemen je allemaal tegen gaat komen als je systemen geschreven in verschillende talen met elkaar laat praten.
Maar als je voor een bedrijf werkt (of je hebt het eigelijk wel een beetje gezien met dat laag bij de vloerse geklungel) dan ga je natuurlijk met een hogere laag werken zoals bv Corba.
Als je dan iets wilt zeggen, dan moet je zeggen Sockets met taal X, of corba met taal X. Dan heb je tenmisnte een eerlijke vergelijking.
Het ligt er eerlijk gezegd maar net aan wat je wilt. Als student zijnde (waar de jonge onderzoeken nog in verscholen zit) raad ik je natuurlijk aan om met sockets of RMI (java) te gaan werken. Dan weet je tenminste waar je later niet mee wilt werken
Maar als je voor een bedrijf werkt (of je hebt het eigelijk wel een beetje gezien met dat laag bij de vloerse geklungel) dan ga je natuurlijk met een hogere laag werken zoals bv Corba.
Goede zaakParcye: Voor school moeten we een gedistibueerd systeem ontwikkelen.
Spreek voor jezelf aubParcye: wij Informatica leerlingen neigen toch meer richting Delphi.
De vergelijking is een beetje vreemd: je koppelt het gebruik van sockets aan Delphi en het gebruik van Corba aan Java. In Java kan je uiteraard ook gewoon een eigen protocol bedenken en over plain sockets gaan communiceren, net zoals dat in Delphi best leuk zal functioneren.Delphi/Sockets, Java/Corba, aanraden
Je keuze is dus niet Delphi of Java, maar een eigen protocol over sockets of Corba. Zelfs dan is de vergelijking eigenlijk nog raar: Corba is behoorlijk 'zwaar'. Het is bedoeld voor gedistribueerde object systemen die je eventueel zou kunnen implementeren in compleet verschillende talen.
Dit kan een zeer eenvoudige manier van werken als je echt met remote objecten wilt gaan werken. De communicatie is dan volledig afgezonderd en je werkt dus gewoon met methode invocaties op normale klassen. Dit zijn dan stubs die de verder communicatie met de remote objecten afhandelen. Dit zorgt er dus voor dat je in je applicatie al by design vrij weinig ziet van het low-level werk. Dit heeft voordelen: tijdsbesparing, abstractie en hergebruik van beschikbare functionaliteit. Dit zorgt weer voor minder kans op fouten.
Zeker in Java is het gebruik van Corba zeer eenvoudig omdat je gewoon RMI over IIOP kunt gebruiken. De RMI notatie is uiterest eenvoudig.
Het gebruiken van een eigen binair of plain-text protocol over sockets is tegenwoordig denk ik niet meer aan te bevelen. Je moet met zo'n oplossing zoveel zelf doen en je kan zo weinig bestaande componenten gebruiken! Als je niet wilt kiezen voor een typisch gedistribueerd object systeem (Corba, RMI, .NET Remoting) kan je dan denk ik nog beter kiezen voor XML gebaseerd communicatie. Dit zorgt ervoor dat je veel bestaande tools kan gebruiken (validatie en parsers bijvoorbeeld) en je abstraheert van irrelevante details. Je krijgt gratis de mogelijkheid dat de onderdelen van je systeem in elke willekeurige taal geschreven kunnen worden.
Je kan een eigen XML formaat bedenken en dit uitwisselen over sockets, maar je zou ook kunnen kiezen voor het gebruik van XML-RPC of SOAP. SOAP is een systeem waar je snel koppijn van krijgt, XML-RPC is een stuk eenvoudiger.
Zelfs als je een eigen XML formaat bedenkt zou ik eigenlijk een bestaand transport protocol gebruiken. HTTP ligt dan voor de hand. Je kan dan op de client en server-side bestaande HTTP implementaties. De server-side zou je kunnen implementeren met Java Servlets als je Java wilt gebruiken.
Veel mogelijkheden dus
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
In welk opzicht vind je Corba een fundamenteel hogere laag dan RMI?Alarmnummer: sockets of RMI (java): crashende clients, concurrency problemen ...
... een hogere laag werken zoals bv Corba.
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
Even ter verduideliking, ik wil ze niet vergelijken, maar het is OF Java met Corba OF Delphi met Sockets, vandaar dus....
En als ik over WIJ spreek spreek ik namens MIJN mede informatica studenten in MIJN project groep, sorry je valt daar BUITEN. Even kleine details op de late avond.
Zelf zien we dus geen probleem in het werken op een lager niveau dan met Corba, zeker niet omdat we in onze ogen beter deze opdracht kunnen uitvoeren met onze kennis van Delphi en mindere kennis van hoe vang je alles op bij t missen van een server of clients die in eens weg vallen. Verschillende projecten uit het verleden brachten in Java geen goed einde. Misschien raar maar waar.
inmiddels ook achter
En als ik over WIJ spreek spreek ik namens MIJN mede informatica studenten in MIJN project groep, sorry je valt daar BUITEN. Even kleine details op de late avond.
Zelf zien we dus geen probleem in het werken op een lager niveau dan met Corba, zeker niet omdat we in onze ogen beter deze opdracht kunnen uitvoeren met onze kennis van Delphi en mindere kennis van hoe vang je alles op bij t missen van een server of clients die in eens weg vallen. Verschillende projecten uit het verleden brachten in Java geen goed einde. Misschien raar maar waar.
Daar zijn WIJVeel mogelijkheden dus . Ik hoop dat ik een beetje geschetst hebt waarom je wel of niet voor het een of het ander zou moeten gaan. Als je nog concreet ergens iets over wilt weten moet je daar maar op in gaan: het is lastig om zo even het hele spectrum van gedistribueerde systemen te bespreken.
"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002
RMI hoort daar idd niet op zijn plaats. RMI en Corba zijn samen idd hogere lagen waarbij je je niet meer bezig hoeft te houden met allerlei zaken als parameter overdracht, aanroepen etc.
Dank voor de duidelijkheidParcye: En als ik over WIJ spreek spreek ik namens MIJN mede informatica studenten in MIJN project groep, sorry je valt daar BUITEN. Even kleine details op de late avond.
Ik maak een beetje uit je posts op dat je graag in Delphi wilt werken omdat je je daar zo lekker in thuis voelt. Op zich is dat heel begrijpelijk, maar het is wel belangrijk je niet te veel te laten leiden door de kennis die je al bezit. Je zit niet op school om de kennis die je al bezit zo efficient mogelijk in te zetten, maar om nieuwe kennis op te doen. Je moet dus vooral geen vrees hebben voor zaken die je jezelf misschien nog (beter) eigen zou moeten maken.
Misschien is het dus juist goed om voor iets te kiezen waar je nog niet zoveel vanaf weet. Dat sluit Delphi overigens niet uit: je zou bijvoorbeeld met XML over HTTP hele aardige dingen kunnen doen in Delphi
Het lijkt me trouwens ook sterk dat je in Delphi geen gebruik kan maken van Corba
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
In Delphi kun je WEL gebruik maken van Corba
En we hebben in onze opleiding alleen maar java java java gehad behalve in het eerste jaar, beetje C(++) en Delphi en daarom wil ik wel weer eens af van Java.
En zoals ik zei, Corba is niet nieuw, is uitgebreid behandeld in een vak maar gewoon niet met 'jahoe' beloond... overigens zonder moeite het vak gehaald.
Het is zo school schoteld dus WEER java voor met Corba... gezien de korte tijd die we hebben om te onder zoeken willen we niet gaan kijken hoe Corba in Delphi moet... en willen we dus gaan voor een van de twee bekende opties.
De voorkeur gaat idd uit naar Delphi, zo helt onze groep nu eenmaal (100% voor Delphi) maar er zijn ook mogelijk dingen die wij over het hoofd zien en die komen misschien in deze topic aan het licht. Waardoor we denken : maar dat kunnen we NOOIT oplossen... dat voorkomen we met Corba....
Maar eerst is het tijd om te slapen anders hebben ze morgen bij een ander vak niets aan me
En we hebben in onze opleiding alleen maar java java java gehad behalve in het eerste jaar, beetje C(++) en Delphi en daarom wil ik wel weer eens af van Java.
En zoals ik zei, Corba is niet nieuw, is uitgebreid behandeld in een vak maar gewoon niet met 'jahoe' beloond... overigens zonder moeite het vak gehaald.
Het is zo school schoteld dus WEER java voor met Corba... gezien de korte tijd die we hebben om te onder zoeken willen we niet gaan kijken hoe Corba in Delphi moet... en willen we dus gaan voor een van de twee bekende opties.
De voorkeur gaat idd uit naar Delphi, zo helt onze groep nu eenmaal (100% voor Delphi) maar er zijn ook mogelijk dingen die wij over het hoofd zien en die komen misschien in deze topic aan het licht. Waardoor we denken : maar dat kunnen we NOOIT oplossen... dat voorkomen we met Corba....
Maar eerst is het tijd om te slapen anders hebben ze morgen bij een ander vak niets aan me
"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002
Dat was ook de kern van mijn opmerkingParcye: In Delphi kun je WEL gebruik maken van Corba
C# ?daarom wil ik wel weer eens af van Java.
Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment
Delphi kan idd CORBA aan, maar ook vergelijkbare mechanismen zoals COM en SOAP. De meeste SOAP implementaties is niets anders als XML berichten over HTTP. Daarnaast is het natuurlijk heel goed mogelijk sockets te gebruiken, zoals al deze bovenstaande overgens ook doen. Als je Delphi + Sockets wil doen zou ik ook voor XML berichten oversturen gaan. Dat lijkt dan weer zo erg op SOAP dat ik niet inzie waarom je dat niet meteen zou gebruiken. Wat je over het hoofd zou zien bij Delphi + Sockets? Dat het zo veel werk is voordat je iets vergelijkbaars als CORBA gemaakt hebt dat het bijna niet de moeite waard is. Tenzij het over een zeer beperkte interface en gegevens gaat.
We adore chaos because we like to restore order - M.C. Escher
Ik zou zeggen pak Delphi met Corba.... maar goed dat wil je blijkbaar niet.
Het klinkt wel heel er naar een opleiding aan de Fontys (java, java, java).
Het klinkt wel heel er naar een opleiding aan de Fontys (java, java, java).
Nou, het is het Fontys...
Voor onze opdracht kunnen we zeker Delphi met Corba gebruiken. Alleen zal daar dus een onderzoek naar gedaan moeten worden. Inmiddels staat eigenlijk vast dat het Delphi wordt.
Op het moment hebben we het volgende idee :
Aan de hand van tekst messages die we overzenden weten we wat nodig is en wat niet.
Een bericht zal bestaan uit 'commando' 'actie nummer' 'parameters'.
Als een verbinding verbreekt van client naar server wordt er gezocht naar een andere server en die server ziet dan, 'jij zegt geen hoi en begint gewoon te sturen' en dan weet die server dat hij van een andere afkomt en kan er dus gevraagd worden voor alle berichten horend bij dat 'actie nummer' Omdat de servers van elkaar weten wat er aan data beschikbaar was kan het proces daar snel herhaald worden.
Zo onze eigen oplossing dus....
Voor onze opdracht kunnen we zeker Delphi met Corba gebruiken. Alleen zal daar dus een onderzoek naar gedaan moeten worden. Inmiddels staat eigenlijk vast dat het Delphi wordt.
Op het moment hebben we het volgende idee :
Aan de hand van tekst messages die we overzenden weten we wat nodig is en wat niet.
Een bericht zal bestaan uit 'commando' 'actie nummer' 'parameters'.
Als een verbinding verbreekt van client naar server wordt er gezocht naar een andere server en die server ziet dan, 'jij zegt geen hoi en begint gewoon te sturen' en dan weet die server dat hij van een andere afkomt en kan er dus gevraagd worden voor alle berichten horend bij dat 'actie nummer' Omdat de servers van elkaar weten wat er aan data beschikbaar was kan het proces daar snel herhaald worden.
Zo onze eigen oplossing dus....
"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002
Pagina: 1