Einzelnen Beitrag anzeigen

r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#27

Re: Visual Basic und Delphi

  Alt 20. Jul 2005, 17:18
Hallo
Dann will ich auch mal meinen Senf dazugeben:

Programmiersprachen lassen sich - einfach ausgedrückt - in einige wenige Konzepte aufteilen: Maschinensprache, Assembler, prozedurale, OOP, .NET(gehört zu OOP), deklarativ, funktional, logisch.

Maschinensprache

Benutzt heute so gut wie keiner mehr: 00110010111101101110101101100111100101011001(<-- seeehr übersichtlich )

Vorteil:
-Sofort lauffähig

Nachteil:
- Läuft nur auf gaanz bestimmten Systemen ohne Änderung
- seeehr fehleranfällig, da unübersichtlich
- sehr langwierig

Assembler-Sprachen

Die einzelnen CPU-Befehle werden durch sogenannte Memnicons(hat Olli schon angesprochen). repräsentiert. Is also sehr kleinschrittig, da du *alles* selbst machen musst. Kann sinnvoll sein, wenns um Geschwindigkeit geht.

Vorteile:
- (so gut wie) kein Overhead
- inline-Assembler
- so lernt man, wie das ganze intern funktioniert

Nachteile:
- langwierig
- fehlerträchtig, da unübersichtlich

Prozedurale Sprachen

Einzelne Programmteile werden in Funktionen(Subroutinen) ausgelagert.

BASIC
Von BASIC gibts ne unmenge an Dialekten(is bei vielen Sprachen so). Ich hab meinerzeit mit QBASIC angefangen. Nicht sehr schön, funktioniert aber. QBASIC arbeitet viel mit Varients und wird schnell unübersichtlich.
QBASIC is AFAIK auf der Win95(vielleicht auch noch bei anderen Versionen) auf der CD drauf, bei DOS aber auf jeden Fall.

Pascal
Auch hier gibts viele Dialekte. Der bekannteste ist TurboPascal.
TurboPascal 5.5 gibts kostenlos im Museum beim Borland. FreePascal is OpenSource.

C
Sehr Pointer-Lastig. Wenn du C kannst, weißt du mit Pointern umzugehen. Is aber mühsam, andauernd, auch für n String(in C char*) Pointer vor der Nase zu haben.
TurboC gibts kostenlos im Museum beim Borland.

...
Prozedurale Sprachen bibts wie Sand am Meer. Siehe Google, Wikipedia.

OOP

Einzelne Programmteile werden in Klassen gekapselt und als Opjekte instanziert. Das ganze erzeugt n nicht zu verachtenden Overhead, is aber weitaus übersichtlicher und einzelne Programmteile sind einfach wiederverwendbar.

C++
Basiert auf C und hantiert damit auch viel mit Pointern rum. C++ ist AFAIK die meistgenutzte Sprache überhaupt. Wenn du C++ kannst, bist du voll im Mainstream. Bei C++ gibts aber noch unterschiedliche Möglichkeiten/IDEs/Dialekte/Bibliotheken:

C++Builder:
C++ - IDE von Borland. Verwendet ebenfalls die VCL der "Umstieg" sollte also relativ leicht sein.
Den C++ Buildeer 1.0 gibts in dem Buch C++ for Kids(ca. 25€). Aktuelle Versionen sind Teuer, preise gibts beim Borland.

C++BuilderX:
X-Plattform-IDE von Borland. Auf einen tollen Formulardesigner musst du hier verzichten. sozusagen: NonVCL. C++BuilerX is in der Foundation-Version kostenlos beim Borland downzuloaden.

MS VisualStudio:
Auch hier gibts keinen Formulardesigner wie bei Delphi. VS is aber wahrschenlich am verbreitetseten. Hierzu gibts ne Kostenlose Autorenversion, die aber Exen erzeugt, die nur laufen, wenn die IDE gestartet ist.

Bibliotheken:
[da gibts was von MS, mir fällt der Name nur nicht mehr ein hat sich erledigt: MFC], QT(X-Palttform; KDE), GTK+(X-Plattform; Gnome)

Java
Bei Java gibts n Zwang zum OOP. OOPer gehts nicht. Mittlerweile relativ weit verbreitet. Erstellt einen ObjectCode, der von einer VM(VirtualMaschine) interpretiert wird(-->Plattformunabhängig). Für Java gibts mehrere IDEs und Komponentensammlungen: Eclipse, JavaOneStudio(vierher Forte for Java), NetBeans, JBuilder.
Eclipse is OpenSource, JavaOneStudio und NetBeand INHO auch. JBuilder is von Borland und gibts dort in der Foundation Version kostenlos zum Download. Komponentensammlungen sind AWT, Swing und NetBeans.

ObjectPascal/Delphi
Das sollte dir bekannt sein. Delphi ist seehr übersichtlich und hat auch nen sehr guten Formulardesigner. Das gantze dasiert - wer hätts gedacht - auf Pascal. Und stellt euch vor es gibt auch gute Delphi-Foren .

VisualBASCIC
Basiert auf BASIC. Is immer noch relativ unübersichtlich, mittlerweile aber objektorientiert. "Abarten" von VB sind VBA und VBS. Dazzu wurde schon was gesagt. Dem kann ich auch nur zustimmen: VBA und VBS sind für kleine Sachen ganz praktisch, VB....Ne, nich wirklich. Auch kleinere Sachen gehen mit Delphi besser.

.NET

Microsoft hat mit .NET sozusagen die gesammte WinAPI(und noch viel mehr) gekapselt. .NET ist konsequent OOP und Sprachunabhängig. Die "ursprüngliche" .NET-Sprache ist C#. .NET-Dialekte gibts mittlerweile aber für sehr viele Sprachen: Delphi.NET, VB.NET, C++.NET, J#.NET, ...
Die Spache ist mehr oder weniger Nebensache. Du kannst prinzipiell ein Projekt teilweise in Delphi, C++ ubnd C# schreiben. Nur die Syntax unterscheidet sich halt. Mit Longhorn wird .NET zum Standard erhoben und verdrängt die WinAPI. .NET ist die Zukunft(das hat M$ so bestimmt).
für C# gibts SharpDevelop(OS), Delphi2005(natürlich auch für Delphi.NET in der PE-Version kostenlos auf CDs) und VS.NET.

deklarativ

Das Problem wird nur noch beschrieben, nicht mehr die Lösung. Rein deklarative Sprachen gibts nicht!

funktional

Ein Problem ist eine Mathematische Funktion!
Hierzu zählen Lisp und LOGO

logisch

Das Programm ist auf logischer Schlussfolgerung aufgebaut. wenn A, dann B.

Prolog

Fazit:
Wenn du Mainstream willst C++, wenn du Zukunft willst .NET(oder Java), wenn du interna kennen lernen willst ASM. Ansonsten Delphi.

So, ich hoffe ich bin nicht zu spät; das schreiben hat ne ganze Zeit lang gedauert.

mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat