die könnten doch ihre tolle IDE und den ganzen Kram einfach mit Basic schreiben und das dann mit ihrem Compiler übersetzen und schon wär's auf allen Plattformen lauffähig.. sonderlich helle scheinen die Jungs also nicht zu sein...
Oh menno, habe mich schon gefreut eine Alternative zu Gambas zu haben. Die Idee mit dem Java-Bytecode ist irgendwie genial. Es hat mich schon lange gestört, dass MS .net so ziemlich jede Sprache überstülpt und Java bislang nur Java war. Hoffentlich funktioniert das gut und hoffentlich kommt bald eine Linux-Version.
Nun, ich war schon überrascht von einem VB Entwickler zu hören der Java beherscht, und sogar einen Compiler für den Java Bytecode schreiben kann, und immernoch VB nutzt. Seltene spezies.
Allein aufgrund des langen Mangels an vernünftigen Basicinterpretern unter Linux, hat es sich hier glaube ich nie wirklich etabliert. (Mein Chef "spricht" Visual Basic, C/C++ und Java...) Dabei sind andere Sprachen mit vergleichsweise einfacher Syntax wie Perl oder Python umso bekannter. Wobei ich trotzdem behaupte, dass Python und Ruby in Sachen Einfachheit Basic nicht einmal annähernd das Wasser reichen können...
Der 'Mangel' ist wohl eher auf die bekloppte Sprache zurückzuführen. Sowas von umständlich und aufwendig... Da sind Python (und wohl auch Ruby) *wesentlich* einfacher. Selbst Perl kann da noch Punkten, wenn man sich erst mal eingearbeitet hat
Das ist schon ein deutlicher Unterschied. Ich bin persönlich kein besonderer VB Freund, allerdings nicht wegen Java, sondern weil ich aus der Delphi Ecke komme. Visual Basic 6 ist nicht grundsätzlich böse, aber es ist auch keine Perle der Softwarewelt. Microsoft hat gut daran getan in die .Net Ecke zu wechseln, auch wenn es für viele Sicher ein Wechselgrund war (der Schritt zu .Net hat auch mein Interesse an Delphi gekillt, auch wenn es am Ende nie zuende gebracht wurde).
Man muss vor allem eines sehen: VB war für Desktop Apps ok, wenn ich auch fest der Meinung bin das Delphi VB immer überlegen war. Aber wenn wir die pure Desktop App verlassen, fängt der Unterschied von VB und Java an ganz deutlich zu wachsen. Java hat einfach eine Breite an möglichkeiten mit denen nur [VB].Net mithalten kann, keinesfalls aber die davor liegenden VB Versionen. Alleine beim Thema Webservice merkt man das alter der nicht-.Net VB Versionen. (das ist aber bei vielen der älteren Systeme so, und kein echter Fehler von VB, dafür hat MS ja nunmal .Net eingeführt).
Ja, bereits tote Technologien zu vermitteln hat ja eine lange Tradition in der Lehre. Was natürlich keinesfalls am Lehrpersonal liegen kann. Sag ich mit einem Vordiplom über modula2 ;-)
Es ist natürlich richtig, dass man die Grundlagen auch an verstaubten Sprachen lernen kann, aber es ist auch definitiv ein Vorteil, wenn man das Gelernte in sinnvolle Projekte überführen kann. Durch die Anwendung lernt man es erst richtig und gleich auch noch Gruppenarbeit usw. dazu.
Ich habe eher das Gefühl das die heutigen Frameworks zu kompliziert sind, und Leute zu Dummheiten verleiten.
Von einem Praktikaten bei uns der im Informatikstudiom steckte wollten wir das er zeigt wie er einen kleinen flinken Webservice baut der nur ein paar Werte mit einer lokalen DB austauscht. Nach 3 Tagen war das eine mehrstufige Javaanwendung mit Hibernate, einen komplexen Webservicestack und co. Das war zwar Lehrbuchmässig, aber fett und nicht gerade fix. Aber er hat es nie anders gelernt. Als ich ihm versuchte klar zu machen das man auch ohne all das einen Webserice bauen kann war er baff, den Bedanken direkt HTTP zu nutzen und die Auswertung selbst zu schreiben (Client und Server waren Teil eines Projektes, damit waren SOAP und co. nicht nötig) hatte er nicht. Er erkannte mangels wissen nicht was für ein Monster er da zusammenbaute, obwohl nur eine Fliege nötig war :)
Da sind manche alten Systeme garnicht übel um etwas kennen zu lernen, so fix vergessen doch viele das ein großer Unterbau nicht automatisch gut ist.
Bei den meisten ist nun mal immer noch Webservice == SOAP. Wobei das auch nicht so unbedingt falsch ist. Mit den ganzen Werkzeugen kann bei komplexeren Systemen dann wirklich sehr viel Zeit und Kompetenz sparen. Kein teurer Coder mehr nötig, der für jedes billige kleine scheiss Feld nach Stunden bezahlt wird. Und wenn man erst mal Fremde Webservices einrichten will kann es richtig Spassig werden, das aber leider in beiden Ecken
Ja, SOAP hat durchaus auch seine Berechtigung, aber teilweise ist es, wie andere Ansätze auch, einfach extrem überdimensioniert. Mich faszinierte auch eher das er SOAP wählte, aber keine Ahnung hatte was es eigentlich tat, und er auch garnicht wusste wie es anders geht
Ich halte es ja grundsätzlich für richtig möglichst alles logisch zu abstrahieren, aber früher hies das eher auf Hardware eine eher dünne Softwareschicht zu setzen. Heute setzen wir Softwareschicht auf Softwareschicht, bis wir teils eine 10-Stöckige Hochzeitstorte gebaut haben, für eine Party mit 3 Gästen
Prinzipiell hast du zwar recht, aber Erfahrungsgemäss wird irgendwann aus der Vertikalen Entwicklung auch wieder eine Horizontale und sogar gegengerichtete Optimierung. Irgendwann sind wir auch bei den Frameworks so weit das die sich an irgendeinem Zeitpunkt selbst nach Maschinencode hin optimieren und dann ist das Abstrahieren alles gar nicht mehr so wild ;)
Sieht man ja schön bei Interpretern->VM->JIT-C.->DLS-JIT-C. Das lahme Basic von einst wird nun in der Virtuellen Maschine von Java mit dem Just-in-Time-Compiler nach Maschinensprache optimiert, welche demnächst irgendwann auch noch die Spezial-Sprachen wie RegEx oder SQL automatisch Optimiert. Und dann kann man sich die ganze Optimierung an den Hut schmieren und für ein minimum an Performanze-Verlust auf die handoptimierten C- und Assembler-Routinen pfeifen
> Ja, bereits tote Technologien zu vermitteln hat ja eine lange > Tradition in der Lehre. Was natürlich keinesfalls am Lehrpersonal liegen kann.
Das liegt sehr wohl am Lehrpersonal, weil das Lehrpersonal nur das lehren kann, was es selbst kann und aus Bequemlichkeit selten gewillt ist, neues zu lernen.
Von Manuel Siekmann am Mi, 24. Dezember 2008 um 03:22 #
Danke für die kommentare zu meinem projekt. leider habe ich momentan nicht viel zeit und kann nicht jeden beitrag passend kommentieren.
@fuxxxbau [sonderlich helle scheinen die Jungs also nicht zu sein]
das ist leider nicht ganz so einfach wie du denkst
@Chris [habe mich schon gefreut eine Alternative zu Gambas zu haben]
das ist die erste beta-version von jabaco. momentan bekomme ich sehr viel feedback aus verschiedenen richtungen und genau darum ging es mir auch. das interesse der linux-anwender ist unerwartet groß, allerdings ist der aufwand auch nicht zu unterschätzen. nach ersten tests mit wine bin ich aber relativ zuversichtlich, dass das in zukunft als workaround funktionieren wird. langfristig ist natürlich eine echte linux version geplant. momentan könntest du virtualbox verwenden - das funktioniert ganz gut bei mir ...
@Pascal [Geht's nur mir so, oder kommt auch anderen da als erstes "Ach wirklich?!" in den Sinn? (;]
mein name in dem beitrag ist etwas unglücklich. es geht hier nicht um mich, sondern um das projekt.
@Chaoswind [Da sind Python (und wohl auch Ruby) *wesentlich* einfacher.]
du hast also gute vorschläge für das sprachdesign? poste sie im jabaco-forum. da wirst du auf jeden fall eine antwort von mir bekommen.
@LH [Nun, ich war schon überrascht von einem VB Entwickler zu hören der Java beherscht] @LH [sogar einen Compiler für den Java Bytecode schreiben kann]
ich würde mich nicht als vb entwickler bezeichnen. aus meiner sicht wäre es ignorant nur eine sprache, oder nur eine platform zu verwenden. jabaco ist mehr als nur ein compiler. jabaco ist eine ide (vc++ und vb6), ein debugger (vc++ mit atl über jdwp [shared memory]), ein framework (jabaco, java [swing] mit jni), eine community (php, java, javascript). jabaco besteht also aus vielen verschiedenen programmiersprachen und technologien. eine mischung von diversen technologien ist ein übliches vorgehen bei professioneller softwareentwicklung.
@LH [Ich bin persönlich kein besonderer VB Freund [...] weil ich aus der Delphi Ecke komme.]
vielleicht könntest du das genauer erklären?
@LH [Ich habe eher das Gefühl das die heutigen Frameworks zu kompliziert sind, und Leute zu Dummheiten verleiten.]
dann gefällt dir jabaco ganz sicher. du hast die möglichkeit das elegante java framework zu verwenden und gleichzeitig hast du vordefinierte funktionen um deine standard-probleme zu lösen.
@Feuerfrei [Ja, bereits tote Technologien zu vermitteln hat ja eine lange Tradition in der Lehre.]
meinst du die programmiersprache basic? vermutlich spielst du auf das alter der ursprünglichen sprache an? genau wie andere sprachen aus dieser zeit hat sich auch basic deutlich entwickelt. die sprache hat sich über viele jahre bewährt und wird auch in zukunft eine wichtige rolle spielen. jabaco ist weitestgehend abwärtskompatibel zu vb6 und erweitert die sprache mit modernen techniken (polymorphismus, namespaces, vererbung, usw.). oder meintest du die java-technologie? sun geht es momentan nicht besonders gut, aber java ist deshalb ganz sicher nicht tot. bei dem momentanen wachstum von .net sehe ich da auch in den nächsten paar jahren keine gefahr für java.
btw. ein guter lehrer würde die grundkonzepte der entwicklung (zb. design patterns) vermitteln. die programmiersprache spielt dabei eine geringe rolle.
@Feigling [Ich bin noch am überlegen ob man von Java so besonders weit auf VB herabschauen kann]
man kann java und vb6 nicht vergleichen.
---
gute vorschläge und konstruktive beiträge sind im jabaco-forum jederzeit willkommen.
Womit du klar gemacht hättest: Nein, du hast keine guten Vorschläge...
Warum können Leute wie du nicht einfach mal die Fresse halten, wenn sie nichts zu sagen haben? Nur weil etwas dir nicht gefällt ist es nicht schlecht. Und wenn es dich nicht interessiert (was aus deiner Weigerung, über irgendwas zu diskutieren, hervorgeht) dann halte bitte wirklich einfach nur die Schnauze, statt die Entwickler anzumotzen. Spinner wie du sind es, die der OS-Szene einen miesen Ruf einbringen. Auf solche Leute kann man echt verzichten ... :/
Zwei Beispiele:
http://www.jython.org/Project/
http://jruby.codehaus.org/
Scheint auch ganz gute Infos zu enthalten (habs nur überflogen):
http://www.artima.com/lejava/articles/dynamic_languages.html
Scala: http://www.scala-lang.org/
Groovy: http://groovy.codehaus.org/
Clojure: http://clojure.org/
Und jetzt Basic? Warum nicht? Als Teenager habe ich meine ersten Programmierversuche damit gemacht.
Unglaublich die Leute
Geht's nur mir so, oder kommt auch anderen da als erstes "Ach wirklich?!" in den Sinn? (;
Seltene spezies.
Allein aufgrund des langen Mangels an vernünftigen Basicinterpretern unter Linux, hat es sich hier glaube ich nie wirklich etabliert. (Mein Chef "spricht" Visual Basic, C/C++ und Java...) Dabei sind andere Sprachen mit vergleichsweise einfacher Syntax wie Perl oder Python umso bekannter.
Wobei ich trotzdem behaupte, dass Python und Ruby in Sachen Einfachheit Basic nicht einmal annähernd das Wasser reichen können...
Ich bin persönlich kein besonderer VB Freund, allerdings nicht wegen Java, sondern weil ich aus der Delphi Ecke komme.
Visual Basic 6 ist nicht grundsätzlich böse, aber es ist auch keine Perle der Softwarewelt. Microsoft hat gut daran getan in die .Net Ecke zu wechseln, auch wenn es für viele Sicher ein Wechselgrund war (der Schritt zu .Net hat auch mein Interesse an Delphi gekillt, auch wenn es am Ende nie zuende gebracht wurde).
Man muss vor allem eines sehen: VB war für Desktop Apps ok, wenn ich auch fest der Meinung bin das Delphi VB immer überlegen war. Aber wenn wir die pure Desktop App verlassen, fängt der Unterschied von VB und Java an ganz deutlich zu wachsen. Java hat einfach eine Breite an möglichkeiten mit denen nur [VB].Net mithalten kann, keinesfalls aber die davor liegenden VB Versionen. Alleine beim Thema Webservice merkt man das alter der nicht-.Net VB Versionen. (das ist aber bei vielen der älteren Systeme so, und kein echter Fehler von VB, dafür hat MS ja nunmal .Net eingeführt).
Es ist natürlich richtig, dass man die Grundlagen auch an verstaubten Sprachen lernen kann, aber es ist auch definitiv ein Vorteil, wenn man das Gelernte in sinnvolle Projekte überführen kann. Durch die Anwendung lernt man es erst richtig und gleich auch noch Gruppenarbeit usw. dazu.
Von einem Praktikaten bei uns der im Informatikstudiom steckte wollten wir das er zeigt wie er einen kleinen flinken Webservice baut der nur ein paar Werte mit einer lokalen DB austauscht.
Nach 3 Tagen war das eine mehrstufige Javaanwendung mit Hibernate, einen komplexen Webservicestack und co.
Das war zwar Lehrbuchmässig, aber fett und nicht gerade fix. Aber er hat es nie anders gelernt. Als ich ihm versuchte klar zu machen das man auch ohne all das einen Webserice bauen kann war er baff, den Bedanken direkt HTTP zu nutzen und die Auswertung selbst zu schreiben (Client und Server waren Teil eines Projektes, damit waren SOAP und co. nicht nötig) hatte er nicht. Er erkannte mangels wissen nicht was für ein Monster er da zusammenbaute, obwohl nur eine Fliege nötig war :)
Da sind manche alten Systeme garnicht übel um etwas kennen zu lernen, so fix vergessen doch viele das ein großer Unterbau nicht automatisch gut ist.
Mich faszinierte auch eher das er SOAP wählte, aber keine Ahnung hatte was es eigentlich tat, und er auch garnicht wusste wie es anders geht
Ich halte es ja grundsätzlich für richtig möglichst alles logisch zu abstrahieren, aber früher hies das eher auf Hardware eine eher dünne Softwareschicht zu setzen.
Heute setzen wir Softwareschicht auf Softwareschicht, bis wir teils eine 10-Stöckige Hochzeitstorte gebaut haben, für eine Party mit 3 Gästen
Sieht man ja schön bei Interpretern->VM->JIT-C.->DLS-JIT-C.
Das lahme Basic von einst wird nun in der Virtuellen Maschine von Java mit dem Just-in-Time-Compiler nach Maschinensprache optimiert, welche demnächst irgendwann auch noch die Spezial-Sprachen wie RegEx oder SQL automatisch Optimiert. Und dann kann man sich die ganze Optimierung an den Hut schmieren und für ein minimum an Performanze-Verlust auf die handoptimierten C- und Assembler-Routinen pfeifen
> SQL automatisch Optimiert.
Der ungekrönte König der optimierten RegExp-Engines... ;-)
lg
Erik
> Tradition in der Lehre. Was natürlich keinesfalls am Lehrpersonal liegen kann.
Das liegt sehr wohl am Lehrpersonal, weil das Lehrpersonal nur das lehren kann, was es selbst kann und aus Bequemlichkeit selten gewillt ist, neues zu lernen.
@fuxxxbau [sonderlich helle scheinen die Jungs also nicht zu sein]
das ist leider nicht ganz so einfach wie du denkst
@Chris [habe mich schon gefreut eine Alternative zu Gambas zu haben]
das ist die erste beta-version von jabaco. momentan bekomme ich sehr viel feedback aus verschiedenen richtungen und genau darum ging es mir auch. das interesse der linux-anwender ist unerwartet groß, allerdings ist der aufwand auch nicht zu unterschätzen. nach ersten tests mit wine bin ich aber relativ zuversichtlich, dass das in zukunft als workaround funktionieren wird. langfristig ist natürlich eine echte linux version geplant. momentan könntest du virtualbox verwenden - das funktioniert ganz gut bei mir ...
@Pascal [Geht's nur mir so, oder kommt auch anderen da als erstes "Ach wirklich?!" in den Sinn? (;]
mein name in dem beitrag ist etwas unglücklich. es geht hier nicht um mich, sondern um das projekt.
@Chaoswind [Da sind Python (und wohl auch Ruby) *wesentlich* einfacher.]
du hast also gute vorschläge für das sprachdesign? poste sie im jabaco-forum. da wirst du auf jeden fall eine antwort von mir bekommen.
@LH [Nun, ich war schon überrascht von einem VB Entwickler zu hören der Java beherscht]
@LH [sogar einen Compiler für den Java Bytecode schreiben kann]
ich würde mich nicht als vb entwickler bezeichnen. aus meiner sicht wäre es ignorant nur eine sprache, oder nur eine platform zu verwenden. jabaco ist mehr als nur ein compiler. jabaco ist eine ide (vc++ und vb6), ein debugger (vc++ mit atl über jdwp [shared memory]), ein framework (jabaco, java [swing] mit jni), eine community (php, java, javascript). jabaco besteht also aus vielen verschiedenen programmiersprachen und technologien. eine mischung von diversen technologien ist ein übliches vorgehen bei professioneller softwareentwicklung.
@LH [Ich bin persönlich kein besonderer VB Freund [...] weil ich aus der Delphi Ecke komme.]
vielleicht könntest du das genauer erklären?
@LH [Ich habe eher das Gefühl das die heutigen Frameworks zu kompliziert sind, und Leute zu Dummheiten verleiten.]
dann gefällt dir jabaco ganz sicher. du hast die möglichkeit das elegante java framework zu verwenden und gleichzeitig hast du vordefinierte funktionen um deine standard-probleme zu lösen.
@Feuerfrei [Ja, bereits tote Technologien zu vermitteln hat ja eine lange Tradition in der Lehre.]
meinst du die programmiersprache basic? vermutlich spielst du auf das alter der ursprünglichen sprache an? genau wie andere sprachen aus dieser zeit hat sich auch basic deutlich entwickelt. die sprache hat sich über viele jahre bewährt und wird auch in zukunft eine wichtige rolle spielen. jabaco ist weitestgehend abwärtskompatibel zu vb6 und erweitert die sprache mit modernen techniken (polymorphismus, namespaces, vererbung, usw.). oder meintest du die java-technologie? sun geht es momentan nicht besonders gut, aber java ist deshalb ganz sicher nicht tot. bei dem momentanen wachstum von .net sehe ich da auch in den nächsten paar jahren keine gefahr für java.
btw. ein guter lehrer würde die grundkonzepte der entwicklung (zb. design patterns) vermitteln. die programmiersprache spielt dabei eine geringe rolle.
@Feigling [Ich bin noch am überlegen ob man von Java so besonders weit auf VB herabschauen kann]
man kann java und vb6 nicht vergleichen.
---
gute vorschläge und konstruktive beiträge sind im jabaco-forum jederzeit willkommen.
Ja, schmeiss den schrott weg und Implementiere etwas effektives. Oder benutze gleich Jython oder zumindest JRuby, zumindest als Grundlage.
> poste sie im jabaco-forum. da wirst du auf jeden fall eine antwort von mir bekommen.
Nein.
Warum können Leute wie du nicht einfach mal die Fresse halten, wenn sie nichts zu sagen haben? Nur weil etwas dir nicht gefällt ist es nicht schlecht. Und wenn es dich nicht interessiert (was aus deiner Weigerung, über irgendwas zu diskutieren, hervorgeht) dann halte bitte wirklich einfach nur die Schnauze, statt die Entwickler anzumotzen. Spinner wie du sind es, die der OS-Szene einen miesen Ruf einbringen. Auf solche Leute kann man echt verzichten ... :/