Schöner Programmieren

Ähnliche Dokumente
Einstieg in die Informatik mit Java

Klassen mit Instanzmethoden

5. Tutorium zu Programmieren

Objektorientierte Programmierung OOP Programmieren mit Java

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

Java Einführung Methoden. Kapitel 6

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben

Einführung in die Informatik

Programmierkurs Java

JAVA - Methoden

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek

Objektorientierte Programmierung

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Erste Schritte in Java

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Arbeiten mit JavaKara

1. Der Einstieg in Java. Was heißt Programmieren?

Java Einführung Programmcode

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java Einführung Methoden in Klassen

Die Kunst des schönen Kodierens

1.2 Attribute und Methoden Aufbau einer Java-Klasse:

Die Programmiersprache C Eine Einführung

Java Einführung Klassendefinitionen

Programmiertechnik Klassenmethoden

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Primitive Datentypen

Grundlagen der Programmierung Prof. H. Mössenböck. 6. Methoden

Einstieg in die Informatik mit Java

1. Der Einstieg in Java

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz Institut für Angewandte Informatik

Probeklausur: Programmierung WS04/05

5.4 Klassen und Objekte

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Probeklausur: Programmierung WS04/05

Nino Simunic M.A. Computerlinguistik, Campus DU

PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden.

Praktikum Informatik II Prof. Dr. Martin Trauth, Dr. Michael Männel

Selbsteinstufungstest Vorkurs Programmieren

Einführung in die Java- Programmierung

Einfache Rechenstrukturen und Kontrollfluss II

5.5.8 Öffentliche und private Eigenschaften

Erster Kontakt mit Java und Pseudocode

public class SternchenRechteckGefuellt {

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4

Java-Vorkurs Wintersemester 15/16

Tutorium 5 - Programmieren

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein

Vorkurs Informatik WiSe 15/16

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

C-Probeklausur (Informatik 1; Umfang: C, Teil 1; SS07)

Aufgabe 1. »Programmieren«, WS 2006/2007. Nino Simunic M.A.

Repetitorium Informatik (Java)

Propädeutikum zur Programmierung

Einführung in die Java- Programmierung

Übung Grundlagen der Programmierung. Übung 03: Schleifen. Testplan Testergebnisse

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Theorie zu Übung 8 Implementierung in Java

Programmieren in Java

Software Engineering Klassendiagramme Einführung

Übersicht. Schleifen. Schleifeninvarianten. Referenztypen, Wrapperklassen und API. 9. November 2009 CoMa I WS 08/09 1/15

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

1. Typen und Literale (6 Punkte) 2. Zuweisungen (6 = Punkte)

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Fachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6

3. Algorithmenentwurf und JAVA. Informatik II für Verkehrsingenieure

Objektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ

Java Einführung Abstrakte Klassen und Interfaces

Algorithmen und Datenstrukturen

Die Algorithmenbeschreibungssprache Jana

Informatik II Musterlösung

Java-Schulung Grundlagen

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Coding Standards Brandbox

Java Kurs für Anfänger Einheit 5 Methoden

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Propädeutikum zur Programmierung

Tutorium Rechnerorganisation

Dr. Monika Meiler. Inhalt

Objektorientierte Programmierung OOP Programmieren mit Java

EINI WiMa/LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12

Kurze Einführung in die Programmiersprache C++ und in Root

Arbeiten mit BlueJ. Objektorientiertes Programmieren in Java mit BlueJ

E-PRIME TUTORIUM Die Programmiersprache BASIC

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Java Programmierung auf der Konsole / unter Eclipse

Transkript:

Schöner Programmieren Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 20.11.07 G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 1 / 10

Übersicht 1 Das Einrücken 2 Die Kommentierung 3 Die Klammerung Klammerung in algebraischen und boolschen Ausdrücken 4 Namen G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 2 / 10

Das Einrücken Sehr wichtig um die Ebenen der Gültigkeit von Variablen und eine Struktur im Programm zu erkennen. Um einzurücken am besten immer einen Tabulatorschritt verwenden. Eingerückt wird nach jedem Klasse- und Methodenkopf bis zur schließenden Klammer nach jedem Schleifenkopf (for, while, do-while) bis zur schließenden Klammer nach jeder Bedingung (if, switch) bis zur schließenden Klammer die schließende, geschweifte Klammer der Klasse, Methode, Schleife, usw. kommt immer auf die Höhe des dazu gehörenden Kopfes, bekommt also immer eine eigene Zeile nach der schließenden Klammer eine Zeile frei lassen, außer es kommen weitere schließende Klammern Elemente der gleichen Ebene (z.b. nacheinander folgende Bedingungen) müssen gleichmäßig auf der selben Höhe eingerückt sein G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 3 / 10

Das Einrücken Beispiel public class Einruecken { double var1 = 0.0; int var2 = 2; public static double methode1 (double x) { double y = 0; for (int i = 0; i < var2; i++) { var1 = var2 * x; if (var1 == 4) { for (int k = 1; k<5; k++) { y = y * Math.sqrt(k); else { y = 1; return y; public static void main (String[] s) { System.out.println(methode1(2)); G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 4 / 10

Die Kommentierung Niemand macht sie gerne, aber spätestens einen Monat nachdem man ein Programm geschrieben hat, wird man für jeden Kommentar dankbar sein. Natürlich muss die Kommentierung zur Komplexität des Programms in einem angemessenen Verhältnis stehen. Achtung am Anfang der Klasse Autor, Datum, evtl. zusätzlich benötigte Klassen und eine kurze Beschreibung der Klasse angeben über jeden Methodenkopf jeweils auch eine Kurzbeschreibung der Aufgabe der jeweiligen Methode Der Code innerhalb einer Methode kann meistens noch mal untergliedert werden (einfaches Bsp.: Variablen, Schleife, Bildschirmausgabe), was durch Kommentierung ebenfalls Übersicht gewinnt Schwierige und unübersichtliche Algorithmen unbedingt kommentieren! In der Kürze liegt die Würze! Lange, ausformulierte Kommentare sind kontraproduktiv und erfordern nur mehr Zeit. G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 5 / 10

Beispiel // Autor: Gregor Huber // Datum: 25.05.2007 // Programm zur Demonstration des Kommentargebrauchs // Klasse KuerzeWuerze public class KuerzeWuerze { // Variablen public static double x = 2.3; boolean b = true; // Methode zur Bildschirmausgabe public static void textausgabe () { System.out.println("In der Kuerze liegt die Wuerze!"); //Mainmethode public static void main (String[] s) { for (int i = 0; i<10; i++) { System.out.print(textausgabe()) System.out.println("Ohne Kommentar"); // 10x Ausgabe G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 6 / 10

Die Klammerung Sobald man sie setzen kann, sollte man das auch tun. Auch wenn man z.b. bei Schleifen mit nur einer Anweisung die geschweiften Klammern theoretisch weglassen darf, ist es sehr unschön und gefährlich diese weg zu lassen. Beim eventuellen erweitern des Programms werden oft weitere Anweisungen in Schleifen gebraucht. Sehr häufig wird dann das Hinzufügen der Klammern vergessen, was natürlich zu fatalen Fehlern führt. Also Immer Klammern setzen! Die öffnende geschweifte Klammer sollte man an das Ende des Kopfes der Klasse, Methode, usw. schreiben. Eine andere Möglichkeit ist es, diese Klammer in die nächste Zeile auf gleicher Höhe wie den Kopf zu schreiben. Dies verbessert die Lesbarkeit und den Schutz vor Fehlern aber nicht zusätzlich; es braucht aber eine weitere Zeile. G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 7 / 10

Die Klammerung Beispiel // SCHLECHT for (int i = 0; i<5; i++) x = x + i; // GUT (1. Möglichkeit) for (int i = 0; i<5; i++) { x = x +1; // GUT (2. Möglichkeit) for (int i = 0; i<5; i++) { x = x +1; G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 8 / 10

Klammerung in algebraischen und boolschen Ausdrücken Auch hier sind Klammern immer gerne gesehen. Man sollte lieber zu viel als zu wenig Klammern setzen, vor allem bei längeren boolschen Ausdrücken. Beispiel // SCHLECHT if ( x < 10 && y >= x x+y == 100) { z = x * y / 100.0 + x / y + x*x*y; // GUT if(( x < 10 ) && ( y >= x ) ( x+y == 100 )) { z = ((x * y) / 100.0) + (x / y) + (x*x*y); G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 9 / 10

Gute Namen schlechte Namen Klassennamen beginnen mit Großbuchstaben, dann folgen Kleinbuchstaben, z.b. Person, Student, Kursteilnehmer Variablennamen und Methodennamen beginnen mit Kleinbuchstaben, z.b. name, semester, ausgeben() In beiden Fällen werden Wortanfänge im Inneren des Namens groß geschrieben, z.b. PhysikStudent, JavaKursteilnehmer, anzahlderaufgaben, klausurnote, bearbeiteaufgabe() Konstanten werden in lauter Großbuchstaben geschrieben und ggf. mit Unterstrich unterteilt, z.b. DIM, MIN_OELSTAND, MAX_DRUCK Namen sollten ihre Bedeutung beschreiben, wie z.b. die vorigen Namen; schlecht sind dagegen i.a. nichtssagende Namen wie a, b, c, i, x G. Bohlender (IANM UNI Karlsruhe) Schöner Programmieren 20.11.07 10 / 10