Making Games with Python & PygameMaking Games with Python & Pygame covers the Pygame library with the source code for 11 games. Making Games was written as a sequel for the same age range as Invent with Python. Once you have an understanding of the basics of Python programming, you can now expand your abilities using the Pygame library to make games with graphics, animation, and sound.
This book features seven different games that are clones of popular games that you've probably already played. The games are a lot more fun and interactive than the text-based games in Invent with Python, but are still fairly short. All of the programs are less than 600 lines long. This is pretty small when you consider that professional games you download or buy in a store can be hundreds of thousands of lines long. These games require an entire team of programmers and artists working with each other for months or years to make.
The book features the source code to 11 games. The games are clones of classics such as Nibbles, Tetri ...
Microsoft Blazor, 2nd EditionBuild web applications in C# and Microsoft .NET that run in any modern browser. This second edition is updated to work with the release version of Blazor and covers Blazor's use in creating both server-side and WebAssembly Blazor applications. Developers are able to use all their experience in .NET along with thousands of existing libraries, right in the browser.
There is important new coverage in this edition on the new and improved Razor syntax, how to easily validate user input with Blazor validation, and how to build complex interacting components with Cascading Properties and Templated Components. You will learn how to build user interfaces and present data to a user for display and modification, capturing the user's changes via data binding. The book shows you how to access a rich library of .NET functionality such as a component model for building a composable user interface, including how to develop reusable components that can be used across many pages and websites. Also co ...
The JavaScript WayLove it or hate it, JavaScript is avidly eating the world of software development. From web sites and apps to servers, smartphones and connected objects, JavaScript is everywhere. It has evolved from a niche scripting tool crafted in a few days into a modern, multi-purpose language sitting on top of a rich ecosystem and a vibrant developer community. Some even consider JavaScript to be the most important technology in software development nowadays.
However, learning JavaScript properly is not that easy. Many resources are outdated and teach obsolete practices. Many others cover advanced topics that are of little interest to beginners and "switchers" coming from other languages and platforms.
This book aims to be a useful companion for anyone wishing to (re)discover the many facets of JavaScript. ...
Modern Systems Programming with Scala NativeAccess the power of bare-metal systems programming with Scala Native, an ahead-of-time Scala compiler. Without the baggage of legacy frameworks and virtual machines, Scala Native lets you re-imagine how your programs interact with your operating system. Compile Scala code down to native machine instructions; seamlessly invoke operating system APIs for low-level networking and IO; control pointers, arrays, and other memory management techniques for extreme performance; and enjoy instant start-up times. Skip the JVM and improve your code performance by getting close to the metal.
Developers generally build systems on top of the work of those who came before, accumulating layer upon layer of abstraction. Scala Native provides a rare opportunity to remove layers. Without the JVM, Scala Native uses POSIX and ANSI C APIs to build concise, expressive programs that run unusually close to bare metal. Scala Native compiles Scala code down to native machine instructions instead of JVM bytecode ...
Professor Frisby's Mostly Adequate Guide to Functional ProgrammingThis is a book on the functional paradigm in general. We'll use the world's most popular functional programming language: JavaScript. Some may feel this is a poor choice as it's against the grain of the current culture which, at the moment, feels predominately imperative.
That said, typed functional languages will, without a doubt, be the best place to code in the style presented by this book. JavaScript will be our means of learning a paradigm, where you apply it is up to you. Luckily, the interfaces are mathematical and, as such, ubiquitous. You'll find yourself at home with Swiftz, Scalaz, Haskell, PureScript, and other mathematically inclined environments. ...
A Byte of PythonPython is one of those rare languages which can claim to be both simple and powerful. You will find yourself pleasantly surprised to see how easy it is to concentrate on the solution to the problem rather than the syntax and structure of the language you are programming in.
A Byte of Python is a free book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. If all you know about computers is how to save text files, then this is the book for you.
This book will teach you to use Python version 3. There will also be guidance for you to adapt to the older and more common Python version 2 in the book. ...
NGINX Unit CookbookAlongside its popular web server, NGINX provides a dynamic application server that supports a RESTful JSON API. The open source NGINX Unit server deploys configuration changes without service disruptions and runs apps built with multiple languages and frameworks. This updated cookbook shows developers, DevOps personnel, network admins, and cloud infrastructure pros how to quickly get started with NGINX Unit.
Hands-on recipes demonstrate Unit's new approach and show you how to deploy and configure this server for different applications. You'll learn how to run applications written in different languages on the same server, how to use NGINX Unit as the foundation for your web application development environment, and how Unit's RESTful API simplifies configuration. ...
Learning DaprGet the authoritative guide to Dapr, the distributed application runtime that works with new and existing programming languages alike. Written by the model's creators, this introduction shows you how Dapr not only unifies stateless, stateful, and actor programming models but also runs everywhere - in the cloud or on the edge.
Authors Haishi Bai and Yaron Schneider, both with Microsoft's Azure CTO team, explain that, with Dapr, you don't need to include any SDKs or libraries in your user code. Instead, you automatically get flexible binding, state management, the actor pattern, pub-sub, reliable messaging, and many more features. This book shows developers, architects, CIOs, students, and computing enthusiasts how to get started with Dapr. ...
Write Great Code: Volume 1, 2nd EditionThis, the first volume in Randall Hyde's Write Great Code series, dives into machine organization without the extra overhead of learning assembly language programming. Written for high-level language programmers, Understanding the Machine fills in the low-level details of machine organization that are often left out of computer science and engineering courses.
Learn: How the machine represents numbers, strings, and high-level data structures, so you'll know the inherent cost of using them; How to organize your data, so the machine can access it efficiently; How the CPU operates, so you can write code that works the way the machine does; How I/O devices operate, so you can maximize your application's performance when accessing those devices; How to best use the memory hierarchy to produce the fastest possible programs.
Great code is efficient code. But before you can write truly efficient code, you must understand how computer systems execute programs and how abstractions in prog ...
Write Great Code: Volume 2, 2nd EditionToday's programming languages offer productivity and portability, but also make it easy to write sloppy code that isn't optimized for a compiler. Thinking Low-Level, Writing High-Level will teach you to craft source code that results in good machine code once it's run through a compiler.
You'll learn: How to analyze the output of a compiler to verify that your code generates good machine code; The types of machine code statements that compilers generate for common control structures, so you can choose the best statements when writing HLL code; Enough assembly language to read compiler output; How compilers convert various constant and variable objects into machine data.
With an understanding of how compilers work, you'll be able to write source code that they can translate into elegant machine code. ...