English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
Alle Kategorien

9 antworten

Basic, VB 6, C++, Java, .NET. Hat alles vor und Nachteile
Kommt immer drauf an was du für ein spiel machen willst.
C++ ist bestens geeignet um rechenaufwendige Spiele. (Schach, Strategiespiele ... )
VB 6 um einfache Grafikanwendungen wie Moorhuhn Varianten etc.
C++ mit Direct X um schnelle 3D grafiken zu programmieren.
Java wenn die Programme in deiner Webseite laufen sollen.
.NET naja ich programmiers zwar aber halten tu nicht so arg viel von. Ist für Spiele schlich t zu langsam.

C++ ist also für die meisten Spiele geeignet, ABER es ist ziemlich Programmieraufwendig.

2007-01-02 22:20:42 · answer #1 · answered by 🐟 Fish 🐟 7 · 1 0

Die meisten Spiele (besonders die, bei denen es auf Geschwindigkeit ankommt) sind in C oder C++. Welche man verwendet, hängt u.a. von der Komplexität des Spiels ab.

2007-01-02 11:30:49 · answer #2 · answered by bromosel 3 · 3 0

NEIN, NEIN, alles nur nicht Java,
ich empfehle das Buch "DirectX mit C++ in 21 tagen" oder "Spieleprogrammieren mit DirectX und C++", es sind zwar fette Bücher aber es zahlt sich später aus... perfekt für Anfänger UND Fortgeschrittene. C++ ist definitiv die einzige Sprache in der mann professionel Spiele programmieren kann. Punkt.

2007-01-02 16:37:25 · answer #3 · answered by Excaliboor 2 · 2 0

Java ist keine gute Idee, es sei denn du planst ein Spiel für Handys oder Webseiten zu programmieren... viel zu einfach gestrickt...
Für den Programmcode eignet sich am besten C++

:-D und Englisch ist keine programmiersprache...

@Maria... Mit C kannst du auc nicht ganz so viel reißen wie mit C++; Das ist nur ne vereinfachte nicht mehr Prozessorabhängige Programmiersprache auf fast-noch- Maschinenebene... Um da ein spiel zu programmieren brauchst du ewig...

Und wenn man dann fertig programmiert hat (gilt für fast alle prgrammiersprachen) fehlt immer noch die grafische benutzerpberfläche, textspiele sind seit dem commodore glaub ich so gut wie ausgestorben... Da gab´s ja noch Basic, hat auch sehr viel spaß gemacht...

2007-01-02 11:49:29 · answer #4 · answered by Markus M 3 · 1 0

ich wuerde dir delphi empfehlen aber sonst raten alle zu c++.

2007-01-02 11:35:46 · answer #5 · answered by whyskyhigh 7 · 1 0

Ich würde mal sagen C++ oder die .Net-Sprachen.
Ansonsten eignen sich erstmal grundsätzlich alle objektorientierten Sprachen.

2007-01-02 11:34:21 · answer #6 · answered by difficultchild_2005 3 · 1 0

C oder C++

2007-01-02 11:50:44 · answer #7 · answered by Anonymous · 0 0

kommt drauf an wo du sie verkaufst oder wen du sie gibst...
english währ natürlich am besten denn das können fast alle also 99% auf der welt :-)

2007-01-02 11:36:53 · answer #8 · answered by snowwind168168168168168168168168 1 · 0 3

Java ist ganz einfach:

Java ist eine objektorientierte Programmiersprache und als solche ein eingetragenes Warenzeichen der Firma Sun Microsystems. Sie ist eine Komponente der Java-Technologie.

Java-Programme werden in Bytecode übersetzt und dann in einer speziellen Umgebung ausgeführt, die als Java-Laufzeitumgebung oder Java-Plattform bezeichnet wird. Deren wichtigster Bestandteil ist die Java Virtual Machine (Java-VM), die die Programme ausführt, indem sie den Bytecode interpretiert.

Java-Programme laufen in aller Regel ohne weitere Anpassungen auf verschiedenen Computern und Betriebssystemen, für die eine Java-VM existiert. Sun selbst bietet Java-VMs für die Betriebssysteme Linux, Solaris und Windows an. Andere Hersteller lassen ihre Java-VM für ihre Plattform zertifizieren, zum Beispiel die Firma Apple für Mac OS X.

Von Portierung spricht man bei Java in der Regel, wenn Quelltext oder Bytecode auf den Stand einer anderen Java-Version angepasst werden soll. Meistens sind Java-Programme nur für bestimmte Java-Versionen getestet oder zertifiziert.

Grundkonzepte der Sprache [Bearbeiten]

Der Entwurf der Programmiersprache Java strebte im Wesentlichen fünf Ziele an.

* Sie soll eine objektorientierte Programmiersprache sein.
* Sie soll ermöglichen, gleiche Programme auf unterschiedlichen Computersystemen auszuführen.
* Sie soll eingebaute Unterstützung für die Verwendung von Computernetzen enthalten.
* Sie soll Code aus entfernten Quellen sicher ausführen können. Dieser Punkt wird über das Sicherheitskonzept von Java erreicht, das aus drei Schichten besteht:
1. dem Code-Verifier (deutsch „Code-Überprüfer“), der sicherstellt, dass die VM keinen ungültigen Bytecode ausführen kann.
2. den Class-Loadern (deutsch „Klassenlader“), die die sichere Zuführung von Klasseninformationen zur JVM steuern (diese ist dabei kein Interpreter, siehe unten).
3. den Security-Managern (deutsch „Sicherheitsverwalter“), die sicherstellen, dass nur Zugriff auf Programmobjekte erlaubt wird, für die entsprechende Rechte vorhanden sind.
* Die erfolgreichen Aspekte bereits verbreiteter objektorientierter Programmiersprachen wie C++ sollen auch für Java-Programmierer zur Verfügung stehen.

Objektorientierung [Bearbeiten]

Die Sprache Java gehört zu den objektorientierten Programmiersprachen. Die Grundidee der objektorientierten Programmierung ist die softwaretechnische Abbildung in einer Art und Weise, wie wir Menschen auch Dinge der realen Welt erfahren. Die Absicht dahinter ist, große Softwareprojekte einfacher verwalten zu können, und sowohl die Qualität von Software zu erhöhen als auch Fehler zu minimieren. Ein weiteres Ziel der Objektorientierung ist ein hoher Grad der Wiederverwendbarkeit von Softwaremodulen.

Ein neuer Aspekt von Java gegenüber den zuvor verbreitetsten objektorientierten Programmiersprachen C++ und Smalltalk ist die explizite Unterscheidung zwischen Schnittstellen und Klassen, die durch entsprechende Schlüsselwörter interface und class zur Geltung kommt.

Java ist nicht vollständig objektorientiert: Die Grunddatentypen (int, boolean usw.) sind keine Objekte (siehe auch unter Java-Syntax). Ferner unterstützt Java keine direkte Mehrfachvererbung (wie z. B. Eiffel) wobei diese jedoch über Schnittstellen simuliert werden kann.

Reflection [Bearbeiten]

Java bietet eine Reflection-API als Bestandteil der Laufzeitumgebung. Damit ist es möglich, zur Laufzeit auf Klassen und Methoden zuzugreifen, deren Existenz oder genaue Ausprägung zur Zeit der Programmerstellung nicht bekannt war.

Annotations [Bearbeiten]

Mit Java 5 hat Sun die Programmiersprache um Annotations erweitert. Annotations erlauben die Notation von Metadaten und ermöglichen bis zu einem gewissen Grad benutzerdefinierte Spracherweiterungen. Sinn der Annotations ist u.a. die automatische Erzeugung von Code und anderen in der Software-Entwicklung wichtigen Dokumenten für wiederkehrende Muster anhand möglichst kurzer Hinweise im Quelltext. Bislang wurden in Java dafür ausschließlich Javadoc-Kommentare mit speziellen JavaDoc-Tags verwendet, die von Doclets wie zum Beispiel dem XDoclet ausgewertet wurden.

Annotations können auch in den kompilierten Class-Dateien enthalten sein. Der Quelltext wird also für ihre Verwendung nicht benötigt. Insbesondere sind die Annotationen auch über die Reflection-API zugänglich. So können sie zum Beispiel zur Erweiterung des Bean-Konzeptes verwendet werden.

Modulare Ausführung auf fernen Computern [Bearbeiten]

Java bietet die Möglichkeit, Klassen zu schreiben, die in unterschiedlichen Ausführungsumgebungen ablaufen. Beispielsweise lassen sich Applets in Webbrowsern, die Java unterstützen, ausführen. Das Sicherheitskonzept von Java kann dazu eingesetzt werden, dass unbekannte Klassen dabei keinen Schaden anrichten können, was vor allem bei Applets wichtig ist (siehe auch Sandbox). Beispiele für Java-Ausführungsumgebungen sind Applets, Servlets, Portlets, Midlets, Xlets, Translets, und Enterprise Java Beans.

Merkmale der Sprache [Bearbeiten]

Der Objektzugriff in Java ist über Referenzen genannte Zeiger implementiert. Aus Sicherheitsgründen ist es nicht möglich, deren Speicheradresse zu modifizieren. So genannte Zeigerarithmetik ist mit der Sprache also ausgeschlossen. Per Design können so Fehler, welche häufig in anderen Programmiersprachen auftreten, von vornherein ausgeschlossen werden.

Zusammengehörige Klassen werden in Paketen (englisch packages) zusammengefasst. Diese Pakete ermöglichen die Einschränkung der Sichtbarkeit von Klassen, eine Strukturierung von größeren Projekten sowie eine Trennung des Namensraums für verschiedene Entwickler. Die Paketnamen sind hierarchisch aufgebaut und beginnen im Allgemeinen mit dem (umgekehrten) Internet-Domainnamen des Entwicklers. (Pakete, die von Sun erstellt werden, beginnen z. B. mit „com.sun.“) Klassennamen müssen nur innerhalb eines Paketes eindeutig sein. Hierdurch ist es möglich, Klassen von verschiedenen Entwicklern zu kombinieren, ohne dass es zu Namenskonflikten kommt. Die Hierarchie der Paketnamen hat allerdings keine semantische Bedeutung. Bei der Sichtbarkeit zwischen den Klassen zweier Pakete spielt es keine Rolle, wo sich die Pakete in der Namenshierarchie befinden. Klassen sind entweder nur für Klassen des eigenen Paketes sichtbar, oder für alle Pakete.

Weiter unterstützt die Sprache Threads (nebenläufig ablaufende Programmteile) und Ausnahmen (englisch exception) und Java beinhaltet auch eine automatische Speicherbereinigung (englisch garbage collector), die nicht (mehr) referenzierte Objekte aus dem Speicher entfernt.

Bemerkenswert ist auch die explizite Unterscheidung von Schnittstellen und Klassen. Eine Klasse kann beliebig viele Schnittstellen implementieren, hat aber stets genau eine Basisklasse. Java unterstützt keine Mehrfachvererbung, da lediglich Schnittstellen, jedoch keine Klassen „mehrfach“ vererbt werden können. Funktionen (in der Java-Welt „Methoden“) werden nur von der Basisklasse übernommen. Alle Klassen sind – direkt oder indirekt – von der Wurzelklasse Object abgeleitet.

Zu Java gehört eine umfangreiche Klassenbibliothek. Dem Programmierer wird damit eine einheitliche, vom zugrunde liegenden Betriebssystem unabhängige Schnittstelle (Application programming interface, API) angeboten.

Mit Java 1.2 wurden die Java Foundation Classes (JFC) eingeführt, die unter anderem Swing bereitstellen, das zur Erzeugung plattformunabhängiger grafischer Benutzerschnittstellen (GUI) dient und auf AWT basiert.

2007-01-02 11:30:07 · answer #9 · answered by Suedlaender 3 · 0 5

fedest.com, questions and answers