Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen

Programmierung

Produkte filtern

Produktbild für Deep Learning mit TensorFlow, Keras und TensorFlow.js

Deep Learning mit TensorFlow, Keras und TensorFlow.js

Deep Learning - eine Schlüsseltechnologie der Künstlichen Intelligenz. Neuronale Netze bringen Höchstleistung, wenn sie zu Deep-Learning-Modellen verknüpft werden - vorausgesetzt, Sie machen es richtig. Große und gute Trainingsdaten beschaffen, geschickt implementieren ... lernen Sie hier, wie Sie die mächtige Technologie wirklich in Ihren Dienst nehmen. Unsere Autoren zeigen Ihnen sowohl die Arbeit mit Python und Keras als auch für den Browser mit JavaScript, HTML5 und TensorFlow.js. Aus dem Inhalt: Deep-Learning-GrundkonzepteInstallation der FrameworksVorgefertigte Modelle verwendenDatenanalyse und -vorbereitungConvolutional Networks, LSTM, RNN, Pooling ...Aufgaben eines Modells richtig festlegenEigene Modelle trainierenOverfitting und Underfitting vermeidenErgebnisse visualisieren   1.  Einführung ... 15        1.1 ... Über dieses Buch ... 15        1.2 ... Ein Einblick in Deep Learning ... 17        1.3 ... Deep Learning im Alltag und in der Zukunft ... 19   2.  Machine Learning und Deep Learning ... 33        2.1 ... Einführung ... 33        2.2 ... Lernansätze beim Machine Learning ... 38        2.3 ... Deep-Learning-Frameworks ... 44        2.4 ... Datenbeschaffung ... 46        2.5 ... Datasets ... 48        2.6 ... Zusammenfassung ... 65   3.  Neuronale Netze ... 67        3.1 ... Aufbau und Prinzip ... 67        3.2 ... Lernprozess neuronaler Netze ... 73        3.3 ... Datenaufbereitung ... 81        3.4 ... Ein einfaches neuronales Netz ... 82        3.5 ... Netzarchitekturen ... 91        3.6 ... Bekannte Netze ... 98        3.7 ... Fallstricke beim Deep Learning ... 101        3.8 ... Zusammenfassung ... 106   4.  Python und Machine-Learning-Bibliotheken ... 107        4.1 ... Installation von Python 3.7 mit Anaconda ... 108        4.2 ... Alternative Installationen von Python 3.7 ... 113        4.3 ... Programmierumgebungen ... 116        4.4 ... Jupyter Notebook ... 121        4.5 ... Python-Bibliotheken für das Machine Learning ... 126        4.6 ... Nützliche Routinen mit NumPy und Scikit-learn für ML ... 129        4.7 ... Ein zweites Machine-Learning-Beispiel ... 133        4.8 ... Zusammenfassung ... 137   5.  TensorFlow: Installation und Grundlagen ... 139        5.1 ... Einführung ... 139        5.2 ... Installation ... 143        5.3 ... Google Colab: TensorFlow ohne Installation benutzen ... 153        5.4 ... Tensoren ... 154        5.5 ... Graphen ... 160        5.6 ... Benutzung der CPU und GPU ... 171        5.7 ... Erstes Beispiel: Eine lineare Regression ... 174        5.8 ... Von TensorFlow 1.x zu TensorFlow 2 ... 180        5.9 ... Zusammenfassung ... 183   6.  Keras ... 185        6.1 ... Von Keras zu tf.keras ... 185        6.2 ... Erster Kontakt ... 189        6.3 ... Modelle trainieren ... 191        6.4 ... Modelle evaluieren ... 193        6.5 ... Modelle laden und exportieren ... 194        6.6 ... Keras Applications ... 197        6.7 ... Keras Callbacks ... 198        6.8 ... Projekt 1: Iris-Klassifikation mit Keras ... 200        6.9 ... Projekt 2: CNNs mit Fashion-MNIST ... 204        6.10 ... Projekt 3: Ein einfaches CNN mit dem CIFAR-10-Dataset ... 213        6.11 ... Projekt 4: Aktienkursvorhersage mit RNNs und LSTMs ... 220        6.12 ... Zusammenfassung ... 226   7.  Netze und Metriken visualisieren ... 227        7.1 ... TensorBoard ... 228        7.2 ... TensorBoard.dev ... 246        7.3 ... Debugging mit TensorBoard (nur TF 1.x) ... 248        7.4 ... Der TensorBoard-Debugger mit Keras (nur TF 1.x) ... 257        7.5 ... Visualisierung mit Keras ... 259        7.6 ... Visualisierung von CNNs mit Quiver (nur mit Keras.io) ... 267        7.7 ... Interaktive Visualisierung mit Keras-Callbacks, Node.js und HTML5 selbst implementieren ... 271        7.8 ... Weitere Visualisierungsmöglichkeiten ... 281   8.  TensorFlow.js ... 285        8.1 ... Anwendungsfälle ... 285        8.2 ... Installation von BrowserSync ... 288        8.3 ... Installation von TensorFlow.js ... 290        8.4 ... Konzepte ... 293        8.5 ... Ihr erstes Modell mit TensorFlow.js: Eine quadratische Regression ... 304        8.6 ... Laden und Speichern von Modellen ... 318        8.7 ... PoseNet-Modell mit TensorFlow.js ... 327        8.8 ... Eine intelligente Smart-Home-Komponente mit TensorFlow.js und Node.js ... 343        8.9 ... TensorFlow.js noch einfacher: ml5.js ... 356   9.  Praxisbeispiele ... 361        9.1 ... Projekt 1: Verkehrszeichenerkennung mit Keras ... 363        9.2 ... Projekt 2: Intelligente Spurerkennung mit Keras und OpenCV ... 379        9.3 ... Projekt 3: Erkennung der Umgebung mit YOLO und TensorFlow.js bzw. ml5.js ... 392        9.4 ... Projekt 4: Haus oder Katze? Vorgefertigte Modelle mit Keras benutzen -- VGG-19 ... 403        9.5 ... Projekt 5: Buchstaben- und Ziffernerkennung mit dem Chars74K-Dataset und Datenaugmentierung ... 410        9.6 ... Projekt 6: Stimmungsanalyse mit Keras ... 418        9.7 ... Projekt 7: Sentiment-Analyse mit TensorFlow.js ... 425        9.8 ... Projekt 8: Benutzung von TensorFlow Hub ... 429        9.9 ... Projekt 9: Hyperparameter-Tuning mit TensorBoard ... 437        9.10 ... Projekt 10: CNN mit Fashion-MNIST und TensorFlow-Estimators (nur TF 1.x) ... 442        9.11 ... Allgemeine Tipps und Tricks ... 455 10.  Ausblick ... 463        10.1 ... Deep Learning in der Cloud ... 463        10.2 ... Bildgenerierung mit Deep Learning ... 471        10.3 ... Musik mit Deep Learning ... 476        10.4 ... Videogenerierung mit Deep Learning ... 478        10.5 ... Deep Learning einfacher gemacht ... 480 11.  Fazit ... 489   Index ... 492

Regulärer Preis: 39,90 €
Produktbild für C++20 Recipes

C++20 Recipes

Discover the newest major features of C++20, including modules, concepts, spaceship operators, and smart pointers. This book is a handy code cookbook reference guide that covers the C++ core language standard as well as some of the code templates available in standard template library (STL).In C++20 Recipes: A Problem-Solution Approach, you'll find numbers, strings, dates, times, classes, exceptions, streams, flows, pointers, and more. Also, you'll see various code samples, templates for C++ algorithms, parallel processing, multithreading, and numerical processes. It also includes 3D graphics programming code. A wealth of STL templates on function objects, adapters, allocators, and extensions are also available.This is a must-have, contemporary reference for your technical library to help with just about any project that involves the C++ programming language.WHAT YOU WILL LEARN* See what's new in C++20Write modules * Work with text, numbers, and classes* Use the containers and algorithms available in the standard library* Work with templates, memory, concurrency, networking, scripting, and more* Code for 3D graphicsWHO THIS BOOK IS FORProgrammers with at least some prior experience with C++.DR. J. BURTON BROWNING earned his doctorate from North Carolina State University. He has conducted research in areas including: distance learning, programming, and instructional technology. As a life-long learner and someone who has interests in topics such as: programming, photography, robotics, car restoration, wood working, hunting, reading, fishing, and archery, he is never at a loss for something to do. The art and joy of serving as a professor suits his inquisitive nature. Dr. Browning’s previous publications include works on cross-functional learning teams (CFLT), The Utopian School (teacher-led school model), computer programming (several languages), open-source software, healthcare statistics and data mining, CNC plasma cutter operation, educational technology, biography, mobile learning, online teaching, and more.BRUCE SUTHERLAND is a video game programmer hailing from Dundee, Scotland. He graduated with a Bsc (Hons) Computer Games Technology from the University of Abertay, Dundee in Scotland, graduating in 2005. After graduating he began his first job in the games industry at 4J Studios where he worked on Star Trek: Encounters (PS2), The Elder Scrolls IV: Oblivion (PS3), Star Trek: Conquest (PS2, Wii), Ducati Moto (NDS) and AMF Pinbusters! (NDS). In July 2008 he moved from Dundee to Melbourne Australia where he joined Visceral Studios and was a software engineer on Dead Space (Xbox 360, PS3, PC), The Godfather II (Xbox 360, PS3, PC) and Dead Space 3 (Xbox 360, PS3, PC). He developed an interest in developing for Android in his spare time and writes tutorials on his blog.1. Beginning C++2. Modern C++3. Working with Text4. Working with Numbers5. Classes6. Inheritance7. The STL Containers8. The STL Algorithms9. Templates10. Memory11. Concurrency12. Networking13. Scripting14. 3D Graphics Programming

Regulärer Preis: 66,99 €
Produktbild für Effektiv Python programmieren

Effektiv Python programmieren

90 Wege für bessere Python-Programme Bewährte Verfahren, Tipps und Tricks für robusten, leistungsfähigen und wartungsfreundlichen Code Grundlegende Aufgaben besser und effektiver erledigen Lösungen für das Debuggen, Testen und Optimieren zur Verbesserung von Qualität und Performance Der Einstieg in die Python-Programmierung ist einfach, daher ist die Sprache auch so beliebt. Pythons einzigartige Stärken und Ausdrucksmöglichkeiten sind allerdings nicht immer offensichtlich. Zudem gibt es diverse verborgene Fallstricke, über die man leicht stolpern kann. Dieses Buch vermittelt insbesondere eine Python-typische Herangehensweise an die Programmierung. Brett Slatkin nutzt dabei die Vorzüge von Python zum Schreiben von außerordentlich stabilem und schnellem Code. Er stellt 90 bewährte Verfahren, Tipps und Tricks vor, die er anhand praxisnaher Codebeispiele erläutert. Er setzt dabei den kompakten, an Fallbeispielen orientierten Stil von Scott Meyers populärem Buch »Effektiv C++ programmieren« ein. Auf Basis seiner jahrelangen Erfahrung mit der Python-Infrastruktur bei Google demonstriert Slatkin weniger bekannte Eigenarten und Sprachelemente, die großen Einfluss auf das Verhalten des Codes und die Performance haben. Sie erfahren, wie sich grundlegende Aufgaben am besten erledigen lassen, damit Sie leichter verständlichen, wartungsfreundlicheren und einfach zu verbessernden Code schreiben können. Aus dem Inhalt: Umsetzbare Richtlinien für alle wichtigen Bereiche der Entwicklung in Python 3 mit detaillierten Erklärungen und Beispielen Funktionen so definieren, dass Code leicht wiederverwendet und Fehler vermieden werden können Bessere Verfahren und Idiome für die Verwendung von Abstraktionen und Generatorfunktionen Systemverhalten mithilfe von Klassen und Interfaces präzise definieren Stolpersteine beim Programmieren mit Metaklassen und dynamischen Attributen umgehen Effizientere und klare Ansätze für Nebenläufigkeit und parallele Ausführung Tipps und Tricks zur Nutzung von Pythons Standardmodulen Tools und Best Practices für die Zusammenarbeit mit anderen Entwicklern Lösungen für das Debuggen, Testen und Optimieren zur Verbesserung von Qualität und Performance

Regulärer Preis: 9,99 €
Produktbild für C# für Dummies

C# für Dummies

C# ist eine der am meisten genutzten Programmiersprachen, doch wie den Ein- oder Umstieg schaffen? Genau dabei hilft Ihnen dieses Buch. Nachdem Sie sich zunächst die notwendigen Grundlagen erarbeitet haben, lernen Sie auch alles Notwendige über LINQ, XML und ADO.NET. Anschließend werden Sie sicher durch das Schreiben Ihrer ersten eigenen .NET-Anwendung geleitet. Noch nicht genug? Kapitel zu fortgeschrittenen .NET-Techniken wie die dynamische Programmierung oder die Task Parallel Library runden das Buch ab. Steffen Steinbrecher programmiert schon seit über 15 Jahren. Nach dem Studium sammelte er mehrjährige Erfahrung in der professionellen Softwareentwicklung im .NET-Umfeld. Er lebt in der Nähe von Kaiserslautern. In seiner Freizeit betreibt er einen Blog, auf dem er hauptsächlich über verschiedene .NET-Themen schreibt.Über den Autor 11EINLEITUNG 23Über dieses Buch 23Wie dieses Buch aufgebaut ist 24Symbole, die in diesem Buch verwendet werden 26Wie es weiter geht 27TEIL I: LOS GEHT’S 29KAPITEL 1 GRUNDLAGEN UND EINFÜHRUNG31Grundlagen der Programmierung 31Warum programmieren wir eigentlich? 32Programmiersprachen 33.NET-Plattformarchitektur 37Wie funktioniert eine .NET-Sprache? 39Das .NET-Framework 42Die Programmiersprache C# 44Das Prinzip der objektorientierten Programmierung 44Objekte und ihre Klassen 44Abstraktion 47Kapselung 48Vererbung 48Polymorphie 49KAPITEL 2 ENTWICKLUNGSWERKZEUGE UND TOOLS53Ein Programm erstellen 53Microsoft Visual Studio 2019 Community Edition 59Ihr erstes eigenes Projekt 60Der Marktplatz für fertige Lösungen: NuGet 71KAPITEL 3 DAS ABC DER SPRACHE C#75Bezeichner 75Namenskonventionen 76Schlüsselwörter 78Anweisungen 79Kommentare 79Datentypen, Variablen und Konstanten 82Deklaration von Variablen 84Das Schlüsselwort var oder Typinferenz 86Konstanten deklarieren 88Zugriff und Verwendung von Variablen 89Wert- und Referenztypen 90Weitere Datentypen 97Gültigkeitsbereiche von Variablen 100Konvertieren von Datentypen 101Was ist eine Methode? 110Übergeben von Parametern 112Methoden mit Rückgabewert 115Methoden ohne Rückgabewert 117Namensräume 119Wo finde ich was? 121Verwendung von Namensräumen 122Alias für einen Namensraum 124KAPITEL 4 OPERATOREN UND PROGRAMMSTEUERUNG127Operatoren 127Rechenoperatoren 128Zuweisungsoperatoren 132Logische Operatoren 133Den Programmablauf steuern: Verzweigungen und Kontrollstrukturen 136if-Anweisung 137switch-Anweisung und -Ausdruck 144Vorgänge wiederholen: Schleifen 148for-Schleife 149while-Schleife 151do-while-Schleife 155foreach-Schleife 157Sie haben es sich anders überlegt? 158KAPITEL 5 ZEICHENFOLGEN, ARRAYS UND DATUMSWERTE161Zeichen und Zeichenfolgen 161String-Variablen deklarieren 162String-Interpolation und kombinierte Formatierung 164Zeichenfolgen analysieren 166Zeichenfolgen manipulieren 168Sonderzeichen in Zeichenfolgen 170StringBuilder: Wenn Geschwindigkeit eine Rolle spielt 172Formatierung von Zeichenfolgen 173Arrays 178Arrays deklarieren 179Arrays erzeugen 179Arrays initialisieren 180Zugriff auf Array-Elemente 182Eigenschaften und Methoden von Arrays 185Datums- und Zeitberechnungen 188Die DateTime-Struktur 188Die TimeSpan-Struktur 192Praxisbeispiele 193KAPITEL 6 OBJEKTORIENTIERTE PROGRAMMIERUNG MIT C#197Klassen, Eigenschaften und Methoden 197Klassen 198Eigenschaften 198Objekte 204Methoden und Konstruktoren 205Statische Klassen 207Vererbung 210Ober- und Unterklassen 210Methoden überschreiben 212Der Zugriff auf die Member der Basisklasse mit base 213Abstrakte Klassen 214Interfaces 216KAPITEL 7 FEHLER PASSIEREN, MACHT ABER NICHTS: AUSNAHMEBEHANDLUNG221Mit Ausnahmen umgehen 222Wie man einen Fehler »fängt«! 225Der Parameter einer catch-Klausel 226Ausnahmetypen 228Fehler auslösen 231Eigene Fehlerklassen erstellen 232KAPITEL 8 WEITERE SPRACHFEATURES 235Delegates 235Anonyme Methoden 239Lambda-Ausdrücke 240Ereignisse – was geht ab? 242Ereignisse registrieren und behandeln 243Ereignisse veröffentlichen 244Generics – generische Datentypen 247Generische Klassen, Methoden und Eigenschaften 248Generische Auflistungen 251Nette Helfer: Attribute 259Sie wollen mehr? Erweiterungsmethoden 261TEIL II: WEITERE SPRACHFEATURES VON C# 265KAPITEL 9 ZUGRIFFE AUF DAS DATEISYSTEM267Klassen für den Zugriff auf das Dateisystem 267Arbeiten mit Verzeichnissen 269Arbeiten mit Dateien 276Nicht bei der Ausnahmebehandlung sparen! 280Praxisbeispiele 282Verzeichnisgröße ermitteln 282Kopieren von Verzeichnissen 284KAPITEL 10 DATEIZUGRIFF UND STREAMS287Arbeiten mit Dateien 287Text-Dateien erstellen, lesen und ändern 288Arbeiten mit Streams 291Lesen und Schreiben 293Datei mit einem Stream schreiben 296Komprimieren von Dateien mit .NET-Klassen 297Neues ZIP-Archiv erzeugen 298Alle Dateien eines ZIP-Archivs extrahieren 300Objekte serialisieren 301Im Binärformat serialisieren 302XML 306JSON-Dateien 308KAPITEL 11 ASYNCHRONE UND PARALLELE PROGRAMMIERUNG313Grundlagen und Begrifflichkeiten 314Asynchrone Programmiermuster 318Programmieren mit Threads 318Die TPL – Task Parallel Library 331Ein gutes Team: async und await 342KAPITEL 12 DATEN ABFRAGENMIT LINQ349LINQ-Grundlagen 349Die Basis für LINQ-Abfragen 351Abfragen mit LINQ 353Die alternativen Schreibweisen von LINQ-Abfragen 358Die wichtigsten Abfrageoperatoren 359Ergebnis filtern (where-Operator) 359Ergebnis sortieren (orderby-Operator) 362Ergebnis partitionieren (skip- und take-Operator) 363Doppelte Einträge löschen (distinct-Operator) 365Aggregat-Operatoren 366Praxisbeispiele 367CSV-Datei mit LINQ einlesen 367KAPITEL 13 GRUNDLAGEN VON ADO.NET371Vorbereitungen 372Installation der Datenbank 372Beispieldaten importieren 374Datenbankzugriffe mit ADO.NET 377Verbindung zur Datenbank herstellen 378Datensätze abfragen 381Datensätze einfügen 386Datensätze aktualisieren 388Datensätze löschen 390Das DataSet und der DataAdapter 392Der DataAdapter –die Brücke zu den Daten 393Asynchrone Datenbankzugriffe 404TEIL III: EINE EIGENE C#-ANWENDUNG SCHREIBEN 411KAPITEL 14 FEHLERSUCHE UND SOFTWAREQUALITÄT413Welche Fehlerarten gibt es überhaupt? 414Fehler zur Compiletime (Übersetzungszeit) 414Fehler zur Runtime (Laufzeit) – Bugs 414Der Debugger 415Ein paar Grundlagen 415Überprüfen von Code und Variablen zur Laufzeit 416Überprüfen von Zeichenfolgen in der Schnellansicht 421Anzeigen von Rückgabewerten einer Funktion 422Attributed Debugging 423Dem Fehler auf die Schliche kommen – der Stacktrace 425Codequalität verbessern 427Suchen Sie nach roten und grünen Schlangenlinien 428Achten Sie auf die Glühbirne 430KAPITEL 15 BENUTZEROBERFLÄCHE MIT WINDOWS FORMS433Grundgerüst einer Windows-Forms-Anwendung 434Die Datei Program.cs 435Die Dateien Form1.cs und Form1.Designer.cs 436Benutzeroberfläche erstellen 439Steuerelemente verwenden 440Ereignisse von Steuerelementen 443Windows-Forms-Anwendung: Ja oder Nein? 449KAPITEL 16 MODERNE OBERFLÄCHEN MIT WPF UND XAML451Meine erste WPF-Anwendung 452XAML –Extended Application Markup Language 454Logischer und visueller Elementbaum in WPF 457Layout in WPF 458Ereignisse in WPF 470Commands 473Ressourcen in WPF 476Ressourcen in separate Datei auslagern 479Das gewisse Etwas: Styles 481Was ist ein Style? 482Templates 487Databinding –die Benutzeroberfläche mit Daten versorgen 491Die Richtung des Bindings: Wie Daten aktualisiert werden 493Der UpdateSourceTrigger: Wann Daten aktualisiert werden 494TEIL IV: FORTGESCHRITTENE TECHNIKEN IN C# UND WPF 497KAPITEL 17 FORTGESCHRITTENE TECHNIKEN RUND UM DIE WPF499Das Beispielprogramm 499Das MVVM-Entwurfsmuster 501Das Model 503Das ViewModel 503Datenbeschaffung 510Eigene Commands implementieren 511KAPITEL 18 MODULARE ANWENDUNG AUF BASIS VON C# UND WPF – EIN BEISPIEL517Die Beispielanwendung 518Vorbereitungen und Erstellung der Solution 520Styling der Anwendung 524Das Dependency-Injection-Entwurfsmuster 527Dynamische Oberflächen mit Prism-Regionen 529Erstellung eines UserControls 533Registrierung von Views 535Erstellung eines Prism-Moduls 536Anlegen des Projekts für das Modul 537Erstellen der Benutzeroberfläche 538Registrierung des Moduls 544Austausch- und wiederverwendbare Komponenten 545Registrierung und Verwendung der Klasse 547Fazit –Was haben Sie jetzt gewonnen? 549TEIL V: DER TOP-TEN-TEIL 551KAPITEL 19 ZEHN DINGE IN C#, DIE SIE WIRKLICH LERNEN UND VERWENDEN SOLLTEN!553Initialisierer für Objekte und Collections 553Automatisch implementierte Eigenschaften initialisieren 554null-coalescing Operator ?? 555String-Interpolation für dynamische Zeichenfolgen 555Null-conditional Operator 556nameof()-Ausdruck 557is- und as-Operatoren 558Zeichenfolgen mit String.IsNullOrEmpty() überprüfen 559break- und continue-Anweisung 560TryParse für die Umwandlung von Zeichenketten 561KAPITEL 20 ZEHN NÜTZLICHE OPEN-SOURCE-PROJEKTE563MahApps.Metro: Verpassen Sie Ihrer Anwendung den Metro-Style 563Modern UI for WPF (MUI) 563MaterialDesignInXamlToolkit 564Extended WPF Toolkit™ 564WPFLocalizationExtension 564ResXManager 565Prism 565Sammlung von Erweiterungsmethoden 565Modern UI Icons 566Material Design Icons 566Stichwortverzeichnis 567

Regulärer Preis: 25,99 €
Produktbild für Praxisbuch Unsupervised Learning

Praxisbuch Unsupervised Learning

Entdecken Sie Muster in Daten, die für den Menschen nicht erkennbar sindUnsupervised Learning könnte der Schlüssel zu einer umfassenderen künstlichen Intelligenz seinVoller praktischer Techniken für die Arbeit mit ungelabelten Daten, verständlich geschrieben und mit unkomplizierten Python-BeispielenVerwendet Scikit-learn, TensorFlow und KerasEin Großteil der weltweit verfügbaren Daten ist ungelabelt. Auf diese nicht klassifizierten Daten lassen sich die Techniken des Supervised Learning, die im Machine Learning viel genutzt werden, nicht anwenden. Dagegen kann das Unsupervised Learning - auch unüberwachtes Lernen genannt - für ungelabelte Datensätze eingesetzt werden, um aussagekräftige Muster zu entdecken, die tief in den Daten verborgen sind – Muster, die für den Menschen fast unmöglich zu entdecken sind.Wie Data Scientists Unsupervised Learning für ihre Daten nutzen können, zeigt Ankur Patel in diesem Buch anhand konkreter Beispiele, die sich schnell und effektiv umsetzen lassen. Sie erfahren, wie Sie schwer zu findende Muster in Daten herausarbeiten und dadurch z.B. tiefere Einblicke in Geschäftsprozesse gewinnen. Sie lernen auch, wie Sie Anomalien erkennen, automatisches Feature Engineering durchführen oder synthetische Datensätze generieren.Ankur A. Patel ist Vice President Data Science bei 7Park Data, einem Portfolio-Unternehmen von Vista Equity Partners. Bei 7Park Data verwenden Ankur und sein Data-Science-Team alternative Daten, um Datenprodukte für Hedge-Fonds und Unternehmen sowie Machine Learning als Service (MLaaS) für Geschäftskunden zu entwickeln.

Regulärer Preis: 39,90 €
Produktbild für Practical Machine Learning in R

Practical Machine Learning in R

GUIDES PROFESSIONALS AND STUDENTS THROUGH THE RAPIDLY GROWING FIELD OF MACHINE LEARNING WITH HANDS-ON EXAMPLES IN THE POPULAR R PROGRAMMING LANGUAGEMachine learning—a branch of Artificial Intelligence (AI) which enables computers to improve their results and learn new approaches without explicit instructions—allows organizations to reveal patterns in their data and incorporate predictive analytics into their decision-making process. Practical Machine Learning in R provides a hands-on approach to solving business problems with intelligent, self-learning computer algorithms.Bestselling author and data analytics experts Fred Nwanganga and Mike Chapple explain what machine learning is, demonstrate its organizational benefits, and provide hands-on examples created in the R programming language. A perfect guide for professional self-taught learners or students in an introductory machine learning course, this reader-friendly book illustrates the numerous real-world business uses of machine learning approaches. Clear and detailed chapters cover data wrangling, R programming with the popular RStudio tool, classification and regression techniques, performance evaluation, and more.* Explores data management techniques, including data collection, exploration and dimensionality reduction* Covers unsupervised learning, where readers identify and summarize patterns using approaches such as apriori, eclat and clustering* Describes the principles behind the Nearest Neighbor, Decision Tree and Naive Bayes classification techniques* Explains how to evaluate and choose the right model, as well as how to improve model performance using ensemble methods such as Random Forest and XGBoostPractical Machine Learning in R is a must-have guide for business analysts, data scientists, and other professionals interested in leveraging the power of AI to solve business problems, as well as students and independent learners seeking to enter the field.FRED NWANGANGA, PHD, is an assistant teaching professor of business analytics at the University of Notre Dame's Mendoza College of Business. He has over 15 years of technology leadership experience. MIKE CHAPPLE, PHD, is associate teaching professor of information technology, analytics, and operations at the Mendoza College of Business. Mike is a bestselling author of over 25 books, and he currently serves as academic director of the University's Master of Science in Business Analytics program. About the Authors viiAbout the Technical Editors ixAcknowledgments xiIntroduction xxiPART I: GETTING STARTED 1CHAPTER 1 WHAT IS MACHINE LEARNING? 3Discovering Knowledge in Data 5Introducing Algorithms 5Artificial Intelligence, Machine Learning, and Deep Learning 6Machine Learning Techniques 7Supervised Learning 8Unsupervised Learning 12Model Selection 14Classification Techniques 14Regression Techniques 15Similarity Learning Techniques 16Model Evaluation 16Classification Errors 17Regression Errors 19Types of Error 20Partitioning Datasets 22Holdout Method 23Cross-Validation Methods 23Exercises 24CHAPTER 2 INTRODUCTION TO R AND RSTUDIO 25Welcome to R 26R and RStudio Components 27The R Language 27RStudio 28RStudio Desktop 28RStudio Server 29Exploring the RStudioEnvironment 29R Packages 38The CRAN Repository 38Installing Packages 38Loading Packages 39Package Documentation 40Writing and Running an R Script 41Data Types in R 44Vectors 45Testing Data Types 47Converting Data Types 50Missing Values 51Exercises 52CHAPTER 3 MANAGING DATA 53The Tidyverse 54Data Collection 55Key Considerations 55Collecting Ground Truth Data 55Data Relevance 55Quantity of Data 56Ethics 56Importing the Data 56Reading Comma-Delimited Files 56Reading Other Delimited Files 60Data Exploration 60Describing the Data 61Instance 61Feature 61Dimensionality 62Sparsity and Density 62Resolution 62Descriptive Statistics 63Visualizing the Data 69Comparison 69Relationship 70Distribution 72Composition 73Data Preparation 74Cleaning the Data 75Missing Values 75Noise 79Outliers 81Class Imbalance 82Transforming the Data 84Normalization 84Discretization 89Dummy Coding 89Reducing the Data 92Sampling 92Dimensionality Reduction 99Exercises 100PART II: REGRESSION 101CHAPTER 4 LINEAR REGRESSION 103Bicycle Rentals and Regression 104Relationships Between Variables 106Correlation 106Regression 114Simple Linear Regression 115Ordinary Least Squares Method 116Simple Linear Regression Model 119Evaluating the Model 120Residuals 121Coefficients 121Diagnostics 122Multiple Linear Regression 124The Multiple Linear Regression Model 124Evaluating the Model 125Residual Diagnostics 127Influential Point Analysis 130Multicollinearity 133Improving the Model 135Considering Nonlinear Relationships 135Considering Categorical Variables 137Considering Interactions Between Variables 139Selecting the Important Variables 141Strengths and Weaknesses 146Case Study: Predicting Blood Pressure 147Importing the Data 148Exploring the Data 149Fitting the Simple Linear Regression Model 151Fitting the Multiple Linear Regression Model 152Exercises 161CHAPTER 5 LOGISTIC REGRESSION 165Prospecting for Potential Donors 166Classifi cation 169Logistic Regression 170Odds Ratio 172Binomial Logistic Regression Model 176Dealing with Missing Data 178Dealing with Outliers 182Splitting the Data 187Dealing with Class Imbalance 188Training a Model 190Evaluating the Model 190Coeffi cients 193Diagnostics 195Predictive Accuracy 195Improving the Model 198Dealing with Multicollinearity 198Choosing a Cutoff Value 205Strengths and Weaknesses 206Case Study: Income Prediction 207Importing the Data 208Exploring and Preparing the Data 208Training the Model 212Evaluating the Model 215Exercises 216PART III: CLASSIFICATION 221CHAPTER 6 K-NEAREST NEIGHBORS 223Detecting Heart Disease 224k-Nearest Neighbors 226Finding the Nearest Neighbors 228Labeling Unlabeled Data 230Choosing an Appropriate k 231k-Nearest Neighbors Model 232Dealing with Missing Data 234Normalizing the Data 234Dealing with Categorical Features 235Splitting the Data 237Classifying Unlabeled Data 237Evaluating the Model 238Improving the Model 239Strengths and Weaknesses 241Case Study: Revisiting the Donor Dataset 241Importing the Data 241Exploring and Preparing the Data 242Dealing with Missing Data 243Normalizing the Data 245Splitting and Balancing the Data 246Building the Model 248Evaluating the Model 248Exercises 249CHAPTER 7 NAÏVE BAYES 251Classifying Spam Email 252Naïve Bayes 253Probability 254Joint Probability 255Conditional Probability 256Classification with Naïve Bayes 257Additive Smoothing 261Naïve Bayes Model 263Splitting the Data 266Training a Model 267Evaluating the Model 267Strengths and Weaknesses of the Naïve Bayes Classifier 269Case Study: Revisiting the Heart Disease Detection Problem 269Importing the Data 270Exploring and Preparing the Data 270Building the Model 272Evaluating the Model 273Exercises 274CHAPTER 8 DECISION TREES 277Predicting Build Permit Decisions 278Decision Trees 279Recursive Partitioning 281Entropy 285Information Gain 286Gini Impurity 290Pruning 290Building a Classification Tree Model 291Splitting the Data 294Training a Model 295Evaluating the Model 295Strengths and Weaknesses of the Decision Tree Model 298Case Study: Revisiting the Income Prediction Problem 299Importing the Data 300Exploring and Preparing the Data 300Building the Model 302Evaluating the Model 302Exercises 304PART IV: EVALUATING AND IMPROVING PERFORMANCE 305CHAPTER 9 EVALUATING PERFORMANCE 307Estimating Future Performance 308Cross-Validation 311k-Fold Cross-Validation 311Leave-One-Out Cross-Validation 315Random Cross-Validation 316Bootstrap Sampling 318Beyond Predictive Accuracy 321Kappa 323Precision and Recall 326Sensitivity and Specificity 328Visualizing Model Performance 332Receiver Operating Characteristic Curve 333Area Under the Curve 336Exercises 339CHAPTER 10 IMPROVING PERFORMANCE 341Parameter Tuning 342Automated Parameter Tuning 342Customized Parameter Tuning 348Ensemble Methods 354Bagging 355Boosting 358Stacking 361Exercises 366PART V: UNSUPERVISED LEARNING 367CHAPTER 11 DISCOVERING PATTERNS WITH ASSOCIATION RULES 369Market Basket Analysis 370Association Rules 371Identifying Strong Rules 373Support 373Confi dence 373Lift 374The Apriori Algorithm 374Discovering Association Rules 376Generating the Rules 377Evaluating the Rules 382Strengths and Weaknesses 386Case Study: Identifying Grocery Purchase Patterns 386Importing the Data 387Exploring and Preparing the Data 387Generating the Rules 389Evaluating the Rules 389Exercises 392Notes 393CHAPTER 12 GROUPING DATA WITH CLUSTERING 395Clustering 396k-Means Clustering 399Segmenting Colleges with k-Means Clustering 403Creating the Clusters 404Analyzing the Clusters 407Choosing the Right Number of Clusters 409The Elbow Method 409The Average Silhouette Method 411The Gap Statistic 412Strengths and Weaknesses of k-Means Clustering 414Case Study: Segmenting Shopping Mall Customers 415Exploring and Preparing the Data 415Clustering the Data 416Evaluating the Clusters 418Exercises 420Notes 420Index 421

Regulärer Preis: 25,99 €
Produktbild für Das Internet der Dinge und Künstliche Intelligenz als Game Changer

Das Internet der Dinge und Künstliche Intelligenz als Game Changer

Das Internet der Dinge (IoT) und Künstliche Intelligenz (KI) bieten im Zuge der Digitalisierung große Chancen für innovative Geschäftsmodelle und Produktivitätssteigerungen von Unternehmen. Diese Chancen nutzen gegenwärtig vor allem die großen Digital-Champions und Startups. Umfassend und aktuell greifen die Autoren diese Herausforderung für etablierte Unternehmen auf. Zentrale These des Buches ist, dass diese digitalen Technologien die Spielregeln des Wettbewerbs grundlegend verändern und zu Game Changern werden. Die Autoren belegen dies in vier Blöcken: Im ersten Teil erläutern sie wichtige Begriffe. Im zweiten Teil beschreiben Timothy Kaufmann und Hans-Gerd Servatius die Entwicklung zum neuen Management 4.0-Paradigma und dessen Bausteine. Der dritte Teil beschäftigt sich mit dem Wandel der Informations- und Kommunikationstechnik hin zu einer durch IoT- und KI-Technologien geprägten digitalen Architektur. Der abschließende vierte Teil skizziert die Bausteine einer Innovationspolitik 4.0 für den digitalen Wandel, die den Rahmen für Management- und Architektur-Innovationen liefert.Dank klarer Gliederung, anschaulicher Erläuterung der neuen Konzepte und zahlreicher Beispiele aus der Praxis ist das Buch eine wichtige Orientierungshilfe für alle, die nach erfolgreichen Wegen zu einem Management 4.0 und einer digitalen Architektur suchen.TIMOTHY KAUFMANN arbeitet bei SAP als Business Development Director für neue Technologien. Er ist Mitinitiator der Open Industry 4.0 Alliance.PROF. DR. HANS-GERD SERVATIUS ist geschäftsführender Gesellschafter des Innovationsspezialisten Competivation. Daneben lehrt er an der Universität Stuttgart und der RWTH Aachen. Er ist Autor mehrerer Bücher und zahlreicher Fachartikel.Digitale Technologien verändern den Wettbewerb.- Das neue Management 4.0-Paradigma.- Digitale Geschäftsmodelle gemeinsam mit IoT- und KI-Plattformpartnern.- Integration der Objectives and Key Results (OKR-) Methode in agile Strategie- und Innovationsprozesse.- Digitaler Wandel in einer evolutionären Organisation.- Produktivitätssteigerung mit Künstlicher Intelligenz.- Eine IT-Architektur 4.0 unterstützt IoT und KI.- IoT- und KI-Architekturen.- Datengetriebene Services und die Architektur 4.0.- Geschäftsprozesse und die Architektur 4.0.- Das Wertversprechen und die Architektur 4.0.- IoT- und KI-Innovationsökosysteme und die Architektur 4.0.- Auf dem Weg zu einer Innovationspolitik 4.0.

Regulärer Preis: 42,99 €
Produktbild für Einstieg in C

Einstieg in C

Mit diesem kleinschrittigen Lernkurs gelingt der Einstieg in die C-Programmierung mühelos. An vielen praxiserprobten Programmbeispielen werden die Grundlagen verständlich erklärt. Übungsaufgaben helfen dabei, das erworbene Wissen zu vertiefen und anzuwenden. Das Buch eignet sich auch bestens für Einsteiger ohne Programmierkenntnisse. Aus dem Inhalt: Editor und Compiler einrichtenEinführung in die SyntaxSchleifen, Funktionen und Zeiger anwendenDaten dynamisch verwaltenAuf Dateien und Verzeichnisse zugreifenBetriebssystem ansteuernViele Praxistipps zur FehlersucheEine Datenbank mit SQLite aufbauenGUIs mit GTK+ entwickelnRaspberry Pi kennenlernen   Materialien zum Buch ... 14   1.  Eine erste Einführung ... 15        1.1 ... Welche Vorteile bietet C? ... 15        1.2 ... Was benötige ich zum Programmieren? ... 16        1.3 ... Wie ist dieses Buch aufgebaut? ... 16        1.4 ... Wie sollten Sie mit diesem Buch arbeiten? ... 17        1.5 ... C-Standards ... 18        1.6 ... Ubuntu Linux unter Windows ... 18   2.  Unser erstes Programm ... 21        2.1 ... Wie gebe ich das Programm ein? ... 21        2.2 ... Was bedeuten die einzelnen Zeilen? ... 22        2.3 ... Das Programm wird gespeichert ... 23        2.4 ... Wie starte ich das fertige Programm? ... 24        2.5 ... Eine weitere Möglichkeit zum Starten ... 26        2.6 ... Kommentare sind wichtig ... 28        2.7 ... Eine Übungsaufgabe ... 29   3.  Verschiedene Arten von Daten ... 31        3.1 ... Daten bekannt machen und speichern ... 31        3.2 ... Wie gebe ich Daten auf dem Bildschirm aus? ... 33        3.3 ... Wie kann der Benutzer seine Daten per Tastatur eingeben? ... 34        3.4 ... Berechnungen mit Operatoren ... 36        3.5 ... Entwicklung eines Programms ... 38        3.6 ... Fehler suchen ... 39        3.7 ... Eine Übungsaufgabe ... 41   4.  Verschiedene Fälle in einem Programm ... 43        4.1 ... Eine einfache Bedingung mit »if« ... 43        4.2 ... Welche Bedingungen gibt es? ... 45        4.3 ... Zwei Möglichkeiten, mit »if« und »else« ... 46        4.4 ... Wie kann ich Bedingungen kombinieren? ... 47        4.5 ... Eine Übungsaufgabe ... 49   5.  Programmteile wiederholen ... 51        5.1 ... Regelmäßige Wiederholungen mit »for« ... 52        5.2 ... Bedingte Wiederholungen mit »do-while« ... 54        5.3 ... Besser vorher prüfen mit »while«? ... 56        5.4 ... Tabellen formatieren ... 59        5.5 ... Eine Übungsaufgabe zu Tabellen ... 60        5.6 ... Eine Übungsaufgabe zur Eingabekontrolle ... 61   6.  Programme übersichtlich aufteilen ... 63        6.1 ... Wie definiere ich eine Funktion? ... 63        6.2 ... Wie rufe ich eine Funktion auf? ... 65        6.3 ... Werte an eine Funktion übergeben ... 66        6.4 ... Ein Ergebnis von einer Funktion zurückerhalten ... 68        6.5 ... Eine Übungsaufgabe ... 69   7.  Große Datenmengen speichern ... 71        7.1 ... Felder erzeugen und mit Daten füllen ... 71        7.2 ... Wie gebe ich die Daten aus? ... 73        7.3 ... Wie kann der Benutzer ein Feld füllen? ... 74        7.4 ... Eine Übungsaufgabe ... 76   8.  Zeichen und Texte speichern ... 77        8.1 ... Zeichenketten erzeugen und füllen ... 77        8.2 ... Wie gebe ich eine Zeichenkette aus? ... 79        8.3 ... Wie kann der Benutzer eine Zeichenkette füllen? ... 80        8.4 ... Mehrere Zeichenketten ... 81        8.5 ... Wie kann ich Zeichenketten formatieren? ... 82        8.6 ... Eine Übungsaufgabe ... 83   9.  Indirekter Zugriff mit Zeigern ... 85        9.1 ... Wie arbeite ich mit Zeigern und Adressen? ... 85        9.2 ... Wie nutze ich Zeiger bei Funktionen? ... 87        9.3 ... Wir zeigen auf Felder ... 88        9.4 ... Eine Übungsaufgabe ... 90 10.  Unterschiedliche Daten zusammenfassen ... 93        10.1 ... Strukturen definieren ... 93        10.2 ... Wie erzeuge ich Strukturdaten? ... 94        10.3 ... Wie gebe ich die Daten aus? ... 95        10.4 ... Wie kann der Benutzer Strukturen füllen? ... 96        10.5 ... Mehrere Strukturdaten ... 98        10.6 ... Wie übergebe ich Strukturdaten? ... 99        10.7 ... Eine Übungsaufgabe ... 102 11.  Daten auf der Festplatte ... 105        11.1 ... Wie speichere ich Daten auf der Festplatte? ... 105        11.2 ... Wie lese ich Daten von der Festplatte? ... 108        11.3 ... Eine Übungsaufgabe ... 110 12.  Eine Vertiefung der bisherigen Themen ... 111        12.1 ... Verschiedene Arten von Daten ... 111        12.2 ... Verschiedene Fälle in einem Programm ... 129        12.3 ... Programmteile wiederholen ... 137        12.4 ... Programme übersichtlich aufteilen ... 145        12.5 ... Große Datenmengen speichern ... 156        12.6 ... Zeichen und Texte speichern ... 174        12.7 ... Indirekter Zugriff mit Zeigern ... 200        12.8 ... Unterschiedliche Daten zusammenfassen ... 202        12.9 ... Daten auf der Festplatte ... 207 13.  Daten dynamisch im Speicher verwalten ... 227        13.1 ... Warum benötige ich dynamische Felder? ... 227        13.2 ... Eine Datenreihe dynamisch speichern ... 228        13.3 ... Die Größe eines dynamischen Felds ändern ... 230        13.4 ... Eine Tabelle dynamisch speichern ... 232        13.5 ... Wie übergebe ich ein dynamisches Feld an eine Funktion? ... 235 14.  Arbeiten mit Zahlen ... 241        14.1 ... Winkelfunktionen ... 241        14.2 ... Runden, Nachkommastellen, Modulo ... 243        14.3 ... Weitere mathematische Funktionen ... 245        14.4 ... Komplexe Zahlen darstellen ... 246        14.5 ... Rechnen mit komplexen Zahlen ... 248        14.6 ... Weitere Funktionen für komplexe Zahlen ... 250        14.7 ... Bit-Operatoren ... 252        14.8 ... Umwandlung von Dualzahlen ... 255        14.9 ... Bitfelder ... 258 15.  Präprozessor-Anweisungen ... 261        15.1 ... Einbinden von Dateien ... 261        15.2 ... Definitionen und Makros ... 262        15.3 ... Definitionen und Verzweigungen ... 264        15.4 ... Eine Systemweiche ... 266 16.  Zugriff auf Dateien und Verzeichnisse ... 269        16.1 ... Attribute von Dateien und Verzeichnissen ... 269        16.2 ... Zugriffsrechte ändern ... 273        16.3 ... Inhalt eines Verzeichnisses ... 275        16.4 ... Inhalt eines Verzeichnisbaums ... 278        16.5 ... Dateien ändern ... 280        16.6 ... Verzeichnisse ändern ... 281 17.  Umgang mit Datum und Uhrzeit ... 283        17.1 ... Weltzeit ausgeben ... 283        17.2 ... Lokale Zeit ausgeben und formatieren ... 285        17.3 ... Zeitangaben erzeugen ... 287        17.4 ... Zeitspanne messen ... 289        17.5 ... Zeit abwarten ... 291        17.6 ... Alter berechnen ... 292 18.  Kommunikation mit dem Betriebssystem ... 295        18.1 ... Wie übergebe ich Daten an ein Programm? ... 295        18.2 ... Wie nutze ich die Rückgabe eines Programms? ... 297        18.3 ... Systemkommandos ausführen ... 299 19.  Datenbanken ... 301        19.1 ... Aufbau einer Datenbank ... 301        19.2 ... Datenbanken mit SQLite ... 302        19.3 ... Datenbank und Tabelle erzeugen ... 303        19.4 ... Datensätze einfügen ... 305        19.5 ... Anzeigen der Datensätze ... 307        19.6 ... Auswahl von Datensätzen und Feldern ... 309        19.7 ... Auswahl mit Platzhaltern ... 312        19.8 ... Auswahl nach Eingabe ... 314        19.9 ... Sortieren der Ausgabe ... 316        19.10 ... Ändern von Datensätzen ... 318        19.11 ... Löschen von Datensätzen ... 319 20.  Beispielprojekte ... 323        20.1 ... Lernspiel: Hauptstädte der EU ... 323        20.2 ... Lernspiel: Kopfrechnen ... 329        20.3 ... Ausgabe von Morsezeichen ... 337        20.4 ... Spiel Mastermind ... 344 21.  Grafische Benutzeroberflächen mit GTK+ ... 351        21.1 ... Datentypen der »Glib« ... 352        21.2 ... Zeichenketten mit »GString« ... 353        21.3 ... Felder mit GArray ... 355        21.4 ... Die erste Benutzeroberfläche ... 361        21.5 ... Eigenschaften setzen und abrufen ... 364        21.6 ... Ereignisfunktionen ... 365        21.7 ... Positionierung von Widgets ... 367        21.8 ... Auswahl- und Eingabe-Widgets ... 369   A.  Installationen ... 375   B.  Hilfestellungen und Übersichten ... 399   C.  Lösungen der Übungsaufgaben ... 411   Index ... 425

Regulärer Preis: 24,90 €
Produktbild für Jakarta EE Recipes

Jakarta EE Recipes

Take a problem-solution approach to programming enterprise Java applications and microservices for cloud-based solutions, enterprise database applications, and even small business web applications. This book provides effective and proven code snippets that you can immediately use to accomplish just about any task that you may encounter. You can feel confident using the reliable solutions that are demonstrated in this book in your personal or corporate environment.Java EE was made open source under the Eclipse Foundation, and Jakarta EE is the new name for what used to be termed the Java Enterprise Edition Platform. This book helps you rejuvenate your Java expertise and put the platform’s latest capabilities to use in quickly developing robust applications. If you are new to Jakarta EE, this book will help you learn features of the platform, and benefit from one of the most widely used and powerful technologies available for application development today.Examples in JAKARTA EE RECIPES highlight Jakarta EE’s capabilities, helping you to build streamlined and reliable applications using the latest in Java technologies. The book takes a problem-solution approach in which each section introduces a common programming problem, showing you how to best solve that problem using the latest features in Jakarta EE. Solutions are presented in the form of working code examples that you can download and use immediately in your own projects. Clear descriptions are given so you can understand and learn to build further on the solutions that are provided. This is the ideal book for the code-focused programmer interested in keeping up with the future of enterprise development on the Java Platform.WHAT YOU WILL LEARN* Develop enterprise Java applications using the now open source Jakarta EE platform* Create great-looking user interfaces using Jakarta Server Faces and the Eclipse Krazo framework* Build database applications using Jakarta Enterprise Beans and Jakarta RESTFul web services* Automate testing through cohesive test suites built on Arquillian for Jakarta EE applications* Deploy microservices applications in cloud environments using Docker* Secure applications utilizing the Jakarta EE Security API and JSON Web TokensWHO THIS BOOK IS FORJava developers interested in quickly finding effective and proven solutions without reading through a lengthy manual and scrubbing for techniquesJOSH JUNEAU is a professional application developer who enjoys working with database technology and learning new languages. He is a seasoned professional in Java SE and Java EE development, and brings strong database experience to the table as well. His interest in Java for developing web-based solutions has led to a passion of Java technology as a whole, including other languages on the JVM. In his spare time, Josh enjoys spending time with his wife and five wonderful children at his home in rural Illinois. 1. Servlets and Java Server Pages2. JavaServer Faces Fundamentals3. Advanced JavaServer Faces4. Eclipse Krazo5. JDBC With Jakarta EE6. Object-Relational Mapping7. Jakarta NoSQL8. Enterprise JavaBeans9. Java Persistence Query Language10. Bean Validation11. Contexts and Dependency Injection12. Java Message Service13. RESTful Web Services14. WebSockets and JSON15. Security16. Concurrency and Batch17. Deploying to Containers

Regulärer Preis: 62,99 €
Produktbild für Generatives Deep Learning

Generatives Deep Learning

Generative Modelle haben sich zu einem der spannendsten Themenbereiche der Künstlichen Intelligenz entwickelt: Mit generativem Deep Learning ist es inzwischen möglich, einer Maschine das Malen, Schreiben oder auch das Komponieren von Musik beizubringen – kreative Fähigkeiten, die bisher dem Menschen vorbehalten waren. Mit diesem praxisnahen Buch können Data Scientists einige der eindrucksvollsten generativen Deep-Learning-Modelle nachbilden, wie z.B. Generative Adversarial Networks (GANs), Variational Autoencoder (VAEs), Encoder-Decoder- sowie World-Modelle. David Foster vermittelt zunächst die Grundlagen des Deep Learning mit Keras und veranschaulicht die Funktionsweise jeder Methode, bevor er zu einigen der modernsten Algorithmen auf diesem Gebiet vorstößt. Die zahlreichen praktischen Beispiele und Tipps helfen Ihnen herauszufinden, wie Ihre Modelle noch effizienter lernen und noch kreativer werden können. - Entdecken Sie, wie Variational Autoencoder den Gesichtsausdruck auf Fotos verändern können - Erstellen Sie praktische GAN-Beispiele von Grund auf und nutzen Sie CycleGAN zur Stilübertragung und MuseGAN zum Generieren von Musik - Verwenden Sie rekurrente generative Modelle, um Text zu erzeugen, und lernen Sie, wie Sie diese Modelle mit dem Attention-Mechanismus verbessern können - Erfahren Sie, wie generatives Deep Learning Agenten dabei unterstützen kann, Aufgaben im Rahmen des Reinforcement Learning zu erfüllen - Lernen Sie die Architektur von Transformern (BERT, GPT-2) und Bilderzeugungsmodellen wie ProGAN und StyleGAN kennen "Dieses Buch ist eine leicht zugängliche Einführung in das Deep-Learning-Toolkit für generatives Modellieren. Wenn Sie ein kreativer Praktiker sind, der es liebt, an Code zu basteln, und Deep Learning für eigene Aufgaben nutzen möchte, dann ist dieses Buch genau das Richtige für Sie." — David Ha, Research Scientist bei Google Brain

Regulärer Preis: 39,90 €
Produktbild für Python Ge-Packt

Python Ge-Packt

* SCHNELLER ZUGRIFF AUF MODULE, KLASSEN UND FUNKTIONEN* TKINTER, DATENBANKEN, OOP UND INTERNETPROGRAMMIERUNG* FÜR DIE VERSION PYTHON 3.8PYTHON GE-PACKT – DIE PRAKTISCHE REFERENZMit dieser Referenz erhalten Sie effiziente Unterstützung bei der Programmierung mit Python 3 – klar strukturiert zum Nachschlagen. In 24 thematisch gegliederten Kapiteln werden die wichtigsten Module detailliert und praxisbezogen erläutert: angefangen bei grundlegenden Elementen wie Datentypen, Operatoren und Standardfunktionen bis hin zu Spezialthemen wie der Schnittstelle zum Laufzeit- und Betriebssystem, Generatoren, GUI-Programmierung mit tkinter, PIL, Logging, Kontextmanagement, XML und Dezimalarithmetik. Darüber hinaus finden Sie kompakte Darstellungen der Umsetzung von objektorientierter Programmierung, WSGI, CGI- und Internetprogrammierung (E-Mail, FTP, Telnet, HTTP) sowie der Datenbankanbindung (MySQL, SQLite).Die Erläuterungen werden ergänzt durch übersichtliche Tabellen, UML-Diagramme und zahlreiche leicht nachvollziehbare Beispiele, die Anregungen und Lösungen für eigene Programmieraufgaben liefern.Michael Weigend ist Informatiklehrer und hat bereits mehrere Bücher zum Raspberry Pi und zu Python geschrieben.

Regulärer Preis: 9,99 €
Produktbild für Refactoring

Refactoring

* UMFASSEND ÜBERARBEITETE UND AKTUALISIERTE NEUAUFLAGE DES STANDARDWERKS IN VOLLSTÄNDIG NEUER ÜBERSETZUNG* VERBESSERUNGSMÖGLICHKEITEN VON BESTEHENDER SOFTWARE ANHAND VON CODE-SMELLS ERKENNEN UND CODE EFFIZIENT ÜBERARBEITEN* UMFASSENDER KATALOG VON REFACTORING-METHODEN MIT CODE-BEISPIELEN IN JAVASCRIPTSeit mehr als zwanzig Jahren greifen erfahrene Programmierer rund um den Globus auf dieses Buch zurück, um bestehenden Code zu verbessern und leichter lesbar zu machen sowie Software besser warten und erweitern zu können.In diesem umfassenden Standardwerk zeigt Ihnen Martin Fowler, was die Vorteile von Refactoring sind, wie Sie verbesserungsbedürftigen Code erkennen und wie Sie ein Refactoring - unabhängig von der verwendeten Programmiersprache - erfolgreich durchführen. In einem umfangreichen Katalog gibt Fowler Ihnen verschiedene Refactoring-Methoden mit ausführlicher Erläuterung, Motivation, Vorgehensweise und einfachen Beispielen in JavaScript an die Hand.Darüber hinaus behandelt er insbesondere folgende Schwerpunkte:* Allgemeine Prinzipien und Durchführung des Refactorings* Refactoring anwenden, um die Lesbarkeit, Wartbarkeit und Erweiterbarkeit von Programmen zu verbessern* Code-Smells erkennen, die auf Verbesserungsmöglichkeiten durch Refactoring hinweisen* Entwicklung zuverlässiger Tests für das Refactoring* Erkennen von Fallstricken und notwendigen Kompromissen bei der Durchführung eines RefactoringsDiese vollständig neu übersetzte Ausgabe wurde von Grund auf überarbeitet, um den maßgeblichen Veränderungen der modernen Programmierung Rechnung zu tragen. Sie enthält einen aktualisierten Katalog von Refactoring-Methoden sowie neue Beispiele für einen funktionalen Programmieransatz.AUS DEM INHALT:* Definition und Grund-lagen von Refactoring* Der richtige Zeitpunkt für ein Refactoring* Verbesserungsbedürftigen Code erkennen (Code-Smells)* Tests und selbsttestender Code* Umfangreicher Refactoring-Katalog:* Kapselung* Verschiebungen* Daten organisieren* Bedingungen vereinfachen* Refactoring von APIs* Umgang mit VererbungAMAZON-LESERSTIMME ZUR VORAUFLAGE:»Dieses Buch gibt einen sehr guten Einstieg in das Refactoring und hält auch eine übersichtliche, gut erklärte Sammlung von Refactoring-Patterns parat. Ein Buch, das sich jeder Programmierer unters Kopfkissen legen sollte.«Martin Fowler ist Chief Scientist bei ThoughtWorks sowie Autor, Speaker und Consultant auf dem Gebiet der Softwareentwicklung. Er konzentriert sich auf die Entwicklung von Unternehmenssoftware und beschäftigt sich damit, was ein gutes Design auszeichnet und mit welchen Verfahren es umgesetzt werden kann.

Regulärer Preis: 9,99 €
Produktbild für Docker Praxiseinstieg

Docker Praxiseinstieg

* Docker-Images und -Container verwenden * Container deployen und debuggen * Einsatz von Tools: Docker Swarm, Kubernetes, Amazon EC2 Container Services Linux-Container besitzen das Potenzial, das Deployment von Applikationen für verschiedene Umgebungen stark zu verändern. Dieses Buch weist Ihnen den Weg zu einer funktionierenden Docker-Umgebung. Die Autoren zeigen Ihnen, wie Sie Docker-Images Ihrer Anwendungen inklusive aller Abhängigkeiten erstellen, wie Sie diese testen, deployen und skalieren können, und wie Sie die Container in der Produktivumgebung pflegen und warten. Dabei kommen Themen wie die Einrichtung, das Testen und das Deployment von Docker-Anwendungen ebenso zur Sprache wie das Debugging eines laufenden Systems. Mit diesem Buch werden Sie verstehen, was Docker wirklich leistet, welche Relevanz es hat, wie Sie es zum Laufen bekommen, wie Sie damit Ihre Anwendungen deployen können und was erforderlich ist, um es in einer Produktivumgebung einzusetzen. Die Autoren dieses Buches sind in dem Unternehmen New Relic für die Sicherstellung der Stabilität der dort entwickelten Anwendungen zuständig und lassen Sie an ihren im praktischen Umgang mit Docker gesammelten Erfahrungen teilhaben. Ihre Zielsetzung lautet, Sie von ihren Erkenntnissen profitieren zu lassen und davor zu bewahren, dieselben Rückschläge hinnehmen zu müssen, die den Autoren in diesem Kontext widerfahren sind. Aus dem Inhalt: * Einfachere Handhabung der Abhängigkeiten und des Deployments von Anwendungen mit Docker * Docker-Architektur und Optimierung des Workflows * Installation unter Linux, macOS und Windows * Einsatz von Docker-Images und -Containern * Das Kommandozeilentool docker * Praxisnahe Verfahren für das Deployment und das Testen von Linux-Containern in Produktivumgebungen * Container-Debugging * Einsatz von Docker Compose * Deployment skalierbarer Container in Produktivumgebungen * Weiterführende Themen: * Deployment-Tools * Vernetzung * Orchestrierung * Sicherheitsaspekte * Konfiguration Karl Matthias war als Entwickler, Systemadministrator und Netzwerktechniker für Start-ups und verschiedene Fortune-500-Unternehmen tätig. Sean P. Kane war lange als IT-Techniker tätig und hat in sehr breit gefächerten Industriebranchen (Biotechnologie, Verteidigungswesen, Hightech-Unternehmen) viele verschiedene Posten bekleidet.

Regulärer Preis: 9,99 €
Produktbild für Alexa Skills programmieren für Amazon Echo & Co.

Alexa Skills programmieren für Amazon Echo & Co.

* EINFACHER EINSTIEG IN DIE PROGRAMMIERUNG VON ALEXA SKILLS MIT JAVASCRIPT* NUTZERANTWORTEN SPEICHERN UND VERARBEITEN, BILDER UND AUDIOFILES EINBINDEN, FORTGESCHRITTENES DIALOGMANAGEMENT, ANBINDUNG EXTERNER APIS U.V.M.* SKILLS BEKANNT MACHEN UND DAMIT GELD VERDIENENÜber 11 Millionen Menschen in Deutschland nutzen Amazon Alexa aktiv und das Potenzial der verfügbaren Skills ist noch lange nicht ausgeschöpft. Egal, ob Sie experimentierfreudiger Privatanwender oder professioneller Programmierer sind - wenn Sie einen Skill für Amazon Alexa entwickeln möchten und bereits erste Erfahrungen mit JavaScript haben, ist dieses Buch genau das richtige für Sie.Anhand verschiedener Praxisbeispiele zeigt der Autor, wie Sie mit der Alexa Developer Console und Node.js ganz einfach Ihren ersten Skill erstellen und Schritt für Schritt um neue Funktionen erweitern. Dank des AWS-Promotional-Credits-Programms ist das für Entwickler völlig kostenlos möglich.Sie lernen, Nutzerantworten zu speichern und zu verarbeiten, Skill Cards für die Ausgabe in der Alexa App zu erstellen und Alexa mit verschiedenen Stimmen sprechen zu lassen. Für alle, die noch einen Schritt weitergehen wollen, beschreibt der Autor das fortgeschrittene Dialogmanagement, das Erstellen von Skills mit der AWS Cloud sowie die Nutzung externer Informationen, beispielsweise für das Abrufen von Wetterdaten oder Versenden von E-Mails.Abschließend zeigt der Autor Ihnen Schritt für Schritt, wie Sie einen Eintrag im Alexa Skill Store erstellen und gibt Ihnen praktische Tipps für die Veröffentlichung und die Monetarisierung Ihrer Skills an die Hand.AUS DEM INHALT:* Skills in der Alexa Developer Console anlegen* Skill-Code automatisch erzeugen* JSON-Sprachmodell und Skill-Logik in Node.js* Antworten speichern mit DynamoDB* Skills testen* Debugging mit CloudWatch* SSML-Tags zur Veränderung der Aussprache* Skill Cards für die Alexa App erstellen* Audiodateien, Bilder und Videos einbinden* Antworten auf Plausibilität prüfen und Kontextwechsel* Alexa Skills in der AWS Cloud* Externe Informationen nutzen und APIs einbinden* Skills zertifizieren und veröffentlichen* Alexa-SEO und Monetarisierung* Code-Beispiele zum DownloadZimmermanns Internet & PR-Beratung

Regulärer Preis: 9,99 €
Produktbild für Software-Engineering - kompakt

Software-Engineering - kompakt

Von zentraler Bedeutung für das Software-Engineering ist der Software-Lebenszyklus. Gemeint ist damit der gesamte Prozess, der zur Erstellung und Erhaltung eines Softwaresystems führt. Sowohl in traditionellen als auch in agilen Softwareerstellungsprozessen läuft dieser Lebenszyklus ab. Bewährt hat sich in der Praxis die Einteilung in sogenannte Phasen, denen die Gliederung folgt.Nach einer kurzen Einführung werden in Kapitel 2 vorab phasenübergreifende Verfahren wie divergierende Vorgehensmodelle und Projektmanagement besprochen. Kapitel 3 behandelt die Planungsphase; Kapitel 4 ist dem Requirements-Engineering gewidmet, bei dem die Software-Anforderungen kreativ konstruiert, analysiert und – traditionell oder agil – dokumentiert werden. In Kapitel 5 folgt die Besprechung der Verfahren für die Designphase der Software. Hier wird hinterfragt, wie gute Software-Architekturen Erfolg versprechend erdacht, mit der UML-Notation geeignet modelliert und in späteren Projekten wiederverwendet werden können. Kapitel 6 widmet sich der Test- und Abnahmephase und damit den wichtigen Qualitätssicherungsfragen. Abschließend wird in Kapitel 7 die Wartung – zur wirksamen Erhaltung von Softwaresystemen – erklärt.Anfänger erhalten eine schnelle Orientierung und kompaktes, fundiertes Grundwissen. Fortgeschrittene Leser finden hier ein aktuelles, gut strukturiertes Nachschlagewerk.

Regulärer Preis: 22,99 €
Produktbild für Introducing Play Framework

Introducing Play Framework

Enter the world of rapid web application development. This gentle introduction to Play covers all you need to know: it carefully introduces the background concepts before diving into examples, making learning Play 2 enjoyable (it includes the latest Play framework version 2.8).Introducing Play Framework is crisp, up-to-the-point, and full of valuable information. You will find chapters covering the basics of Play, the sbt build system, the Ebean ORM, web services using Play, production deployment, cache, and more with actual pragmatic code snippets for common tasks.After reading and using this book, you'll be able to build and deploy Java-based web applications with the Play framework.WHAT YOU WILL LEARN* Use the Play framework to do rapid Java-based web application development * Work with Play controllers and Play views* Create web services using JSON and XML* Persist data and access databases* Use Play modulesCarry out asynch programming * Cache, deploy, and work with code snippets in PlayWHO THIS BOOK IS FORThose with at least some prior experience with Java.Prem Kumar Karunakaran is an enterprise architect with around 14 years of industry experience. He holds a bachelors degree in electronics engineering and is also an Oracle Certified Java Enterprise Edition Master. He was involved in the architecture and design of many cutting-edge products used by clients around the globe. He has worked with organizations such as Infosys and IBS as an architect and has worked in many projects spanning airlines, logistics, travel and retail. He is passionate about Java and loves to learn new technologies and contributes his time to open source initiatives as well.Chapter 1. Getting started with Play 2Chapter 2: Build SystemChapter 3: Play Controllers and HTTP RoutingChapter 4: Play Views and Templating with ScalaChapter 5: Concurrency and Asynchronous programmingChapter 6: Web Services, Json and XMLChapter 7: Accessing DatabasesChapter 8: Complete ExampleChapter 9: Using Play modulesChapter 10 - Application Settings & Error handlingChapter 11: Working with CacheChapter 12: Production Deployment

Regulärer Preis: 46,99 €
Produktbild für Pro Perl Programming

Pro Perl Programming

Master intermediate to advanced techniques of the Perl programming language starting with a focus on regular expressions and some of their advanced features. This book then covers other pro-level features, including formatted output, file handling, and more.Additionally, you'll learn and explore the most useful built-in variables, pragmas, and modules available in the Perl language. Furthermore, you'll work with geometry managers and get a thorough treatment of graphical user interface development using Perl/TK and widgets. Lastly, you’ll cover debugging techniques.Pro Perl Programming is a professional-level reference guide on Perl and includes important aspects of it that you need as a professional programmer.WHAT YOU WILL LEARN* Program regular expressions including atoms, smartmatch operators, and moreUse advanced features such as HiRes Time, slurp() functions, Critic, Tidy and many more functions * Handle advanced formatted output such as printf and sprintfExplore useful built-in variables, including status variables, separator variables, and the signal handle variable * Explore and use Perl's built-in modules, including the Pragma modulesWork with Perl/TK and its widgets-like geometry managers, frames, labels, buttons, check buttons, radio buttons, scrollbars, scales, entries, and menusWHO THIS BOOK IS FORThose with at least some prior experience with Perl programming or have read Beginning Perl Programming by William Rothwell.At the impressionable age of 14, WILLIAM "BO" ROTHWELL crossed paths with a TRS-80 Micro Computer System (affectionately known as a “Trash 80”). Soon after the adults responsible for Bo made the mistake of leaving him alone with the TSR-80. He immediately dismantled it and held his first computer class, showing his friends what made this “computer thing” work. Since this experience, Bo’s passion for understanding how computers work and sharing this knowledge with others has resulting in a rewarding career in IT training. His experience includes Linux, Unix, DevOps tools, and programming languages such as Perl, Python, Tcl, and BASH. Chapter One Intermediate Regular Expressions1.1 Review: Basic Regular Expressions1.2 Modifiers1.3 Getting the Nth occurrence of a match1.4 Greedy vs. Non-Greedy matches1.5 Regular Expression variables1.6 Special characters in regular expressions1.7 Assertions1.8 Reading from filehandles using split 1.9 Multiple line matching1.10 Commenting Regular Expressions1.11 Alternative Delimiters1.12 Additional resources1.13 Lab ExercisesChapter Two Advanced Regular Expressions2.1 Make use of the Smartmatch Operator2.2 Understand Regular Expression precedence2.3 Understand what is *NOT* a Regular Expression atom2.4 Using Regular Expressions in List Context2.5 Match whitespace properly2.6 Use \G2.7 Use the \A, \Z and \z assertions2.8 Avoid capturing2.9 Avoid the variables $`, $& and $'2.10 Compile your Regular Expressions before using them2.11 Benchmark your patterns2.12 Use Regexp::Common2.13 Flags you should consider always using2.14 Avoid escapes2.15 Use the re Pragma2.16 Understand backtrackingChapter Three Advanced Features3.1 Use my iterator variables with for loops3.2 Utilize loop labels3.3 Avoid using for file matching3.4 Time::HiRes3.5 Contextual::Return3.6 Indirect Filehandles3.7 The three argument technique to the open statement3.8 Always check the return values of open, close and when printing to a file3.9 Close filehandles as soon as possible3.10 Avoid slurping3.11 Creatively use the do statement3.12 Use the slurp() function3.13 Test for interactivity3.14 Use IO::Prompt3.15 Understand where to find documentation3.16 Understand context3.17 Understand the => operator3.18 Understand subroutine calls3.19 Understand and/or versus &/||3.20 Use Perl::Tidy3.21 Use Perl::Critic3.22 Understand Getopt::Std3.23 Understand Getopt::Long3.24 Alternative commenting technique3.25 Passing notes within a Perl program 3.26 Use Smart::CommentsChapter Four Advanced Formatted Output4.1 Review: The format statement4.2 Advanced format statement features4.3 printf and sprintf4.4 Using select4.5 The operator4.6 Additional Resources4.7 Lab ExercisesChapter Five Exploring Useful Built-in Variables5.1 Perl's built-in variables5.2 Variables reference chart5.3 Use English5.4. Status variables5.5 Separator variables5.6 The signal handle variable5.7 Version of Perl5.8 Program start time5.9 Additional Resources5.10 Lab ExercisesChapter Six Advanced File Handling6.1 Review: Basic File Handling6.2 Displaying the file position6.3 Moving the file position6.4 Opening files for reading and writing6.5 Making "files" within your script6.6 Locking files6.7 Flushing output buffers6.8 Additional Resources6.9 Lab ExercisesChapter Seven Pragmas 7.1 Perl pragmas7.2 Pragma chart7.3 Review: use strict7.4 Predeclaring subroutines7.5 Predeclaring global variables7.6 Additional Resources7.7 Lab ExercisesChapter Eight Exploring Useful Built-in Modules8.1 Built-in modules8.2 Module table8.3 Cwd8.4 Env8.5 File8.6 Math8.7 Sys8.8 Text8.9 Fatal8.10 Benchmark8.11 Getopt::Std8.12 Getopt::Long8.13 Additional Resources8.14 Lab ExercisesChapter Nine Debugging Tools9.1 Review: The -w switch9.2 Review: The Perl debugger9.3 Debugger commands9.4 Diagnostics9.5 Carp9.6 Data::Dumper9.7 Additional Resources9.8 Lab ExercisesChapter Ten Perl/TK Basics10.1 Working with Windows10.2 Types of Widgets10.3 Geometry Managers10.4 Creating Widgets10.5 The OO nature of the Tk module10.6 Additional resources10.7 Lab ExercisesChapter Eleven Perl TK Widgets11.1 Frames11.2 Labels11.3 Buttons11.4 Checkbuttons11.5 Radiobuttons11.6 Listboxes11.7 Scrollbars11.8 Scales11.9 Entries11.10 Creating menus11.11 Additional Resources11.12 Lab ExercisesModule Twelve Geometry Managers12.1 pack options12.2 The -after and -before option12.3 The -anchor and -side options12.4 The -fill option12.5 Padding with pack12.6 Managing widgets with pack12.7 Binding12.8 The focus command 12.9 Additional Resources12.10 Lab Exercises

Regulärer Preis: 66,99 €
Produktbild für SAP Fiori

SAP Fiori

Lernen Sie alles über die Implementierung und Entwicklung von SAP-Fiori-Apps! Michael Englbrecht zeigt Ihnen, wie Sie SAP Fiori installieren, einrichten und mit SAP Gateway in Ihre Systemlandschaft integrieren. Passen Sie die Oberflächen an Ihre Anforderungen an, oder entwickeln Sie gleich eigene Anwendungen. Die 3. Auflage ist inklusive neuer Entwicklungen in SAP Fiori 3.0 – zudem erfahren Sie z.B., welche Möglichkeiten Ihnen das neue RESTful-ABAP-Programmiermodell bietet. Aus dem Inhalt: User Experience mit SAP FioriAktuelle Design Guidelines Customizing der SAP-Fiori-AppsDesign ThinkingSAP Fiori Launchpad konfigurierenUI Theme Designer Benutzer verwaltenAdministration und TroubleshootingSAP Gateway als Frontend-ServerSAP HANA XS und SAP HANA XSAABAP Core Data ServicesSAP Fiori Cloud   Einleitung ... 19 Teil I  SAP Fiori im Überblick ... 27   1.  Was ist SAP Fiori? ... 29        1.1 ... SAP Fiori -- das Konzept ... 30        1.2 ... SAP Fiori -- das Design ... 39        1.3 ... SAP Fiori -- die Technologie ... 42        1.4 ... Das intelligente Unternehmen ... 56        1.5 ... Übersicht über die SAP-Fiori-Apps ... 59   2.  User-Experience-Strategien entwickeln ... 65        2.1 ... Grundlagen ... 65        2.2 ... Benutzeroberflächen gestalten ... 72        2.3 ... Ihre eigene UX-Strategie entwickeln ... 105   3.  SAP Fiori Design Guidelines ... 115        3.1 ... Grundlagen ... 117        3.2 ... Floorplans ... 128        3.3 ... Die SAP Fiori for iOS Design Guidelines ... 155        3.4 ... Die SAP Fiori for Android Design Guidelines ... 159        3.5 ... SAP Conversational User Experience ... 163        3.6 ... Konzeptionelle SAP-Fiori-Applikationstypen ... 165   4.  Das SAP Fiori Launchpad ... 179        4.1 ... Bestandteile des SAP Fiori Launchpads ... 179        4.2 ... SAP Fiori Launchpad unter SAP Fiori 3.0 ... 197        4.3 ... Das Launchpad aus technischer Sicht ... 199        4.4 ... SAP-Fiori-Anwendungen bereitstellen ... 202 Teil II  Implementierung von SAP Fiori ... 205   5.  Architektur ... 207        5.1 ... Architekturüberblick und technische SAP-Fiori-Applikationstypen ... 207        5.2 ... SAP HANA XS ... 212        5.3 ... SAP NetWeaver AS ABAP und die SAP Business Suite ... 215        5.4 ... ABAP-Frontend-Server ... 218        5.5 ... SAP Web Dispatcher ... 227        5.6 ... Endgeräte ... 228        5.7 ... Architektur im Kontext von SAP S/4 HANA ... 231   6.  Installation ... 239        6.1 ... Installation planen ... 240        6.2 ... Installationsvoraussetzungen überprüfen ... 251        6.3 ... Softwarekomponentenversionen herunterladen ... 257        6.4 ... Installationswerkzeuge ... 260        6.5 ... Plattformkomponenten installieren ... 261        6.6 ... Produktspezifische Komponenten installieren ... 272   7.  Konfiguration ... 279        7.1 ... Kommunikationskanäle und Single Sign-on konfigurieren ... 279        7.2 ... ABAP-Frontend-Server konfigurieren ... 291        7.3 ... SAP Fiori Launchpad und Transactional Apps ... 303        7.4 ... SAP-Fiori-Suche und Fact Sheets konfigurieren ... 326        7.5 ... KPI Modeler und Analytical Apps ... 334        7.6 ... KPI Design und Analytical Apps unter SAP S/4HANA ... 345   8.  Anpassungen mit dem UI Theme Designer ... 357        8.1 ... Konzept des UI Theme Designers ... 358        8.2 ... Mit dem UI Theme Designer arbeiten ... 360        8.3 ... Themes verwalten ... 370        8.4 ... Themes verwenden ... 373        8.5 ... UI Theme Designer der SAP Cloud Platform ... 375   9.  Administration von SAP-Fiori-Anwendungen ... 379        9.1 ... Aufgaben eines SAP-Fiori-Administrators ... 379        9.2 ... Monitoring ... 381        9.3 ... Troubleshooting ... 397 Teil III  SAP-Fiori-Anwendungen entwickeln ... 417 10.  Grundlagen der SAP-Fiori-Entwicklung ... 419        10.1 ... SAPUI5 ... 419        10.2 ... Best Practices bei der Entwicklung ... 453 11.  Entwicklung von Backend-Diensten ... 487        11.1 ... SAP Gateway und OData-Services ... 487        11.2 ... ABAP Core Data Services ... 513        11.3 ... Das ABAP-RESTful-Programmiermodell ... 535 12.  Entwicklung einer SAP-Fiori-Anwendung mit SAP Web IDE ... 547        12.1 ... Einführung in die SAP Web IDE ... 548        12.2 ... Mit SAP Web IDE arbeiten ... 555        12.3 ... Eine Anwendung mit SAP Web IDE entwickeln ... 564        12.4 ... SAP Fiori Elements ... 588        12.5 ... Mit SAP-Build-Prototypen arbeiten ... 629 13.  Erweiterung von SAP-Fiori-Anwendungen ... 633        13.1 ... Einführung und Überblick ... 634        13.2 ... Erweiterungen im Backend ... 639        13.3 ... Erweiterung von OData-Services ... 646        13.4 ... Erweiterung von Fact Sheets ... 652        13.5 ... Erweiterung des User Interfaces ... 663        13.6 ... Erweiterung der App »My Inbox« mit BAdIs ... 682        13.7 ... Anpassungen mit den SAPUI5 Flexibility Services ... 706        13.8 ... Implementierung von Erweiterungen für das ABAP-Programmiermodell für SAP Fiori ... 713        13.9 ... Ausblick ... 733 14.  SAP Fiori Cloud ... 735        14.1 ... Deployment-Optionen ... 739        14.2 ... Entwicklung von SAP-Fiori-Cloud-Lösungen ... 742        14.3 ... Fazit ... 762 15.  Entwicklungsinfrastruktur ... 763        15.1 ... Werkzeuge ... 764        15.2 ... Einführung in Continuous Integration und Continuous Delivery ... 775   Anhang ... 781        A ... Quellenhinweise ... 781        B ... Der Autor ... 785   Index ... 787

Regulärer Preis: 79,90 €
Produktbild für Practical Rust Projects

Practical Rust Projects

Go beyond the basics and build complete applications using the Rust programming language. The applications in this book include a high-performance web client, a microcontroller (for a robot, for example), a game, an app that runs on Android, and an application that incorporates AI and machine learning.Each chapter will be organized in the following format: what this kind of application looks like; requirements and user stories of our example program; an introduction to the Rust libraries used; the actual implementation of the example program, including common pitfalls and their solutions; and a brief comparison of libraries for building each application, if there is no clear winner.Practical Rust Projects will open your eyes to the world of practical applications of Rust. After reading the book, you will be able to apply your Rust knowledge to build your own projects.WHAT YOU WILL LEARNWrite Rust code that runs on microcontrollers * Build a 2D game* Create Rust-based mobile Android applications* Use Rust to build AI and machine learning applicationsWHO THIS BOOK IS FORSomeone with basic Rust knowledge, wishing to learn more about how to apply Rust in a real-world scenario.SHING LYU is a software engineer who is passionate about open source software. He's worked on Rust professionally at Mozilla, on the Firefox (Gecko) and Servo browser engine project. Currently, he is working at DAZN, a sports streaming platform as a backend developer, with a focus on AWS and serverless technology. Shing has worked for many world famous brands such as Mozilla and Intel. He is also active in the open source community. Being one of the founders of the Taiwan Rust community, he loves to share his enthusiasm for Rust with people.Chapter 1, IntroductionThis chapter gives a short introduction to why Rust is a solid tool for building all kinds of application, and a brief overview of the format and organization of the book.● Introduction● Why Rust?● Who should read this book?● Chapters overviewChapter 2, Building a command-line programThis chapter will teach you how to build a command-line program with Rust.● What are we going to build? (We'll build a cowsay-like tool)● Building a binary program in Rust● Handling positional arguments● Handling optional arguments● Building a text-based user interface with ncurses● SummaryChapter 3, Creating graphical user interfaces (GUIs)This chapter will teach you how to build a cross-platform GUI program in Rust.● What are we going to build? (A desktop cat breed photo viewer)● Introduction to GTK+● Components of a GUI program● Creating a window● Handling user input● Supporting multiple operating system● SummaryChapter 4, Building a gameThis chapter will teach you how to build an 2D game with Rust● What are we going to build? (A 2D cat volleyball game)● Game frameworks in Rust● Building a 2D game in Rust● Rendering the map● Controlling the character with keyboard● Enemies incoming!● Adding sound effects● SummaryChapter 5, Going mobileThis chapter will demonstrate how to build an Android app using Rust● How to make Rust run on Android● What are we going to build? (A pokedex-like cat breed catalog)● Building the app skeleton● Showing pictures● Adding searchChapter 6, Programming embedded devicesThis chapter will demonstrate how to program an embedded device in Rust using a hardware development board. We'll also be using a QEUM emulator so readers can follow along without the hardware.● What are we going to build? (Either a STM32 development board or Arduino, still need more research)● How cross-compilation works?● Introducing the development board and QEUM● Setting up the toolchain for embedded programming● Communication using serial port● Programming the hardware timer● Debugging on an embedded device● SummaryChapter 7, Artificial intelligence and machine learningThis chapter will introduce machine learning libraries in Rust and show a simple image recognition demo● How does machine learning work● What are we going to build? (A cat image detector)● Mathematical background● Preparing the dataset● Training the model● Making predictionsChapter 8, Advanced topicsThis chapter will discuss other more advanced use of Rust. Each section will introduce one application, existing projects for that kind of application and their status. But we'll not go into the detail as the previous chapters.● Working with other languages● Operating system - Redox● The vast universe of Rust applications

Regulärer Preis: 36,99 €
Produktbild für Beginning Ballerina Programming

Beginning Ballerina Programming

Discover the Ballerina programming language for next-generation microservices and cloud-native application development. This book shows you that Ballerina is a cutting-edge programming language which incorporates many of the latest technological advancements in programming language theory. You'll learn variables and types, modules and functions, flow control, error handling, concurrency, I/O, cloud/network programming, persistence and data access, security and more.Additionally, Beginning Ballerina Programming introduces many foundation computer science topics along the way and doesn’t assume much prior knowledge. For example, when introducing transport-level security, you will get a brief introduction to public-key cryptography, how it is different from private-key cryptography, and why it is needed. This provides an added bonus for you to learn something new and general in computer science.After reading and using this book, you'll be proficient with Ballerina and cloud-first programming and be able to apply these concepts and techniques to your next cloud application developments.WHAT YOU'LL LEARN· Start programming with Ballerina· Gain the basics of network communication and programming· Obtain a solid understanding of services/API development· Effective use of concurrency in programming· Learn the basics of information security and its applications· Persistent data storage and accessWHO THIS BOOK IS FORAbsolute beginners in computer programming: No prior experience with computer programming is expected. This can also be a reference book for experienced developers in other languages, who want to learn a modern programming language.Anjana Fernando is a director and architect at WSO2. He is a key part of WSO2’s Ballerina and ecosystem engineering team where he leads efforts to shape the capabilities offered in related technology areas. He has also contributed to WSO2’s integration-related projects, including the Ballerina programming language, in the areas of the VM, transactions, and data handling. He has carried out several onsite customer engagements providing support for various integration and analytics projects as well. Anjana has a first-class honors degree in software engineering from the Informatics Institute of Technology, Sri Lanka, which is affiliated with the University of Westminster, UK. He also has a masters in computer science from the University of Colombo, School of Computing, where his main research area was distributed systems on the web.Chapter 1: Getting StartedChapter 2: Programming BasicsChapter 3: Lists, Mappings and ObjectsChapter 4: Code OrganizationChapter 5: Error HandlingChapter 6: ConcurrencyChapter 7: Files and I/OChapter 8: Programming the NetworkChapter 9: Information SecurityChapter 10: Database ProgrammingAppendix A: Numbers and Representation

Regulärer Preis: 52,99 €
Produktbild für Software Engineering - kompakt

Software Engineering - kompakt

Im Software-Engineering geht es um die Modellierung und Entwicklung komplexer, qualitativ hochwertiger Software und die für einen erfolgreich durchgeführten Realisierungsprozess geeigneten Methoden, Werkzeuge und Standards. In diesem kompakten Lehrbuch werden die wichtigsten Themen rund um Software-Engineering erklärt, zusammengefasst und mit kleinen Praxisbeispielen vertieft.Von zentraler Bedeutung für das Software-Engineering ist der Software-Lebenszyklus. Gemeint ist damit der gesamte Prozess, der zur Erstellung und Erhaltung eines Softwaresystems führt. Sowohl in traditionellen als auch in agilen Softwareerstellungsprozessen läuft dieser Lebenszyklus ab. Bewährt hat sich in der Praxis die Einteilung in sogenannte Phasen, denen die Gliederung folgt.Nach einer kurzen Einführung werden in Kapitel 2 vorab phasenübergreifende Verfahren wie divergierende Vorgehensmodelle und Projektmanagement besprochen. Kapitel 3 behandelt die Planungsphase; Kapitel 4 ist dem Requirements-Engineering gewidmet, bei dem die Software-Anforderungen kreativ konstruiert, analysiert und – traditionell oder agil – dokumentiert werden. In Kapitel 5 folgt die Besprechung der Verfahren für die Designphase der Software. Hier wird hinterfragt, wie gute Software-Architekturen Erfolg versprechend erdacht, mit der UML-Notation geeignet modelliert und in späteren Projekten wiederverwendet werden können. Kapitel 6 widmet sich der Test- und Abnahmephase und damit den wichtigen Qualitätssicherungsfragen. Abschließend wird in Kapitel 7 die Wartung – zur wirksamen Erhaltung von Softwaresystemen – erklärt.Anfänger erhalten eine schnelle Orientierung und kompaktes, fundiertes Grundwissen. Fortgeschrittene Leser finden hier ein aktuelles, gut strukturiertes Nachschlagewerk.Unter https://www.hanser-fachbuch.de/buch/Software+Engineering+kompakt/9783446459496 finden interessierte Leser weitere Übungsaufgaben zum Thema Software-Engineering. Prof. Dr. Anja Metzner ist Professorin für Software-Engineering an der Hochschule für angewandte Wissenschaften Augsburg, Fakultät für Informatik, mit langjähriger Praxiserfahrung. Außer ihrem Fachgebiet sind webbasierte, mobile und datenbankbasierte Softwaresysteme ihre Passion.Webseite der Autorin: https://www.hs-augsburg.de/Informatik/Anja-Metzner.htmlBlog der Autorin: https://www.hs-augsburg.de/homes/aascha/blog/

Regulärer Preis: 22,99 €
Produktbild für Introducing Jakarta EE CDI

Introducing Jakarta EE CDI

Discover the Jakarta EE Contexts and Dependency Injection (CDI 2.0) framework which helps you write better code through the use of well-defined enterprise Java-based components and beans (EJBs). If you have ever wanted to write clean Java EE code, this short book is your best guide for doing so: you will pick up valuable tips along the way from your author's years of experience teaching and coding. Introducing Jakarta EE CDI covers CDI 2.0 in detail and equips you with the theoretical underpinnings of Java EE, now Jakarta EE.This book is packed with so much that by the end of it, you will feel confident to use your new-found knowledge to help you write better, readable, maintainable, and long-lived mission-critical software.WHAT YOU WILL LEARN* Write better code with the Jakarta EE Contexts and Dependency Injection (CDI) framework * Work with the powerful, extensible, and well-defined contextual life cycle for components* Use CDI’s mechanism for decoupling application components through a typesafe event API* Build typesafe interceptors for altering the behaviour of components at runtime* Harness the well-defined qualifier system for easy isolation of beans* Convert almost any valid Java type to a CDI managed bean with CDI’s producer mechanismWHO THIS BOOK IS FORExperienced enterprise Java, Java EE, or J2EE developers who may be new to CDI or dependency injection.Luqman Saeed is a Java EE developer with Pedantic Devs. He has been doing software development for close to a decade. He started with PHP and now does Java EE full time. His goal on Udemy is to help you get productive with the powerful, modern, intuitive and easy-to-use Java EE APIs. He will serve you the best of vanilla, pure, and awesome Java EE courses to help you master the skills needed to solve whatever development challenge you have at hand.Chapter 1: What is Java EE?Chapter 2: What is a Java Specification Request (JSR)?Chapter 3: What is a Reference Implementation?Chapter 4: What is an Application Server?Chapter 5: What is Jakarta EE?Chapter 6: Why Jakarta EE? Chapter 7: Jakarta EE And the Spring FrameworkChapter 8:The Contexts and Dependency Injection (CDI) APIChapter 9: CDI StereotypesChapter 10: The CDI EcosystemAfterword

Regulärer Preis: 46,99 €
Produktbild für Practical MATLAB Deep Learning

Practical MATLAB Deep Learning

Harness the power of MATLAB for deep-learning challenges. This book provides an introduction to deep learning and using MATLAB's deep-learning toolboxes. You’ll see how these toolboxes provide the complete set of functions needed to implement all aspects of deep learning.Along the way, you'll learn to model complex systems, including the stock market, natural language, and angles-only orbit determination. You’ll cover dynamics and control, and integrate deep-learning algorithms and approaches using MATLAB. You'll also apply deep learning to aircraft navigation using images.Finally, you'll carry out classification of ballet pirouettes using an inertial measurement unit to experiment with MATLAB's hardware capabilities.WHAT YOU WILL LEARN* Explore deep learning using MATLAB and compare it to algorithms* Write a deep learning function in MATLAB and train it with examples* Use MATLAB toolboxes related to deep learning* Implement tokamak disruption predictionWHO THIS BOOK IS FOREngineers, data scientists, and students wanting a book rich in examples on deep learning using MATLAB.MICHAEL PALUSZEK is the co-author of MATLAB Recipes published by Apress. He is President of Princeton Satellite Systems, Inc. (PSS) in Plainsboro, New Jersey. Mr. Paluszek founded PSS in 1992 to provide aerospace consulting services. He used MATLAB to develop the control system and simulation for the Indostar-1 geosynschronous communications satellite, resulting in the launch of PSS' first commercial MATLAB toolbox, the Spacecraft Control Toolbox, in 1995. Since then he has developed toolboxes and software packages for aircraft, submarines, robotics, and fusion propulsion, resulting in PSS' current extensive product line. He is currently leading an Army research contract for precision attitude control of small satellites and working with the Princeton Plasma Physics Laboratory on a compact nuclear fusion reactor for energy generation and propulsion. Prior to founding PSS, Mr. Paluszek was an engineer at GE Astro Space in East Windsor, NJ. At GE he designed the Global Geospace Science Polar despun platform control system and led the design of the GPS IIR attitude control system, the Inmarsat-3 attitude control systems and the Mars Observer delta-V control system, leveraging MATLAB for control design. Mr. Paluszek also worked on the attitude determination system for the DMSP meteorological satellites. Mr. Paluszek flew communication satellites on over twelve satellite launches, including the GSTAR III recovery, the first transfer of a satellite to an operational orbit using electric thrusters. At Draper Laboratory Mr. Paluszek worked on the Space Shuttle, Space Station and submarine navigation. His Space Station work included designing of Control Moment Gyro based control systems for attitude control. Mr. Paluszek received his bachelors in Electrical Engineering, and master's and engineer’s degrees in Aeronautics and Astronautics from the Massachusetts Institute of Technology. He is author of numerous papers and has over a dozen U.S. Patents.STEPHANIE THOMAS is the co-author of MATLAB Recipes, published by Apress. She received her bachelor's and master's degrees in Aeronautics and Astronautics from the Massachusetts Institute of Technology in 1999 and 2001. Ms. Thomas was introduced to PSS' Spacecraft Control Toolbox for MATLAB during a summer internship in 1996 and has been using MATLAB for aerospace analysis ever since. She built a simulation of a lunar transfer vehicle in C++, LunarPilot, during the same internship. In her nearly 20 years of MATLAB experience, she has developed many software tools including the Solar Sail Module for the Spacecraft Control Toolbox; a proximity satellite operations toolbox for the Air Force; collision monitoring Simulink blocks for the Prisma satellite mission; and launch vehicle analysis tools in MATLAB and Java, to name a few. She has developed novel methods for space situation assessment such as a numeric approach to assessing the general rendezvous problem between any two satellites implemented in both MATLAB and C++. Ms. Thomas has contributed to PSS' Attitude and Orbit Control textbook, featuring examples using the Spacecraft Control Toolbox, and written many software User's Guides. She has conducted SCT training for engineers from diverse locales such as Australia, Canada, Brazil, and Thailand and has performed MATLAB consulting for NASA, the Air Force, and the European Space Agency.1 What is Deep Learning?2 MATLAB Machine and Deep Learning Toolboxes3 Finding Circles with Deep Learning4 Classifying Movies5 Algorithmic Deep Learning6 Tokamak Disruption Detection7 Classifying a Pirouette8 Completing Sentences9 Terrain Based Navigation10 Stock Prediction11 Image Classification12 Orbit Determination

Regulärer Preis: 36,99 €
Produktbild für Beginning Game Programming with Pygame Zero

Beginning Game Programming with Pygame Zero

Make fun games while learning to code. Focused on making games rather than teaching programming theory, in this book you're more likely to see code on how gravity affects a missiles trajectory instead of the most efficient way to search through data. Even then the code is kept simple as games should be about playability rather than complex physics. There are links to the official documentation when you need to lookup information that isn't included in the book.Start with a simple text based game to grasp the basics of programming in Python. Then moves on to creating simple graphical games in Pygame Zero. Not only will you learn object oriented programming to make it easier to make more complex games, you'll also work to create your own graphics and sounds. 3D graphics are a little complex. So we focus on 2D games, including spins on some classic boardgames and arcade games. All the games are designed to run on a Raspberry Pi. They will work on any Raspberry Pi, but will also work on any other computer that supports Python 3 along with Pygame Zero.The games you make will be playable and hopefully fun to play. And by the end of the book, you can step beyond the provided source code to develop your own unique games and programs.WHAT YOU'LL LEARN* Code in Python* Generate sounds and graphics for 2D games* Grasp object oriented programming with Pygame Zero WHO THIS BOOK IS FORBeginning game developers interested in working with low-cost and easy-to-learn solutions like Pygame Zero and the Raspberry Pi.STEWART WATKISS is a keen maker, programmer, and author of Learn Electronics with Raspberry Pi. He studied at the University of Hull, where he earned a master’s degree in electronic engineering and more recently with Georgia Institute of Technlogy where he earned a master’s degree in computer science.Stewart also volunteers as a STEM Ambassador, helping teach programming and physical computer to school children and at Raspberry Pi events. He has created a number of resources using Pygame Zero which he makes available on his web site (www.penguintutor.com).Chapter 01 - Game Programming, Introduction to Concepts and Python / Pygame ZeroChapter 02 - Getting Started with Python* Text based joke* Text based quizChapter 03 - Pygame Zero* Compass GameChapter 04 - Changing Game Play(Expands on the basic game in the previous chapter to make it more entertaining)* Compass Game (improved)Chapter 05 - Calculating Trajectory and Creating Dynamic Worlds* Tank warsChapter 06 - Sound Effects* Sounds* Music* Audacity* SonicPiChapter 07 - Designing Your Own Graphics (Sprites)* Draw* Gimp* BlenderChapter 08 - Object Oriented Programming and Using a Mouse* Memory gameChapter 09 - Color and Customizing Graphics* Adding color (look at color through bouncing balls)* Customize Graphics (based on svg to png conversion) - used in compass gameChapter 10 - Adding Artificial Intelligence* Possibly improving on previous games

Regulärer Preis: 56,99 €