Beginning Game Programming with Pygame Zero
Make fun games while learning to code. Focused on making games rather than teaching programming theory, in this book you're more likely to see code on how gravity affects a missiles trajectory instead of the most efficient way to search through data. Even then the code is kept simple as games should be about playability rather than complex physics. There are links to the official documentation when you need to lookup information that isn't included in the book.
Start with a simple text based game to grasp the basics of programming in Python. Then moves on to creating simple graphical games in Pygame Zero. Not only will you learn object oriented programming to make it easier to make more complex games, you'll also work to create your own graphics and sounds. 3D graphics are a little complex. So we focus on 2D games, including spins on some classic boardgames and arcade games. All the games are designed to run on a Raspberry Pi. They will work on any Raspberry Pi, ...
Programming AWS Lambda
Serverless revolutionizes the way organizations build and deploy software. With this hands-on guide, Java engineers will learn how to use their experience in the new world of serverless computing. You'll discover how this cloud computing execution model can drastically decrease the complexity in developing and operating applications while reducing costs and time to market.
Engineering leaders John Chapin and Mike Roberts guide you through the process of developing these applications using AWS Lambda, Amazon's event-driven, serverless computing platform. You'll learn how to prepare the development environment, program Lambda functions, and deploy and operate your serverless software. The chapters include exercises to help you through each aspect of the process.
Get an introduction to serverless, functions as a service, and AWS Lambda; Learn how to deploy working Lambda functions to the cloud; Program Lambda functions and learn how the Lambda platform integrates with other AWS serv ...
Programming PHP, 4th Edition
Why is PHP the most widely used programming language on the web? This updated edition teaches everything you need to know to create effective web applications using the latest features in PHP 7.4. You'll start with the big picture and then dive into language syntax, programming techniques, and other details, using examples that illustrate both correct usage and common idioms.
If you have a working knowledge of HTML, authors Kevin Tatroe and Peter MacIntyre provide many style tips and practical programming advice in a clear and concise manner to help you become a top-notch PHP programmer.
Understand what's possible when you use PHP programs; Learn language fundamentals, including data types, variables, operators, and flow control statements; Explore functions, strings, arrays, and objects; Apply common web application techniques, such as form processing, data validation, session tracking, and cookies; Interact with relational databases like MySQL or NoSQL dat ...
Beginning Ballerina Programming
Discover the Ballerina programming language for next-generation microservices and cloud-native application development. This book shows you that Ballerina is a cutting-edge programming language which incorporates many of the latest technological advancements in programming language theory. You'll learn variables and types, modules and functions, flow control, error handling, concurrency, I/O, cloud/network programming persistence and data access, security and more.
Additionally, Beginning Ballerina Programming introduces many foundation computer science topics along the way and doesn't assume much prior knowledge. For example, when introducing transport-level security, you will get a brief introduction to public-key cryptography, how it is different from private-key cryptography, and why it is needed. This provides an added bonus for you to learn something new and general in computer science.
After reading and using this book, you'll be profic ...
Essential ASP.NET Web Forms Development
Essential ASP.NET Web Forms Development is divided into six learning modules and will take you from soup to nuts with ASP.NET. Part I is an introduction to the major concepts, methodologies, and technologies associated with .NET web application development. You will learn about the client-server model, the .NET Framework, the ASP.NET and C# programming languages, and the Visual Studio integrated development environment. Part II teaches you how to develop a single-page .NET web application and add server and data validation controls, laying the foundation for learning languages in the context of an ASP.NET web application. Part III is all about C# operations and shows you how to perform assig ...
Advanced Robotic Vehicles Programming
Learn how to program robotic vehicles with ardupilot libraries and pixhawk autopilot, both of which are open source technologies with a global scope. This book is focused on quadcopters but the knowledge is easily extendable to three-dimensional vehicles such as drones, submarines, and rovers.
Pixhawk and the ardupilot libraries have grown dramatically in popularity due to the fact that the hardware and software offer a real-time task scheduler, huge data processing capabilities, interconnectivity, low power consumption, and a global developer support.
This book shows you how take your robotic programming skills to the next level. From hardware to software, Advanced Robotic Vehicles Programming links theory with practice in the development of unmanned vehicles. By the end of this book, you'll learn the pixhawk software and ardupilot libraries to develop your own autonomous vehicles.
Model and implement elementary controls in any unmanned vehicle; Select hardware ...
Pro Perl Programming
Master intermediate to advanced techniques of the Perl programming language starting with a focus on regular expressions and some of their advanced features. This book then covers other pro-level features, including formatted output, file handling, and more.
Additionally, you'll learn and explore the most useful built-in variables, pragmas, and modules available in the Perl language. Furthermore, you'll work with geometry managers and get a thorough treatment of graphical user interface development using Perl/TK and widgets. Lastly, you'll cover debugging techniques.
Pro Perl Programming is a professional-level reference guide on Perl and includes important aspects of it that you need as a professional programmer.
Program regular expressions including atoms, smartmatch operators, and more; Use advanced features such as HiRes Time, slurp() functions, Critic, Tidy and many more functions; Handle advanced formatted output such as printf and sprintf; Explore usefu ...
Java Performance, 2nd Edition
Coding and testing are generally considered separate areas of expertise. In this practical book, Java expert Scott Oaks takes the approach that anyone who works with Java should be adept at understanding how code behaves in the Java Virtual Machine - including the tunings likely to help performance. This updated second edition helps you gain in-depth knowledge of Java application performance using both the JVM and the Java platform.
Developers and performance engineers alike will learn a variety of features, tools, and processes for improving the way the Java 8 and 11 LTS releases perform. While the emphasis is on production-supported releases and features, this book also features previews of exciting new technologies such as ahead-of-time compilation and experimental garbage collections.
Understand how various Java platforms and compilers affect performance; Learn how Java garbage collection works; Apply four principles to obtain best results from performance testing; Use the JD ...
Software Engineering at Google
Today, software engineers need to know not only how to program effectively but also how to develop proper engineering practices to make their codebase sustainable and healthy. This book emphasizes this difference between programming and software engineering.
How can software engineers manage a living codebase that evolves and responds to changing requirements and demands over the length of its life? Based on their experience at Google, software engineers Titus Winters and Hyrum Wright, along with technical writer Tom Manshreck, present a candid and insightful look at how some of the world's leading practitioners construct and maintain software. This book covers Google's unique engineering culture, processes, and tools and how these aspects contribute to the effectiveness of an engineering organization.
You'll explore three fundamental principles that software organizations should keep in mind when designing, architecting, writing, and maintaining code: How time affects the ...
Using Asyncio in Python
If you're among the Python developers put off by asyncio's complexity, it's time to take another look. Asyncio is complicated because it aims to solve problems in concurrent network programming for both framework and end-user developers. The features you need to consider are a small subset of the whole asyncio API, but picking out the right features is the tricky part. That's where this practical book comes in.
Veteran Python developer Caleb Hattingh helps you gain a basic understanding of asyncio's building blocks - enough to get started writing simple event-based programs. You'll learn why asyncio offers a safer alternative to preemptive multitasking (threading) and how this API provides a simple way to support thousands of simultaneous socket connections.
Get a critical comparison of asyncio and threading for concurrent network programming; Take an asyncio walk-through, including a quickstart guide for hitting the ground looping with event-based programming; Learn the d ...
Quick Start Guide to Dart Programming
Get started with Dart and learn to program with this language suitable for high-performing, modern applications. You'll gain the basics and be ready to move to the next level: web and mobile apps. While you won't learn the specifics of programming web and mobile apps, you will have the foundation to take your Dart skills in that direction.
This book starts with an introduction to the Dart IDE, after which you will take a look at the various components of the Dart programming language. You will look at types and variables, and get to know the significance of collections and arrays in Dart. Once you've familiarized yourself with the initial components of Dart, you will see how flow of control and looping can be achieved by using if, else, and conditional expressions. Moving on to functions and objects, you will dig deeper into the concepts of object oriented programming to gauge the importance of constructors in Dart. You will then discover more about inheritance ...