Java ChallengesExpand your knowledge of Java with this entertaining learning guide, which features 100+ exercises and programming challenges. Java Challenges will prepare you for your next exam or job interview, and covers many practical topics, such as strings, arrays, data structures, recursion, and date and time. The APIs and other material included in this book are Java 17 compatible.
Each topic is addressed in its own separate chapter, starting with an introduction to the basics and followed by multiple exercises of varying 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: one covering JShell, which is often helpful for trying out the code snippets and examples in the book, followed by ...
Learning JavaScriptJavaScript is a programming language that conforms to the ECMAScript specification. It is an unofficial and free JavaScript ebook created for educational purposes. All the content is extracted from Stack Overflow Documentation, which is written by many hardworking individuals at Stack Overflow. ...
Introduction to Computer OrganizationIntroduction to Computer Organization gives programmers a practical understanding of what happens in a computer when you execute your code. You may never have to write x86-64 assembly language or design hardware yourself, but knowing how the hardware and software works will give you greater control and confidence over your coding decisions. We start with high level fundamental concepts like memory organization, binary logic, and data types and then explore how they are implemented at the assembly language level.
The goal isn't to make you an assembly programmer, but to help you comprehend what happens behind the scenes between running your program and seeing "Hello World" displayed on the screen. Classroom-tested for over a decade, this book will demystify topics like: How to translate a high-level language code into assembly language; How the operating system manages hardware resources with exceptions and interrupts; How data is encoded in memory; How hardware switches handle decim ...
Practical SQL, 2nd EditionPractical SQL is an approachable and fast-paced guide to SQL (Structured Query Language), the standard programming language for defining, organizing, and exploring data in relational databases. Anthony DeBarros, a journalist and data analyst, focuses on using SQL to find the story within your data. The examples and code use the open-source database PostgreSQL and its companion pgAdmin interface, and the concepts you learn will apply to most database management systems, including MySQL, Oracle, SQLite, and others.
You'll first cover the fundamentals of databases and the SQL language, then build skills by analyzing data from real-world datasets such as US Census demographics, New York City taxi rides, and earthquakes from US Geological Survey. Each chapter includes exercises and examples that teach even those who have never programmed before all the tools necessary to build powerful databases and access information quickly and efficiently.
You'll learn how to: Create databases and ...
Git InternalsIt took me a pretty long time to really get Git. As I've continued to use Git more and more where I work, I've found myself trying to teach people what it is and why we use it over and over again, and the reality is that Git generally has a pretty steep learning curve compared to many other systems. I've seen case after case of developers who love Git after they finally understand it, but getting to that point is often somewhat painstaking.
This book is aimed at the developer who does not particularly like Subversion, Perforce or whatever SCM system they are currently using, has heard good things about Git, but doesn't know where to start or why it's so wonderful. It is meant to explain Git as simply as possible in a clean, concise, easily readable volume. My goal is to help you understand Git internals as well as usage at a fundamental level by the time you finish this book.
To accomplish this, I'm starting the book out (after the introduction) with a section about what Git actu ...
Introducing .NET 6Welcome to .NET 6, Microsoft's unified framework that converges the best of the modern and traditional .NET Framework. This book will introduce you to the new aspects of Microsoft's fully supported .NET 6 Framework and will teach you how to get the most out of it. You will learn about the progress to one unified .NET, including MAUI and the revival of desktop development. You will dive into Roslyn, Blazor, CLI, Containers, Cloud, and much more, using a "framework first" learning approach. You will begin by learning what each tool is, its practical uses, and how to apply it and then you will try it out on your own for learning reinforcement. And, of course, there will be plenty of code samples using C# 10.
Introducing .NET 6 is aimed at .NET developers, both junior developers and those coming from the .NET framework, who want to understand everything the modern framework has to offer, besides the obvious programming languages. While you will still see a lot of fabulous C# 10 througho ...
Robot Operating System (ROS) for Absolute Beginners, 2nd EditionStart programming your own robots using Robot Operation System (ROS). Targeted for absolute beginners in ROS, Linux, and Python, this guide lets you build your own robotics projects.
You'll learn the basic foundation of Ubuntu Linux. Begin with the fundamentals. Installation and useful commands will give you the basic tools you need while programming a robot. Then add useful software applications that can be used while making robots. Programming robots can be done using any of the programming languages. Most popular programming languages are Python and C++. You will incorporate the fundamentals of C++ by learning object oriented programing concepts from example and building C++ projects.
Finally, tackle an ROS hands-on project to apply all the concepts of ROS you've learned. The aim of the project is to perform a dead-reckoning using a cheap mobile robot. You can command your robot's position on Rviz and your robot will move to that position! Not only will you learn to program, ...
Unity in Action, 3rd EditionThousands of new game developers have chosen Joe Hocking's Unity in Action as their first step toward Unity mastery. Starting with the initial groundwork of a new game development project, you'll quickly start writing custom code instead of clicking together premade scripts. This fully updated third edition comes packed with fully refreshed graphics, Unity's latest features, and coverage of augmented and virtual reality toolkits. You'll master the Unity toolset from the ground up, learning the skills to go from application coder to game developer.
Writing games is rewarding and fun - and with Unity, it's easy to get started! Unity handles the heavy lifting, so you can focus on game play, graphics, and user experience. C# support and a huge ecosystem of prebuilt components help even first-time developers go from the drawing board to the screen fast.
Unity in Action, 3rd Edition teaches you to create games with the Unity game platform. It's many 2D, 3D, and AR/VR game examples give ...
Natural Language Processing with TransformersSince their introduction in 2017, transformers have quickly become the dominant architecture for achieving state-of-the-art results on a variety of natural language processing tasks. If you're a data scientist or coder, this practical book shows you how to train and scale these large models using Hugging Face Transformers, a Python-based deep learning library.
Transformers have been used to write realistic news stories, improve Google Search queries, and even create chatbots that tell corny jokes. In this guide, authors Lewis Tunstall, Leandro von Werra, and Thomas Wolf, among the creators of Hugging Face Transformers, use a hands-on approach to teach you how transformers work and how to integrate them in your applications. You'll quickly learn a variety of tasks they can help you solve.
Build, debug, and optimize transformer models for core NLP tasks, such as text classification, named entity recognition, and question answering; Learn how transformers can be used for cross-lingu ...
Command-Line RustFor several consecutive years, Rust has been voted "most loved programming language" in Stack Overflow's annual developer survey. This open source systems programming language is now used for everything from game engines and operating systems to browser components and virtual reality simulation engines. But Rust is also an incredibly complex language with a notoriously difficult learning curve.
Rather than focusing on the language as a whole, this guide teaches Rust using a single small, complete, focused program in each chapter. Author Ken Youens-Clark shows you how to start, write, and test each of these programs to create a finished product. You'll learn how to handle errors in Rust, read and write files, and use regular expressions, Rust types, structs, and more.
Discover how to: Use Rust's standard libraries and data types such as numbers, strings, vectors, structs, Options, and Results to create command-line programs; Write and test Rust programs and functions; Read and wri ...