Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen

Programmierung

Produkte filtern

Produktbild für Coding All-in-One For Dummies

Coding All-in-One For Dummies

THE GO-TO GUIDE FOR LEARNING CODING FROM THE GROUND-UPAdding some coding know-how to your skills can help launch a new career or bolster an old one. Coding All-in-One For Dummies offers an ideal starting place for learning the languages that make technology go. This edition gets you started with a helpful explanation of how coding works and how it’s applied in the real-world before setting you on a path toward writing code for web building, mobile application development, and data analysis. Add coding to your skillset for your existing career, or begin the exciting transition into life as a professional developer—Dummies makes it easy.* Learn coding basics and how to apply them * Analyze data and automate routine tasks on the job * Get the foundation you need to launch a career as a coder * Add HTML, JavaScript, and Python know-how to your resume This book serves up insight on the basics of coding, designed to be easy to follow, even if you’ve never written a line of code in your life. You can do this.This All-in-One includes work by expert coders and coding educators, including CHRIS MINNICK AND EVA HOLLAND coauthors of Coding with JavaScript For Dummies; NIKHIL ABRAHAM, author of Coding For Dummies and Getting a Coding Job For Dummies;JOHN PAUL MUELLER AND LUCA MASSARON, coauthors of Python for Data Science For Dummies and Machine Learning For Dummies; and BARRY BURD, author of Flutter For Dummies.INTRODUCTION 1About This Book 2Foolish Assumptions 2Icons Used in This Book 3Beyond the Book 4Where to Go from Here 4BOOK 1: GETTING STARTED WITH CODING 5CHAPTER 1: WHAT IS CODING? 7Defining What Code Is 8Following instructions 8Writing code with some Angry Birds 9Understanding What Coding Can Do for You 10Eating the world with software 10Coding on the job 12Scratching your own itch (and becoming rich and famous) 13Surveying the Types of Programming Languages 13Comparing low-level and high-level programming languages 14Contrasting compiled code and interpreted code 15Programming for the web 16Taking a Tour of a Web App Built with Code 16Defining the app’s purpose and scope 16Standing on the shoulders of giants 17CHAPTER 2: PROGRAMMING FOR THE WEB 19Displaying Web Pages on Your Desktop and Mobile Device 20Hacking your favorite news website 20Understanding how the World Wide Web works 23Watching out for your frontend and backend 24Defining web and mobile applications 25Coding Web Applications 26Starting with HTML, CSS, and JavaScript 26Adding logic with Python, Ruby, or PHP 27Coding Mobile Applications 28Building mobile web apps 29Building native mobile apps 30Deploying Web Applications in the Cloud 31CHAPTER 3: BECOMING A PROGRAMMER 33Writing Code Using a Process 34Researching what you want to build 35Designing your app 36Coding your app 37Debugging your code 38Picking Tools for the Job 39Working offline 39Working online with CodeSandbox.io 40BOOK 2: BASIC WEB CODING 43CHAPTER 1: EXPLORING BASIC HTML 45What Does HTML Do? 46Understanding HTML Structure 47Identifying elements 47Featuring your best attribute 49Standing head, title, and body above the rest 50Getting Familiar with Common HTML Tasks and Elements 52Writing headlines 53Organizing text in paragraphs 54Linking to your (heart’s) content 55Adding images 56Styling Me Pretty 58Highlighting with bold, italics, underline, and strikethrough 58Raising and lowering text with superscript and subscript 59Building Your First Website Using HTML 60CHAPTER 2: GETTING MORE OUT OF HTML 63Organizing Content on the Page 64Listing Data 66Creating ordered and unordered lists 66Nesting lists 67Putting Data in Tables 68Basic table structuring 69Stretching table columns and rows 70Aligning tables and cells 72Filling Out Forms 75Understanding how forms work 75Creating basic forms 76Practicing More with HTML 78CHAPTER 3: GETTING STYLISH WITH CSS 79What Does CSS Do? 79CSS Structure 81Choosing the element to style 81My property has value 83Hacking the CSS on your favorite website 84Common CSS Tasks and Selectors 86Font gymnastics: Size, color, style, family, and decoration 86Customizing links 90Adding background images and styling foreground images 93Getting Stylish 97Adding CSS to your HTML 97Practicing with CSS 99CHAPTER 4: NEXT STEPS WITH CSS 101Styling (More) Elements on Your Page 102Styling lists 102Designing tables 105Selecting Elements to Style 107Styling specific elements 107Naming HTML elements 112Aligning and Laying Out Your Elements 113Organizing data on the page 114Shaping the div 116Understanding the box model 117Positioning the boxes 119Writing More Advanced CSS 122CHAPTER 5: RESPONSIVE LAYOUTS WITH FLEXBOX 123Introducing Responsive Design 124The web is mobile 124Why are so many sites mobile-unfriendly? 124Introducing mobile-first design 124Making responsive web pages with the viewport meta tag 125Using Flexbox 128Creating boxes 129Thinking in one dimension 130Using multi-line containers 133Make no assumptions 134Aligning on the cross-axis 134Aligning on the main axis 136Modifying flexible boxes 137Changing the order of items 139Experimenting with Flexbox 140CHAPTER 6: STYLING WITH BOOTSTRAP 143Figuring Out What Bootstrap Does 144Installing Bootstrap 145Understanding the Layout Options 147Lining up on the grid system 147Dragging and dropping to a website 150Using predefined templates 151Adapting layout for mobile, tablet, and desktop 151Coding Basic Web Page Elements 153Designing buttons 153Navigating with toolbars 155Adding icons 157Practicing with Bootstrap 158BOOK 3: ADVANCED WEB CODING 159CHAPTER 1: WHAT IS JAVASCRIPT? 161What Is JavaScript? 161The Eich-man cometh 162Mocha-licious 163We need more effects! 163JavaScript Grows Up 164Dynamic scripting language 165What does JavaScript do? 166Why JavaScript? 167JavaScript is easy to learn! 168JavaScript is everywhere! 169JavaScript is powerful! 172JavaScript is in demand! 172CHAPTER 2: WRITING YOUR FIRST JAVASCRIPT PROGRAM 173Setting Up Your Development Environment 173Downloading and installing Chrome 174Downloading and installing a code editor 174Reading JavaScript Code 181Running JavaScript in the Browser Window 182Using JavaScript in an HTML event attribute 182Using JavaScript in a script element 183Including external JavaScript files 185Using the JavaScript Developer Console 188Commenting Your Code 189Single-line comments 190Multi-line comments 190Using comments to prevent code execution 191CHAPTER 3: WORKING WITH VARIABLES 193Understanding Variables 193Initializing Variables 195Understanding Global and Local Scope 197Naming Variables 199Creating Constants Using the const Keyword 201Working with Data Types 202Number data type 202bigInt data type 205String data type 205Boolean data type 208NaN data type 209Undefined data type 210Symbol data type 210CHAPTER 4: UNDERSTANDING ARRAYS 211Making a List 211Array Fundamentals 213Arrays are zero-indexed 213Arrays can store any type of data 214Creating Arrays 215Using the new keyword method 215Array literal 215Populating Arrays 215Understanding Multidimensional Arrays 216Accessing Array Elements 218Looping through arrays 219Array properties 220Array methods 220Using array methods 222CHAPTER 5: WORKING WITH OPERATORS, EXPRESSIONS, AND STATEMENTS 225Express Yourself 226Hello, Operator 226Operator precedence 226Using parentheses 227Types of Operators 230Assignment operators 230Comparison operators 231Arithmetic operators 231String operator 234Bitwise operators 234Logical operators 236Special operators 237Combining operators 239CHAPTER 6: GETTING INTO THE FLOW WITH LOOPS AND BRANCHES 241Branching Out 241if else statements 242Switch statements 243Here We Go: Loop De Loop 246for loops 246for in loops 248while loops 251do while loops 252break and continue statements 253CHAPTER 7: GETTING FUNCTIONAL 255Understanding the Function of Functions 255Using Function Terminology 257Defining a function 257Function head 257Function body 257Calling a function 258Defining parameters and passing arguments 258Returning a value 258The Benefits of Using Functions 258Writing Functions 262Returning Values 263Passing and Using Arguments 264Passing arguments by value 265Passing arguments by reference 267Calling a function without all the arguments 267Setting default parameter values 267Calling a function with more arguments than parameters 268Getting into arguments with the arguments object 268Understanding Function Scope 269Creating Anonymous Functions 270Knowing the differences between anonymous and named functions 270Arrow functions 270Doing it Again with Recursion 271Functions within Functions 273CHAPTER 8: MAKING AND USING OBJECTS 275Object of My Desire 275Creating Objects 277Defining objects with object literals 277Defining objects with a constructor function 278Making objects with class 279Using Object.create 280Retrieving and Setting Object Properties 280Using dot notation 281Using square bracket notation 281Deleting Properties 283Working with Methods 284Using this 286An Object-Oriented Way to Become Wealthy: Inheritance 287Creating an object using inheritance 288Modifying an object type 289CHAPTER 9: CONTROLLING THE BROWSER WITH THE WINDOW OBJECT 291Understanding the Browser Environment 291The user interface 292Loader 293HTML parsing 294CSS parsing 294JavaScript parsing 294Layout and rendering 295Investigating the BOM 295The Navigator object 295The Window object 298Using the Window object’s methods 304CHAPTER 10: MANIPULATING DOCUMENTS WITH THE DOM 307Understanding the DOM 307Understanding Node Relationships 309Using the Document Object’s Properties and Methods 314Using the Element Object’s Properties and Methods 316Working with the Contents of Elements 319innerHTML 319Setting attributes 320Getting Elements by ID, Tag Name, or Class 320getElementById 321getElementsByTagName 322getElementsByClassName 322Using the Attribute Object’s Properties 324Creating and Appending Elements 325Removing Elements 325CHAPTER 11: USING EVENTS IN JAVASCRIPT 327Knowing Your Events 327Handling Events 329Using inline event handlers 330Event handling using element properties 331Event handling using addEventListener 332Stopping propagation 336CHAPTER 12: INTEGRATING INPUT AND OUTPUT 339Understanding HTML Forms 339The form element 340The label element 341The input element 342The select element 344The textarea element 344The button element 344Working with the Form Object 345Using Form properties 345Using the Form object’s methods 347Accessing form elements 348Getting and setting form element values 349Validating user input 351CHAPTER 13: UNDERSTANDING CALLBACKS AND CLOSURES 355What Are Callbacks? 355Passing functions as arguments 356Writing functions with callbacks 356Using named callback functions 357Understanding Closures 360Using Closures 363CHAPTER 14: EMBRACING AJAX AND JSON 367Working behind the Scenes with AJAX 367AJAX examples 368Viewing AJAX in action 370Using the XMLHttpRequest object 373Working with the same-origin policy 375Using CORS, the silver bullet for AJAX requests 377Putting Objects in Motion with JSON 378BOOK 4: CREATING MOBILE APPS 383CHAPTER 1: WHAT IS FLUTTER? 385All About Hardware and Software 385Where Does Flutter Fit In? 389Cross-platform development 390A quick-and-easy development cycle 394A great way to think about app development 396Enough New Terminology! What’s Next? 400CHAPTER 2: SETTING UP YOUR COMPUTER FOR MOBILE APP DEVELOPMENT 401The Stuff You Need 401What to Do 403Getting and installing the stuff 403For Mac users only 406Configuring Android Studio 407Running your first app 408Dealing with the Devil’s Details 413On installing Android Studio 414On launching Android Studio for the first time 414On adding virtual devices 415On installing Flutter 416Divisiveness Among Devices 418Running apps on an Android device 418Testing apps on a physical device 419Using Android Studio 424Starting up 425The main window 425Running This Book’s Sample Programs 429Enjoying reruns 431If you’re finicky 432CHAPTER 3: “HELLO” FROM FLUTTER 433First Things First: Creating a Flutter Project 434What’s it all about? 436A constructor’s parameters 440A note about punctuation 442Don’t relent — simply indent 442Classes, Objects, and Widgets 444A brief treatise on “within-ness” 446The documentation is your friend 447Making Things Look Nicer 448Creating a scaffold 451Adding visual tweaks 453Dart’s enum feature 454Hello from sunny California! 454Adding another widget 456Centering the text (Part 1) 459Centering the text (Part 2) 461Displaying an image 464Hey, Wait a Minute 468CHAPTER 4: HELLO AGAIN 469Creating and Using a Function 470The function declaration 471A function call 472Parameters and the return value 472Programming in Dart: The Small Stuff 475Statements and declarations 475Dart’s typing feature 476Literals, variables, and expressions 477Two for the price of one 480Dart’s var keyword 483Built-in types 484Types that aren’t built-in 486Using import declarations 487Creating Function Declaration Variations 487Type names in function declarations 490Naming your parameters 491What about the build function? 492More Fun to Come! 493CHAPTER 5: MAKING THINGS HAPPEN 495Let’s All Press a Floating Action Button 495Stateless widgets and stateful widgets 498Widgets have methods 498Pay no attention to the framework behind the curtain 500Enhancing Your App 509More parameters, please 512The override annotation 514What does mean? 515Anonymous functions 516What belongs where 519Names that start with an underscore 524Whew! 525CHAPTER 6: LAYING THINGS OUT 527Understanding the Big Picture 528Creating bite-size pieces of code 531Creating a parameter list 533Living color 534Adding padding 535Your humble servant, the Column widget 537The SizedBox widget 539Your friend, the Container widget 539Nesting Rows and Columns 545Introducing More Levels of Nesting 546Using the Expanded Widget 549Expanded versus unexpanded 552Expanded widget saves the day 555Flexing some muscles 560How Big Is My Device? 562CHAPTER 7: INTERACTING WITH THE USER 567A Simple Switch 568Dart’s const keyword 571Compatible or NOT? 572Wait For It! 574How Much Do You Love Flutter? 576Dealing with Text Fields 581Callouts 1 and 2 582Callout 3 585Callout 4 586Callout 5 590Creating Radio Buttons 590Creating an enum 593Building the radio group 593Displaying the user’s choice 595Creating a Drop-Down Button 596Building the drop-down button 600The little Reset button 601Making a map 602Onward and Upward 603CHAPTER 8: NAVIGATION, LISTS, AND OTHER GOODIES 605Extending a Dart Class 605Navigating from One Page to Another 608An icon on a button 612Pushing and popping 612Passing Data from the Source to a Destination 613Passing Data Back to the Source 618Dart’s async and await keywords 621Taking control of the app bar’s Back button 623Passing Data in Both Directions 624Creating Named Routes 629Creating a List 633The ListView widget 634Creating list items one-by-one 639Making loops with Dart 643Fetching Data from the Internet 646Using a public API 647Sending an URL to a server 650Making sense of a JSON response 651What’s Next? 652CHAPTER 9: MOVING RIGHT ALONG 653Setting the Stage for Flutter Animation 653Moving Along a Straight Line 659Bouncing Around 664Animating Size and Color Changes 666Moving Along a Curve 668Dragging Things Around 670Tearing Things Up 673BOOK 5: GETTING STARTED WITH PYTHON 675CHAPTER 1: WRAPPING YOUR HEAD AROUND PYTHON 677What Does Python Do? 678Defining Python Structure 679Understanding the Zen of Python 679Styling and spacing 680Coding Common Python Tasks and Commands 681Defining data types and variables 681Computing simple and advanced math 682Using strings and special characters 684Deciding with conditionals: if, elif, else 685Input and output 686Shaping Your Strings 687Dot notation with upper(), lower(), capitalize(), and strip() 687String formatting with % 688CHAPTER 2: INSTALLING A PYTHON DISTRIBUTION 689Using Anaconda 690Getting Anaconda 690Defining why Anaconda is used in this book 691Installing Anaconda on Linux 692Installing Anaconda on macOS X 693Installing Anaconda on Windows 694Downloading the Data Sets and Example Code 696Starting Anaconda Navigator 697Using Jupyter Notebook 697Defining the code repository 699Understanding the data sets used in this book 704CHAPTER 3: WORKING WITH REAL DATA 707Uploading, Streaming, and Sampling Data 708Uploading small amounts of data into memory 709Streaming large amounts of data into memory 710Generating variations on image data 711Sampling data in different ways 712Accessing Data in Structured Flat-File Form 714Reading from a text file 714Reading CSV-delimited format 715Reading Excel and other Microsoft Office files 718Sending Data in Unstructured File Form 719Managing Data from Relational Databases 722Interacting with Data from NoSQL Databases 724Accessing Data from the Web 725Accessing XML data 725Using read_xml 727BOOK 6: DATA ANALYSIS WITH PYTHON 729CHAPTER 1: CONDITIONING YOUR DATA 731Juggling between NumPy and pandas 732Knowing when to use NumPy 732Knowing when to use pandas 732Validating Your Data 733Figuring out what’s in your data 734Removing duplicates 737Creating a data map and data plan 738Manipulating Categorical Variables 740Creating categorical variables 741Renaming levels 742Combining levels 743Dealing with Dates in Your Data 744Formatting date and time values 745Using the right time transformation 745Dealing with Missing Data 747Finding the missing data 747Encoding missingness 748Imputing missing data 749Slicing and Dicing: Filtering and Selecting Data 750Slicing rows 750Slicing columns 751Dicing 752Concatenating and Transforming 752Adding new cases and variables 753Removing data 754Sorting and shuffling 755Aggregating Data at Any Level 757CHAPTER 2: SHAPING DATA 759Working with HTML Pages 760Parsing XML and HTML 760Using XPath for data extraction 761Working with Raw Text 763Dealing with Unicode 763Stemming and removing stop words 764Introducing regular expressions 766Using the Bag of Words Model and Beyond 768Understanding the bag of words model 769Working with n-grams 771Implementing TF-IDF transformations 772Working with Graph Data 774Understanding the adjacency matrix 775Using NetworkX basics 775CHAPTER 3: GETTING A CRASH COURSE IN MATPLOTLIB 779Starting with a Graph 780Defining the plot 780Drawing multiple lines and plots 781Saving your work 782Setting the Axis, Ticks, Grids 783Getting the axes 783Formatting the axes 784Adding grids 785Defining the Line Appearance 786Working with line styles 786Using colors 787Adding markers 789Using Labels, Annotations, and Legends 790Adding labels 791Annotating the chart 792Creating a legend 793CHAPTER 4: VISUALIZING THE DATA 795Choosing the Right Graph 796Showing parts of a whole with pie charts 796Creating comparisons with bar charts 797Showing distributions using histograms 799Depicting groups using box plots 800Seeing data patterns using scatterplots 802Creating Advanced Scatterplots 803Depicting groups 803Showing correlations 804Plotting Time Series 806Representing time on axes 806Plotting trends over time 807Visualizing Graphs 809Developing undirected graphs 809Developing directed graphs 811BOOK 7: CAREER BUILDING WITH CODING 813CHAPTER 1: EXPLORING CODING CAREER PATHS 815Augmenting Your Existing Job 816Creative design 816Content and editorial 817Human resources 818Product management 819Sales and marketing 820Legal 821Finding a New Coding Job 822Frontend web development 823Backend web development 824Mobile application development 826Data analysis 827CHAPTER 2: EXPLORING UNDERGRADUATE AND GRADUATE DEGREES 829Getting a College Degree 830College computer science curriculum 831Doing extracurricular activities 833Two-year versus four-year school 834Enrolling in an Advanced Degree Program 836Graduate school computer science curriculum 837Performing research 838Interning to Build Credibility 839Types of internship programs 839Securing an internship 840CHAPTER 3: TRAINING ON THE JOB 843Taking a Work Project to the Next Level 844Learning on the Job and After Work 845Training on the job 846Learning after work 846Freelancing to Build Confidence and Skills 848Transitioning to a New Role 849Assessing your current role 850Networking with developers 850Identifying roles that match your interest and skills 851CHAPTER 4: CODING CAREER MYTHS 853You Must Be Good at Math 853You Must Have Studied Engineering 854You Can Learn Coding in a Few Weeks 855You Need a Great Idea to Start Coding 855Ruby Is Better than Python 856Only College Graduates Receive Coding Offers 856You Must Have Experience 857Tech Companies Don’t Hire Women or Minorities 858The Highest Paying Coding Jobs Are in San Francisco 859Your Previous Experience Isn’t Relevant 860Index 861

Regulärer Preis: 26,99 €
Produktbild für Network Programming with Go Language

Network Programming with Go Language

Dive into key topics in network architecture implemented with the Google-backed open source Go programming language. Networking topics such as data serialization, application level protocols, character sets and encodings are discussed and demonstrated in Go. This book has been updated to the Go version 1.18 which includes modules, generics, and fuzzing along with updated and additional examples.Beyond the fundamentals, Network Programming with Go, Second Edition covers key networking and security issues such as HTTP protocol changes, validation and templates, remote procedure call (RPC) and REST comparison, and more. Additionally, authors Ronald Petty and Jan Newmarch guide you in building and connecting to a complete web server based on Go. Along the way, use of a Go web toolkit (Gorilla) will be employed.This book can serve as both an essential learning guide and reference on networking concepts and implementation in Go. Free source code is available on Github for this book under Creative Commons open source license.WHAT YOU WILL LEARN* Perform network programming with Go (including JSON and RPC)* Understand Gorilla, the Golang web toolkit, and how to use it* Implement a microservice architecture with Go* Leverage Go features such as generics, fuzzing* Master syscalls and how to employ them with GoWHO THIS BOOK IS FORAnyone interested in learning networking concepts implemented in modern Go. Basic knowledge in Go is assumed, however, the content and examples in this book are approachable with modest development experience in other languages.JAN NEWMARCH, Ph.d., is Head of Higher Education (ICT), Box Hill Institute, Adjunct Senior Research Fellow, Faculty of IT, Monash University, and Adjunct Lecturer, School of Computing and Mathematics Charles Sturt University.RONALD PETTY is a Principal Consultant at RX-M LLC. His programming expertise is in open source languages like Go, Ruby and more. He currently is working on a number of Go code projects on Github.1: Architectural Layers2: Overview of the Go Language3: Socket-Level Programming4: Data Serialization5: Application-Level Protocols6: Managing Character Sets and Encodings7: Security8: HTTP9: Templates10: A Complete Web Server11: HTML12: XML13: Remote Procedure Call14: REST15: WebSockets16: Gorilla17: TestingAppendix A: FuzzingAppendix B: Generics

Regulärer Preis: 62,99 €
Produktbild für Beginning Data Science in R 4

Beginning Data Science in R 4

Discover best practices for data analysis and software development in R and start on the path to becoming a fully-fledged data scientist. Updated for the R 4.0 release, this book teaches you techniques for both data manipulation and visualization and shows you the best way for developing new software packages for R.Beginning Data Science in R 4, Second Edition details how data science is a combination of statistics, computational science, and machine learning. You’ll see how to efficiently structure and mine data to extract useful patterns and build mathematical models. This requires computational methods and programming, and R is an ideal programming language for this.Modern data analysis requires computational skills and usually a minimum of programming. After reading and using this book, you'll have what you need to get started with R programming with data science applications. Source code will be available to support your next projects as well.Source code is available at github.com/Apress/beg-data-science-r4.WHAT YOU WILL LEARN* Perform data science and analytics using statistics and the R programming language* Visualize and explore data, including working with large data sets found in big data* Build an R package* Test and check your code* Practice version control* Profile and optimize your codeWHO THIS BOOK IS FORThose with some data science or analytics background, but not necessarily experience with the R programming language.Thomas Mailund is an associate professor in bioinformatics at Aarhus University, Denmark. His background is in math and computer science but for the last decade his main focus has been on genetics and evolutionary studies, particularly comparative genomics, speciation, and gene flow between emerging species.1. Introduction to R programming.2. Reproducible analysis.3. Data manipulation.4. Visualizing and exploring data.5. Working with large data sets.6. Supervised learning.7. Unsupervised learning.8. More R programming.9. Advanced R programming.10. Object oriented programming.11. Building an R package.12. Testing and checking.13. Version control.14. Profiling and optimizing.

Regulärer Preis: 56,99 €
Produktbild für Java Schnelleinstieg

Java Schnelleinstieg

* JAVA PROGRAMMIEREN LERNEN OHNE VORKENNTNISSE* ALLE GRUNDLAGEN FÜR DEN PROFESSIONELLEN EINSATZ* EINFACHE PRAXISBEISPIELE UND ÜBUNGSAUFGABENMit diesem Buch gelingt Ihnen der einfache Einstieg in die Java-Programmierung.Alle Grundlagen werden in 14 Kapiteln anschaulich und leicht nachvollziehbar anhand von Codebeispielen erläutert. Übungsaufgaben am Ende der Kapitel helfen Ihnen, das neu gewonnene Wissen schnell praktisch anzuwenden und zu vertiefen.Der Autor führt Sie Schritt für Schritt in die Welt der Programmierung ein: von den Grundlagen über Objektorientierung und die Entwicklung von Anwendungen mit grafischer Benutzungsoberfläche bis zum Programmieren von REST-Schnittstellen. Dabei lernen Sie ebenfalls, was guten Programmierstil ausmacht und wie man Fehler in Programmtexten finden und von vornherein vermeiden kann.So sind Sie perfekt auf den Einsatz von Java im professionellen Umfeld vorbereitet.AUS DEM INHALT:* Alle Grundlagen einfach erläutert* Objektorientierte Programmierung* Einsatz von Open-Source-Bibliotheken* Grafische Benutzungsoberflächen (GUI)* Einsatz von Datenbanken* Entwicklung von REST-Schnittstellen* Fehlerbehandlung und Debugging* Professioneller Programmierstil* Programmcode, Lösungen und Glossar zum DownloadDaniel Braun ist promovierter Informatiker und forscht und lehrt im Bereich betrieblicher Informationssysteme. Er ist Maintainer einer Open-Source-Java-Bibliothek und Autor verschiedener Programmierbücher.

Regulärer Preis: 16,99 €
Produktbild für Automated Deep Learning Using Neural Network Intelligence

Automated Deep Learning Using Neural Network Intelligence

Optimize, develop, and design PyTorch and TensorFlow models for a specific problem using the Microsoft Neural Network Intelligence (NNI) toolkit. This book includes practical examples illustrating automated deep learning approaches and provides techniques to facilitate your deep learning model development.The first chapters of this book cover the basics of NNI toolkit usage and methods for solving hyper-parameter optimization tasks. You will understand the black-box function maximization problem using NNI, and know how to prepare a TensorFlow or PyTorch model for hyper-parameter tuning, launch an experiment, and interpret the results. The book dives into optimization tuners and the search algorithms they are based on: Evolution search, Annealing search, and the Bayesian Optimization approach. The Neural Architecture Search is covered and you will learn how to develop deep learning models from scratch. Multi-trial and one-shot searching approaches of automatic neural network design are presented. The book teaches you how to construct a search space and launch an architecture search using the latest state-of-the-art exploration strategies: Efficient Neural Architecture Search (ENAS) and Differential Architectural Search (DARTS). You will learn how to automate the construction of a neural network architecture for a particular problem and dataset. The book focuses on model compression and feature engineering methods that are essential in automated deep learning. It also includes performance techniques that allow the creation of large-scale distributive training platforms using NNI.After reading this book, you will know how to use the full toolkit of automated deep learning methods. The techniques and practical examples presented in this book will allow you to bring your neural network routines to a higher level.WHAT YOU WILL LEARN* Know the basic concepts of optimization tuners, search space, and trials* Apply different hyper-parameter optimization algorithms to develop effective neural networks* Construct new deep learning models from scratch* Execute the automated Neural Architecture Search to create state-of-the-art deep learning models* Compress the model to eliminate unnecessary deep learning layersWHO THIS BOOK IS FORIntermediate to advanced data scientists and machine learning engineers involved in deep learning and practical neural network developmentIVAN GRIDIN is a machine learning expert from Moscow who has worked on distributive high-load systems and implemented different machine learning approaches in practice. One of the primary areas of his research is the design and analysis of predictive time series models. Ivan has fundamental math skills in probability theory, random process theory, time series analysis, machine learning, deep learning, and optimization. He has published books on genetic algorithms and time series analysis. Chapter 1: Introduction to Neural Network Intelligence1.1 Installation1.2 Trial, search space, experiment1.3 Finding maxima of multivariate function1.4 Interacting with NNIChapter 2:Hyper-Parameter Tuning2.1 Preparing a model for hyper-parameter tuning2.2 Running experiment2.3 Interpreting results2.4 DebuggingChapter 3: Hyper-Parameter TunersChapter 4: Neural Architecture Search: Multi-trial4.1 Constructing a search space4.2 Running architecture search4.3 Exploration strategies4.4 Comparing exploration strategiesChapter 5: Neural Architecture Search: One-shot5.1 What is one-shot NAS?5.2 ENAS5.3 DARTSChapter 6: Model Compression6.1 What is model compression?6.2 Compressing your model6.3 Pruning6.4 QuantizationChapter 7: Advanced NNI

Regulärer Preis: 66,99 €
Produktbild für Java für Kids

Java für Kids

* EINFACHER EINSTIEG IN DIE JAVA-PROGRAMMIERUNG MIT VIELEN PROFI-TIPPS* ZAHLREICHE KLEINE SPIELE PROGRAMMIEREN LERNEN MIT SCHRITT-FÜR-SCHRITT-ANLEITUNGEN* MIT FRAGEN UND AUFGABEN AM ENDE JEDES KAPITELS SOWIE HILFREICHEN SPICKZETTELN ZUM DOWNLOADJava - wer denkt da nicht an eine Insel, auf der es heiß und feucht ist, mit Vulkanen, viel Wald und seltenen Tieren? Du nicht? Du denkst an eine Programmiersprache? Dann bist du hier richtig! In diesem Buch erfährst du, wie du deinem Computer Befehle gibst und unter anderem kleine Spiele programmierst - und er dann tut, was du möchtest.Hans-Georg Schumann zeigt dir, wie du mit Java erste Programme schreibst und welche Zutaten du dazu benötigst: Variablen, Kontrollstrukturen, Klassen und mehr. Schritt für Schritt werden die Quelltexte umfangreicher bis hin zur objektorientierten Programmierung. So schaffst du den Einstieg in Java zusammen mit der Entwicklungsumgebung Eclipse spielend leicht!Schnell hast du ein erstes Lotto-Spiel programmiert, dein Programm mit Buttons und Häkchen professionell ausgestattet und den Rechner dazu gebracht, Quizfragen zu stellen. Du erfährst aber auch, wie du mit Java bunte Grafiken erstellst oder Figuren animierst, also zum Laufen bringst. Zudem macht das Programmieren von Spielen wie Hangman oder Stein-Schere-Papier nicht nur dir als Programmierer oder Programmiererin großen Spaß, sondern auch allen Spielern und Spielerinnen.Programmieren mit Java ist nicht so kompliziert, wie es sich anhört! Denn alles wird genau erklärt und am Ende der Kapitel noch einmal zusammengefasst.AUS DEM INHALT:* Was eine Entwicklungsumgebung ist und wie du z.B. mit Eclipse programmierst* Objekte, Klassen und Pakete kennenlernen* Lleine Spiele entwickeln: Zufallszahlen und Zahlenraten* Grundlagen objektorientierter Programmierung* Optische Gestaltung mit Swing* Ein Quiz-Spiel und Hangman programmieren* Buttons und andere Komponenten als Diagnosehilfe einsetzen* Eine Figur zum Laufen bringen* Zahlreiche Ideen für die Spieleprogrammierung: Von Stein-Schere-Papier bis zur spannenden Käferjagd* Ausführlicher Anhang zur Installation und FehlersucheZUM DOWNLOAD UNTER WWW.MITP.DE/0520:* alle Projekte aus dem Buch* Lösungen zu den Fragen und Aufgaben im Buch* Hilfreiche Spickzettel zum AusdruckenHans-Georg Schumann war Informatik- und Mathematiklehrer an einer Gesamtschule. Er hat bereits viele erfolgreiche Bücher in der mitp-Buchreihe »... für Kids« geschrieben.

Regulärer Preis: 14,99 €
Produktbild für PostgreSQL

PostgreSQL

Praxisbuch für Administratoren und EntwicklerWenn Sie als Administrator, Entwickler oder IT-/System-Architekt PostgreSQL professionell und erfolgreich in der Praxis einsetzen wollen, finden Sie in diesem Arbeitsbuch die richtige Unterstützung. Administratoren bietet es Anleitung beim täglichen Datenbankbetrieb sowie detaillierte Informationen und Praxistipps zu Themen wie Backup and Recovery, Sicherheit und Überwachung, Performance Tuning oder Hochverfügbarkeit. Einen weiteren Schwerpunkt bildet die Replikation von und nach anderen Datenbanksystemen. IT-Architekten, System-Designer und IT-Manager erfahren, wie PostgreSQL kostengünstig in eine bestehende IT-Infrastruktur platziert werden kann und effektiv mit anderen Datenbanksystemen, wie z. B. Oracle, zusammenarbeitet. Entwickler lernen, wie robuste und performante Datenbankapplikationen erstellt werden und erhalten außerdem einen praktischen Leitfaden für den Umstieg von Oracle auf PostgreSQL. Eigene Kapitel widmen sich den Themen PostgreSQL für Data Science und maschinelles Lernen.Aus dem Inhalt: Konfiguration von Cluster und DatenbankDie Architektur von PostgreSQLHot Standby, Streaming Replication und Logical ReplicationTuning von Datenbanken und SQL-AnweisungenParallelisierung und PartitionierungEntwicklung von Applikationen für PostgreSQLIndexe einsetzenTextverarbeitungReplikation zwischen PostgreSQL und OracleData Science und MLPostgreSQL in der CloudLeseprobe (PDF-Link)Autor: Lutz Fröhlich ist Diplom-Mathematiker und freiberuflicher IT-Berater. Er beschäftigt sich seit 30 Jahren mit Datenbanken und schöpft seine praktischen Erfahrungen aus langjährigen Consulting-Tätigkeiten in den USA und in Europa. Seine Spezialgebiete sind Performance, Hochverfügbarkeit, Exadata sowie Daten-Replikation und Streaming. Er arbeitet seit mehreren Jahren in den Bereichen Data Science und maschinelles Lernen und hält regelmäßig Seminare und Vorträge zu diesen und anderen Themen.

Regulärer Preis: 59,99 €
Produktbild für Einstieg in die Regelungstechnik mit Python (4. Auflage)

Einstieg in die Regelungstechnik mit Python (4. Auflage)

Die 4., überarbeitete und erweiterte Auflage dieses Lehrbuchs bietet eine systemorientierte Einführung in das Fachgebiet der Regelungstechnik. Die wesentlichen Grundlagen werden anhand vielfältiger praktischer Beispiele behandelt, die in der Programmiersprache Python umgesetzt sind. Nach einer kurzen Einführung in Python und in die Software-Pakete NumPy, SciPy und Control, werden die theoretischen Grundlagen der Regelungstechnik behandelt. Im Vordergrund steht die praxisnahe Vermittlung des Stoffes und nicht eine möglichst umfangreiche Aneinanderreihung von Analyse- und Syntheseverfahren. Ziel ist die schnelle Befähigung zur Berechnung und erfolgreichen praktischen Realisierung eines Reglers. Es werden nur die dafür notwendigen mathematischen Grundlagen vermittelt. Übungsaufgaben runden die Inhalte ab. Die vierte Auflage wurde um Entwurfsverfahren für integralwirkende Strecken, Strecken mit Totzeit sowie um die numerische Optimierung von Regelkreisen erweitert. Hinzugefügt wurde das Thema Modellreduktion und um ein Beispiel ergänzt wurde der Zustandsreglerentwurf.Leseprobe (PDF-Link)Autor: Prof. Dr.-Ing. Hans-Werner Philippsen unterrichtet Regelungstechnik an der Hochschule Bremen. Seine Arbeitsgebiete umfassen die Regelung von mechatronischen Systemen, Fahrzeugregelungen sowie Vorgehensmodelle für die Regelungstechnik.

Regulärer Preis: 39,99 €
Produktbild für Spektrum Kompakt - Mensch und Maschine

Spektrum Kompakt - Mensch und Maschine

Der Film Ex Machina war 2014 Sciencefction und ist es noch. Aber würden Sie es merken, ob dieses Editorial von mir stammt – oder von einer künstlichen Intelligenz, die es zusammenfügt aus Wörtern, Satzbausteinen, vielleicht ganzen Absätzen, die sie während des Lernprozesses durchforstet hat? Und was lernen wiederum wir Menschen aus den Ergebnissen und Erfahrungen der KI-Forschung über die Funktionsweise unseres Gehirns? Wo sich Neurowissenschaften, Informatik und auch Philosophie treffen, entstehen spannende Fragen – und Antworten.

Regulärer Preis: 4,99 €
Produktbild für Parallele und verteilte Anwendungen in Java

Parallele und verteilte Anwendungen in Java

Für Nutzer ist es selbstverständlich, dass sie mehrere Programme gleichzeitig verwenden können oder dass Programme so komplex sind, dass sie auf mehrere Rechner zugreifen müssen. Aber wie werden solche Anwendungen programmiert?Das vorliegende Standardwerk zu Parallelität und Verteilung behandelt als Lehrbuch zwei eng miteinander verknüpfte Basisthemen der Informatik: die Programmierung paralleler (nebenläufiger) und verteilter Anwendungen.Das Lehrbuch wendet sich an Studierende der Informatik, ingenieurwissenschaftliche Studiengänge mit Grundkenntnissen in Java (Objektorientierung) sowie Softwareentwickler.Es werden zunächst anhand zahlreicher Beispiele grundlegende Synchronisationskonzepte für die Programmierung paralleler Abläufe präsentiert.Neben den "klassischen" Synchronisationsmechanismen von Java werden auch die Konzepte aus der Java-Concurrency-Klassenbibliothek vorgestellt.Weiteres Basiswissen etwa über grafische Benutzeroberflächen, das MVC-Entwurfsmuster oder Rechnernetze, wird im Buch anschaulich und praxisnah vermittelt.Aus dem Inhalt:• Grundlegende Synchronisationskonzepte• Fortgeschrittene Synchronisationskonzepte• Parallelität und grafische Benutzeroberflächen• Anwendungen mit Sockets• Anwendungen mit RMI• Webbasierte Anwendungen mit Servlets und JSP

Regulärer Preis: 44,99 €
Produktbild für Rust

Rust

Grundlagen und fortgeschrittene Techniken.Dieses Buch vermittelt Anwendungsentwicklern Theorie und Praxis der Sprache Rust und zeigt, wo sie gewinnbringend in neuen Projekten verwendet und wie sie sich in bestehende Projekte gut integrieren lässt.Es illustriert alle Inhalte mit zahlreichen Rust-Beispielen. Nach einer Einführung in die Grundlagen, Nebenläufigkeit und das Testen mit Rust kommt der praktische Teil.Anhand einer Webapplikation und ihrer Aufteilung in Microservices werden die Vorteile und Eigenheiten der Sprache Rust anschaulich vermittelt. Systemnahe Programmierung, die Kommunikation mit Sprachen wie Java, aber auch die Verwendung von WebAssembly werden ebenfalls betrachtet.Nach der Lektüre dieses Buchs können Sie produktiv in Rust programmieren und haben neben den Grundlagen ein gutes Verständnis für typische Anwendungsbereiche der Sprache wie WebAssembly, Systemnahe Programmierung oder Einbindung in bestehende Umgebungen über Language Bindings.

Regulärer Preis: 32,90 €
Produktbild für R - kurz & gut

R - kurz & gut

Die praktische Kurzeinführung und Referenz für die Statistik-Software R* Konkurrenzlos günstig und kompakt* Für Studium, Wissenschaft und die Datenanalyse in Unternehmen* Deckt den kompletten Datenzyklus ab: Datenerzeugung, das Einlesen und Speichern, Bearbeiten und Aufbereiten der Daten, die graphische Darstellung und die statistische AuswertungIn Zeiten von Data Mining und künstlicher Intelligenz ist die Verarbeitung großer Datenmengen ein Thema, dessen Bedeutung enorm zugenommen hat. Die beliebte Open-Source-Software R ist eine Programmiersprache und Arbeitsumgebung, die auf die numerische und graphische Datenanalyse spezialisiert ist. Dieses Buch hat das Ziel, Sie schnell und effizient mit R vertraut zu machen und Ihnen die prinzipielle Funktionsweise und die Möglichkeiten, die diese Sprache bietet, zu vermitteln.R – kurz & gut richtet sich an diejenigen, die sich bereits mit statistischen Grundbegriffen auskennen und möglichst schnell mit R produktiv starten möchten. Das Buch bietet eine Einführung in die Arbeit mit der Entwicklungsumgebung und vermittelt einen Überblick über die R-Syntax. Eine kompakte Referenz der zentralen statistischen und programmatischen Funktionen, die zum Basispaket von R gehören, ermöglichen Ihnen ein schnelles Nachschlagen.Jörg Staudemeyer ist IT-Consultant im Ruhestand, aber weiterhin aktiv als Berater und Autor. Während seiner langjährigen Beratertätigkeit im Kontext kommerzieller Großprojekte hatte er Gelegenheit, Erfahrungen in diversen Bereichen der Informationstechnik, insbesondere aber im Java-Umfeld zu sammeln. Ralf C. Staudemeyer ist Professor für IT-Sicherheit an der Hochschule Schmalkalden. Er verfügt über langjährige internationale Erfahrung in Forschung, Lehre und Anwendung. Seine Forschungsschwerpunkte liegen in den Bereichen Computernetzwerke, Maschinelles Lernen, IT-Sicherheit und Datenschutz.

Regulärer Preis: 14,90 €
Produktbild für C# 10 - kurz & gut

C# 10 - kurz & gut

Konkurrenzlos knapp, aber vollständig: Alle Sprachfeatures von C# 10* Schneller Einstieg in C# 10 für erfahrene Programmierer:innen* Das handliche Format macht das Buch zum idealen Begleiter für alle, die mit C# programmieren* Auch in der Neuauflage eine zuverlässige Referenz der renommierten Autoren Joseph und Ben AlbahariIdeal für vielbeschäftigte Programmierer:innen, die eine knappe und zugleich verständliche Beschreibung von C# 10 und LINQ suchen: C# 10 – kurz & gut gibt Ihnen genau das Wissen an die Hand, das Sie benötigen, um schnell effektiv mit C# 10 arbeiten zu können.Wer schon mit Java, C++ oder einer früheren Version von C# vertraut ist, trifft mit C# 10 – kurz & gut die optimale Wahl: Kein anderes Buch und keine Online-Ressource bietet so viel Inhalt auf so wenig Raum. Konzentriert auf das Wesentliche und sehr praxisorientiert, behandelt dieses Taschenbuch mehr Themen als viele der großen C#-Kompendien. So deckt es auch fortgeschrittene Themen ab wie das Überladen von Operatoren, Typ-Constraints, Iteratoren, nullbare Typen, Closures und asynchrone Funktionen.Diese aktualisierte 7. Auflage wurde um die wichtigsten neuen Features der C#-Version 10 ergänzt.Joseph Albahari entwirft Enterprise-Anwendungen auf .NET und auf anderen Plattformen und hat in der Telekommunikation sowie im Gesundheits- und im Bildungswesen gearbeitet. Neben einer Reihe von O'Reilly-Büchern hat er auch LINQPad, das beliebten Query-Tool für LINQ, geschrieben. Ben Albahari ist Mitbegründer von Auditionist, einer Casting-Website für Schauspieler in Großbritannien. Er war fünf Jahre lang Programm-Manager bei Microsoft, wo er an mehreren Projekten arbeitete, darunter am .NET Compact Framework und an ADO.NET. Er ist Mitbegründer von Genamics, einem Tools-Anbieter für C#- und J++-Programmierer, der Software für DNA- und Proteinsequenz-Analysen entwickelt. Bei einer Reihe von O'Reilly-Büchern zu C# war er Co-Autor.

Regulärer Preis: 14,90 €
Produktbild für Clean Craftsmanship

Clean Craftsmanship

* Aus der Feder des legendären Softwareentwicklers Robert C. Martin (»Uncle Bob«), Autor des Bestsellers Clean Code * Standards und ethische Grundsätze für die Entwicklung von zuverlässiger und vertrauenswürdiger Software * Mit fünf Kerndisziplinen zu besserem und nachhaltigerem Code: Test-Driven Development (TDD), Refactoring, einfaches Design, kollaborative Entwicklung und Akzeptanztests Software Craftsmanship ist kein Beruf, sondern eine Berufung. Der legendäre Softwareentwickler Robert C. Martin (»Uncle Bob«) gibt Ihnen mit diesem Buch einen pragmatischen und praktischen Leitfaden für die Praktiken an die Hand, die für die Softwareentwicklung essenziell sind. Uncle Bob erläutert die Methoden, Standards und ethischen Grundsätze, die es Ihnen ermöglichen, robusten und effektiven Code zu schreiben, auf den Sie stolz sein können. Er erörtert wichtige Standards für die Softwareentwicklung, zeigt auf, wie sich die Erwartungen, die andere an Entwickler stellen, von ihren eigenen unterscheiden, und hilft Ihnen dabei, beide Vorstellungen in Einklang zu bringen. Zum Abschluss geht er auf die Berufsethik für die professionelle Programmierung ein und erläutert die Prinzipien, denen alle Entwickler folgen sollten, um sicheren, nachhaltigen und wartbaren Code zu gewährleisten. Mit den Methoden und Konzepten aus diesem Buch können sowohl Programmierer als auch ihre Manager konsequent Code liefern, der Vertrauen schafft, statt es zu untergraben - bei Usern und gleichermaßen der gesamten Gesellschaft, die auf Software angewiesen ist. Aus dem Inhalt * Auf dem Weg zum »Polarstern« der Software Craftsmanship: wissen, wie man gut programmiert * Praktische Anleitungen zur Anwendung von fünf Kerndisziplinen: testgetriebene Entwicklung (TDD), Refactoring, einfaches Design, kollaborative Entwicklung und Akzeptanztests * Wie Entwickler und Teams Produktivität, Qualität und Courage fördern können * Die wahre Bedeutung von Integrität und Teamarbeit sowie zehn spezifische Grundsätze, denen jeder professionelle Softwareentwickler folgen sollte »Zum richtigen Zeitpunkt eine Erinnerung an die ständig zunehmende Komplexität unserer programmatischen Welt und daran, dass wir es dem Vermächtnis der Menschheit - und uns selbst - schuldig sind, ethische Entwicklung zu betreiben.« - Aus dem Vorwort von Stacia Heimgartner Viscardi, CST & Agile Mentorin Robert C. Martin (»Uncle Bob«) ist bereits seit 1970 als Programmierer tätig. Neben seiner Beraterfirma Uncle Bob Consulting, LLC gründete er gemeinsam mit seinem Sohn Micah Martin auch das Unternehmen The Clean Coders, LLC. Er hat zahlreiche Artikel in verschiedenen Zeitschriften veröffentlicht und hält regelmäßig Vorträge auf internationalen Konferenzen. Zu seinen bekanntesten Büchern zählen Clean Code, Clean Coder und Clean Architecture.

Regulärer Preis: 19,99 €
Produktbild für Java Design Patterns

Java Design Patterns

Use the step-by-step approach of this book to learn and implement design patterns in real-world applications. It focuses on classical design patterns with Java 17 and Eclipse (2021-09). In addition to Gang of Four (GoF) design patterns, the book covers popular and alternative design patterns and includes criticisms of design patterns in a chapter on anti-patterns.The book is divided into four parts. Part one covers the SOLID design principles and the Simple Factory pattern. Part two covers the 23 (GoF) design patterns, including the creational patterns, structural patterns, and behavioral patterns. Part three covers alternative design patterns, including the Null Object pattern, and the model-view-controller (MVC) pattern. Part four covers criticisms of design patterns with a quick overview of anti-patterns. It also includes a chapter on FAQs on design patterns.The book also includes a chapter on FAQs on design patterns. Each pattern is explained with real-world examples and the pros and cons of each of the design patterns are discussed. The book concludes with FAQs that can help you prepare for a job interview.WHAT YOU WILL LEARN* Know the SOLID design principles in depth* Implement the 23 design patterns from the GoFApply the Null Object pattern, Simple Factory pattern, and the MVC pattern* Know the criticism of design patterns * Understand the anti-patterns* Verify your understanding through Q&A sessions* Select an alternative to these patterns by comparing their pros and consWHO THIS BOOK IS FORSoftware developers, architects, and programmersVASKARAN SARCAR obtained his Master of Engineering degree in software engineering from Jadavpur University, Kolkata (India), and an MCA from Vidyasagar University, Midnapore (India). He has more than 12 years of experience in education and the IT industry. He devoted his early years (2005-2007) to teaching at various engineering colleges, and later he joined HP India PPS R&D Hub Bangalore. He worked there until August 2019. At the time of his retirement from HP, he was a Senior Software Engineer and Team Lead at HP. To follow his dream and passion, he is now an independent full-time author. He has written more than 10 books on Java and C# such as Design Patterns in C# (2nd edition), Getting Started with Advanced C#, Interactive C#, Interactive Object-Oriented Programming in Java (2nd edition), and Java Design Patterns (2nd edition).Part-I: FoundationChapter 1: SOLID PrinciplesChapter Goal: To discuss all the 5 fundamental design principles-SRP, OCP, LSP, ISP, and DIPSub - Topics SRP, OCP, LSP, ISP, and DIPChapter 2: Simple Factory PatternChapter Goal: To discuss the simple factory pattern a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output. It is the foundation for the factory method pattern and abstract factory pattern in Part II.Part-II: Gang of Four Design Patterns2.A: Creational PatternsChapter 3: Factory Method PatternChapter Goal: To discuss the factory method pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 4: Abstract Factory PatternChapter Goal: To discuss the abstract factory pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 5: Prototype PatternChapter Goal: To discuss the prototype pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 6: Builder PatternChapter Goal: To discuss the builder pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 7: Singleton PatternChapter Goal: To discuss the singleton pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.2.B: Structural PatternsChapter 8: Proxy PatternChapter Goal: To discuss the proxy pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 9: Decorator PatternChapter Goal: To discuss the decorator pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 10: Adapter PatternChapter Goal: To discuss the adapter pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 11: Facade PatternChapter Goal: To discuss the facade pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 12: Flyweight PatternChapter Goal: To discuss the flyweight pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 13: Composite PatternChapter Goal: To discuss the composite pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 14: Bridge PatternChapter Goal: To discuss the bridge pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.2.C: Behavioral PatternsChapter 15: Visitor PatternChapter Goal: To discuss the visitor pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 16: Observer PatternChapter Goal: To discuss the observer pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 17: Strategy PatternChapter Goal: To discuss the strategy pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 18: Template Method PatternChapter Goal: To discuss the template method pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 19: Command PatternChapter Goal: To discuss the command pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 20: Iterator PatternChapter Goal: To discuss the iterator pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 21: Memento PatternChapter Goal: To discuss the memento pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 22: State PatternChapter Goal: To discuss the state pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 23: Mediator PatternChapter Goal: To discuss the mediator pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 24: Chain of Responsibility PatternChapter Goal: To discuss the chain of responsibility pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 25: Interpreter PatternChapter Goal: To discuss the interpreter pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Part-II: Additional Design PatternsChapter 26: Null Object PatternChapter Goal: To discuss the null object pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Chapter 27: MVC PatternChapter Goal: To discuss the MVC pattern with the GoF definition and the core concept behind that with a real-life example and a computer world example. The chapter ends with a concrete implementation and its corresponding output.Part-III: Final talks on Design PatternsChapter 28: Criticism to Design PatternsChapter Goal: To discuss the criticism to design patternsChapter 29: Brief overview of Anti-PatternsChapter Goal: To discuss the anti-patternsChapter 30: FAQChapter Goal: This chapter will consist of the frequently asked questions to help readers with a quick revision. This chapter will also clear the doubts that may arise among similar patterns.

Regulärer Preis: 66,99 €
Produktbild für Human-Computer Interaction in Game Development with Python

Human-Computer Interaction in Game Development with Python

Deepen your understanding of human-computer interaction (HCI) in game development and learn how to develop video games that grab players and don't let them go. This book explores HCI design in computer games to maximize collaborative and interactive functions.You'll first gain a basic introduction to fundamental concepts and practices of HCI before diving into the fundamental concepts of game interface design and technology. You'll learn how to design a gaming interface through practical examples using Python. This is followed by a brief look at how HCI can offer immersive gaming experiences for players and a review of key elements such as interface, usability, user-centered design, and user interface in terms of efficacy. You will also learn how to implement usability aspects in gaming interfaces with examples using Python.Additionally, the book discusses major challenges that game publishers and developers face, and how they can be resolved using HCI techniques. The question of playability is reviewed throughout the game production process. After working through this book's practical examples, you'll have the knowledge required to begin developing compelling, can't-put-the-controller down games of your own.WHAT YOU'LL LEARN* Master HCI tools and methodologies * Understand the concept of HCI strategies in the game development cycle* Develop a game in Python using the HCI approach* Utilize gamification techniques in Human-Computer Interaction* Grasp concepts of usability, user experience and user-centered design processes and their applicationWHO THIS BOOK IS FORProgrammers, engineers, and students interested in creating and implementing computer games using HCI technologies. Prior experience with game development is recommended.JOSEPH THACHIL GEORGE is an IT Security Engineer based in Germany. He also worked as a technical consultant for International Game Technology (IGT) in Italy. Joseph is currently pursuing his doctorate (PhD) in computer science and engineering at the University of Lisbon, Portugal. He has an M.S. in cybersecurity from the Università degli Studi di Firenze, Italy. He is also part of the DISIA research group at the University of Florence, Italy, and the research group (INESC-ID Lisbon) at the University of Lisbon, Portugal. His research interests cover automatic exploit generation; exploitation of vulnerabilities; chaining of vulnerabilities; security of web applications; and JavaScript code exploits. At IGT, he has been a part of various projects related to game configuration and integration in various platforms, specializing in Java and Spring Boot-based projects. He has also worked for various companies in India, Angola, Portugal, and UK and has seven years of experience with various IT companies.MEGHNA JOSEPH GEORGE is a Cloud Engineer based in Germany. She is an AWS-certified solutions architect. She received a B.S. in System Management and M.S. in economics.Chapter 1: Human–Computer Interaction Tools and MethodologiesSub-Topics• Fundamentals of HCI• Tools and techniques• Eye tracking technique and usability• Use of effective interface• Advantage of HCI toolsChapter 2: Human–Computer Interaction and Game Design and DevelopmentSub-Topics• Games and game world• Concept of game design and development• Connection between HCI and game design and development• Interactive design of the game interface• Window and Icon design• Impact of eye tracking and usability• Effect of Thumbnail• Communication, dynamic Interface, and better user experience• Gamification in HCI• Project overviewChapter 3: Game Interface DevelopmentSub-Topics• What is game interface?• What need to be addressed for effective game interface?• Project - Explaining game interface using Python• Best practice for developing game interfaces• Different standard that companies use for game interface developmentChapter 4: Applying Usability in Computer Game InterfaceSub-Topics• Connection between usability and game interface• Sample project for explaining usability• Project description• Design phase• Applying usability tools• Evaluation of interface based on tools outcome• Conclusion of usability projectChapter 5: Project - Gamification in Human-Computer InteractionSub-Topics:• Relationship between the various processes of game development• Game programming• FAN translation• Game design document and production• Development of game using Python• Discussing HCI technique• Expected problems and solutions• Effectiveness of HCI techniqueChapter 6: Human-Computer Interaction New Trends: Research, DevelopmentSub-Topics:• Research, development• HCI new trends• Research project description of HCI in game development• Examples of HCI in game development - From various game developing companies• European policy and standard for game developmentChapter 7: Tips for Developers and StudentsSub-Topics:• Overview• Tips for developers and students for creating HCI-based games• Advantage in terms of cost and effectiveness of game development• Various industry standards in game development• Impact of games in the global economyChapter 8: ConclusionSub-Topics:• Overview• Recommendation and concluding comments

Regulärer Preis: 46,99 €
Produktbild für Artificial Intelligence in Medical Sciences and Psychology

Artificial Intelligence in Medical Sciences and Psychology

Get started with artificial intelligence for medical sciences and psychology. This book will help healthcare professionals and technologists solve problems using machine learning methods, computer vision, and natural language processing (NLP) techniques.The book covers ways to use neural networks to classify patients with diseases. You will know how to apply computer vision techniques and convolutional neural networks (CNNs) to segment diseases such as cancer (e.g., skin, breast, and brain cancer) and pneumonia. The hidden Markov decision making process is presented to help you identify hidden states of time-dependent data. In addition, it shows how NLP techniques are used in medical records classification.This book is suitable for experienced practitioners in varying medical specialties (neurology, virology, radiology, oncology, and more) who want to learn Python programming to help them work efficiently. It is also intended for data scientists, machine learning engineers, medical students, and researchers.WHAT YOU WILL LEARN* Apply artificial neural networks when modelling medical data* Know the standard method for Markov decision making and medical data simulation* Understand survival analysis methods for investigating data from a clinical trial* Understand medical record categorization* Measure personality differences using psychological modelsWHO THIS BOOK IS FORMachine learning engineers and software engineers working on healthcare-related projects involving AI, including healthcare professionals interested in knowing how AI can improve their work settingTSHEPO CHRIS NOKERI harnesses advanced analytics and artificial intelligence to foster innovation and optimize business performance. In his functional work, he has delivered complex solutions to companies in the mining, petroleum, medical sciences, and manufacturing industries. He initially completed a bachelor’s degree in information management. Afterward, he graduated with an Honours degree in business science at the University of the Witwatersrand on a TATA Prestigious Scholarship and a Wits Postgraduate Merit Award. They unanimously awarded him the Oxford University Press Prize. Chapter 1: An Introduction to Artificial Intelligence for Medical SciencesChapter goal: This is the initial chapter. Subsequently, it encapsulates the specific context and structure of the book. Then, it states the varying medical specialties central to this book. Likewise, it properly presents independent subsets of artificial intelligence. Besides that, it unveils valuable tools for undertaking exercises; Python programming language, distribution package, and libraries. Afterward, it sufficiently acquaints you with different algorithms, including when to carry them out.Sub-topics:● Context of the book.● The book’s central point.● Artificial Intelligence subsets covered in this book.● Structure of the book.● Tools that this book implements.○ Python distribution package.○ Anaconda distribution package.○ Jupyter Notebook.○ Python libraries.● Encapsulating Artificial Intelligence.● Debunking algorithms.● Debunking supervised algorithms.● Debunking unsupervised algorithms.● Debunking Artificial Neural Networks.Chapter 2: Realizing Patterns in Common Diseases with Neural NetworksChapter goal: This chapter purportedly contains the application of artificial neural networks in modelling medical data. It properly instigates deep belief networks to model data and predicts whether a patient suffers from an ordinary disease (i.e., pneumonia and diabetes). Equally, it appraises the networks with fundamental metrics to discern the magnitude to which the networks set apart patients who suffer from the disease from those who do not.Sub-topics:● Classifying patients’ Cardiovascular disease diagnosis outcome data by executing a deepbelief network.● Preprocessing the Cardiovascular disease diagnosis outcome data.● Debunking deep belief networks.o Designing the deep belief network.o Relu Activation function.o Sigmoid activation function.● Training the deep belief network.● Outlining the deep belief networks predictions.● Considering the deep belief network’s performance.● Classifying patients’ diabetes diagnosis outcome data by executing a deep belief network.● Outlining the deep belief networks predictions .● Considering the deep belief network’s performance.● Conclusion.Chapter 3: A Case for COVID-19 Identifying Hidden States and Simulation ResultsChapter goal: This chapter instigates a set of series analysis methods to uniquely discern patterns in the US COVID-19 confirmed cases. To begin with, the Gaussian Hidden Markov Model inherits the series data, models it and identifies the hidden states, including the means and covariance in those states. Subsequently, the Monte Carlo simulation method replicates US COVID-19 confirmed cases across multiple trials, thus providing us with a rich comprehending of the patternChapter content:● Debunking the Hidden Markov Model● Descriptive analysis● Carrying Out the Gaussian Hidden Markov Modelo Considering the Hidden States in US COVID-19 Confirmed Cases with the GaussianHidden Markov Model● Simulating US COVID-19 Confirmed Cases with the Monte Carlo Simulation Methodo US COVID-19 confirmed cases simulation results● ConclusionChapter 4: Cancer Segmentation with Neural NetworksChapter goal: This chapter typically exhibits the practical application of computer vision andconvolutional neural networks for breast and skin Cancer realization and segmentation. Equally, it shows an approach to filter medical scans by applying canny, luplican, and sobel filters. It concludes by ascertaining the extent to which the networks accurately differentiate scans of patients with and without Cancer.Chapter content:● Debunking Cancer.● Debunking Skin Cancer● Depicting scans of a patient with Skin Cancer.● Classifying Patients’ Skin Cancer Diagnosis Image Data by Executing a Convolutional Neural Network.o Preprocessing the training Skin Cancer Image Data.o Preprocessing the Validation Skin Cancer Image Data.o Generating the Training Skin Cancer Diagnosis Image Data.o Tuning the Training Skin Cancer Image Data.o Executing the Convolutional Neural Network to Classify Patients’ Skin CancerDiagnosis Image Data.o Considering the Convolutional Neural Network’s Performance.o Debunking Breast Cancer.● Classifying Ultrasound Scans of Breast Cancer Patients by Executing a Convolutional Neural Network.o Preprocessing the Validation Breast Cancer Image Data .o Preprocessing the Validation Breast Cancer Image Data .o Generating the Training Breast Cancer Diagnosis Image Data.o Tuning the Training Breast Cancer Image Data.o Executing the Convolutional Neural Network to Classify Patients’ Breast CancerDiagnosis Image Data.o Considering the Convolutional Neural Network’s Performance.● Conclusion.Chapter 5: Modelling Magnetic Resonance Imaging and X-Rays by Carrying out Artificial Neural NetworksChapter goal: This chapter intimately acquaints you with the practical application of computer vision and artificial neural networks in neurology and radiology. It promptly carries out convolutional neural networks for image classification. The initial network models MRI scans to set apart patients with and without a brain tumor, and the second network models X-ray scans to set apart patients with and without pneumonia. Besides that, it unveils an effective technique for appraising networks in medical image classification.Sub-topics:● Debunking Brain Tumors.● Classifying Patients’ Model Magnetic Resonance Imaging (MRI) Data by Executing aConvolutional Neural Network.o Depicting MRI Scan of Patients with a Brain Tumor.o Depicting Brain Scans without a Brain Tumor.o Preprocessing the Training MRI Image Data.o Preprocessing the Validation MRI Image Data.o Generating the Training MRI Image Data.o Tuning the Training MRI Image Data.o Executing the Convolutional Neural Network to Classify Patients’ MRI Image Data.o Considering the Convolutional Neural Network’s Performance.● Debunking Pneumonia.o Classifying Patients’ CT scan Data by Executing a Convolutional Neural Network.o Depicting an X-Ray scan of a Patient with Pneumonia.o Depicting an X-Ray scan of a Patient without Pneumonia.o Processing the X-Ray Image Data.o Generating the Training Chest X-Ray Image Data.o Preprocessing the Validation Chest X-Ray Image Data.o Generating the Validation Chest X-Ray Image Data.o Tuning the Training Chest X-Ray Image Data.o Executing the Convolutional Neural Network to Classify Patients’ Chest X-Ray ImageData.▪ Considering the Convolutional Neural Network’s Performance.● Conclusion.Chapter 6: A Case for COVID-19 CT Scan SegmentationChapter goal: This chapter presents an approach for carrying out convolutional neural networks to model chest CT scan images and differentiate between patients with and without COVID-19.Sub-topics:● Classifying Patients’ Model Magnetic Resonance Imaging (MRI) Data by Carrying out aConvolutional Neural Network.o Depicting a Chest CT scan of a COVID-19 Negative Patient.o Depicting a CT scan of COVID-19 Negative Patient.o Preprocessing the Training COVID-19 Data.o Preprocessing the Validation COVID-19 CT Scan Data.o Generating the Training COVID-19 CT Scan Data.o Tuning the Training COVID-19 CT Scan Data.● Data.o Considering the Convolutional Neural Network’s Performance.● Conclusion.Chapter 7 Modelling Clinical Trial DataChapter goal: This chapter familiarizes you with the prime essentials of the most widespread method for adequately investigating data from a clinical trial, recognized as a survival method. It debunks the Nelson-Aalen additive model. To begin with, it encapsulates the method. Subsequently, it promptly presents exploratory analysis, then correlation analysis by carrying out the Pearson correlation method. Following that, it outlines the survival table, then fits the model. It concludes by carefully outlining the profile table, confidence interval, and reproducing the cumulative and baseline hazard.sub-topics:● Debunking Clinical Trials.● An Overview of Survival Analysis.● Context of the Chapter.● Exploring the Nelson-Aalen Additive Model.● Descriptive Analysis.● Realizing a Correlation Relationship.● Outlining the Survival Table.● Carrying out the Nelson-Aalen Additive Model.o Outlining the Nelson-Aalen additive Model’s Confidence Intervalo Discerning the Survival Hazard.o Discerning the Cumulative Survival Hazard.o Baseline Survival Hazard.● Conclusion.● References.Chapter 8: Medical Record CategorizationChapter goal: This chapter sufficiently apprises a wholesome approach for realizing patterns in medical records by carrying out a linear discriminant analysis model. To begin with, it summarizes medical recording. Subsequently, it exhibits a technique of cleansing textual data by carrying out fundamental methods like regularization and TfidfVectorizer. Afterward, it executes the method to classify the medical specialty, then it assesses the extent to which it segregates classes.Sub-topics:● Medical Records.● Context of Chapter.● Debunking Categorization with Linear Discriminant Analysis.o Descriptive Statistics.o Preprocessing the Medical Records Data.o Carrying out Regular Expression.o Carrying Out Word Vectorization.o Carrying out the Linear Discriminant Analysis Model to Classify Patients’ MedicalRecords.o Considering the Linear Discriminant Analysis Model’s Performance.● Conclusion.Chapter 9: A Case for Psychology: Factoring and Clustering Personality DimensionsChapter goal: This chapter introduces you to analyzing the underlying patterns in human behavior by promptly carrying out exploratory factor analysis and cluster analysis. To begin with, it covers the big five personality dimensions. Following that, it presents an approach for typically collecting data by retaining a Likert scale and measuring the reliability of the scale with Cronbach’s reliability testing strategy. Subsequently, it performs factor analysis; beginning with estimating Bartlett Sphericity statistics, then the Kaiser-Meyer-Olkin statistic. Following that, it rotates the eigenvalues by carrying out the varimax rotation method and estimates the proportional variances and cumulative variances. In addition, it executes the K-Means method to observe clusters in the data; beginning with standardizing the data and carrying out principal component analysis.Sub-topics:● Debunking Personality Dimensions.● Questionnaires.● Likert Scale.● Reliability.o Spearman-Brown Reliability Testing Strategy.o Carrying out Cronbach's Reliability Testing Strategy.● Carrying out Factor Model.o Carrying out the Bartlett Sphericity Test.o Carrying out the Kaiser-Meyer-Olkin Test.o Discerning K with a Scree Plot.o Carrying out Eigenvalue Rotation.▪ Varimax Rotation.● Carrying out Cluster Analysis.o Carrying out Principal Component Analysis.O Returning K-Means label.

Regulärer Preis: 56,99 €
Produktbild für Beginning Programming All-in-One For Dummies

Beginning Programming All-in-One For Dummies

LET THERE BE CODE!Beginning Programming All-in-One For Dummies offers one guide packed with 7 books to teach you programming across multiple languages. Coding can seem complex and convoluted, but Dummies makes it simple and easy to understand. You’ll learn all about the principles of programming, algorithms, data structures, debugging programs, unique applications of programming and more while learning about some of the most popular programming languages used today. Move confidently forward in your computer science coursework or straight into the workforce. You’ll come away with a rock-solid foundation in the programming basics, using data, coding for the web, and building killer apps.* Learn the basics of coding, including writing and compiling code, using algorithms, and data structures* Get comfortable with the syntax of several different programming languages* Wrap your mind around interesting programming opportunities such as conducting biological experiments within a computer or programming a video game engine* Develop cross-platform applications for desktop and mobile devicesThis essential guide takes the complexity and convolution out of programming for beginners and arms you with the knowledge you need to follow where the code takes you. WALLACE WANG specializes in making complex topics understandable. His assorted For Dummies tech books have sold nearly half a million copies. He has a master’s degree in computer science along with side hustles in stand-up comedy and screenwriting because life is too short to focus on just one thing.INTRODUCTION 1About This Book 1Foolish Assumptions 2Icons Used in This Book 2Beyond the Book 3Where to Go from Here 3BOOK 1: GETTING STARTED WITH PROGRAMMING 5CHAPTER 1: GETTING STARTED PROGRAMMING A COMPUTER 7How Computer Programming Works 8Identifying the problem 8Defining the steps 9The History of Computer Programming 10Talking to a processor in machine language 11Using assembly language as a shortcut to machine language 12Hiding the details of a computer with a high-level language 15Combining the best of both worlds with the C programming language 15Weighing the pros and cons of programming languages 16Figuring Out Programming 18Desire beats technical training every time 19Picking a computer and an operating system 19Writing programs with an editor 21Converting source code with an assembler or compiler 23Translating source code with an interpreter 25Combining a compiler with an interpreter to create p-code 25Taking the time to understand 26CHAPTER 2: DIFFERENT METHODS FOR WRITING PROGRAMS 29Spaghetti Programming 31Structured Programming 34The three parts of structured programming 34Top-down programming 36Event-Driven Programming 38Designing a user interface 41Writing event handlers 42Writing your program 44Object-Oriented Programming 44Isolating data 46Simplifying modifications 47Using Protocol-Oriented Programming 49Design Patterns 50CHAPTER 3: TYPES OF PROGRAMMING LANGUAGES 53Your First Language 54BASICally disrespected 55Visual programming with Scratch 56Programming robots with LEGO Mindstorms 57Learning object-oriented programming with Alice 57Programming a killer robot 58Curly-Bracket Languages 60Learning programming with C 60Adding object-oriented programming with C++ 62Gaining true portability with Java 63Programming more safely with C# 64Choosing a curly-bracket language 66Artificial Intelligence Languages 67Scripting Languages 71Automating a program 72Customizing a program 73Transferring data among multiple programs 74Creating stand-alone programs 74Database Programming Languages 75Comparing Programming Languages 76CHAPTER 4: PROGRAMMING TOOLS 77Choosing a Compiler 78Defining your needs for a compiler 79Evaluating the technical features of a compiler 80Finding an Interpreter 84Compiling to a Virtual Machine 86Writing a Program with an Editor 88Stand-alone editors 88Integrated development environments 90Fixing a Program with a Debugger 91Stepping line-by-line 92Watching variables 95Saving Time with Third-Party Components 96Optimizing a Program with a Profiler 97Managing Source Code 97Creating a Help File 99Installing a Program 99Dissecting Programs with a Disassembler 99BOOK 2: PROGRAMMING BASICS 101CHAPTER 1: HOW PROGRAMS WORK 103Using Keywords as Building Blocks 105Organizing a Program 108Dividing a Program into Subprograms 109Dividing a Program into Objects 113Creating a User Interface 115CHAPTER 2: VARIABLES, DATA TYPES, AND CONSTANTS 119Declaring Variables 120Variable naming conventions 121Creating variables in a command 122Declaring the data type of a variable 124Using Different Data Types 126Storing Data in a Variable 130Retrieving Data from a Variable 132Using Constant Values 133Defining the Scope of a Variable 135Handling global variables with care 136Restricting scope to a module 137Isolating variables in a subprogram 138Passing data among subprograms 139CHAPTER 3: MANIPULATING DATA 141Storing Data with the Assignment Operator 142Using Math to Manipulate Numbers 143Organizing equations with operator precedence 144Using built-in math functions 146Manipulating Strings 147Finding Strings with Regular Expressions 148Pattern-matching with the single character (.) wildcard 149Pattern-matching for specific characters 149Pattern-matching with the multiple-character (*) and plus (+) wildcards 150Pattern-matching with ranges 151Using Comparison Operators 153Using Boolean Operators 156Using the Not operator 156Using the And operator 157Using the Or operator 158Using the Xor operator 159Converting Data Types 160CHAPTER 4: MAKING DECISIONS BY BRANCHING 163Picking One Choice with the IF-THEN Statement 164Picking Two Choices with the IF-THEN-ELSE Statement 166Picking Three or More Choices with the IF-THEN-ELSEIF Statement 168Checking a condition for each set of commands 168Offering three or more choices 170Playing with Multiple Boolean Operators 171Making Multiple Choices with the SELECT CASE Statement 174Matching multiple values in a SELECT CASE statement 177Checking a range of values 178Comparing values 179CHAPTER 5: REPEATING COMMANDS BY LOOPING 181Looping a Fixed Number of Times with the FOR-NEXT Loop 182Using a FOR-NEXT loop variable 183Counting by a different range 185Counting by different increments 186Counting backward 187Counting over arrays and other items 188Looping Zero or More Times with the WHILE Loop 189Looping at Least Once with the DO Loop 192Playing with Nested Loops 193Prematurely Exiting from a Loop 195Checking Your Loops 195CHAPTER 6: BREAKING A LARGE PROGRAM INTO SUBPROGRAMS 197Creating and Using Subprograms 199Creating a subprogram 200“Calling” a subprogram 201Passing Parameters 203Passing parameters by reference 206Storing values in a subprogram name 210Repeating a Subprogram with Recursion 212CHAPTER 7: BREAKING A LARGE PROGRAM INTO OBJECTS 215How Object-Oriented Programming Works 216Encapsulation Isolates Data and Subprograms 219Shielding data inside an object 221Grouping methods inside of an object 221Protecting code from other programmers 222Sharing Code with Inheritance 223Polymorphism: Modifying Code without Changing Its Name 226Design Patterns 228Object-Oriented Languages 230Hybrid languages 231Pure languages 231Disadvantages of object-oriented programming 232Real-Life Programming Examples 233Defining an object with a class 233Creating an object from a class 236Running methods stored in an object 236Inheriting an object 238Using method overloading to rewrite an inherited subprogram 239CHAPTER 8: READING AND SAVING FILES 243Storing Data in Text Files 243Creating a text file 246Reading a text file 247Storing Fixed-Size Data in Random-Access Files 250Writing data 251Reading data 252Storing Varying-Size Data in Untyped Files 253Writing data 254Reading data 255Using Database Files 257Looking at the structure of a database 257Connecting to a database 259CHAPTER 9: DOCUMENTING YOUR PROGRAM 263Adding Comments to Source Code 264Identifying the two types of comments 265Describing code and algorithms 268Documentation 270Debugging 271Writing Software Documentation 272Documentation types 272Documentation tools 274Help files 275CHAPTER 10: PRINCIPLES OF USER INTERFACE DESIGN 277The Evolution of User Interfaces 278Command-line interface 278Menus 278Graphical user interface 280Elements of a User Interface 281Displaying commands to a user interface 281Giving data to the user interface 284Showing information back to the user 288Organizing a user interface 290Designing a User Interface 291Know the user 291Hide/disable unusable options 292Tolerate mistakes 293Be consistent 294Give the user freedom to customize the user interface 295Make navigation easy 295CHAPTER 11: DEBUGGING AND TESTING 297Common Types of Programming Errors 297Debugging with Comments and Print Statements 300Breakpoints, Stepping, and Watching 302Stepping through code 304Watching variables 305Testing Code 306Unit tests 307Integration tests 308User interface testing 309BOOK 3: DATA STRUCTURES 311CHAPTER 1: STRUCTURES AND ARRAYS 313Using Structures 314Storing data 315Retrieving data 315Using an Array 316Defining the size 317Storing data 320Retrieving data 321Working with Resizable Arrays 321BASIC 322C# 323Swift 323Working with Multidimensional Arrays 323Creating a multidimensional array 324Storing and retrieving data 325Using Structures with Arrays 325Drawbacks of Arrays 327Data types 328Searching and sorting 328Adding and deleting 329Identifying the location of data in an array 330CHAPTER 2: SETS AND LINKED LISTS 333Using Sets 334Adding and deleting data in a set 335Checking for membership 336Avoiding duplicate data 337Manipulating two sets 337Using Linked Lists 342Creating a linked list 343Modifying a linked list 344Creating a double linked list 345Drawbacks of Sets and Linked Lists 346Problems with pointers 347Problems with accessing data 347CHAPTER 3: COLLECTIONS AND DICTIONARIES 351Using a Collection 352Adding data to a collection 352Deleting data from a collection 354Identifying data with keys 355Searching and retrieving data 356Using Dictionaries 358Adding data to a dictionary 358Searching and retrieving data from a dictionary 359Understanding Hash Tables 360Converting keys with a hash function 360Hash function collisions 362CHAPTER 4: STACKS, QUEUES, AND DEQUES 367Using Stacks 368Adding data to a stack 369Removing data from a stack 370Counting and searching a stack 371Using Queues 372Adding data to a queue 373Removing data from a queue 374Counting and searching a queue 375Using Deques 376CHAPTER 5: GRAPHS AND TREES 381Understanding Graphs 383Types of graphs 384Uses for graphs 385Creating Trees 386Ordered trees 387Binary trees 388B-trees 389Taking Action on Trees 390Traversing a tree to search for data 390Adding new data 392Deleting data 393Pruning and grafting sub-trees 394BOOK 4: ALGORITHMS 397CHAPTER 1: SORTING ALGORITHMS 399Using Bubble Sort 400Using Selection Sort 402Using Insertion Sort 403Using Shell Sort 405Using Heap Sort 406Using Merge Sort 410Using Quick Sort 411Comparing Sorting Algorithms 412CHAPTER 2: SEARCHING ALGORITHMS 415Sequential Search 416Backward or forward searching 417Block searching 418Binary searching 419Interpolation searching 420Using Indexes 422Creating an index 422Clustered and unclustered indexes 423Problems with indexes 424Adversarial Search 424Depth versus time 426Alpha-beta pruning 426Looking up a library of good moves 427CHAPTER 3: STRING SEARCHING 429Sequential Text Search 430The Boyer-Moore algorithm 431The Rabin–Karp algorithm 431The Shift Or algorithm 433The finite automaton algorithm 435Searching with Regular Expressions 436Searching for single character patterns 436Searching for multiple character patterns 437Searching for alternate patterns 438Searching Phonetically 438CHAPTER 4: DATA COMPRESSION ALGORITHMS 441Lossless Data Compression Algorithms 442Run-length encoding 442The Burrows–Wheeler transform algorithm 442Dictionary encoding 445Lossy Data Compression 449CHAPTER 5: ENCRYPTION ALGORITHMS 451How Encryption Works 451The Basics of Encryption 453Stream ciphers 456Block ciphers 457Symmetric/Asymmetric Encryption Algorithms 459Cracking Encryption 463Brute-force attacks 463Dictionary attacks 464Plaintext and ciphertext attacks 466BOOK 5: WEB PROGRAMMING 469CHAPTER 1: HYPERTEXT MARKUP LANGUAGE 471The Structure of an HTML Document 472Creating a title 472Creating the body text 472Aligning text 474Emphasizing text 475Adding color 476Changing the font size 477Adding comments 478Adding Graphics 478Defining the Background 479Creating Hyperlinks 480Defining an anchor point 480Linking to an anchor point 480Making Tables 481Defining a table 481Defining a table heading 482Creating table rows and data 483Displaying a table caption, header, and footer 484CHAPTER 2: CSS 487The Structure of a Stylesheet 488Creating Style Classes 489Separating Styles in Files 491Cascading Stylesheets 493CHAPTER 3: JAVASCRIPT 495The Structure of a JavaScript Program 496Creating Comments 497Declaring Variables 498Using Operators 498Increment and decrement operators 500Assignment operators 501Branching Statements 501Looping Statements 503Creating Functions 504Using Arrays 505Designing User Interfaces 505Creating dialog boxes 505Creating windows 507CHAPTER 4: PHP 509Examining the Structure of a PHP Program 510Creating Comments 510Declaring Variables 511Using Operators 512Increment and decrement operators 513Assignment operators 515Branching Statements 515Looping Statements 517Creating Functions 518Using Arrays 519Creating Objects 520CHAPTER 5: RUBY 523The Structure of a Ruby Program 524Creating Comments 524Declaring Variables 525Using Operators 526Branching Statements 528Looping Statements 530Creating Functions 531Using Data Structures 532Creating Objects 534BOOK 6: PROGRAMMING LANGUAGE SYNTAX 537CHAPTER 1: C AND C++ 539Looking at the Structure of a C/C++ Program 540Creating Comments 541Declaring Variables 542Declaring string data types 542Declaring integer data types 543Declaring floating-point data types 544Declaring Boolean values 545Using Operators 545Increment and decrement operators 546Assignment operators 548Branching Statements 548Looping Statements 550Creating Functions 551Data Structures 553Creating a structure 553Creating enumerations 554Creating an array 554Using Objects 555CHAPTER 2: JAVA AND C# 557Looking at the Structure of a Java/C# Program 558Creating Comments 559Declaring Variables 559Declaring string data types 560Declaring integer data types 560Declaring floating-point data types 561Declaring Boolean variables 562Using Operators 562Increment and decrement operators 564Assignment operators 564Branching Statements 565Looping Statements 568Creating Functions 569Data Structures 571Creating a C# structure 571Creating an array 572Creating a Java linked list 573Creating C# data structures 574Using Objects 574CHAPTER 3: PERL AND PYTHON 577Reviewing the Structure of a Perl or Python Program 578Creating Comments 579Defining Variables 580Using Operators 580Increment and decrement operators 582Assignment operators 583Branching Statements 584Looping Statements 586Creating Functions 588Making Data Structures 588Perl data structures 589Python data structures 590Using Objects 592CHAPTER 4: KOTLIN 595Looking at the Structure of a Kotlin Program 596Creating Comments 596Declaring Variables 597Declaring string data types 597Declaring integer data types 598Declaring floating-point data types 599Declaring Boolean values 599Declaring Constants 600Using Operators 600Branching Statements 601Looping Statements 605Creating Functions 606Creating Data Structures 608Creating a list 609Creating an array 610Creating a set 610Creating Objects 611CHAPTER 5: SWIFT AND SWIFTUI 613Considering the Structure of a Swift Program 614Understanding SwiftUI 614Creating a SwiftUI user interface 616Understanding SwiftUI state variables 616Creating Comments 618Declaring Variables 618Declaring string data types 619Declaring integer data types 620Declaring decimal data types 620Declaring Boolean values 621Declaring Constants 621Using Operators 622Branching Statements 623Looping Statements 627Creating Functions 628Data Structures 630Creating an array 630Creating a dictionary 632Creating a set 633Creating Objects 634CHAPTER 6: FLUTTER AND DART 637Working with Flutter 638Understanding the structure of a Flutter program 638Working with widgets in Flutter 639Aligning widgets in rows and columns 642Understanding the Dart Language 645Creating comments 645Declaring variables 646Using operators 646Using branching statements 649Using looping statements 650Creating functions 652Creating data structures 653Using objects 656BOOK 7: APPLICATIONS 657CHAPTER 1: DATABASE MANAGEMENT 659Understanding the Basics of Databases 659Free-form databases 660Flat-file databases 661Relational databases 663Manipulating Data 667Writing database commands 669The SQL language 670Data integrity 671Data mining 672Database Programming 672CHAPTER 2: BIOINFORMATICS 675The Basics of Bioinformatics 676Representing molecules 676Manipulating molecules in a computer 677Database Searches 679Bioinformatics Programming 681CHAPTER 3: COMPUTER SECURITY 685Stopping Malware 686Viruses 687Worms 687Trojan horses 688Spyware 689Distributed denial-of-service attacks 690Stopping Hackers 691Intrusion detection systems 692Rootkit detectors 693Forensics 694Secure Computing 695Patching as an afterthought 695Security in coding 696Security by design 697CHAPTER 4: ARTIFICIAL INTELLIGENCE 699Problem Solving 700Game-playing 701Natural language processing 702Speech recognition 704Image recognition 705Machine Learning 706Bayesian probability 707Neural networks 707Applications of Artificial Intelligence 710CHAPTER 5: MOBILE AND WEARABLE COMPUTING 711Understanding the Different Generations of Computing 712Giving Data to the User 714Getting Data from the User 716Tracking Motion and Location 717Tracking Real-Time Health Data 718Looking to the Future of Augmented Reality and Wearable Computers 718CHAPTER 6: GAME ENGINES 721Understanding Game Engines 722Picking a Game Engine 723Programming a Game Engine 724Exploring the Future Uses of Game Engines 726Filmmaking 726Architecture and engineering simulations 727Marketing and advertising 728CHAPTER 7: THE FUTURE OF COMPUTER PROGRAMMING 731Picking a Programming Language 732Picking an Operating System 733Doing Cross-Platform Programming 735The portability of C 735Cross-platform languages 736Virtual machines 737Software as a service 738Data science 739Website programming 740Macro programming 740Robotics programming 741Blockchain programming 742Defining Your Future in Programming 743Teaching yourself other languages 743Combining other interests besides programming 744Getting experience and knowledge 744Index 747

Regulärer Preis: 26,99 €
Produktbild für Einstieg in SQL (3. Auflage)

Einstieg in SQL (3. Auflage)

Die 3. aktualisierte und überarbeitete Auflage. Jetzt vorbestellen!Den leichten Einstieg in SQL und die Modellierung von Daten finden Sie hier! Schritt für Schritt führt Sie dieser Leitfaden durch die SQL-Kommandos und macht Sie mit allen wichtigen Befehlen vertraut. Auf diesem Fundament aufbauend lernen Sie, wie Sie Ihre Daten richtig modellieren, verknüpfen und bearbeiten. Mit diesen Anleitungen wird die Datenmodellierung mit SQL einfach und unkompliziert: So schaffen Sie Ordnung und sorgen für performante Abfragen.Aus dem Inhalt: Eine kurze Einführung in Tabellen und SQLGrundfunktionen der Tabellenabfrage: SELECT und WHEREZeilen einfügen, ändern und löschen: INSERT, UPDATE und DELETETabellen anlegen: CREATE TABLEMengenoperationenDatenbanken modellieren und optimierenDatenmodelle in Tabellen überführenBeziehungen zwischen Tabellen: JOINsTransaktionenSkalarfunktionen und BedingungslogikSpaltenwerte gruppieren: GROUP BYAbfragen in virtuellen Tabellen speichern: VIEWsLeseprobe (PDF-Link)Autor: Michael Laube arbeitet schon seit vielen Jahren mit relationalen Datenbanken und SQL. Mit dieser Erfahrung aus der Praxis zeigt er Ihnen, was alles in der Abfragesprache steckt und wie Sie Probleme bei der Datenbankentwicklung elegant lösen.

Regulärer Preis: 29,90 €
Produktbild für Let's code Python (2. Auflage)

Let's code Python (2. Auflage)

Programmieren lernen mit PythonPython macht Spaß! Steige einfach ohne Vorkenntnisse ein und lerne programmieren. Schritt für Schritt, mit eigenen kleinen Programmen und Spielen, selbst gebauten Kreaturen, Grafik und mehreren Leveln. Das Buch und die besonders übersichtliche Entwicklungsumgebung TigerJython bieten Jugendlichen wie Erwachsenen viele Hilfen beim Lernen. Neue Sprachelemente werden ausführlich vorgestellt, mit farbigen Hervorhebungen und Erklärungen direkt am Code.Aus dem Inhalt: Installation und erste SchritteQuiz, Vokabeltrainer, Würfel-PokerEin Grafik-Framework benutzenDateien bearbeiten und speichernMathematische Graphen und DiagrammeSpiele nachprogrammieren: Breakout, Tic Tac Toe und mehrSelbst gebaute KreaturenMulti-Level-SpieleLeseprobe (PDF)Autor: Hauke Fehr programmiert seit über 30 Jahren mit verschiedenen Sprachen für verschiedene Zwecke. Die Wissenvermittlung liegt ihm dabei besonders am Herzen.

Regulärer Preis: 24,90 €
Produktbild für C++ mit Visual Studio 2022 und Windows Forms-Anwendungen

C++ mit Visual Studio 2022 und Windows Forms-Anwendungen

Dieses Buch stellt C++ umfassend dar. Zahlreiche Beispiele veranschaulichen die Theorie. Dabei werden die Neuerungen von C++11, C++14 und C++17 von Anfang an integriert und ihre Vorteile gezeigt. Im Unterschied zu den allermeisten anderen C++-Büchern werden Windows-Programme mit einer grafischen Benutzeroberfläche entwickelt.Dieses Buch ist ein Lehrbuch, das sich an Studenten von Fachhochschulen und Universitäten richtet. Da es keine Vorkenntnisse voraussetzt, ist es auch zum Selbststudium geeignet. Es entstand aus zahlreichen Vorlesungen und Firmenseminaren. Der Aufbau, die Beispiele und Übungsaufgaben sind erprobt und bewährt.Und es ist gleichzeitig auch ein Fachbuch, das erfahrene C++-Programmierer auf den Stand von C++17 bringt. Es zeigt, wie die zahlreichen Neuerungen selbst elementare Programmiertechniken einfacher und sicherer machen. Dazu kommen neue Konzepte, die bessere und effizientere Lösungen als noch vor einigen Jahren ermöglichen. Viele dieser neuen Möglichkeiten sind in der industriellen Praxis noch nicht verbreitet.Übungsaufgaben ermöglichen dem Leser, das Gelernte zu vertiefen. Lösungen stehen auf www.rkaiser.de zum Download bereit.Dieses Buch erscheint in zwei weitgehend identischen Ausgaben:• In der vorliegenden Ausgabe werden Programme mit einer grafischen Benutzeroberfläche geschrieben, in denen alle Ein- und Aus-gaben über eine Windows-Benutzeroberfläche erfolgen.• In der anderen Ausgabe „C++ mit Visual Studio 2019“ (ISBN 978-3-662-594759) werden C++-Programme ohne eine grafische Benutzeroberfläche geschrieben. Alle Ein- und Ausgaben erfolgen mit cin und cout über die Konsole.Nach seinem Mathematikstudium an der Universität Tübingen war RICHARD KAISER einige Jahre in der Lehrerausbildung tätig, Trainer in der Industrie, Software-Entwickler (vor allem für technische Anwendungen) und Leiter der Software-Abteilung. Seit 1991 ist er Professor an der Dualen Hochschule Baden-Württemberg (Lörrach), wo er vor allem Vorlesungen über Programmiersprachen (C/C++/C#) und Mathematik hält. In den letzten Jahren hat er viele Seminare über C++ und C# für Firmen durchgeführt.Die Entwicklungsumgebung.- Steuerelemente für die Benutzeroberfläche.- Elementare Datentypen und Anweisungen in C und C++.- Sie Stringklassen string und wstring.- Arrays und Container.- Einfache selbstdefinierte Datentypen.- Zeiger, Strings und dynamisch erzeugte Variablen.- Überladene Funktionen und Operatoren.- Objektorientierte Programmierung.- Namensbereiche.- Exception-Handling.- Containerklassen der C++-Standardbibliothek.- Dateibearbeitung mit den Stream-Klassen.- Funktionsobjekte und Lambda-Ausdrücke.- Templates und STL.- C++11 Smart Pointer: shared_ptr, unique_ptr und weak_ptr.- Literatur.- Index.

Regulärer Preis: 78,10 €
Produktbild für STM32 - Das umfassende Praxisbuch (2. Auflg.)

STM32 - Das umfassende Praxisbuch (2. Auflg.)

ARM-Microcontroller programmieren für Embedded Systems - Das umfassende PraxisbuchMit diesem Buch erhalten Sie einen umfassenden Praxiseinstieg für die Softwareentwicklung für Embedded Systems mit der ARM-Mikrocontrollerfamilie STM32F4xx der Firma STMicroelectronics (STM). Für die Programmierung wird die Sprache C eingesetzt.Der Autor behandelt die wichtigsten Peripherie-Komponenten, dazu gehören digitale und analoge I/O-Ports (GPIOs), Timer und Counter, serielle Schnittstellen (USARTs/UARTs, SPI und I2C), ADCs und DACs, RTC (Echtzeit-Uhr) sowie Direct Memory Access (DMA).Die Programmierung dieser Komponenten zeigt der Autor anhand einfacher praktischer Anwendungsbeispiele wie z.B. die Abfrage von Uhrzeit und Datum von einer externen RTC (über I2C) sowie deren Anzeige über SPI auf einfachen Displays. Dabei entsteht im Verlauf des Buchs eine Bibliothek, deren Funktionen für eigene Projekte auf einfache Weise eingesetzt werden können.Als Entwicklungsumgebung wird STM32CubeIDE von STM verwendet. Außerdem kommt das Evaluierungsboard NUCLEO-64 für den STM32F446 zum Einsatz. Der Autor legt Wert darauf, alles »bare-metal« zu programmieren und verzichtet darauf, die HAL-Bibliothek einzusetzen. Diese Vorgehensweise erleichtert Ihnen auch den Umstieg auf Mikrocontroller anderer Hersteller. Grundlegende Kenntnisse der Programmiersprache C werden vorausgesetzt. Dennoch wird auf einige Aspekte eingegangen, die in der Bare-metal-Programmierung von Mikrocontrollern möglicherweise wichtiger sind als in der Entwicklung herkömmlicher PC-basierter Software.Aus dem Inhalt: Typische GPIO-Anwendungen (Input/Output/Alternative Funktionen)Timer: Systick/Basic/General Purpose/Advanced Control TimerPWM: Dimmen von LEDs mit TimernA/D- und D/A-WandlungSerielle Kommunikation mit UARTs/USARTs/I2C/SPIPorterweiterung mit I2C (PCF8574)/Ansteuerung von LC-Displays7-Segment-Anzeigen über SPI (MAX7219)Einsatz einer externen Echtzeituhr (RTC) DS3231 über I2CAutor: Ralf Jesse ist Diplom-Ingenieur der Elektrotechnik mit mehr als 30 Jahren beruflicher Praxis im Einsatz von Mikroprozessoren und -controllern. Nach ersten Erfahrungen als Entwicklungsingenieur in einem Maschinenbau-Unternehmen folgten mehr als 20 Jahre als Software-Ingenieur in einem großen japanischen Konzern.

Regulärer Preis: 29,99 €
Produktbild für Python Challenges

Python Challenges

Augment your knowledge of Python with this entertaining learning guide, which features 100 exercises and programming puzzles and solutions. Python Challenges will help prepare you for your next exam or a job interview, and covers numerous practical topics such as strings, data structures, recursion, arrays, and more.Each topic is addressed in its own separate chapter, starting with an introduction to the basics and followed by 10 to 15 exercises of various degrees of difficulty, helping you to improve your programming skills effectively. Detailed sample solutions, including the algorithms used for all tasks, are included to maximize your understanding of each area. Author MICHAEL INDEN also describes alternative solutions and analyzes possible pitfalls and typical errors.Three appendices round out the book: the first covers the Python command line interpreter, which is often helpful for trying out the code snippets and examples in the book, followed by an overview of Pytest for unit testing and checking the solutions. The last explains the O notation for estimating performance.After reading this book, you'll be prepared to take the next step in your career or tackle your next personal project. All source code is freely available for download via the Apress website.WHAT YOU WILL LEARNImprove your Python knowledge by solving enjoyable but challenging programming puzzles * Solve mathematical problems, recursions, strings, arrays and more* Manage data processing and data structures like lists, sets, maps* Handle advanced recursion as well as binary trees, sorting and searching* Gamify key fundamentals for fun and easier reinforcementWHO THIS BOOK IS FOR:Programmers, software developers who are either professionals or makers, as well as students and teachers. At least some prior experience with the Python programming is recommended.Michael Inden is an Oracle-certified Java developer with over 20 years of professional experience designing complex software systems for international companies. There, he has worked in various roles such as SW developer, SW architect, consultant, team leader, CTO, head of academy, and trainer. Currently, he is working as a freelancer.His special interests are creating high-quality applications with ergonomic GUIs, developing and solving programming puzzles, and coaching. He likes to pass on his knowledge and has led various courses and talks, both internally and externally, as well as at conferences such as JAX/W-JAX, JAX London, and Oracle Code One.Besides, he is also an author of technical books. His german books, among others "Der Weg zum Java-Profi", Java Challenge", "Python Challenge" are all published by dpunkt.verlag.1. Introduction.- Part I - Fundamentals.- 2. Mathematical Problems.- 3. Recursion.- 4. Strings.- 5. Basic Data Structures: Lists, Sets, and Dictionaries.- 6. Arrays.- Part II - More Advanced and Tricky Topics.- 7. Recursion Advanced.- 8. Binary Trees.- 9. Searching and Sorting.- 10. Conclusion and Supplementary Material.- Part III - Appendices.- Appendix A. Short Introduction to Pytest.- Appendix B. Short Introduction to Decorators.- Appendix C. Quick Start O-Notation.- Appendix D. Short Introduction to Python 3.10.- Bibliography.

Regulärer Preis: 66,99 €
Produktbild für Payara Micro Revealed

Payara Micro Revealed

Develop, configure, and deploy Java cloud-native applications using Payara Micro. This book demystifies Java cloud-native application development using standard Microprofile APIs and covers Payara-specific features such as automatic clustering and application initialization performance improvements. You will learn how to improve startup performance by taking advantage of class data sharing, and configure cloud-native applications via standard development tools such as Maven and Gradle. The book also clarifies how to develop functionality necessary in a cloud environment, such as health checks and request tracing, using MicroProfile APIs.The book begins by showing how to develop microservices using RESTful web services, followed by how to create microservice clients using MicroProfile and the REST client API. Dependency Injection via Jakarta Context and Dependency Injection (CDI) is also covered. Various approaches to application configuration are covered as well, including property files, environment variables, and system properties. You will learn to configure fault tolerance and high availability, generate system and custom application metrics, and generate health checks to automatically improve overall application health. You will know how to trace the flow of a request across service boundaries with OpenTracing. You will be able to make future maintenance easily through generating documentation, including how to automatically update documentation as your code is updated. Additionally, you will learn how to secure cloud applications and to automatically cluster applications and improve application startup performance.WHAT YOU WILL LEARN* Develop microservices using standard Java APIs* Implement cloud functionality such as request tracing and health checks* Deploy applications as thin archives and as uber archives* Configure applications via Maven and Gradle* Generate custom metrics for capacity planning and proactive discovery of issues* Implement features in support of high availability and fault tolerance* Secure your applications with Jason Web Tokens* Take advantage of Payara’s own cloud platform for easy deploymentWHO THIS BOOK IS FORJava developers who wish to develop cloud-native applications and microservices, and Java EE application developers who wish to transition to developing cloud-native applications that are lightweight and easily deployedDAVID HEFFELFINGER is an independent consultant at Ensode Technology, LLC (ensode.com). He has authored several books on Jakarta EE and related technologies. He is a frequent speaker at tech conferences such as JavaOne and Oracle Code One. David has served on the JavaOne content committee on multiple occasions. He was named one of 39 Java leaders and experts to follow on Twitter, where you can find him under the handle @ensode.1. Jakarta EE, MicroProfile, Payara, and the Cloud2. Developing Microservices using Payara Micro3. Developing Microservice Clients4. Contexts and Dependency Injection5. Application Configuration6. Metrics7. High Availability and Fault Tolerance8. Health Checks9. Request Tracing10. Documenting Web Services11. Security with Jason Web Tokens12. Payara Micro Specific Features13. Payara Cloud

Regulärer Preis: 56,99 €