Tutorium #1. Softwareentwicklung Praktikum Gruppe 4 Anja Karl. prog-tutor-anja@iicm.edu.
|
|
- Klemens Heinrich
- vor 7 Jahren
- Abrufe
Transkript
1 Tutorium #1 Softwareentwicklung Praktikum Gruppe 4 Anja Karl prog-tutor-anja@iicm.edu
2 Ablauf des Tutoriums Ablauf Kommunikation Beurteilung Arbeitsumgebung Makefiles SVN Beispiel
3 Allgemeines zu den Tutorien 4 Tutorien keine Anwesenheitspflicht Erklärung der Übungsaufgaben Beantwortung von Fragen Hilfestellungen Mitschreiben ist nicht notwendig, die Folien sind online verfügbar
4 Kontakt Newsgroups (nntp://news.tugraz.at) tu-graz.lv.sep tu-graz.lv.sep.organisatorisches tu-graz.lv.sep.uebungsgruppen Das Lesen der Newsgroups ist verpflichtend!
5 Wichtige Internetadressen Palme (Abgabesystem) Wiki Teach Center Tutoriumshomepage
6 Leistung 1 Einzelbeispiel 2 Gruppenbeispiele (3er Gruppen) Übungsteil (30 Punkte) Klausur (10 Punkte) Nicht Genügend: < 20 Punkte Genügend: ab 20 Punkten Befriedigend: ab 27 Punkten Gut: ab 32 Punkten Sehr Gut: ab 36 Punkten
7 Benotung Formale Fehlerquellen 1 Codingstandard 2 Testcases Abgabegespräche nach Assignments Alle Assignments müssen abgegeben werden! Keine Plagiate!
8 Benotungsschema
9 Arbeitsumgebung Editor mit Syntaxhighlighting / IDE kate, gedit,... Notepad++ Smultron Eclipse CDT Upload (SFTP) auf Pluto SSH FileZilla Terminal ssh tugraz_username@pluto.tugraz.at PuTTY
10 Compilieren: g++ g++ -Wall -o ass1 ass1.cpp g++ Name des Compilers -Wall Alle Warnungen anzeigen -o ass1 Executable als»ass1«speichern ass1.cpp Datei, in welcher der C++ Quelltext steht Starten:./ass1
11 Alternativ: make make Bei allen Assignments liegt ein Makefilebei makeerstellt das Programm nach den Regeln im Makefile Kann verwendet werden ohne es zu verstehen Standard in größeren Softwareprojekten Starten:./ass1
12 Exkurs Makefile Aufbau: Ziel: Abhängigkeit1 (Abhängigkeit2...) <tab> (Befehl 1) <tab> (Befehl 2)... Beispiel: all: ass1 ass1: ass1.cpp g++ ass1.cpp -Wall -o ass1
13 Exkurs Makefile- Ass1 EXECUTABLE = ass1 OBJECT_DIR = objects SOURCES = $(wildcard *.cpp) OBJECTS = $(patsubst %, $(OBJECT_DIR)/%,${SOURCES:.cpp=.o}) all: $(EXECUTABLE) $(OBJECT_DIR)/%.o: %.cpp $(CC) $(CCFLAGS) $@ $< -MMD -MF./$@.d $(EXECUTABLE) : $(OBJECTS) $(CC) -o $@ $^ $(LDFLAGS) clean: rm -f $(OBJECT_DIR)/*.o $(OBJECT_DIR)/*.o.d rm -f $(EXECUTABLE) $(CC) Compiler: g++ $(CCFLAGS) Compilerflags: -Wall -g -c - o $@ Zielname $< Namen der Abhängigkeiten $^ Alle Quellen %.o: %.cpp generische Regel um.o Dateien aus.cpp Dateien zu erzeugen -MMD -MF./$@.d Automatische Erkennung von Abhängigkeiten
14 Exkurs Makefile Ass1 Makefile aufgelöst: all: ass1 objects/game.o: Game.cpp g++ -Wall -g -c -o Game.o Game.cpp -MMD -MF./Game.o.d [...] objects/main.o: main.cpp g++ -Wall -g -c -o main.o main.cpp -MMD -MF./main.o.d ass1 : objects/game.o objects/main.o [...] g++ -o ass1 objects/game.o objects/main.o [...] clean: rm -f objects/game.o objects/main.o [...] objects/game.o.d [...] rm -f ass1 # ass1 erstellen make # ass1 und alle *.o löschen make clean
15 Was ist SVN? Versionskontrolle Man kann jederzeit auf eine alte Version vom Code zugreifen Mehrere Leute können an einem Projekt arbeiten - Man sieht wer was eingecheckt hat Vergleichs-Funktion für verschiedene Versionen Kostenlose Repositories für TU Graz Studenten
16 SVN einrichten (1/6) : TUGraz online
17 SVN einrichten (2/6) : Checkout - Windows TortoiseSVN
18 SVN verwenden (3/6) : Update/Commit - Windows
19 SVN verwenden (4/6) : History - Windows Rechtsklick > TortoiseSVN > Show Log
20 SVN verwenden (5/6) : Vergleichen - Windows Log > Show changes
21 SVN verwenden (6/6) : Linux KDE-SVN (zu finden im Packet-Manager)
22 Einfache Klasse (ball.h) #ifndef BALL_H_INCLUDED #define BALL_H_INCLUDED class Ball { private: float x_, y_, speed_; int direction_; public: Ball(float x, float y, float speed, int direction); void move(); float getspeed(); void setspeed(float speed); }; #endif
23 Konstruktor und move(ball.cpp) #include <math.h> #include "ball.h" Ball::Ball(float x, float y, float speed, int direction) : x_(x), y_(y), speed_(speed) { direction_ = direction * M_PI / 180.0; } void Ball::move() { x_ = x_ + cos(direction_) * speed_; y_ = y_ + sin(direction_) * speed_; if(x_ < 0 x_ > 800) direction_ = atan2(sin(direction_), -cos(direction_)); if(y_ < 0 y_ > 600) direction_ = atan2(-sin(direction_), cos(direction_)); }
24 Getter und Setter (ball.cpp) // getter Methode für Variable speed_ float Ball::getSpeed() { return speed_; } // setter Methode für Variable speed_ void Ball::setSpeed(float speed) { speed_ = speed; } Schutz der Variablen vor direktem Zugriff Überprüfung/Veränderung/etc. des Wertes vor der Zuweisung
25 Das main-programm #include "ball.h" int main() { Ball b1(200, 225, 5, 10); while(1) { b1.move(); if(b1.getspeed() < 20) b1.setspeed(b1.getspeed() ); Ball Starten drawwindow(); // some magic... } }
26 Häufige Fehler Versteckte Dateien/Ordner (Mac OS X) Falscher Dateiname Warnings beim Kompilieren Codingstandard Verstöße Spezifikations-Verstöße Nicht geforderte Dateien
27
Tutorium #3. Einführung in die strukturierte Programmierung Gruppe 6 Anja Karl.
Tutorium #3 Einführung in die strukturierte Programmierung Gruppe 6 Anja Karl prog-tutor-anja@iicm.edu http://www.student.tugraz.at/anja.karl 1/25 Ablauf des Tutoriums Lösung Maze Fehler in HW2 Funktionen
MehrPascal Nasahl Gruppe 5 Tutorium 1
Tutorium 1 Gruppe 5 Einführung in die strukturierte Programmierung Wintersemester 2016/17 1 Inhalt das Tutorium Beurteilung Voraussetzungen Wahl der Entwicklungsumgebung der Compiler erstes Programm Vorbesprechung
MehrPascal Nasahl Gruppe 3 Tutorium 1
Tutorium 1 Gruppe 3 Softwareentwicklung Praktikum Sommersemester 2017 1 Inhalt das Tutorium Beurteilung Voraussetzungen Wahl der Entwicklungsumgebung der Compiler erstes Programm Vorbesprechung der Hausaufgabe
MehrWillkommen zum ersten Tutorium
Willkommen zum ersten Tutorium Tutor: Christoph Wörgötter BSc Mail: prog-tutor-woergi [at] iicm.edu Web: http://tutor.is-a-geek.org LV Slides: http://goo.gl/iye2b 1 Inhaltsübersicht Tutorium? ( Was ist
MehrGrundkurs C++ Buildsysteme Versionsverwaltung mit git
Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp, Martin Gottwald, Stefan Röhrl 25.04.2018 Folie 1/21 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp, Martin Gottwald, Stefan Röhrl
MehrGrundkurs C++ Buildsysteme Versionsverwaltung mit git
Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp 09.05.2017 Folie 1/1 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp 09.05.2017 Buildsysteme Beispielhaftes Übersetzungsszenario:
MehrGrundkurs C++ Buildsysteme Versionsverwaltung mit git
Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp & Johannes Feldmaier 20.04.2016 Folie 1/22 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp & Johannes Feldmaier 20.04.2016 Buildsysteme
MehrLehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme
Grundkurs C++ Buildsysteme Buildsysteme Beispielhaftes Übersetzungsszenario: Verzeichnis tutorial7/ main.cpp, lcdrange.cpp, lcdrange.h *.cpp Kompilieren *.o *.h Grundkurs C++ 2 Headerdateien //blackbox.h
Mehr1. Vom Sourcecode zum Programm
1. Vom Sourcecode zum Programm 1.1 Programmablauf source1.cpp source2.cpp header.h makefile Compiler Präprozessor Übersetzer Assembler object.obj object.obj Linker library.dll programm.exe Abbildung: Erstellung
MehrInstallationsanleitung
1. C Installationsanleitung C-Programmierung mit Hilfe von Eclipse unter Windows XP mit dem GNU C-Compiler (GCC) 2. Inhaltsverzeichnis 1. Einleitung... 3 2. Cygwin... 3 2.1 Cygwin-Installation... 3 2.2
MehrEntwicklung mit mehreren Dateien
Frühjahrsemester 2011 CS104 Programmieren II Teil II: C++ Programmierung Kapitel 9: Entwicklungsprozess in C++ H. Schuldt Entwicklung mit mehreren Dateien In C++ ist es üblich, den Quelltext in mehreren
MehrEinführung in die Programmierung mit C++
1 Seite 1 Einführung in die Programmierung mit C++ Teil IV - Weiterführende Themen 14. Modularisierung und Automatisierung Was heißt Modularisierung? Seite 2 bisher Programm komplett in einer Datei längere
MehrPraktikumstermin B-07: make & Makefiles
Praktikumstermin B-07: make & Makefiles Version 2014-11-26: Problem mit dem Löschbefehl gelöst. Ursache: Auf den Terminalrechnern funkt ein Softwarepaket aus einer anderen Lehrveranstaltung dazwischen
MehrLinux Prinzipien und Programmierung
Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2011/2012 1 / 22 popen Programmentwicklung unter Linux make gcc, objdump, readelf 2 / 22 Die Funktion popen Im
MehrOrganisatorisches Einführung Quellen. Einführung. Praktikum C-Programmierung. Eugen Betke, Nathanael Hübbe, Michael Kuhn, Jakob Lüttgau, Jannek Squar
Einführung Praktikum C-Programmierung Eugen Betke, Nathanael Hübbe, Michael Kuhn, Jakob Lüttgau, Jannek Squar Wissenschaftliches Rechnen Fachbereich Informatik Universität Hamburg 2018-10-22 Michael Kuhn
MehrLehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++
Grundkurs C++ IDE Implementierung von Klassenhierarchien Compiler, Linker Buildsysteme IDE Integrated Development Environment Wir empfehlen: Qt Creator (Bestandteil des Qt SDK) Download unter : http://qt.nokia.com/products/qt-sdk
MehrLehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++
Grundkurs C++ IDE Implementierung von Klassenhierarchien Compiler, Linker Buildsysteme IDE Integrated Development Environment Wir empfehlen: Qt Creator (Bestandteil des Qt SDK) Download unter : http://www.qt.io/download-open-source/
MehrProgrammentwicklung mit C++ (unter Unix/Linux)
Programmentwicklung mit C++ (unter Unix/Linux) Erste Schritte Der gcc - Compiler & Linker Organisation des Source-Codes & Libraries Automatische Programmgenerierung: Make Birgit Möller & Denis Williams
MehrLehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++
Grundkurs C++ IDE Implementierung von Klassenhierarchien Compiler, Linker Buildsysteme IDE Integrated Development Environment Wir empfehlen: Qt Creator (Bestandteil des Qt SDK) Download unter : http://qt.nokia.com/products/qt-sdk
MehrEinführung in die Programmierung mit Qt
Einführung in die Programmierung mit Qt Dr. Ralf Schüler 5.11.2009 Was ist Qt? sprich: [kju:t] Klassenbibliothek für C++ (ferner Java, Python u.a.) sehr umfangreich: GUI, Stringverarbeitung, reguläre Ausdrücke,
MehrC++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung
MehrC++ Kurs Teil 1. Architektur, Anwendungsspektrum, primitive Datentypen, Funktionsaufrufe, Referenzen, Klassen
C++ Kurs Teil 1 "hello world" Vergleich von C++ und Java Architektur, Anwendungsspektrum, primitive Datentypen, Funktionsaufrufe, Referenzen, Klassen C++ Spezialitäten Schlüsselwort 'const', Copy Constructor,
MehrMapra: C++ Teil 3. Felix Gruber. 29. April IGPM, RWTH Aachen. Felix Gruber (IGPM, RWTH Aachen) Mapra: C++ Teil 3 29.
Mapra: C++ Teil 3 Felix Gruber IGPM, RWTH Aachen 29. April 2015 Felix Gruber (IGPM, RWTH Aachen) Mapra: C++ Teil 3 29. April 2015 1 / 11 Themen vom letzten Mal Debuggen mit gdb Zusammengesetzte Datentypen
MehrProgrammieren in C. Macros, Funktionen und modulare Programmstruktur. Prof. Dr. Nikolaus Wulff
Programmieren in C Macros, Funktionen und modulare Programmstruktur Prof. Dr. Nikolaus Wulff Der C Präprozessor Vor einem Compile Lauf werden alle Präprozessor Kommandos/Makros ausgewertet. Diese sind
MehrInformationen zur Verwendung von Visual Studio und cmake
Inhaltsverzeichnis Informationen zur Verwendung von Visual Studio und cmake...2 Erste Schritte mit Visual Studio...2 Einstellungen für Visual Studio 2013...2 Nutzung von cmake...5 Installation von cmake...5
MehrInhaltsverzeichnis. I Einstieg in Eclipse und CDT 1. xiii
xiii I Einstieg in Eclipse und CDT 1 1 Installation.......................................... 3 1.1 C/C++-Compiler........................................... 3 1.2 Das richtige Eclipse-Archiv finden..........................
MehrPraxisorientierte Einführung in C++ Lektion: "Die Compiler-Chain (Vom Quellcode zum ausführbaren Programm)"
Praxisorientierte Einführung in C++ Lektion: "Die -Chain (Vom zum ausführbaren Programm)" Christof Elbrechter Neuroinformatics Group, CITEC April 19, 2012 Christof Elbrechter Praxisorientierte Einführung
MehrMapra: C++ Teil 3. Felix Gruber, Michael Rom. IGPM, RWTH Aachen. 10. Mai 2016
Mapra: C++ Teil 3 Felix Gruber, Michael Rom IGPM, RWTH Aachen 10. Mai 2016 Felix Gruber, Michael Rom (IGPM, RWTH Aachen) Mapra: C++ Teil 3 10. Mai 2016 1 / 16 Themen vom letzten Mal Debuggen mit gdb Zusammengesetzte
MehrÜberblick. R.Grossmann / P. Sobe 1
Überblick 1. Einführung C++ / Entwicklung/ Sprachfamilie 2. Nicht objektorientierte Erweiterungen von C 3. Grundlagen des Typkonzepts von C++ 4. Ziele der Objektorientierung 5. Objekt und Klasse, Elementfunktionen
MehrDr. Monika Meiler. Inhalt
Inhalt 8 Das Konfigurationswerkzeug make...8-2 8.1 Modularisierung...8-2 8.2 Modulübersetzung...8-4 8.3 Konfigurationswerkzeug make und Aufbau eines Makefiles...8-8 8.3.1 Abhängigkeiten und Kommandos...
MehrHydroinformatik I: Hello World
Hydroinformatik I: Hello World Prof. Dr.-Ing. habil. Olaf Kolditz 1 Helmholtz Centre for Environmental Research UFZ, Leipzig 2 Technische Universität Dresden TUD, Dresden Dresden, 27. Oktober 2017 1/21
Mehr0. Erste Schritte REM. Jürgen Mäter Arbeitsgruppe Modellierung und Simulation. Lehrstuhl für Informatik 4 TU Dortmund
REM 0. Erste Schritte Jürgen Mäter Arbeitsgruppe Modellierung und Simulation Lehrstuhl für Informatik 4 TU Dortmund Juergen.Maeter@udo.edu Campus Süd R402/GB5 Tel.: 0231 755 2411 http://ls12-www.cs.tu-dortmund.de//%7emarwedel/eda/08-edaindex.html
MehrDer C++ Crashkurs v1.0
Der C++ Crashkurs v1.0 Daniel Stöckel, M. Sc. October 14, 2013 1 Grundlegendes 1.1 Das erste Programm Wir beginnen mit einem einfachen Hello world Programm. Listing 1: hello world.cpp // Einbinden der
MehrC++ Teil 12. Sven Groß. 18. Jan Sven Groß (IGPM, RWTH Aachen) C++ Teil Jan / 11
C++ Teil 12 Sven Groß 18. Jan 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 12 18. Jan 2016 1 / 11 Themen der letzten Vorlesung Wiederholung aller bisherigen Themen: Datentypen und Variablen Operatoren Kontrollstrukturen
MehrDetektoren und Algorithmen zur Spurrekonstruktion geladener Teilchen. Sommersemester 2015
Detektoren und Algorithmen zur Spurrekonstruktion geladener Teilchen Sommersemester 2015 1 Vorlesung 2 2 Themen Grundlagen C++ Teil 1: Hallo Welt Variablen und Ablaufsteuerung Umgang mit dem Compiler Grundlagen
MehrCompiler Präprozessor Header Files
Freitagsrunde C-Kurs 2013 Compiler Präprozessor Header Files Tutorium 3 This work is licensed under a Creative Commons Attribution NonCommercial ShareAlike 3.0 License Gliederung Compiler Präprozessor
MehrProgrammieren in C++
Programmieren in C++ SS 2019 Vorlesung 1, Dienstag 23. April 2019 (kickoff, admin, ein erstes Programm) Prof. Dr. Peter Thiemann Programmiersprachen Institut für Informatik Universität Freiburg n Organisatorisches
MehrGrundkurs C++ IDE Klassenhierarchien
Grundkurs C++ IDE Klassenhierarchien Martin Knopp & Johannes Feldmaier 20.04.2016 Folie 1/35 GK C++: IDE, Klassenhierarchien Martin Knopp & Johannes Feldmaier 20.04.2016 IDE Integrated Development Environment
MehrZählen von Objekten einer bestimmten Klasse
Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --
MehrDie Syntax von Java. Ursprünge. Konsequenzen. Das Wichtigste in Kürze. Weiteres Vorgehen. Rund um Java. Sun Microsystems. Borland Software Corp
Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert
MehrCrashkurs C++ Wiederholung
Crashkurs C++ Wiederholung #include int main(void) { int i, j; bool is_prime; for (j = 1; j < 1000; j += 2) { is_prime = true; for (i = 3; i
MehrDAP2-Programmierpraktikum Einführung in C++ (Teil 1)
DAP2-Programmierpraktikum Einführung in C++ (Teil 1) Carsten Gutwenger 11. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Mein erstes C++-Programm Namensräume
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
MehrU1 3. Übung U1 3. Übung. Die Kommandos auf den folgenden Folien dienen der Veranschaulichung. Sind nicht direkt auf die Übungsaufgabe übertragbar
U1 3. Übung U1 3. Übung Besprechung Aufgabe 0 Make und Makefiles Aufgabe 2 U1-1 Hinweise Die Kommandos auf den folgenden Folien dienen der Veranschaulichung Sind nicht direkt auf die Übungsaufgabe übertragbar
MehrA practical guide to C++
A practical guide to Janis Fehr fehr@informatik.uni-freiburg.de SommerCampus2004 Janis Fehr A practical guide to Kapitel 2 Start Kurstag 2: Agenda Wiederholung der Themen von Tag 1 Codeoptimierung Namespace
MehrInhaltsverzeichnis. 1 Einleitung. Literatur. 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05]
Inhaltsverzeichnis 1 Einleitung 3 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05]....... 4 1.2 Eclipse als Java Entwicklungsumgebung................. 21 1 Einleitung Versionierung mit CVS Eclipse
MehrRechnernetze und Organisation
Framework für Assignment A2 1 Übersicht Framework für Assignment A2 WH: Aufgabenstellung Klassen und Methoden Getting started Erste Instruktion aus Testdaten dekodieren 2 Aufgabenstellung Instruction-Set
MehrErste Java-Programme (Scopes und Rekursion)
Lehrstuhl Bioinformatik Konstantin Pelz Erste Java-Programme (Scopes und Rekursion) Tutorium Bioinformatik (WS 18/19) Konstantin: Konstantin.pelz@campus.lmu.de Homepage: https://bioinformatik-muenchen.com/studium/propaedeutikumprogrammierung-in-der-bioinformatik/
MehrKurzeinführung in C99
Kurzeinführung in C99 Institut für Numerische Simulation Rheinische Friedrich-Wilhelms-Universität Bonn Oktober 2013 Überblick 1 Compiler und Editoren - Was wird benötigt um ein Programm zu erstellen 2
MehrVersionskontrolle mit Subversion
Versionskontrolle mit Subversion Was ist Versionskontrolle? Ermöglicht gemeinsames Editieren von Quelltext und anderen Dateien Meist zentrale Ablage (Repository), Zugriff über Netzwerk Bearbeitung immer
MehrEin-Ausgabefunktionen in C (letzter Abschnitt Vorlesungsstoff ab C.110)
U2 2. Übung U2 2. Übung U2-1 Überblick Ein-Ausgabefunktionen in C (letzter Abschnitt Vorlesungsstoff ab C.110) Aufgabe 2: qsort Debugger Übersetzen von Projekten mit "make" U2.1 B-2 Aufgabe 2: Sortieren
MehrEinführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
MehrUrsprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java
Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert
MehrJava und Eclipse Installation, erstes Beispielprogramm
Java und Eclipse Installation, erstes Beispielprogramm Bernfried Geiger, Intellisys GmbH, Sindelfingen www.intellisys.de Jens-B. Augustiny, LIGONET GmbH, Lobsigen bei Bern www.ligonet.ch Agenda Ziele /
MehrInhalt. Übungen zu Systemnahe Programmierung in C (SPiC) Abgegebene Aufgaben. Inhalt. Abgaben
Übungen zu Systemnahe Programmierung in C (SPiC) Peter Wägemann, Heiko Janker, Moritz Strübe, Rainer Müller () Terminal Arbeiten unter Arbeitsumgebung Manual Pages Bibliotheksfunktionen Wintersemester
MehrCompilerbau. Organisatorisches C-Programmierung Make
Compilerbau Organisatorisches C-Programmierung Make Verantwortliche Lukas Dölle doelle@informatik.hu-berlin.de Büro: RUD 25, 4.204 Tel.: 2093-3927 Martin Kost kost@informatik.hu-berlin.de Büro: RUD 25,
MehrGrundkurs C++ IDE Klassenhierarchien
Grundkurs C++ IDE Klassenhierarchien Martin Knopp 03.05.2017 Folie 1/34 GK C++: IDE, Klassenhierarchien Martin Knopp 03.05.2017 IDE Integrated Development Environment Wir empfehlen: Qt Creator (Bestandteil
MehrCompiler Präprozessor Header Files
Freitagsrunde C-Kurs 2012 Compiler Präprozessor Header Files Tutorium 3 ThisworkislicensedunderaCreativeCommonsAttribution NonCommercial ShareAlike3.0License Gliederung Compiler Präprozessor Header Files
MehrBakefiles. TgZero Technik.Blosbasis.net. April 1, 2013
TgZero Technik.Blosbasis.net April 1, 2013 1 Inhaltsverzeichnis 1 Makefile 3 1.1 Was sind Makefiles?........................ 3 2 Bakefile 3 3 Aufbau einer Bakefile 4 3.1 Targets...............................
MehrThis work is licensed under the Creative Commons Attribution-ShareAlike 3.0 License.
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 License. Studentische Initiative voller Studenten Gesamte Fak IV: ET, TI, Info Organisiert: Kurse, Kickerturniere, Gremienarbeit
MehrHello World! Eine Einführung in das Programmieren Das erste Programm
Hello World! Eine Einführung in das Programmieren Das erste Programm Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Betriebssystem Funktion Anwendung Gerätesteuerung
MehrEinführung in die C-Programmierung
Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).
Mehr[Strukturen] Vereinbarung Verwendung Operationen mit struct Zeiger auf struct Strukturen auf dem Heap Datenstrukturen gebildet mit struct union
Vereinbarung Verwendung Operationen mit struct Zeiger auf struct Strukturen auf dem Heap Datenstrukturen gebildet mit struct union Vereinbarung struct name typ komponente1; typ komponente2;... typ komponenten;
MehrNuetzlicher Kleinkram
Ein paar Hilfestellungen zur Arbeit unter Linux/Unix FB Physik Freie Universität Berlin Computerphysik WS 2007/2008 1 2 3 user@ host :~ > gcc -o programm quelltext. c macht gleich mehrere Dinge auf einmal
MehrEinführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrGrundkurs C++ IDE Klassenhierarchien
Grundkurs C++ IDE Klassenhierarchien Martin Gottwald und Stefan Röhrl 8 Mai 2019 Folie 1/34 GK C++: IDE, Klassenhierarchien Martin Gottwald und Stefan Röhrl 8 Mai 2019 IDE - Integrated Development Environment
MehrJava-Einführungskurs Informatik II (D-ITET) Vincent Becker,
Java-Einführungskurs Informatik II (D-ITET) Vincent Becker, vincent.becker@inf.ethz.ch Was haben wir heute vor? Vorbereitung auf die Übungen zu Informatik II Vorstellung des Teams Organisatorisches Theorie
MehrKlausur zu Grundlagen der Programmierung in C
Prof. G. Zachmann Dipl.-Inf. C. Giesemann TU Clausthal Institut für Informatik 14. 2. 2006 Klausur zu Grundlagen der Programmierung in C Wintersemester 2005/2006 Ganze Veranstaltung Name:... Matrikelnummer:...
MehrDAP2 Praktikum Blatt 3
Fakultät für Informatik Lehrstuhl 11 / Algorithm Engineering Prof. Dr. Petra Mutzel, Carsten Gutwenger Sommersemester 2009 DAP2 Praktikum Blatt 3 Ausgabe: 5. Mai Abgabe: 6. 8. Mai Bei diesem Übungsblatt
MehrVorsemesterkurs Informatik
Vorsemesterkurs Informatik Einführung in die Bedienung von Unix-Systemen SoSe 2013 Stand der Folien: 3. April 2013 Übersicht 1 Unix, Linux, Shells 2 Shell-Kommandos 3 Dateien und Verzeichnisse Vorkurs
MehrC++ Quellcodes zum Buch Kapitel 5
1 HARALD NAHRSTEDT C++ für Ingenieure Einführung in die objektorientierte Programmierung Erstell am 27.04.2009 C++ Quellcodes zum Buch Kapitel 5 Beschreibung Diese Seiten enthalten den Quellcode aus dem
MehrTutorium SS17 EINFÜHRUNG + BREAKOUT
Tutorium SS17 EINFÜHRUNG + BREAKOUT L U K A S L E I P O L D E V I B E R C H T O L D L. L E I P O L D @ C A M P U S. L M U. D E B E R C H T O L D @ B I O. I F I. L M U. D E Überblick Homepage: https://www.bio.ifi.lmu.de/studium/ss2017/prk_prop/index.html
Mehr1. Übung zu "Numerik partieller Differentialgleichungen"
1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:
MehrÜbungen zu Systemnahe Programmierung in C (SPiC) Inhalt. Peter Wägemann, Sebastian Maier, Heiko Janker (Lehrstuhl Informatik 4) Übung 7
Übungen zu Systemnahe Programmierung in C (SPiC) Peter Wägemann, Sebastian Maier, Heiko Janker (Lehrstuhl Informatik 4) Übung 7 Sommersemester 2015 Inhalt Linux Fehlerbehandlung Aufgabe: cworld Anhang
MehrJava-Einführungskurs Informatik II (D-ITET) Vincent Becker,
Java-Einführungskurs Informatik II (D-ITET) Vincent Becker, vincent.becker@inf.ethz.ch Was haben wir heute vor? Vorbereitung auf die Übungen zu Informatik II Vorstellung des Teams Organisatorisches Theorie
MehrSoftware-Engineering Grundlagen des Software-Engineering
Software-Engineering Grundlagen des Software-Engineering 7.3 Sourcecode-Verwaltung mit Versionsmanagement-Systemen Einführung in Subversion (SVN) Lösung Prof. Dr. Rolf Dornberger Software-Engineering:
MehrVersionsverwaltung mit SVN
Ingo Sieverdingbeck (ingsie@informatik.uni-bremen.de) Jasper van den Ven (jasper@informatik.uni-bremen.de) AG Rechnernetze Universität Bremen C/C++-Vorkurs 2008 Gliederung 1 Wozu Versionsverwaltung? Ältere
MehrÜbung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9
Informatik I 2 Übung 9 Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Quellcode Strukturieren Wenn alle Funktionen in einer Datei zusammengefasst sind wird es schnell unübersichtlich Mehrere
MehrC-Programme erstellen und ausführen
INE1 Informatik für Ingenieure 1 Praktikum 2 C-Programme erstellen und ausführen Aufgabe 1: Programm mit DevC++ erstellen In dieser Aufgabe erstellen wir ein erstes Programm mit DevC++, kompilieren es
MehrKlausurvorbereitung Lösung
Ausgabe 1 a) unsigned char erzeuge_bitmuster() static int z=0; int rest; unsigned char bm; rest = z % 4; z=z+1; switch (rest) case 0: bm = 0x00; break; case 1: bm = 0x11; break; case 2: bm = 0x33; break;
MehrÄnderungen verwalten mit git
Änderungen verwalten mit git PeP et al. Toolbox Workshop PeP et al. e.v. Physikstudierende und ehemalige Physikstudierende der TU Dortmund 2018 Versionskontrolle PeP et al. Toolbox Workshop Pep et al.
MehrSoftwarepraktikum: Einführung in Makefiles
Softwarepraktikum: Einführung in Makefiles (Eingebettete Systeme und Robotik),, http://ai3.inf.uni-bayreuth.de /home/db_lehre/praktika/softwarepraktikum/vorbesprechung_und_einfuehrung/vortraege/makefile_tuto
MehrLehrstuhl für Datenverarbeitung. Technische Universität München. Leistungskurs C++ Player / Stage
Leistungskurs C++ Player / Stage Player / Stage / Gazebo Player Netzwerkserver, der ein leistungsfähiges, flexibles Interface zu einer Vielzahl an Sensoren und Aktoren eines Roboters bietet Stage 2D Multi
MehrKlassen mit Instanzmethoden
Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 3.12.07 G. Bohlender (IANM UNI Karlsruhe) OOP und Klassen 3.12.07
MehrProgrammieren in C++
Programmieren in C++ SS 2012 Vorlesung 5, Dienstag 5. Juni 2012 (Klassen, Objekte, Methoden, new & delete) Prof. Dr. Hannah Bast Lehrstuhl für Algorithmen und Datenstrukturen Institut für Informatik Universität
MehrVersionsverwaltung mit git
Versionsverwaltung mit git Versionsverwaltung Versionsverwaltungssysteme verwalten Dateien und zeichnen alle Änderungen an den Dateien im Laufe ihrer Entwicklung auf. alte Versionen sind stets verfügbar
MehrGrundlagen der Objektorientierung :
Grundlagen der Objektorientierung : Objektorientierung ermöglicht (unter anderem), daß man Software, die von einem selbst, meist aber von Anderen geschrieben ist, komfortabel nochmal verwenden kann. Diese
Mehr7.2 Dynamischer Speicher in Objekten/Kopierkonstruktor
7.2 Dynamischer Speicher in Objekten/Kopierkonstruktor Das Programmbeispiel aus dem letzten Abschnitt läßt sich bisher nicht zufriedenstellend zu Ende bringen. Unerklärliche Abstürze und Fehlverhalten
MehrAgile Methoden im Softwareprojekt. Janet Siegmund Thomas Thüm Sandro Schulze Elmar Jürgens
Agile Methoden im Softwareprojekt Janet Siegmund Thomas Thüm Sandro Schulze Elmar Jürgens September Eigene Erfahrung Dezember/ Januar Februar Aufgaben festgelegt und verteilt Neues Teammitglied Aussteigen
MehrSelbstverwaltung von Subversion Repositories
von Subversion Repositories Martin Grund Hasso-Platter-Institut Universität Potsdam Betriebssystemdienste und Administration Martin Grund SVN 1 Agenda Was ist Subversion Zugriff mittels svnserve WebDAV
MehrProbeklausur Java Einführung in die Informatik. Wintersemester 2017/2018
Fakultät IV NI & CV Java Einführung in die Informatik Wintersemester 2017/2018 Hinweis: Diese ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der schriftlichen Prüfung des Moduls Einführung
MehrSoftware Engineering I
Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse
MehrEinführung Elementare Datenstrukturen. Der Konstruktor muß den Listenkopf head erzeugen. Der Vorgänger und Nachfolger von head ist head selbst.
Einführung Elementare Datenstrukturen (Folie 38, Seite 23 im Skript) Der Konstruktor muß den Listenkopf head erzeugen. Der Vorgänger und Nachfolger von head ist head selbst. Einführung Elementare Datenstrukturen
MehrVersionierung und Dateistruktur
Versionierung und Dateistruktur Tobias Strohmeyer Berlin, 15.09.2015 Agenda 1. Einordnung in ITSM 2. Varianten für die Versionierung 3. Integration von Subversion 4. Nutzung bei der Entwicklung 5. Dateistruktur
MehrProgrammieren in C++
Programmieren in C++ SS 2016 Vorlesung 5, Dienstag 24. Mai 2016 (Klassen und Objekte) Prof. Dr. Hannah Bast Lehrstuhl für Algorithmen und Datenstrukturen Institut für Informatik Universität Freiburg Blick
MehrÜbung zu Grundlagen der Betriebssysteme. 2. Übung
Übung zu Grundlagen der Betriebssysteme 2. Übung 23.10.2012 Termine Übungen 1. Übungsblatt http://userpages.uni-koblenz.de/~mips/bs/uebung/ https://svn.uni-koblenz.de/mips/bs/wise2012/exercises/ Abgabe:
MehrAufgabenblatt 1: - Präsenzübung für die Übungen Do Mi Ausgabe Mi
Grundlagen der Programmierung 1 WS 2012/2013 Prof. Dr. Stefan Böttcher Aufgabenblatt 1: - Präsenzübung für die Übungen Do. 11.10.- Mi. 17.10.2012 Ausgabe Mi. 10.10.2012 1.1. Zahlen vertauschen mit wenigen
Mehr3D Programmierpraktikum: Einführung in C++ - Teil 1
3D Programmierpraktikum: Einführung in C++ - Teil 1 Praktikum 3D Programmierung Sebastian Boring, Otmar Hilliges Donnerstag, 27. April 2006 LMU München Medieninformatik Boring/Hilliges 3D Programmierpraktikum
Mehr