Styleguide NAVISION Programmierung. Inhaltsverzeichnis
|
|
- Karl Fuhrmann
- vor 6 Jahren
- Abrufe
Transkript
1 Wir haben eigene Richtlinien, wie der Quell-Code in NAVISION aussehen soll. Dies sind keine Erfindungen von Menschen, die sonst nicht zu tun haben, sondern Ergebnisse langjähriger Projekterfahrungen, die zeigen, dass ohne Regeln der Quellcode in grossen Projekten schnell unwartbar wird. Für die Programmierung in NAVISION gilt der NAVISION C/AL Styleguide. Dieser Styleguide wird in einigen Bereichen ergänzt, um die Lesbarkeit und die Qualität des Quellcodes zu erhöhen. Inhaltsverzeichnis Styleguide...2 Grundlagen...2 Codierungsstandard...2 Variablenbezeichner...2 Scope...3 Type...3 Implizite Variablen...5 Textkonstanten...5 Strukturen...5 Funktionen und Prozeduren...5 Weitere Richtlinien...5 Dokumentation...6 Dokumentation im Projekt...6 Documentation Tag...6 Quell-Code...7 Auskommentieren von NAVISION Standard Quellcode...7 Kurzkommentare...7 Mehrere Programmzeilen...7 Dokumentation von Funktionen und Prozeduren...8 Sonstige Hinweise...9 Tabellenfelder...9 Primärschlüssel...9 Custom Fields...9 Reports...9 Formatierung Quellcode...9 Kremer & Thimm GmbH Rev. 7 Seite 1 von 10
2 Styleguide Grundlagen Der hier vorgestellte Styleguide fasst die Erfahrungen aus verschiedenen Projekten zusammen. So wurde in einem grossen Projekt der "Hochtief Software GmbH" sehr auf die Variablenbezeichnung geachtet, so dass es sinnvoll erschien, einen eigenen Styleguide zu erstellen. Codierungsstandard Ein Codierungsstandard ist eine Menge von Regeln, deren Einhaltung dafür sorgen soll, dass Programmcode les- und wartbar bleibt. Das gilt besonders: sobald mehr als eine Person denselben Code bearbeiten soll bei Programmen, die zwar nur von einer Person geschrieben werden, aber irgendwann einmal von jemandem anderen gewartet werden sollen wenn man ein Programm auch ein paar Wochen, nachdem man es geschrieben hat, noch selber verstehen möchte "Den Einen" Codierungsstandard gibt es nicht - es ist daher oft erforderlich, sich an einen anderen, oft schon von außen vorgegebenen Standard anzupassen. Wenn wir in einem Projekt arbeiten, verwenden wir unseren Styleguide, es sei denn, im Projekt ist ein Codingstandard vorgegeben (schwache Codierungsstandards werden i. d. R. durch unseren Styleguide erweitert, sofern unsere Regeln nicht die Les- und Wartbarkeit verschlechtern. ) Variablenbezeichner Die Variablenbezeichner enthalten Hinweise auf die Reichweite (Scope) und den Typ der verwendeten Variablen. Hierdurch ist beim Lesen des Quelltextes ersichtlich, um welchen Typ es sich handelt. Programmierer, die Erfahrungen in anderen Programmiersprachen haben (JAVA, C++, Python,...) kennen dieses Konzept und nutzen dies auch in der Regel. Nur in NAVISION wird dies nicht oder nur selten verwendet. Wir lehnen uns an die sog. "Hungarian Notation" an. Bei der Hungarian Notation handelt es sich um eine von einem Ungarn, nämlich Charles Simonyi, entwickelte Namenskonvention, die vor allem im Zusammenhang mit C und Microsoft Windows verwendet wird. Wir beziehen uns dabei auf die "Systems Hungarian Notation" (also eigentlich die Fehlinterprettion, aber dennoch eine sinnvolles etabliertes Konzept). Kremer & Thimm GmbH Rev. 7 Seite 2 von 10
3 Reichweite und Typ werden in Kleinbuchstaben beschrieben, der eigentliche Variablenname beginnt mit einem Grossbuchstaben. Die Position der ergänzenden Hinweise zum Type und des Scopes hängen von der Entscheidung ab, ob mit einem Prefix oder Suffix gearbeitet wird. In NAVISION bietet sich die Verwendung des Suffix an, da die Suche der Variablen auf den Anfangsbuchstaben beschränkt ist. Enthält nun der Anfangsbuchstabe den Scope, dann ist die Variablensuche sehr langwierig. Dennoch haben wir in den Projekten weiterhin das Prefix verwendet, da es leichter zugänglich ist. Scope Der erste Buchstabe beschreibt die Reichweite der Variablen. Der Buchstabe orientiert sich dabei weitestgehend an den in NAVISION verwendeten Begriffen. g l p v r Bedeutung Globale Variable lokale Variable Konstanter Parameter bei Funktionsdeklarationen variabler Parameter bei Funktionsdeklarationen Rückgabe Wert bei Funktionsdeklarationen Type Die zweiten bzw. dritten Buchstaben bezeichnen den Typ der Variablen: Anfangsbuchstabe Anfangsbuchstabe i t c d o b da ti dt bn Type Integer Text Code Decimal Option Boolean Date Time DateTime Binary Kremer & Thimm GmbH Rev. 7 Seite 3 von 10
4 Anfangsbuchstabe bl df tf bi du gu fi tt oc au is os v di ac r rt oder rtemp rr ri fr kr cu fm rp dp xp ms ch Type BLOB DateFormula TableFilter BigInteger Duration GUID File TransactionType OCX Automation InStream OutStream Variant Dialog Action Record temporärer Record RecordRef RecordID FieldRef KeyRef CodeUnit Form Report Dataport XML Port Menu Suite Char Diese Liste erscheint sehr umfangreich, aber im Tagesgeschäft werden i. d. R. lediglich die einfachen und direkt nahe liegenden Prefixe verwendet, Kremer & Thimm GmbH Rev. 7 Seite 4 von 10
5 Implizite Variablen Die Bezeichner i, j, k, l, m, n können als Laufvariablen vom Typ Integer verwendet werden, sofern sie als lokale Variablen deklariert sind. Ebenso kann der Bezeichner c für einzelne Zeichen verwendet werden, sofern er als lokale Variable deklariert ist. Textkonstanten Im NAVISION Standard werden Textkonstanten immer mit einer laufenden Nummer aufgeführt. Dies trägt zur Lesbarkeit des Quellcodes in keiner Weise bei. Daher werden zur besseren Lesbarkeit Textkonstanten mit einem sinnvollen Namen bezeichnet und generell in Grossbuchstaben geschrieben 1. NO_CUST_1 Der Debitor \%1 existiert nicht. Textkonstanten sind global zu definieren. Die Anzahl der notwendigen Parameter ist am Ende des Konstantenbezeichners, durch einen Unterstrich getrennt, anzugeben. Strukturen Die Kontrollstrukturen IF, FOR, etc. haben generell BEGIN/END Blöcke zu enthalten. Die Vereinfachungsregel, dass bei nur einer Folgezeile auf die Blockmarkierung verzichtet werden darf, gilt nicht. Funktionen und Prozeduren Generell gilt für Funktionen dieselbe Bezeichnungssystematik, wie für die Variablen. Funktionen beginnen generell mit einem "f" und der Rückgabewert bestimmt die darauf folgenden Buchstaben. Hat eine Funktion keinen Rückgabewert, so schließt sich der Funktionsname direkt an das "f" an. Weitere Richtlinien Lokale Funktionen beginnen mit einem "l" statt mit einem "f". 1 Wer aus der C-Programmierung kommt, wird sich an die gross geschriebenen Konstanten erinnern. Kremer & Thimm GmbH Rev. 7 Seite 5 von 10
6 Funktionen ohne Parameter werden mit einem leeren Klammerpaar aufgerufen: ftgetos() Funktionen in Tabellenobjekten sind nur dann erlaubt, wenn die Funktion auf den instantiierten Record zugreift. Allgemeingültige Funktionen, die als Parameter einen Record vom Typ des Tabellenobjekts enthalten, müssen in Codeunits abgebildet werden. Die Ursache liegt in der impliziten Verwendung des instantiierten Records. Die ID einer Funktion muss auf den Custom Nummernkreis gesetzt werden: Validierungen und Routinen zum Insert/Modify/Delete etc. sind in Tabellenobjekten abzubilden. Nur in absoluten Ausnahmefällen dürfen diese Anpassungen in Forms aufgenommen werden. Auf Programmierungen in Forms ist innerhalb der Dokumentation deutlich hinzuweisen. Dokumentation Neben der externen Anwender-Dokumentation wird im Quellcode ausführlich dokumentiert, wann, wer, was und warum geändert hat. Im Rahmen der Release- Erstellung können die Änderungs-Kommentare weitestgehend wieder entfernt werden. Dokumentationen projektspezifischer Anpassungen bleiben generell erhalten. Dokumentation im Projekt // Dies ist ein Kommentar Documentation Tag Im Kopf wird aufgeführt, welche Anpassungen durchgeführt wurden. Hierbei stehen die letzten Änderungen am Anfang der Liste! hth Korrektur Zugriff auf die Tabelle... jkr Neues Feld... Wurden durch einen Entwickler mehrere Änderungen durchgeführt, so sind zusätzlich laufende Nummern anzufügen. also z. B. hth Korrektur Zugriff auf die Tabelle... hth Erweiterung Feldlänge jkr Neues Feld Kremer & Thimm GmbH Rev. 7 Seite 6 von 10
7 Erfolgen Änderungen auf Grund von Tickets in unserem Ticketsystem, so sollte mindestens die Ticketnummer aufgeführt werden. Ideal wäre die Angabe des direkten Pfades zum Ticket, also z. B. Quell-Code Im Quellcode erfolgt dann an den betroffenen Stellen der Hinweis auf die Änderungen. Hierbei ist zu beachten, dass Zeilen aus dem Originalcode nicht gelöscht werden, sondern lediglich auskommentiert werden! Auskommentieren von NAVISION Standard Quellcode // << grcust.get("customer No."); Kurzkommentare Wurde die Anpassung nur in einer Zeile durchgeführt, so wird der Verweis auf den Kommentar an das Ende der Zeile geschrieben: grcust.get("customer No."); // hth Besser ist es jedoch, wenn man auch hier den Kommentar als Block darstellt. Mehrere Programmzeilen Sind mehrere Programmzeilen betroffen, so werden die Änderungen in einen Kommentarblock eingeschlossen: // hth b // << grcust.get("customer No."); IF grcust.get("customer No.") THEN BEGIN END; // hth e Die Benutzung von geschweiften Klammern zum Auskommentieren ist soweit wie möglich zu vermeiden. Kremer & Thimm GmbH Rev. 7 Seite 7 von 10
8 Dokumentation von Funktionen und Prozeduren Soweit wie möglich sollte jeder Funktionsdeklaration ein Dokumentationsheader folgen, der die Aufgabe der Funktion und die Parameter Dokumentiert. [ffootest(var...)] = Trigger in NAVISION // Aufgabe der Funktion: Ermittlung der... // Parameter : v vrdata, Record, 4711 Hilfstabelle... // pdperiod Analyseperiode // // Rückgabe : keine // Globale Var : keine Verwendung von globalen Variablen // // Hinweise zur Verwendung // Kremer & Thimm GmbH Rev. 7 Seite 8 von 10
9 Sonstige Hinweise Tabellenfelder Primärschlüssel Die Felder, die zum Primärschlüssel zählen, werden mit den Field Ids 1 bis 9 belegt. Custom Fields Zur besseren Übersicht sollten Field Ids verwendet werden, die logisch gruppiert werden können. Auf diese Weise findet man zusammenhängende Felder in einem logischen Block und muss nicht über die gesamte Tabelle recherchieren. Reports Berichten in NAVISION haben standardmässig keinen Hinweis darauf, welcher Bericht ausgeführt wird. Alle Berichte, die durch die uns erstellt werden, sollten folgende Hinweise haben (natürlich nicht bei Belegen wie Rechnungen, etc.): Bericht: Version: Hier wird die deutsche CAPTION des Report-Objekts ausgewiesen, wenn nicht vorhanden, dann wird der Name des Report-Objekts ausgewiesen. Es wird die Version des Report-Objekts ausgewiesen Zusätzlich gibt es eine interne Versionsnummer, z. B. wenn die Lösungen über das SVN mit Versionsnummern eingechecked wurden. Hierzu ist eine Funktion zu verwenden, die die Version des Objekts zurückgibt. Die Version ist lediglich vom Typ Integer, ohne weitere Informationen. Formatierung Quellcode Es gibt immer wieder lästige Angewohnheiten, die das Lesen des Quellcodes erschweren oder andere Probleme verursachen. Nach einer geöffneten Klammer und vor einer schließenden Klammer kommt kein Leerzeichen: falsch:( 3 + i ) richtig: (3 + i) Im Quellcode ist eine Leerzeile nach logischen Blöcken einzufügen. Kremer & Thimm GmbH Rev. 7 Seite 9 von 10
10 DateFormula generell in englisch: CALCDATE('<-CM>', WORKDATE()) statt CALCDATE('-LM', WORKDATE()) Kremer & Thimm GmbH Rev. 7 Seite 10 von 10
Programmieren I + II Regeln der Code-Formatierung
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme WS 2016/2017, SS 2017 Programmieren I + II Regeln der Code-Formatierung In diesem Dokument finden
Mehrswp12-6 Aufgabenblatt Qualita tssicherungskonzept
1 Dokumentationskonzept Interne Dokumentation 2 Dokumentation der Funktionen 2 Programmierstandards 2 Externe Dokumentation Dokumente 3 Was muss in jedem Dokument vorhanden sein? 3 2 Testkonzept Einleitung
MehrProgrammierkonventionen - 1 -
Die wichtigsten Bestandteile der Programmierkonventionen für Java werden hier erläutert. Dies sind: Schreibweise von Bezeichnern Einrückkonventionen Kommentare Programmierkonventionen - 1 - Einleitung
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrProgrammier-Richtlinien
Programmier-Richtlinien vgl. auch http://java.sun.com/docs/codeconv/ Bemerkung o Programme werden häufiger gelesen als geschrieben o Programmtexte müssen gut lesbar und nachvollziehbar sein Feststellung
MehrSyntax der Sprache PASCAL
Syntax der Sprache PASCAL Buchstaben A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z Ziffern 0 1 2 3 4 5 6 7 8 9 Sonderzeichen und Wortsymbole +
MehrPrimitive Datentypen und Felder (Arrays)
Primitive Datentypen und Felder (rrays) Primitive Datentypen Java stellt (genau wie Haskell) primitive Datentypen für Boolesche Werte, Zeichen, ganze Zahlen und Gleitkommazahlen zur Verfügung. Der wichtigste
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
MehrProjekt Systementwicklung
Projekt Systementwicklung Programmier-, Codier- und Projektkonventionen Prof. Dr. Nikolaus Wulff Coding Standards Pro: Erleichtern das gemeinsame Bearbeiten des Quellcodes durch verschiedene Teammitglieder.
MehrProgrammierstile in C
Von Sebastian Rothe 05.05.011 Inhaltsverzeichnis 1. Motivation wozu Code-Formatierung?. Definition: Programmierstil Gebräuchliche Konventionen Einrückungsstil Vertikale Anordnung Leerzeichen & Tabulatoren
MehrPHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden.
PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden. Allgemein Ein Einzug sollte aus 4 Leerzeichen bestehen.
MehrExcel Funktionen durch eigene Funktionen erweitern.
Excel Funktionen durch eigene Funktionen erweitern. Excel bietet eine große Anzahl an Funktionen für viele Anwendungsbereiche an. Doch es kommt hin und wieder vor, dass man die eine oder andere Funktion
MehrKommentierung in C. Kommentierung in C. Von Sebastian Rothe 1/26. Kommentierung in C
Von Sebastian Rothe 1/26 Inhaltsverzeichnis 1. Programmierstil eine Übersicht 2. Motivation wozu Kommentierung? 3. Aspekte der Kommentierung 4. GLib als Beispiel 5. Dokumentationssysteme 6. Zusammenfassung
MehrVorlesung Programmieren
Vorlesung Programmieren Programmierparadigmen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Programmiersprachen-Paradigmen Eine Programmiersprache
Mehr3 Variablen. 3.1 Allgemeines. 3.2 Definition und Verwendung von Variablen
3 Variablen 3.1 Allgemeines Variablen werden in Prozeduren, Mustern und Parameter-Dokumenten definiert und verwendet und bei der Jobgenerierung durch die Werte, die ihnen zugewiesen werden, ersetzt. Variablen
MehrModul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1
Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 1 SS 2016
MehrVariablen und Konstanten
Variablen und Konstanten Variablen und Konstanten werden benötigt, um sich in Prozeduren Werte zu merken oder zu übergeben. Es gibt numerische Werte (1 / 10,9) und es gibt alphanumerische Zeichenfolgen
Mehr3. Klassen Statische Komponenten einer Klasse. Klassenvariablen
Klassenvariablen Wir wollen die Zahl der instantiierten Studentenobjekte zählen. Dies ist jedoch keine Eigenschaft eines einzelnen Objektes. Vielmehr gehört die Eigenschaft zu der Gesamtheit aller Studentenobjekte.
MehrS. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"
S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert
MehrGrundlagen der Informatik Vorlesungsskript
Grundlagen der Informatik Vorlesungsskript Prof. Dr. T. Gervens, Prof. Dr.-Ing. B. Lang, Prof. Dr. F.M. Thiesing, Prof. Dr.-Ing. C. Westerkamp 16 AUTOMATISCHES ÜBERSETZEN VON PROGRAMMEN MIT MAKE... 2 16.1
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrAlgorithmen und ihre Programmierung
Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrKlausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg
Klausur Informatik Programmierung, 22.09.2011 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert
Mehr3.1 Allgemeines. Abbildung 3.1: Eröffnungsmenü einer Excel-Mappe
3.1 Allgemeines Nach Aufruf des Programms-MS-Excel wird eine leere Datei, auch als Arbeitsmappe oder Excel-Worksheet als bezeichnet, geöffnet (= Abb. 3.1). Eine Arbeitsmappe besteht aus einem Stapel von
MehrWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
unit sudoku; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TCvD_Sudoku = class(tform) Panel1: TPanel; Bevel1: TBevel; Bevel2:
Mehr1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH
1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH Die Umgebungsvariable CLASSPATH kann im Hamster-Simulator sowohl für Compiler als auch für die Ausführung des Hamster-Programms gesetzt werden: Hierdurch
MehrOrganisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50
Organisatorisches Vorlesung Donnerstag 8:35 bis 10:05 Übung drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50 Tutorium (Mehr oder weniger) abwechselnd Mo und Mi 10-11:30 Termine
MehrInformatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-
Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik
MehrInhalt. 4.7 Funktionen
Inhalt Inhalt: 4. Programmiersprache C 4.1 Programmaufbau in C 4.2 Basisdatentypen und einfache Anweisungen 4.3 Steuerfluss-Konstrukte 4.4 Arbeit mit indizierten Größen (Felder) 4.5 Arbeit mit Pointern
MehrVisualBasic - Variablen
Typisch für alle Basic-Dialekte ist die Eigenschaft, dass Variablen eigentlich nicht deklariert werden müssen. Sobald Sie einen Bezeichner schreiben, der bisher nicht bekannt war, wird er automatisch angelegt
MehrGrundlagen der Fortran Sprache
Kapitel 1 Grundlagen der Fortran Sprache Programmieren bezeichnet das Verfahren, in einer bestimmten Sprache (Syntax) Anweisungen (sog. Quellcode) für den Computer zu schreiben. Dieser Programmcode wird
MehrInstitut für Computational Science Prof. Dr. H. Hinterberger. Praxismodul 1. Einführung in die Programmierung Erste Programme
Institut für Computational Science Prof. Dr. H. Hinterberger Praxismodul 1 Einführung in die Programmierung Erste Programme Einführung in die Programmierung 2 Institut für Computational Science, ETH Zürich,
MehrInterpreter - Gliederung
Institut für Informatik Ludwig-Maximilian Universität Interpreter - Gliederung Programmiersprache Syntax Konkrete Syntax Abstrakter Syntax Baum (Abstrakte Syntax) Parser Syntaktische Struktur einer Sprache
MehrElementare Datentypen in C++
Elementare Datentypen in C++ bool signed/unsigned char signed/unsigned short int signed/unsigned int signed/unsigned long int (signed/unsigned long long int) float double long double void enum char Der
MehrInteraktive Medien Richtlinien für das Codieren Version vom 18. Juni 2014
Interaktive Medien Richtlinien für das Codieren Version vom 18. Juni 2014 Martin Vollenweider Dateinamen im Internet Da wir im Internet in gemischten Hard- und Softwareumgebungen (z.b. Windows, Unix, Macintosh,
MehrInformatik I: Einführung in die Programmierung. Übungsblatt 3. Abgabe: Freitag, 15. November 2013, 18:00 Uhr
Informatik I: Einführung in die Programmierung Prof. Dr. Bernhard Nebel Dr. Christian Becker-Asano, Dr. Stefan Wölfl Wintersemester 2013/2014 Universität Freiburg Institut für Informatik Übungsblatt 3
MehrGlobale Variablen Diverses. Globale Variablen. Globale Variablen
lokale Variablen Variablen bisher nur am Anfang von Funktionen auch erlaubt: am Anfang innerer Codeblöcke (innerhalb geschweifter Klammern) in C99 und als gcc-erweiterung: an beliebiger Stelle innerhalb
MehrFunktionale Programmierung Übung 01. Dozent: mein Dozent Tutor: mein Tutor Studenten: person1 und person2 tt. mm. jjjj
Funktionale Programmierung Übung 01 Dozent: mein Dozent Tutor: mein Tutor Studenten: person1 und person tt. mm. jjjj 1 Inhaltsverzeichnis 1 Text schreiben 3 Tabulatoren 3.1 Tabulatoren zur Textstrukturierung....................
MehrKlausur in 12.1 Themen: Zahlsysteme, Grundlagen von Delphi (Bearbeitungszeit: 90 Minuten)
Name: «Vorname» «Name» Klausur in 12.1 Themen: Zahlsysteme, Grundlagen von Delphi (Bearbeitungszeit: 90 Minuten) Informatik 12 2 VP je 2 VP 6 VP 0 Notieren Sie alle Antworten in einer Word-Datei Klausur1_«Name».doc
MehrJavaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden
Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter
MehrÄußere Form ArrayList Vererbung API. Einführung in Java. Arne Hüffmeier. Michelle Liebers, Dennis Hoffmann. Tilman Lüttje, Jean Wiele
Einführung in Java Arne Hüffmeier Michelle Liebers, Dennis Hoffmann Tilman Lüttje, Jean Wiele Angelehnt an Java-Vorkurs der Freitagsrunde 1 / 28 1 Äußere Form Kommentare Formatierung Schreibweise 2 ArrayList
MehrAuD-Tafelübung T-B5b
6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit
Mehr5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu
Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten
MehrGrundlagen von C# - 1
Grundlagen von C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Über diesen Kurs 2. Benötigte Software 3. Exkurs: Architektur von.net und C# 4. Erstes Programm: Hello World Grundlegende Eigenschaften
MehrDas ERP System MS Dynamics NAV
Das ERP System MS Dynamics NAV Ob kaufmännische Software, Infrastrukturlösungen oder Telekommunikation: Wir sind Ihr Partner in Sachen ICT. Einfach. Gut. Durchdacht. Sebastian Büscher, M.Sc. Entwickler
MehrDatentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache
Agenda für heute, 4. März, 2010 Zusammengesetzte if-then-else-anweisungen Datentypen Pascal ist eine streng typisierte Programmiersprache Für jeden Speicherplatz muss ein Datentyp t (Datenformat) t) definiert
MehrGrundlagen. Die Komponenten eines C Programms. Das erste Programm
Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen
MehrVisual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!
Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist
MehrJava Einführung Programmcode
Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:
MehrWhitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz
combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt
MehrInformatik I Übung, Woche 40
Giuseppe Accaputo 2. Oktober, 2014 Plan für heute 1. Fragen & Nachbesprechung Übung 2 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 3 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung
MehrBesprechung. Übung 1 Software Engineering
Besprechung Übung 1 Software Engineering SE, 19.10.10 Dustin Wüest Übungsabgaben Im PDF: vollständige Namen und Matrikelnummern Name vom Zip-File / PDF: Übungsnummer und Nachnamen z.b.: Ex1_Wueest_Schoen_Mueller
MehrJavascript. Einführung in Javascript. Autor: Christian Terbeck Erscheinungsjahr: 2014 -1-
Javascript Einführung in Javascript Autor: Erscheinungsjahr: 2014-1- Inhaltsverzeichnis 1) Einführung 1. Allgemeines 2. Funktionalität 3. Syntax 4. Semantik 2) Die Grundlagen 1. Event-Handler 1. Schreibweise
MehrLinux II. Reguläre Ausdrücke Editoren Scripting. 2 Linux II. Linux I II III Res WN/TT NLTK XML Weka E Reguläre Ausdrücke Editoren Scripting
Linux II 2 Linux II Reguläre Ausdrücke Editoren Scripting Reguläre Ausdrücke Reguläre Ausdrücke beschreiben eine Menge von Zeichenfolgen und werden benutzt um m festzustellen, ob eine Zeichenkette Teil
MehrProcessing Info zu Variablen und Bedingungen
Processing Info zu Variablen und Bedingungen Dieses Dokument enthält - Variablen (Variablen, Datentypen, Deklaration, Geltungsbereich, Benennung) - Bedingungen (if, mousepressed, else) Variablen Eine Variable
MehrInstallation und Benutzung AD.NAV.ZipTools
Installation und Benutzung AD.NAV.ZipTools Version 1.0.0.0 ALTENBRAND Datentechnik GmbH Am Gelicht 5 35279 Neustadt (Hessen) Tel: 06692/202 290 Fax: 06692/204 741 email: support@altenbrand.de Die Komponente
MehrVisual Basic Editor CATIA V5
Visual Basic Editor CATIA V5 Daniel Frauenrath Allgemein Der Visual Basic Editor ist fester Bestandteil von CATIA V5. Im Gegensatz zum internen Editor für CATScript und CATVbs hat der Visual Basic Editor
MehrSchachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A
2.4.6. Kontrollstrukturen if-anweisung: Bedingte Ausführung (Verzweigung) 2 Varianten: if (Bedingung) Anweisung (Anweisung = einzelne Anweisung oder Block) Bedeutung: die Anweisung wird nur ausgeführt,
MehrTag 4 Repetitorium Informatik (Java)
Tag 4 Repetitorium Informatik (Java) Dozent: Patrick Kreutzer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2016/2017 Willkommen zum Informatik-Repetitorium!
Mehr1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster
1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:
MehrE-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 4: Einführung in JavaScript Stand: 03.11.2014. Übung WS 2014/2015. Benedikt Schumm M.Sc.
Übung WS 2014/2015 E-Commerce: IT-Werkzeuge Web-Programmierung Kapitel 4: Stand: 03.11.2014 Benedikt Schumm M.Sc. Lehrstuhl für ABWL und Wirtschaftsinformatik Katholische Universität Eichstätt-Ingolstadt
MehrVisual Basic - Einführung Mathematische Funktionen und Operatoren Zeichenfolgenbearbeitung. 1.7 Schleifen, Arrays und Entscheidungen
Inhalt 1 Einführung 1.1 Begriffe und Notationen 1.2 Variablen und Datentypen 1.3 Funktionen und Prozeduren 1.4 Arithmetische Operationen 1.4.1 Mathematische Funktionen und Operatoren 1.5 Konstanten 1.6
MehrThemen des Kapitels. 2 Grundlagen von PL/SQL. PL/SQL Blöcke Kommentare Bezeichner Variablen Operatoren. 2.1 Übersicht. Grundelemente von PL/SQL.
2 Grundlagen von PL/SQL Grundelemente von PL/SQL. 2.1 Übersicht Themen des Kapitels Grundlagen von PL/SQL Themen des Kapitels PL/SQL Blöcke Kommentare Bezeichner Variablen Operatoren Im Kapitel Grundlagen
MehrJava Einführung VARIABLEN und DATENTYPEN Kapitel 2
Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen
MehrCoding Standards Brandbox
Coding Standards Brandbox Einrückungen und Zeilenlänge...2 Kontrollstrukturen...2 Klassen...3 Funktionen...3 Deklaration... 3 Aufruf... 4 Kommentare...4 PHP-Code-Tags...4 Konventionen, Style, Sprache...5
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
MehrAufbau von Klassen. class punkt {...
Einführung in C++ Aufbau von Klassen Eine wird mit dem Schlüsselwort class eingeleitet, und endet mit einem Semikolon. Der Inhalt wird zwischen geschweiften Klammern geschrieben. class punkt {... ; Im
MehrModul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 4
Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 4 SS 2016
Mehr13 OOP MIT DELPHI. Records und Klassen Ein Vergleich
13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,
MehrProgrammierkurs: Delphi: Einstieg
Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache
MehrSoftware Engineering Klassendiagramme Einführung
Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt
MehrGI Vektoren
Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung
MehrC++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet
C++ Grundlagen ++ bedeutet Erweiterung zum Ansi C Standard Hier wird eine Funktion eingeleitet Aufbau: In dieser Datei stehen die Befehle, die gestartet werden, wenn das Programm gestartet wird Int main()
MehrJava Kurs für Anfänger Einheit 4 Klassen und Objekte
Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse
MehrElementare Konzepte von
Elementare Konzepte von Programmiersprachen Teil 1: Bezeichner, Elementare Datentypen, Variablen, Referenzen, Zuweisungen, Ausdrücke Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Bezeichner
Mehr1. Erläutern Sie die Aufgaben von Datentypen in der imperativen Programmierung.
1. Erläutern Sie die Aufgaben von Datentypen in der imperativen Programmierung. Beschreiben Sie ferner je einen frei gewählten Datentyp aus der Gruppe der skalaren und einen aus der Gruppe der strukturierten
MehrFACHHOCHSCHULE MANNHEIM
für Java-Programmierer Der Präprozessor Prof. Dr. Wolfgang Schramm FACHHOCHSCHULE MANNHEIM Hochschule für Technik und Gestaltung Präprozessor Ist dem Compiler vorgeschaltet ( Prä -). Spezielle Anweisungen
MehrAKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen
L AKTUEL ZU fritz JOBST JAVA 8 PROGRAMMIEREN IN JAVA 7. Auflage Im Internet: Alle Beispielprogramme und Lösungen 4 1 Der Einstieg in Java keinem Fall zulässig. Die Schreibweisen Hello.java für den Namen
MehrEinführung in Automation Studio
Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in
MehrFAQ Frequently Asked Questions. Produktname AFPS Outlook-AddIn Version 1.63 Stand Inhalt
FAQ Frequently Asked Questions Produktname AFPS Outlook-AddIn Version 1.63 Stand 05.02.2006 Inhalt Inhalt...1 1. Installation des AddIns...2 Deinstallation der Version 1.62...2 Installation verschiedener
MehrHinweise zur Bearbeitung der Klausur zum Kurs Einführung in die imperative Programmierung
Name: Matrikelnr.: Hinweise zur Bearbeitung der Klausur zum Kurs 01613 Einführung in die imperative Programmierung 1. Prüfen Sie die Vollständigkeit Ihrer Unterlagen. Die Klausur umfasst: 2 Deckblätter
MehrGrundlagen der Programmiersprache C++
/ TU Braunschweig Grundlagen der Programmiersprache C++ Um den Studierenden den Einstieg in die FE-Programmierung zu erleichtern werden die wesentlichen Elemente eines C-Programmes beschrieben, soweit
MehrKapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik
Klassen und höhere Datentypen Objekte, Felder, Methoden Küchlin/Weber: Einführung in die Informatik Klassen Klasse (class) stellt einen (i.a. benutzerdefinierten) Verbund-Datentyp dar Objekte sind Instanzen
MehrZahlenraten: Ein Spiel in Java.
Zahlenraten: Ein Spiel in Java. Nach dem Start vom Java-Editor (und dem Erstellen eines JFrame-Programms) sieht man Folgendes: Dieser Code startet das Programm, indem es ein Objekt der Klasse Zahlenraten
MehrQualitätssicherungskonzept
Qualitätssicherungskonzept Web Annotation mit Fragment Ids Gruppe: swp12-9 Inhaltsverzeichnis 1. Dokumentationskonzept...2 1.1. Quelltexte...2 1.2. Änderungsdokumentation...4 1.3. Modellierungsdokumentation...4
MehrErste Schritte. Das Arduino-Board. Ihr Fundino-Board. Programmieren für Ingenieure Sommer 2015. Andreas Zeller, Universität des Saarlandes
Erste Schritte Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Das Arduino-Board Ihr Fundino-Board Anschluss über USB Anschluss über USB Programmierumgebung Download
MehrCrashkurs Python und Sage U23 Krypto-Mission
Crashkurs Python und Sage -Mission florob Simon e.v. http://koeln.ccc.de 4. Oktober 2015 Anfang Übersicht Sage Computer-Algebra-System, wie MatLab oder Mathematica sagemath.org Python interpretierte Programmiersprache
MehrErweiterung AE WWS Lite Win: Module Barcode Printing
Erweiterung AE WWS Lite Win: Module Barcode Printing Handbuch und Dokumentation Beschreibung ab Vers. 1.14.3 Am Güterbahnhof 15 D-31303 Burgdorf Tel: +49 5136 802421 Fax: +49 5136 9776368 Seite 1 Inhaltsverzeichnis
MehrQualitätssicherungskonzept
UNIVERSITÄT LEIPZIG SOFTWARETECHNIK-PRAKTIKUM Qualitätssicherungskonzept SPE16: Gebäude-Navigator für Leipzig 18. Juli 2016 Inhaltsverzeichnis: 0. Qualitätssicherungskonzept...S.02 1. Dokumentationskonzept...S.02
Mehr5.5.8 Öffentliche und private Eigenschaften
5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung
MehrEinstieg in die Informatik mit Java
1 / 17 Einstieg in die Informatik mit Java String Tokenizer Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 17 1 Überblick Tokenizer 2 StringTokenizer 3 Verwendung von String.split
MehrMicrosoft Access 2010 Bilder
Microsoft Access 2010 Bilder Hyperlinks... arbeiten ähnlich wie ein Link in einer Webseite. sind ein Verweis auf eine Datei (access2010\material\beispiel\tabledevelop\automat.accdb). können ein Verweis
MehrProgrammierung mit C Zeiger
Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch
Mehrmgssepa.dll SEPA LIBRARY MICHAEL GRUBE MG SOFTWARE ENTWICKLUNG
2016 mgssepa.dll SEPA LIBRARY MICHAEL GRUBE MG SOFTWARE ENTWICKLUNG http://www.mgs-entwicklung.de Vorwort Die vorliegende DLL hilft Ihnen mit wenig Aufwand eine Sepa,- Lastschrift oder Überweisung zu erstellen.
MehrFreelance 2000. DeltaPLC-Tool. Version 4 / Version 5
Freelance 2000 DeltaPLC-Tool Version 4 / Version 5 Inhaltsverzeichnis 1 Allgemeine Beschreibung... 5 2 Aufruf des DeltaPLC-Tool... 5 3 Vergleich der PLC-Dateien... 6 4 Konfigurationsänderungen... 7 5
MehrR-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung.
R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung. Carsten Szardenings c.sz@wwu.de 7. Mai 2015 A 2 B 3 C 4 D 5 F 6 R 16 S 17 V 18 W 19 Z 20 H 7 I 8 K 9
MehrPrinzipien der Softwareentwicklung S. Strahringer
Gliederung 1 Einführung Was ist ein Programm? Vorteile (und Nachteile) von PHP Erste PHP-Programme Ausführung von PHP-Programmen 2 Grundbegriffe der Programmierung Anweisungen, Variablen, Datentypen und
MehrDie Algorithmenbeschreibungssprache Jana
Jana 1 Die Algorithmenbeschreibungssprache Jana Günther Blaschek, Institut für Systemsoftware, JKU Linz Juni 2011 Jana (Java-based Abstract Notation for Algorithms) ist eine Beschreibungssprache zur Formulierung
Mehr