VB frage

Hallo, programmieren besteht nicht aus Makros aufnehmen!

Und um ehrlich zu sein, ich finde

If Bedingung Then
Anweisungen
End If

um einiges übersichtlicher als

if(bedinung){anweisungen}

Außerdem kann man von VB leicht auf C umsteigen. Die einzige Umgewöhnunh is der Syntax und da kommt man schnell dahinter.

cya, nEwImEr
 
Original geschrieben von newimer

Außerdem kann man von VB leicht auf C umsteigen. Die einzige Umgewöhnunh is der Syntax und da kommt man schnell dahinter.

Cool, es gibt ja richtig amüsante Threads im VB Forum, sollte hier öfter mal reinschauen.
:)

Meine Meinung zu VB kennt Dario ja schon ausgiebig.

Drum hier erstmal eine Warnung, wer nicht damit klar kommt das seine Programmiersprache von mir jetzt hier so heftig durch den Kakao gezogen wird, der
sollte meinen Post jetzt am besten schnell ignorieren.

Eine Programmiersprache wird entwickelt, um einen gewissen Zweck zu erfüllen.

C wurde entwickelt um UNIX damit zu entwickeln.
C++ wurde entwickelt, um die beliebteste Programmiersprache, mit den damaligen revolutionäre Object Orientierte Programmierung zu erweitern.
Java wurde entwickelt, um auf embedded Plattformen zu laufen, also Waschmaschienen, Kühlschränke usw, deshalb auch der Plattformunabhängige Ansatz.
Perl, PHP, Ruby, Fortran, Smalltalk und auch Basic haben ihr Einsatzgebiet.

Basic
Beginners All-purpose Symbolic Instruction Code
war dazu gedacht, eine sehr einfache Möglichkeit der Programmierung zu bieten, speziell für nicht technisch versierte Anwender:

1963 befaßten sich Thomas E. Kurtz und John Kemeny am Dartmouth College mit dem Problem, daß man Nicht-Technik-Studenten die Arbeit am Computer näherbringen wollte, damit diese später in der Wirtschaft ein grundsätzliches Verständnis besitzen.
Man wollte dies einerseits nicht über Vorlesungen realisieren, andererseits aber auch diesen Personenkreis nicht dazu bringen, sich mit Assemblersprachen, Fortran oder Algol auseinanderzusetzen, da sie sich dort mit zu vielen Details der Programmierung befassen müssen.
Man ging dazu über, eine eigene Sprache zu entwickeln, die speziell auf die Bedürfnisse abgestimmt sein sollte – die Geburtsstunde von BASIC. Weiter plante man, die Studenten nicht einem reinen Programmierkurs auszusetzen, sondern die Programmierung und die Arbeit am Computer im Rahmen von anderen Lehrveranstaltungen einzusetzen.
BASIC wurde klarerweise von anderen, schon vorher existierenden Programmiersprachen und deren Konzepten beeinflußt. Zu diesen Sprachen zählten unter anderem FORTRAN (davon stammen z.B. die Schlüsselwörter FOR und STEP), ALGOL und das assemblernahe DARCISMO.
Eine interessante Ähnlichkeit zu Assembler-Programmen (DARCISMO) hat das Befehlsformat von BASIC: Befehlsnummer, Befehl, Operand. Dies ist auch im ersten jemals veröffentlichten BASIC-Programm ersichtlich:

Das Problem ist das dies Basic schon lange nicht mehr erfüllt, diesen Auftrag. VB ist mittlerweile so komplex geworden, durch u.a auch die Inkompatibitäten, das mann von einer Programmiersprache, die für "nichtprogrammierer" geeignet ist, nicht mehr sprechen kann.

Also muss sich VB welches ja auch die möglichkeiten der "richtigen" Programmierung bietet, mit anderen Programmiersprachen messen.
Und da sieht es für VB mies aus.
VB ist langsam, und dabei nicht portabel. C#.net und Java sind beide performanter, obwohl es hier noch ein Zwischenschrit gibt.
VB ist nicht portabel.
VB ist keine Object Orientierte Sprache (ich sprech über VB nicht über VB.net).
VB bietet keinen Lowlevel zugriff.
VB Programme sind speicher, Plattenplatz hungrig.
VB bietet eigene Konzepte, die es äusserst schwer machen von VB auf eine andere Programmiersprache umzusteigen.
usw.

VB ist gut für RAD Entwicklung, hat aber durch die vorher genannten Nachteile, keine Chance gegenüber Delphi, welches Performanter, portabel (kylix) und auch Ressourcen schonend ist.

Die Unterstützung von VB durch Microsoft, war sehr hoch, und vorteil ist sicherlich das mann auch in Office mit VBA einiges erreichen kann.
Wer sein Einsatzgebiet bei Office Costumizing sieht, der kommt an VB nicht dran vorbei. Wer jedoch programmieren will, und eine universell einsetzbare Programmiersprache lernen will, der sollte einen weiten Bogen um VB machen.

Syntax:
Die Syntax ist auf anfänger optmiert. Jene die noch nicht genügend erfahrung haben um auf den ersten blick, blöcke zu erkennen u. ähnlichem.
In grossen Projekten, in denen hoffentlich nur erfahrene Entwickler arbeiten, sind sie jedoch unnötig wie ein kropf und verlängern, verschlechtern nur den Code.

Wer sich schonmal ein grösseres Projekt von > 20.000 Zeilen hat einlesen müssen, der weiss ein beschränken aufs wesentliche zu schätzen.
Um ein programm zu verstehen, muss ich auf den ersten Blick sehen, wo die logic passiert. Und die Logic sind Methoden Aufrufe, Instanzierungen und Berechnungen.
Dies wird aber durch dinge wie End Irgendwas kaputtgemacht, da mann erst das von einander sondieren muss.

Zu der Unterstützung von Microsoft.
VB wurde sehr populär, weil viele Firmen, ohne grosse konpetenzen Applikationen entwickeln konnten. Das diese Applikationen meist Oneway Ware sind, also einmal erstellt, nie wieder weitergearbeitet (da unwartbar), hat sich durch die sogenannte Softwarekriese gerächt.
Jedoch einer war der Gewinner dabei, Microsoft. Microsoft unterstützt diese Sprache, weil es sich damit bares Geld verdienen lässt, und das ist ganz natürlich.
VB hat sich aber nicht aufgrund wachsender Unterstüzung der grossen Software Firmen gehalten wie das z.b bei C++ der Fall ist. Auch als Beispiel Java angebracht.
IBM Lotus Notes / Oracle Datenbanken / SAP und und und haben Java als Sprache gewählt die sie in den Produkten unterstützen. VB ist / war keine Option. Sprich es gibt keine allgemeine Unterstützung der führenden Softwareindustrie.

Nächster Nachteil:
VB gibt es nur von einem Anbieter. Microsoft. Wenn dieser die Sprache nicht mehr zu unterstützen bereit ist, stehen tausende von VB "Programmierern" wie die gelackmeierten mit ihrem VB Wissen da.

C++ Kompilier gibt es viele:
gcc / g++
intel compiler
ms compiler
borland
um nur mal die bekanntesten zu erwähnen.

Java JRE/SDK
Sun Microsystems
Oracle
IBM
gcj
Bea
Apple und und und

Um zum Thema des Threads zurückzukommen.
Wenn du auf Windows & Linux programmieren willst, ist VB so oder so nichts für dich.
Den emulator wine, gibt es nicht erst seid Suse 8.2 sondern ein paar Jahre länger, aber das ein Windows Programm unter wine lauffähig ist, ist reine glücksache. Noch mehr glücksache ist es, das das Programm einigermassen stabil läuft.

Wenn du unbedingt eine VB ähnliche Sprache programmieren willst, die auch einigermassen portabel ist, dann halte dich an Delphi.

Mein Tip lautet wie immer: Java.
Grund ist:
Java ist bietet saubere Programmierung, nach modernen Konzepten.
Java ist eine klasse Vorbereitung auf C++. Der Umstieg fällt um einiges leichter.
Java ist schnell (wer das Konzept von Swing nicht versteht, soll hierauf gar nicht antworten, denn er macht sich lächerlich, das ist ein versprechen).
Java ist portable, Auch c++ ist portabel und wird auf der selben anzahl von Plattformen unterstützt, fast alle, jedoch mit einem grossen Unterschied. Unter C++ muss mann sich an plattformunabhängige Biblotheken halten und muss für jede Plattform erst portieren und kompilieren. Wer bei Java aufpasst (mann kann auch hier die Plattformunabhängigkeit verspielen) der kompiliert das Programm einmal, und es ist auf allen unterstützten Plattformen lauffähig. Ob Handy / PC / oder Waschmashine :) Java läuft drauf.
Java ist einfach, eine risige API liest einem sprichwörtlich den Wunsch von den Lippen ab.
Java wird massiv von der Industrie unterstützt. Java Programmierer sind auf dem Arbeitsmarkt, knapp nach den C++ Speziallisten die meist gesuchten Fachleute.
Java ist sexy :)
 
Also dass ein erfahrener Visual Basic Entwickler die Leute auslachen dürfte, die etwas gegen Visual Basic sagen, wage ich zu bezweifeln. Es gibt so viele Punkte, die in Visual Basic schlecht und unvollständig gelöst sind, angefangen beim Syntax bis hin zu dem Kompenenten, dass es viele gute Gründe gibt in anderen Sprachen, z.B C++, zu programmieren. Visual Basic bietet nur einen sehr schlechten Zugriff auf die Windows-API, der Code wird schnell unübersichtlich, Klassen sind nur rudimentär eingebunden, es gibt keine Templates usw.

Dennoch hat Visual Basic eine sehr gute Daseinsberechtigung. Es eignet sich ausgezeichnet um Benutzeroberflächen zu programmieren und ich kenne auch keine andere Sprache in der das besser möglich wäre. Daher nutze ich es genau dafür und programmiere den Rest in C++.

Daher glaube ich, dass man weniger streiten sollte, welche Sprache besser ist sondern sehen sollte, dass (fast) alle Programmiersprachen ihr spezielles Anwendungsgebiet haben und genau dafür eingesetzt werden sollen.

MfG

Tobias
 
Danke, Christian. Du sprichst mir aus dem Herzen. :)
Aber dazu kommen noch zwei Dinge:
1. Die VB-Umgebung mischt sich ständig in den Code ein, was für Anfänger vielleicht ganz hilfreich sein mag, aber nach einiger Zeit nur noch nervt. Man schreibt eine If-Anweisung und merkt, dass man in einer anderen Zeile noch eine Konstante ändern muss - wenn man das If-Statement nicht zu Ende schreibt, schmeisst die IDE sofort eine Fehlermeldung raus.
2. Durch VBA kann man aus Office über API-Aufrufe alles mögliche machen, was für eine Office-Anwendung nicht nötig ist.

Zum Thema Makro: VBA-Code in Office sind wenn überhaupt Scripte und keine Makros.

keine Chance gegenüber Delphi, welches Performanter, portabel (kylix) und auch Ressourcen schonend ist.
Eine positive Äusserung zu Pascal aus Deinem Munde. Dass ich das noch erleben darf... :)
 
Es eignet sich ausgezeichnet um Benutzeroberflächen zu programmieren und ich kenne auch keine andere Sprache in der das besser möglich wäre.
Delphi/Kylix oder auch der C++ Builder - ohne Frage. Vor allem, weil die Sprache dahinter ein vernünftiges OO-Prinzip bietet und nicht diese Pseudo-OOP aus VB. Ausserdem ist der Form-Designer in den Borland-IDEs komfortabler ist (Pixel statt Twips, Alignment, etc).
 
sorry... ich wollt den thread zwar ignorieren....aber ich kann mir das nicht länger ansehen^^

Ihr seit so damit beschäftigt VB schlecht zu machen das ihr die Vorteile völlig verdrängt !
Ist ja klar das jeder die sprache am besten findet mit der er selbst programmiert(sonst hätte man sie ja nicht gewählt).
Ihr solltet damnit aufhören irgendwelchen mist zu erfinden und euch ständig zu wiederholen... (hab jetzt von euch 3-4nachteile gehört die ihr immer wiederholt).

Außerdem sind c++, C, delphi usw sicher auch nicht perfekt !
 
Ist ja klar das jeder die sprache am besten findet mit der er selbst programmiert(sonst hätte man sie ja nicht gewählt).
Ich hab VB auch schon gehasst, als ich noch damit programmiert hab.

Keine Programmiersprache ist hundertprozentig perfekt, das hat auch niemand behauptet. Es kommt immer auf den Bereich ein, in dem die Sprache eingesetzt wird - aber der angebliche Allrounder VB kann nichts, was sich mit anderen Sprachen nicht besser lösen liesse.

Ihr seit so damit beschäftigt VB schlecht zu machen das ihr die Vorteile völlig verdrängt !
Ich mach VB doch gar nicht schlecht, das hat Microsoft auch ohne meine Hilfe hinbekommen.
Aber Du kannst ja mal diese vermeintlichen Vorteile gegenüber anderen Sprachen aufzählen. ;)
 
Original geschrieben von Dario Linsky
Delphi/Kylix oder auch der C++ Builder - ohne Frage. Vor allem, weil die Sprache dahinter ein vernünftiges OO-Prinzip bietet und nicht diese Pseudo-OOP aus VB. Ausserdem ist der Form-Designer in den Borland-IDEs komfortabler ist (Pixel statt Twips, Alignment, etc).

Also bei der Sprache stimme ich Dir zu - gar keine Frage. Allerdings konnte ich mich bis heute nicht mit SDI-IDEs anfreunden. Ich finde sie eher ziemlich hinderlich beim Programmieren.
Und was die Twips angeht: Ansichtssache. Dafür muss man sich dann keine Gedanken um die PDI-Zahl des Displays machen. Hat alles seine Vor- und Nachteile.

MfG

Tobias
 
momoxp hat gesagt.:
Ihr seit so damit beschäftigt VB schlecht zu machen das ihr die Vorteile völlig verdrängt !
Ist ja klar das jeder die sprache am besten findet mit der er selbst programmiert(sonst hätte man sie ja nicht gewählt).

Ich programmiere in mehreren Sprachen, habe mir mehrere Sprachen angelernt, und wähle jene Sprache die mir in dem anstehenden Projekt am besten weiterhilft.
VB ansich habe ich nicht gelernt, aber durch knapp 2 Jahre Erfahrung mit VBScript, und die Kentnisse von Programmiersprachen allgemein, kann ich mir VB in kürzester Zeit auch anlernen.
Nachdem ich mich aber über die Features, Möglichkeiten und Probleme von VB schlau gemacht habe, bin ich zu dem Schluss gekommen, das ich VB nicht benötige, da es kein Aufgabenziel gibt für das VB am besten geeignet währe.
Ist das anders dann nenn mir das Aufgabenziel

momoxp hat gesagt.:
Im gegenzug
Ihr solltet damnit aufhören irgendwelchen mist zu erfinden und euch ständig zu wiederholen... (hab jetzt von euch 3-4nachteile gehört die ihr immer wiederholt).

Außerdem sind c++, C, delphi usw sicher auch nicht perfekt !

Sag mir welchen Mist ich erfunden habe?
Ich kann jede meiner Aussagen belegen, wenn du eine Aussage belegt haben willst, sag bescheid.
Ich habe erst ein Post geschrieben, weshalb ich mich nicht wiederholt haben kann. Wenn ich die selben Nachteile sehe wie Dario, und es deshalb wie eine Wiederholung klingt, dann ist das nur ein Zeichen, das dieser Nachteil doch für mehrere Leute existiert.
 

Neue Beiträge

Zurück