www.matheraum.de
Das Matheforum.
Das Matheforum des MatheRaum.

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Mathe
  Status Schulmathe
    Status Primarstufe
    Status Mathe Klassen 5-7
    Status Mathe Klassen 8-10
    Status Oberstufenmathe
    Status Mathe-Wettbewerbe
    Status Sonstiges
  Status Hochschulmathe
    Status Uni-Analysis
    Status Uni-Lin. Algebra
    Status Algebra+Zahlentheo.
    Status Diskrete Mathematik
    Status Fachdidaktik
    Status Finanz+Versicherung
    Status Logik+Mengenlehre
    Status Numerik
    Status Uni-Stochastik
    Status Topologie+Geometrie
    Status Uni-Sonstiges
  Status Mathe-Vorkurse
    Status Organisatorisches
    Status Schule
    Status Universität
  Status Mathe-Software
    Status Derive
    Status DynaGeo
    Status FunkyPlot
    Status GeoGebra
    Status LaTeX
    Status Maple
    Status MathCad
    Status Mathematica
    Status Matlab
    Status Maxima
    Status MuPad
    Status Taschenrechner

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Mathe-Seiten:Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenSonstigesInterpreter, Kommandozeile...
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Deutsch • Englisch • Französisch • Latein • Spanisch • Russisch • Griechisch
Forum "Sonstiges" - Interpreter, Kommandozeile...
Interpreter, Kommandozeile... < Sonstiges < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Sonstiges"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Interpreter, Kommandozeile...: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 17:52 So 03.11.2013
Autor: Kasperkopf

Hallo,

ich habe dieses Jahr mit Beifach Informatik angefangen, sehe da aber momentan überhaupt gar nicht durch.
Unsere erste Aufgabe ist es ein HelloWorld-Programm zu schreiben, dort einige Änderungen vorzunehmen und gucken, was passiert. (Wir benutzen Java/Eclipse.)
Das Programm zu schreiben war kein Problem. In den Aufgaben tauchen nun einige Begriffe auf, mit denen ich leider überhaupt nichts anfangen kann. (Wikipedia-Definitionen und so habe ich leider auch nicht richtig verstanden.)

Die erste Aufgabe wäre:
Benennen Sie die Klasse um, so das Sie NICHT den gleichen Namen wie der Quelltext hat. Wie reagieren darauf Java-Compiler und Java-interpreter (auf der Kommandozeile)?

Meine Fragen dazu:
1. Was ist der Java-Interpreter? Was ist die Kommandozeile?
2. Wie kann ich den Klassenname über den Terminal ändern?


Die dritte Aufgabe wäre:

Ersetzen Sie die Zeile
System.out.println("Hallo, Welt!");
durch die Zeile
System.getProperties().list(System.out);
Welche Ausgaben erzeugt das so veränderte Programm bei Ausführung auf der Kommandozeile AUF DER REFERENZPLATTFORM ?

Meie Frage dazu:
Was ist die/eine Referenzplattform?

Ich hoffe, dass mir das jemand "für doofe" erklären kann?

Danke,
Kasperkopf

        
Bezug
Interpreter, Kommandozeile...: Antwort
Status: (Antwort) fertig Status 
Datum: 05:52 Mo 04.11.2013
Autor: Josef

Hallo,

>  Was ist der Java-Interpreter?


„Auch bei interpretierten Sprachen liegt der Quelltext zunächst in einer reinen Textdatei vor. Er wird aber nicht in eine ausführbare Datei übersetzt und auf der Festplatte gespeichert, sondern bleibt bis zur Ausführung in dieser Form. Zum Starten braucht man mindestens zwei Dateien: den Quelltext und den (in kompilierer Form vorliegenden) Interpreter. Dieser liest die Quelldatei ein und wandelt die benötigten Teile des Programms zur Laufzeit in maschinennahen Code um, der dann ausgeführt wird.

Dadurch sind interpretierte Programme zum einen langsamer als kompilierte, weil neben der eigentlichen Ausführung der Anweisungen zwischendurch immer wieder Quelltext übersetzt werden muss. Zum anderen machen sich syntaktische Fehler erst  bei der Ausführung in Form von Programmabbrüchen bemerkbar.

Dafür geht die Entwicklung etwas schneller von der Hand, weil der zeitraubende Vorgang des Kompilierns vor den immer wiedere vorkommenden Programmstarts während der Entwicklungsphase unterbleibt. Außderdem erlauben Interpreter Sprachen einige programmiertechnische Kunstgriffe, die bei Compiler-Sprachen nicht möglich sind.

Interpreter werden heutzutage oft on so genannten Skriptsprachen wie beispielsweise Perl oder Tel verwendet. Auch die für die Erstellung von dynamischen Webseiten weit verbreitete Sprache PHP ist interpretiert."



> Was ist die
> Kommandozeile?

"Der Text nach dem eigentlichen Interpreter-Aufruf und dem Klassennamen wird als Kommandozeilenparameter bezeichnet."




Quelle:
Objektorientierte Programmierung in Java; Alexander Niemann; ISBN-10 3-8266-7414-6



Viele Grüße
Josef




Bezug
        
Bezug
Interpreter, Kommandozeile...: Antwort
Status: (Antwort) fertig Status 
Datum: 09:43 Mo 04.11.2013
Autor: Event_Horizon

Hallo!

Hmmm, die Antwort oben hilft vermutlich nicht so viel weiter...



> Meine Fragen dazu:
>  1. Was ist der Java-Interpreter?

Du schreibst menschenlesbare Programme in Textdateien, der Computer versteht aber nur Maschinencode, eine kryptisch anmutende Aneinanderreihung von Bytes, die kein Mensch (direkt) versteht.

Klassische Programmiersprachen wie C/C++ benötigen einen Compiler, der deine Textdateien in Maschinencode umwandelt. Das Resultat ist eben eine Datei mit Maschinencode, die dein Computer direkt ausführen kann. unter Windows bekommst du eine *.exe-Datei, die du direkt ausführen kannst.


Script-Sprachen wie Java, Python, Ruby, ... benutzen einen Interpreter, welcher deine Textdateien einliest (interpretiert), sie direkt übersetzt und ausführt. Das ist prinzipiell etwas langsamer, hat aber den Vorteil, daß man ein und den gleichen Code unter Windows, Linux, Mac und auf anderen Geräten (z.B. Handys) laufen lassen kann, sofern es einen Interpreter gibt. Denn der weiß, wie er das, was du willst, auf dem jeweiligen System macht.
Im Endeffekt rufst du ein Java-Programm auf, indem du den Java-interpreter "java" ausführst, z.B. so:   java -jar meine.jar

(Java ist mittlerweile richtig schnell, und teilweise schneller als kompilierte Programme. Aber ich schreib das, um hier Diskussionen diesbezüglich zu vermeiden)





> Was ist die
> Kommandozeile?

Unter Windows machst du start->ausführen... cmd. Das schwarze Fenster ist das, was man allgemein als Konsole/Kommandozeile/Terminal  bezeichnet, und hier kannst du mit deinem Computer per Tastatur reden. Beispielsweise kannst du mit "cd MeinVerzeichnis" in ein bestimmtes Verzeichnis wechseln, wo dein Java-Code liegt, und ihn mit einem Befehl wie oben ausführen.
Über die Konsole kann dein Programm auch Text ausgeben, das ist viel einfacher, als das mit grafischen Oberflächen zu machen.
Vielleicht suchst du mal "ms dos befehle", damit findest du so einige Befehle, die du eingeben kannst. Die wichtigsten sind wohl cd, dir und del

Allerdings benutzt du ja eclipse, ein ziemlich mächtiges Werkzeug zum Programmieren. Das bietet dir auch an, das Programm für dich im Hintergrund zu starten, die Konsole ist in dem Fall im unteren Bereich des Eclipse-fensters zu finden. Sie startet allerdings erst, wenn du in Java das Programm startest, und wenn es zu ende ist, beendet sich auch die Konsole.


>  2. Wie kann ich den Klassenname über den Terminal
> ändern?

Der Klassenname steht ja in der Datei, daher brauchst du einen Texteditor dafür. Allerdings benutzt ihr ja Eclipse, da kannst du das auch machen.

>  Was ist die/eine Referenzplattform?

Unter Plattform versteht man das System, auf dem der Code läuft. Also Windows, Linux, Mac, dazu kommen oft noch Infos zur Version des Betriebssystems, aber auch der Hardware (32/64 bit? Arm- oder x86-Prozessor?...)

Eine Referenzplattform ist ein bestimmtes System, das als Beispiel oder Maßsystem dient. So geben z.B. Hersteller von Grafikkartenchips eine Referenzkrafikkarte 'raus, die alle Features des neuesten Chips unterstützt. Andere Hersteller (von Grafikkarten, nicht den Chips darauf) können sich das angucken, und ihre eigenen Modelle bauen.

Ich bin mir nicht ganz sicher, was hier als Antwort erwartet wird. Kann es sein, daß ihr Rechner in der Uni habt, die als Referenz gelten?



Bezug
                
Bezug
Interpreter, Kommandozeile...: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:47 Mo 04.11.2013
Autor: Kasperkopf

Hallo,

erst mal VIELEN VIELEN DANK, jetzt ist mir einiges klarer. Ich werde meine Aufgaben dann mal mit meinem neuen Wissen probieren, allerdings erst Mittwoch bzw. Donnerstag, wenn ich wieder den Kurs habe. (Zu Hause habe ich leider nicht die nötigen Programme.)
Falls dann doch noch was unklar sein sollte, werde ich nochmal nachfragen.

>  
> Kann es sein, daß ihr Rechner in der Uni
> habt, die als Referenz gelten?
>  

Das weiß ich nicht, das muss ich dann mal Kommilitonen fragen bzw. die Tutoren.

Grüße Kasperkopf

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Sonstiges"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.matheforum.net
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]