matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Hochschulmathe
  Status Uni-Analysis
    Status Reelle Analysis
    Status UKomplx
    Status Uni-Kompl. Analysis
    Status Differentialgl.
    Status Maß/Integrat-Theorie
    Status Funktionalanalysis
    Status Transformationen
    Status UAnaSon
  Status Uni-Lin. Algebra
    Status Abbildungen
    Status ULinAGS
    Status Matrizen
    Status Determinanten
    Status Eigenwerte
    Status Skalarprodukte
    Status Moduln/Vektorraum
    Status Sonstiges
  Status Algebra+Zahlentheo.
    Status Algebra
    Status Zahlentheorie
  Status Diskrete Mathematik
    Status Diskrete Optimierung
    Status Graphentheorie
    Status Operations Research
    Status Relationen
  Status Fachdidaktik
  Status Finanz+Versicherung
    Status Uni-Finanzmathematik
    Status Uni-Versicherungsmat
  Status Logik+Mengenlehre
    Status Logik
    Status Mengenlehre
  Status Numerik
    Status Lin. Gleich.-systeme
    Status Nichtlineare Gleich.
    Status Interpol.+Approx.
    Status Integr.+Differenz.
    Status Eigenwertprobleme
    Status DGL
  Status Uni-Stochastik
    Status Kombinatorik
    Status math. Statistik
    Status Statistik (Anwend.)
    Status stoch. Analysis
    Status stoch. Prozesse
    Status Wahrscheinlichkeitstheorie
  Status Topologie+Geometrie
  Status Uni-Sonstiges

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
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. Philosophie • Religion • Kunst • Musik • Sport • Pädagogik
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.unimatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]