Modern C Programming with Test Driven Development

Author: Jeff Langr
Publisher: Pragmatic Bookshelf
ISBN: 9781680504026
Release Date: 2013-10-10
Genre: Computers

If you program in C++ you've been neglected. Test-driven development (TDD) is a modern software development practice that can dramatically reduce the number of defects in systems, produce more maintainable code, and give you the confidence to change your software to meet changing needs. But C++ programmers have been ignored by those promoting TDD--until now. In this book, Jeff Langr gives you hands-on lessons in the challenges and rewards of doing TDD in C++. Modern C++ Programming With Test-Driven Development, the only comprehensive treatment on TDD in C++ provides you with everything you need to know about TDD, and the challenges and benefits of implementing it in your C++ systems. Its many detailed code examples take you step-by-step from TDD basics to advanced concepts. As a veteran C++ programmer, you're already writing high-quality code, and you work hard to maintain code quality. It doesn't have to be that hard. In this book, you'll learn: how to use TDD to improve legacy C++ systems how to identify and deal with troublesome system dependencies how to do dependency injection, which is particularly tricky in C++ how to use testing tools for C++ that aid TDD new C++11 features that facilitate TDD As you grow in TDD mastery, you'll discover how to keep a massive C++ system from becoming a design mess over time, as well as particular C++ trouble spots to avoid. You'll find out how to prevent your tests from being a maintenance burden and how to think in TDD without giving up your hard-won C++ skills. Finally, you'll see how to grow and sustain TDD in your team. Whether you're a complete unit-testing novice or an experienced tester, this book will lead you to mastery of test-driven development in C++. What You Need A C++ compiler running under Windows or Linux, preferably one that supports C++11. Examples presented in the book were built under gcc 4.7.2. Google Mock 1.6 (downloadable for free; it contains Google Test as well) or an alternate C++ unit testing tool. Most examples in the book are written for Google Mock, but it isn't difficult to translate them to your tool of choice. A good programmer's editor or IDE. cmake, preferably. Of course, you can use your own preferred make too. CMakeLists.txt files are provided for each project. Examples provided were built using cmake version 2.8.9. Various freely-available third-party libraries are used as the basis for examples in the book. These include: cURL JsonCpp Boost (filesystem, date_time/gregorian, algorithm, assign) Several examples use the boost headers/libraries. Only one example uses cURL and JsonCpp.

Die Kunst der JavaScript Programmierung

Author: Marijn Haverbeke
Publisher: dpunkt.verlag
ISBN: 9783864911910
Release Date: 2012-08-13
Genre: Computers

Das Buch ist eine Einführung in JavaScript, die sich auf gute Programmiertechniken konzentriert. Der Autor lehrt den Leser, wie man die Eleganz und Präzision von JavaScript nutzt, um browserbasierte Anwendungen zu schreiben. Das Buch beginnt mit den Grundlagen der Programmierung - Variablen, Kontrollstrukturen, Funktionen und Datenstrukturen -, dann geht es auf komplexere Themen ein, wie die funktionale und objektorientierte Programmierung, reguläre Ausdrücke und Browser-Events. Unterstützt von verständlichen Beispielen wird der Leser rasch die Sprache des Web fließend 'sprechen' können.

Lean Testing f r C Programmierer

Author: Andreas Spillner
Publisher: dpunkt.verlag
ISBN: 9783864919688
Release Date: 2016-06-01
Genre: Computers

Sie programmieren – auch in C++. Sie führen regelmäßig Unit Tests durch. Sie sind sich manchmal unsicher, ob Sie ausreichend oder zu viel getestet haben. Werfen Sie einen Blick in dieses Buch, Sie werden viele Anregungen für Ihre tägliche Arbeit finden! »Lean Testing« steht für einen Ansatz, der auf der einen Seite alle wichtigen Testfälle zur Prüfung der Software berücksichtigt, auf der anderen Seite aber den Testaufwand in einem überschaubaren Rahmen hält. Der angemessene Mittelweg zwischen zu wenig und zu viel Testen wird bei jedem Vorgehen zum Entwerfen der Testfälle diskutiert und erörtert. Die in diesem Buch präsentierten Vorgehensweisen zum Testfallentwurf werden konkret mit den entsprechenden C++-Programmtexten und den jeweiligen Testfällen dargelegt. Sind hierzu unterstützende Werkzeuge erforderlich, beschreiben die Autoren deren Anwendung. Dabei geben sie nützliche Hinweise für die Verwendung der Testverfahren und bieten einen Leitfaden für ihren Einsatz. Alle Testverfahren des aktuellen ISO-Standards 29119, die für den Unit Test relevant sind, werden vorgestellt und ausführlich behandelt. Ulrich Breymann ist ein bekannter Fachautor für die Programmiersprache C++ – Andreas Spillner für den Testbereich. Beide Autoren bringen ihre Fachkompetenz ein und schlagen eine Brücke zwischen Programmierung und Test. Das Buch unterstützt die aktuelle Entwicklung, bei der Softwareerstellung keine strikte (personenbezogene) Trennung zwischen Implementierung und Test auf Unit-Ebene vorzusehen (z.B. TDD & Test-first-Ansatz).

Eine Tour durch C

Author: Bjarne Stroustrup
Publisher: Carl Hanser Verlag GmbH Co KG
ISBN: 9783446439832
Release Date: 2015-06-08
Genre: Computers

EINE TOUR DURCH C++ // - Dieser Leitfaden will Ihnen weder das Programmieren beibringen noch versteht er sich als einzige Quelle, die Sie für die Beherrschung von C++ brauchen – aber diese Tour ist wahrscheinlich die kürzeste oder einfachste Einführung in C++11. - Für C- oder C++-Programmierer, die mit der aktuellen C++-Sprache vertrauter werden wollen - Programmierer, die in einer anderen Sprache versiert sind, erhalten ein genaues Bild vom Wesen und von den Vorzügen des modernen C++ . Mit dem C++11-Standard können Programmierer Ideen klarer, einfacher und direkter auszudrücken sowie schnelleren und effizienteren Code zu schreiben. Bjarne Stroustrup, der Designer und ursprüngliche Implementierer von C++, erläutert die Details dieser Sprache und ihre Verwendung in seiner umfassenden Referenz „Die C++-Programmiersprache“. In „Eine Tour durch C++“ führt Stroustrup jetzt die Übersichtskapitel aus der Referenz zusammen und erweitert sie so, dass auch erfahrene Programmierer in nur wenigen Stunden eine Vorstellung davon erhalten, was modernes C++ ausmacht. In diesem kompakten und eigenständigen Leitfaden behandelt Stroustrup – neben Grundlagen – die wichtigsten Sprachelemente und die wesentlichen Komponenten der Standardbibliothek. Er präsentiert die C++-Features im Kontext der Programmierstile, die sie unterstützen, wie die objektorientierte und generische Programmierung. Die Tour beginnt bei den Grundlagen und befasst sich dann mit komplexeren Themen, einschließlich vieler, die neu in C++11 sind wie z.B. Verschiebesemantik, einheitliche Initialisierung, Lambda-Ausdrücke, verbesserte Container, Zufallszahlen und Nebenläufigkeit. Am Ende werden Design und Entwicklung von C++ sowie die in C++11 hinzugekommenen Erweiterungen diskutiert. Programmierer erhalten hier – auch anhand von Schlüsselbeispielen – einen sinnvollen Überblick und praktische Hilfe für den Einstieg. AUS DEM INHALT // Die Grundlagen // Benutzerdefinierte Typen // Modularität // Klassen // Templates // Überblick über die Bibliothek // Strings und reguläre Ausdrücke // E/A-Streams // Container // Algorithmen // Utilities // Numerik // Nebenläufigkeit // Geschichte und Kompatibilität

Clean Code Refactoring Patterns Testen und Techniken f r sauberen Code

Author: Robert C. Martin
Publisher: MITP-Verlags GmbH & Co. KG
ISBN: 9783826696381
Release Date: 2013-12-18
Genre: Computers

h2> Kommentare, Formatierung, Strukturierung Fehler-Handling und Unit-Tests Zahlreiche Fallstudien, Best Practices, Heuristiken und Code Smells Clean Code - Refactoring, Patterns, Testen und Techniken für sauberen Code Aus dem Inhalt: Lernen Sie, guten Code von schlechtem zu unterscheiden Sauberen Code schreiben und schlechten Code in guten umwandeln Aussagekräftige Namen sowie gute Funktionen, Objekte und Klassen erstellen Code so formatieren, strukturieren und kommentieren, dass er bestmöglich lesbar ist Ein vollständiges Fehler-Handling implementieren, ohne die Logik des Codes zu verschleiern Unit-Tests schreiben und Ihren Code testgesteuert entwickeln Selbst schlechter Code kann funktionieren. Aber wenn der Code nicht sauber ist, kann er ein Entwicklungsunternehmen in die Knie zwingen. Jedes Jahr gehen unzählige Stunden und beträchtliche Ressourcen verloren, weil Code schlecht geschrieben ist. Aber das muss nicht sein. Mit Clean Code präsentiert Ihnen der bekannte Software-Experte Robert C. Martin ein revolutionäres Paradigma, mit dem er Ihnen aufzeigt, wie Sie guten Code schreiben und schlechten Code überarbeiten. Zusammen mit seinen Kollegen von Object Mentor destilliert er die besten Praktiken der agilen Entwicklung von sauberem Code zu einem einzigartigen Buch. So können Sie sich die Erfahrungswerte der Meister der Software-Entwicklung aneignen, die aus Ihnen einen besseren Programmierer machen werden – anhand konkreter Fallstudien, die im Buch detailliert durchgearbeitet werden. Sie werden in diesem Buch sehr viel Code lesen. Und Sie werden aufgefordert, darüber nachzudenken, was an diesem Code richtig und falsch ist. Noch wichtiger: Sie werden herausgefordert, Ihre professionellen Werte und Ihre Einstellung zu Ihrem Beruf zu überprüfen. Clean Code besteht aus drei Teilen:Der erste Teil beschreibt die Prinzipien, Patterns und Techniken, die zum Schreiben von sauberem Code benötigt werden. Der zweite Teil besteht aus mehreren, zunehmend komplexeren Fallstudien. An jeder Fallstudie wird aufgezeigt, wie Code gesäubert wird – wie eine mit Problemen behaftete Code-Basis in eine solide und effiziente Form umgewandelt wird. Der dritte Teil enthält den Ertrag und den Lohn der praktischen Arbeit: ein umfangreiches Kapitel mit Best Practices, Heuristiken und Code Smells, die bei der Erstellung der Fallstudien zusammengetragen wurden. Das Ergebnis ist eine Wissensbasis, die beschreibt, wie wir denken, wenn wir Code schreiben, lesen und säubern. Dieses Buch ist ein Muss für alle Entwickler, Software-Ingenieure, Projektmanager, Team-Leiter oder Systemanalytiker, die daran interessiert sind, besseren Code zu produzieren. Über den Autor: Robert C. »Uncle Bob« Martin entwickelt seit 1970 professionell Software. Seit 1990 arbeitet er international als Software-Berater. Er ist Gründer und Vorsitzender von Object Mentor, Inc., einem Team erfahrener Berater, die Kunden auf der ganzen Welt bei der Programmierung in und mit C++, Java, C#, Ruby, OO, Design Patterns, UML sowie Agilen Methoden und eXtreme Programming helfen.

Design Patterns f r die Spieleprogrammierung

Author: Robert Nystrom
Publisher: MITP-Verlags GmbH & Co. KG
ISBN: 9783958450929
Release Date: 2015-08-26
Genre: Computer games

- Die bekannten Design Patterns der Gang of Four im konkreten Einsatz für die Entwicklung von Games - Zahlreiche weitere vom Autor entwickelte Patterns - Sequenzierungs-, Verhaltens-, Entkopplungs- und Optimierungsmuster Für viele Spieleprogrammierer stellt die Finalisierung ihres Spiels die größte Herausforderung dar. Viele Projekte verlaufen im Sande, weil Programmierer der Komplexität des eigenen Codes nicht gewachsen sind. Die im Buch beschriebenen Design Patterns nehmen genau dieses Problem in Angriff. Der Autor blickt auf jahrelange Erfahrung in der Entwicklung von weltweit erfolgreichen Games zurück und stellt erprobte Patterns vor, mit deren Hilfe Sie Ihren Code entwirren und optimieren können. Die Patterns sind in Form unabhängiger Fallbeispiele organisiert, so dass Sie sich nur mit den für Sie relevanten zu befassen brauchen und das Buch auch hervorragend zum Nachschlagen verwenden können. Sie erfahren, wie man eine stabile Game Loop schreibt, wie Spielobjekte mithilfe von Komponenten organisiert werden können und wie man den CPU-Cache nutzt, um die Performance zu verbessern. Außerdem werden Sie sich damit beschäftigen, wie Skript-Engines funktionieren, wie Sie Ihren Code mittels Quadtrees und anderen räumlichen Aufteilungen optimieren und wie sich die klassischen Design Patterns in Spielen einsetzen lassen.

Clean Coder

Author: Robert C. Martin
Publisher: mitp Verlags GmbH & Co. KG
ISBN: 9783826632082
Release Date: 2014-03-24
Genre: Computers

Verhaltensregeln für professionelle Programmierer Erfolgreiche Programmierer haben eines gemeinsam: Die Praxis der Software-Entwicklung ist ihnen eine Herzensangelegenheit. Auch wenn sie unter einem nicht nachlassenden Druck arbeiten, setzen sie sich engagiert ein. Software-Entwicklung ist für sie eine Handwerkskunst. In Clean Coder stellt der legendäre Software-Experte Robert C. Martin die Disziplinen, Techniken, Tools und Methoden vor, die Programmierer zu Profis machen. Dieses Buch steckt voller praktischer Ratschläge und behandelt alle wichtigen Themen vom professionellen Verhalten und Zeitmanagement über die Aufwandsschätzung bis zum Refactoring und Testen. Hier geht es um mehr als nur um Technik: Es geht um die innere Haltung. Martin zeigt, wie Sie sich als Software-Entwickler professionell verhalten, gut und sauber arbeiten und verlässlich kommunizieren und planen. Er beschreibt, wie Sie sich schwierigen Entscheidungen stellen und zeigt, dass das eigene Wissen zu verantwortungsvollem Handeln verpflichtet. In diesem Buch lernen Sie: Was es bedeutet, sich als echter Profi zu verhalten Wie Sie mit Konflikten, knappen Zeitplänen und unvernünftigen Managern umgehen Wie Sie beim Programmieren im Fluss bleiben und Schreibblockaden überwinden Wie Sie mit unerbittlichem Druck umgehen und Burnout vermeiden Wie Sie Ihr Zeitmanagement optimieren Wie Sie für Umgebungen sorgen, in denen Programmierer und Teams wachsen und sich wohlfühlen Wann Sie Nein sagen sollten – und wie Sie das anstellen Wann Sie Ja sagen sollten – und was ein Ja wirklich bedeutet Großartige Software ist etwas Bewundernswertes: Sie ist leistungsfähig, elegant, funktional und erfreut bei der Arbeit sowohl den Entwickler als auch den Anwender. Hervorragende Software wird nicht von Maschinen geschrieben, sondern von Profis, die sich dieser Handwerkskunst unerschütterlich verschrieben haben. Clean Coder hilft Ihnen, zu diesem Kreis zu gehören. Über den Autor: Robert C. Uncle Bob Martin ist seit 1970 Programmierer und bei Konferenzen in aller Welt ein begehrter Redner. Zu seinen Büchern gehören Clean Code – Refactoring, Patterns, Testen und Techniken für sauberen Code und Agile Software Development: Principles, Patterns, and Practices. Als überaus produktiver Autor hat Uncle Bob Hunderte von Artikeln, Abhandlungen und Blogbeiträgen verfasst. Er war Chefredakteur bei The C++ Report und der erste Vorsitzende der Agile Alliance. Martin gründete und leitet die Firma Object Mentor, Inc., die sich darauf spezialisiert hat, Unternehmen bei der Vollendung ihrer Projekte behilflich zu sein.

Testgetriebene Entwicklung mit C

Author: Jeff Langr
Publisher:
ISBN: 9783864915826
Release Date: 2014-11-20
Genre: Computers

Testgetriebene Entwicklung (TDD) ist eine moderne Methode in der Softwareentwicklung, mit der Programmierer und Tester die Anzahl der Fehler im System erheblich verringern, wartungsfreundlicheren Code schreiben und die Software gefahrlos an geänderte Anforderungen anpassen können. Dieses Buch vermittelt praktische TDD-Kenntnisse und beschreibt die Probleme und Vorteile der Verwendung dieser Technik für C++-Systeme. Die vielen ausführlichen Codebeispiele führen schrittweise von den Grundlagen von TDD zu anspruchsvollen Themen: • TDD verwenden, um C++-Altsysteme zu verbessern • Problematische Systemabhängigkeiten erkennen und handhaben • Abhängigkeiten in C++ injizieren • Frameworks für C++ einsetzen, die TDD unterstützen • C++11-Features nutzen, die die Anwendung von TDD erleichtern Unabhängig davon, ob Sie viel Erfahrung mit Unit Tests haben oder ein absoluter Neuling auf diesem Gebiet sind, lernen Sie mit diesem Buch die testgetriebene Entwicklung in C++ erfolgreich anzuwenden.

Clean C

Author: Stephan Roth
Publisher: Apress
ISBN: 9781484227930
Release Date: 2017-09-27
Genre: Computers

Write maintainable, extensible, and durable software with modern C++. This book is a must for every developer, software architect, or team leader who is interested in good C++ code, and thus also wants to save development costs. If you want to teach yourself about writing clean C++, Clean C++ is exactly what you need. It is written to help C++ developers of all skill levels and shows by example how to write understandable, flexible, maintainable, and efficient C++ code. Even if you are a seasoned C++ developer, there are nuggets and data points in this book that you will find useful in your work. If you don't take care with your code, you can produce a large, messy, and unmaintainable beast in any programming language. However, C++ projects in particular are prone to be messy and tend to slip into bad habits. Lots of C++ code that is written today looks as if it was written in the 1980s. It seems that C++ developers have been forgotten by those who preach Software Craftsmanship and Clean Code principles. The Web is full of bad, but apparently very fast and highly optimized C++ code examples, with cruel syntax that completely ignores elementary principles of good design and well-written code. This book will explain how to avoid this scenario and how to get the most out of your C++ code. You'll find your coding becomes more efficient and, importantly, more fun. What You'll Learn Gain sound principles and rules for clean coding in C++ Carry out test driven development (TDD) Discover C++ design patterns and idioms Apply these design patterns Who This Book Is For Any C++ developer and software engineer with an interest in producing better code.

C Alles in einem Band f r Dummies

Author: John Paul Mueller
Publisher: John Wiley & Sons
ISBN: 9783527692590
Release Date: 2016-01-15
Genre: Computers

Dieses Buch ist für alle, die tief in die C++-Programmierung einsteigen möchten. Dennoch werden keine Programmierkenntnisse vorausgesetzt. John Paul Mueller und Jeff Cogswell erklären Ihnen zunächst, wie Sie C++ installieren. Sie erfahren, was Klassen und Objekte sind, was Sie mit Entwurfsmustern anfangen und wie Sie Ihre Programme debuggen. Aus Anfängern werden Entwickler mit Erfahrung und dann fortgeschrittene Programmierer. Diese finden in diesem Buch Informationen zu dynamischen Arrays, Lambda-Ausdrücken, Streams, UML, der Standardbibliothek, zu Boost und vielem mehr. Alle Codebeispiele des Buchs stehen zum Download zur Verfügung.