PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Aussage eeines Dozenten


Gast
2006-09-07, 17:35:53
Dozent sagt zu java.
wenn ich nur nen hammer als werkzeug hätte, würde ich die schrauben auch in die wand kloppen müssen.

Findet ihr das ok?

Gast
2006-09-07, 17:40:10
ich verstehe nicht so ganz was er damit sagen will? Daß es einem unter Java an Werkzeugen fehlt? Meint er mit dem Nichtvorhandensein eines Schraubenziehers vielleicht das Fehlen von nativem Maschinencode by Java-Kompilaten?

Gast
2006-09-07, 17:41:25
ne er meinte das, weil man unter Java alles mit Klasseen "OOP" machen muss

Aqualon
2006-09-07, 21:07:04
Dann kann man sich aber auch über C beschweren, dass es kein OOP kann, oder dass man in Lisp funktional programmieren muss. Wenn man keine Klassen benötigt, soll man eine andere Programmiesprache benutzen, dafür hat man ja die Auswahl.

Aqua

Gast
2006-09-07, 21:27:07
flasch, Lisp ist multi-paradigm!

ethrandil
2006-09-07, 22:50:19
Ich finde die Aussage des Profs okay. Die Formulierung ist zwar nicht druckreif, aber das macht ja nix.

Das Problem ist einfach folgendes:
Der Sprachdesigner sagt 'geil - Meine Sprache ist so konsistent - Alles ist ein Objekt'.
Der Programmierer/Designer sagt 'scheiße - Eine Callbackfunktion/ eine Enumeration/ .... ist doch kein Objekt. Wie umständlich'.

Und dein Prof ordnet sich in der Frage wohl eher Letzteren zu.

mfg
- eth

Gast
2006-09-08, 00:11:07
Dann kann man sich aber auch über C beschweren, dass es kein OOP kann, oder dass man in Lisp funktional programmieren muss. Wenn man keine Klassen benötigt, soll man eine andere Programmiesprache benutzen, dafür hat man ja die Auswahl.problematisch wird es aber, wenn man in ein- und demselben Programm manche Sachen mit Klassen machen will, manche andere aber ohne. Verschiedene Programmteile in verschiedenen Sprachen zu schreiben ist nicht gerade eine leichte Übung.
Ok, in Visual Studio .NET mag das relativ einfach sein, aber da sind dann alle unterstützten Sprachen ziemlich an .NET angepaßt, so daß man nicht mehr wirklich eine große Auswahl hat.

Auch wenn man programmweit einen einheitlichen Stil beibehält (d.h. in dem einen Programm macht man alles mit Klassen, in dem anderen Programm alles ohne), so ist es dennoch recht unkomfortabel, für jedes Programm eine andere Programmiersprache einzusetzen (und zuvor für jedes erstmal die passende rauszusuchen). Vor allem wenn man auf kommerzielle Compiler/IDEs angewiesen ist, ist es auch eine Frage des Geldes.

Deswegen ist eine mächtige Sprache mit vielfältigem Funktionsumfang, die einem viele Wahlmöglichkeiten beim Programmierstil läßt, eindeutig von Vorteil.

Gast
2006-09-08, 00:17:10
Ich finde die Aussage des Profs okay. Die Formulierung ist zwar nicht druckreif, aber das macht ja nix.

Das Problem ist einfach folgendes:
Der Sprachdesigner sagt 'geil - Meine Sprache ist so konsistent - Alles ist ein Objekt'.in Java ist aber gar nicht alles ein Objekt. Z.B. ist das Hauptprogramm meist als statische Methode einer Klasse realisiert, und wird aufgerufen ohne daß die Klasse instanziiert wird. Sooo konsistent ist das also alles gar nicht.

Gast
2006-09-08, 00:35:06
Aussagen von Dozenten kannst du meines Wissens komplett vergessen.

Spasstiger
2006-09-08, 01:52:09
Aussagen von Dozenten kannst du meines Wissens komplett vergessen.
Ah ja? Und wer soll einem dann den Stoff beibringen? Irgendwann muss man ja auch eine Prüfung schreiben.
Klar, auf Aussagen, die die persönliche Meinung widerspiegeln, sollte man nichts geben, aber in erster Linie vermitteln Dozenten ja prüfungsrelevanten Stoff.

ethrandil
2006-09-08, 03:10:53
Sooo konsistent ist das also alles gar nicht.
Ich wollte nur die Extreme zeigen. Dabei geht es nicht notwendiger Weise um Java. Es könnte genausogut heißen "Juhu - alles ist eine Funktion" oder "Juhu alles ist eine Datei", ... .

Die Mitte wäre dann meiner Meinung nach "Juhu - die Sprache hat sinnvolle Konzepte für fast alle meine Probleme"

Andere Seite "Juhu - die Sprache ist so variabel, dass jede Syntax machbar ist".
Letzteres macht a) den Programmierer zum Sprachdesigner - was er in der Regel nicht so richtig gelernt hat und b) muss ein anderer Programmierer erst aufwändig die 'neue' sprache lernen, bevor er das Programm sinnvoll ändern kann.

- eth

Shink
2006-09-08, 08:25:15
Eine ähnliche Aussage hab ich auch schon mal gehört - Perl-Freaks sagen oft etwas in der Art, und so falsch find ich es auch gar nicht: Ein Batch-Konvertierungs etc. Programm macht sich in Perl nunmal viel kürzer als z.B. in Java oder C++. Nur ist halt z.B. die Objektorientierung in Perl nicht wirklich hübsch gelöst.

HajottV
2006-09-08, 09:34:48
"Wenn ich nur nen hammer als werkzeug hätte, würde ich die schrauben auch in die wand kloppen müssen."

Findet ihr das ok?

Ja, denn genau aus diesem Grund gibt's den Schraubenzieher (Perl), den Akkubohrer (Ruby), den Vorschlaghammer (C++), die Abrissbirne (Assembler), den Winkelmesser (Haskell), den Spachtel (AWK), die Wasserwaage (LISP) und noch ganz viele andere Werkzeuge, die - richtig eingesetzt - das Leben einfacher machen.

Gruß

Jörg

PS: Die Vergleiche oben sind nicht so ganz zufällig...

darph
2006-09-08, 10:35:33
Aussagen von Dozenten kannst du meines Wissens komplett vergessen.Zum Glück kann man sein Wissen ja beispielsweise durch praktische Erfahrungen stetig erweitern. :ugly2:

Hey, ich hab ein déjà vu. ;(

Gast
2006-09-08, 10:50:17
Ja, denn genau aus diesem Grund gibt's den Schraubenzieher (Perl), den Akkubohrer (Ruby), den Vorschlaghammer (C++), die Abrissbirne (Assembler), den Winkelmesser (Haskell), den Spachtel (AWK), die Wasserwaage (LISP) und noch ganz viele andere Werkzeuge, die - richtig eingesetzt - das Leben einfacher machen.

Gruß

Jörg

PS: Die Vergleiche oben sind nicht so ganz zufällig...ah ja? Dann erklär mal? Assembler hab ich ja verstanden, aber den reast?

Gast
2006-09-08, 10:54:47
Ja, denn genau aus diesem Grund gibt's den Schraubenzieher (Perl), den Akkubohrer (Ruby), den Vorschlaghammer (C++), die Abrissbirne (Assembler), den Winkelmesser (Haskell), den Spachtel (AWK), die Wasserwaage (LISP) und noch ganz viele andere Werkzeuge, die - richtig eingesetzt - das Leben einfacher machen.warum der Vergleich hinkt habe ich bereits geschrieben: jedes dieser Werkzeuge ist vom Handling her weniger ein einzelnes Werkzeug als vielmehr eine komplette Werkstatteinrichtung.

Expandable
2006-09-08, 11:32:47
problematisch wird es aber, wenn man in ein- und demselben Programm manche Sachen mit Klassen machen will, manche andere aber ohne. Verschiedene Programmteile in verschiedenen Sprachen zu schreiben ist nicht gerade eine leichte Übung.
Ok, in Visual Studio .NET mag das relativ einfach sein, aber da sind dann alle unterstützten Sprachen ziemlich an .NET angepaßt, so daß man nicht mehr wirklich eine große Auswahl hat.

Auch wenn man programmweit einen einheitlichen Stil beibehält (d.h. in dem einen Programm macht man alles mit Klassen, in dem anderen Programm alles ohne), so ist es dennoch recht unkomfortabel, für jedes Programm eine andere Programmiersprache einzusetzen (und zuvor für jedes erstmal die passende rauszusuchen). Vor allem wenn man auf kommerzielle Compiler/IDEs angewiesen ist, ist es auch eine Frage des Geldes.

Deswegen ist eine mächtige Sprache mit vielfältigem Funktionsumfang, die einem viele Wahlmöglichkeiten beim Programmierstil läßt, eindeutig von Vorteil.

Also wenn das Dein Problem ist: Nimm C++. Das geht objekt orientiert, prozedual und mit .NET und alles vermischt. ;) In dieser Hinsicht ist C++ wohl die flexibelste Sprache.

Bashar
2006-09-08, 12:06:59
Common List ist aber genauso flexibel oder?

Shink
2006-09-08, 13:41:50
Also wenn das Dein Problem ist: Nimm C++. Das geht objekt orientiert, prozedual und mit .NET und alles vermischt. ;) In dieser Hinsicht ist C++ wohl die flexibelste Sprache.
Naja, Flexibilität ist nicht wirklich das Thema: Wenn ich z.B. (warum auch immer) ein "Hello World"-Programm schreiben muss, wäre C++ eigentlich nicht optimal (ich muss eine Main-Methode definieren, Packages importieren etc.).

Java geht auch OO, Prozedural (einfach lauter Static-Methoden verwenden) und mit .NET (J#, Mono-Compiler für Java), ebenso wie Perl, Delphi oder Fortran 95...