Learning Python Through LAB Based Approach
This book is totally informal and unconventional in its approach. Theory text is kept bare minimal. Targeted readers of this book are novice Python programmers. Author mentions about some Authoritative books by other competent Authors for beginners. The Author takes problem and solution approach . This book contains close to 20 practical problems and their solutions for beginners. The Author strongly asserts his copyright over content in this book that he prepared for teaching. This book is lab oriented and tests you on your learned concepts. After solving all the problems you should have gained some knowledge in Python. The intention of these book is to help novice learner. Good luck!.
Transitioning to Java
Develop your Java coding skills by exploring object-oriented methodologies, functional programming, software design patterns, and morePurchase of the print or Kindle book includes a free PDF eBookKey Features: Get started with programming in Java with this step-by-step guide for experienced programmersRe-enforce your knowledge of object-oriented methodologies applied in JavaDevelop the range of skills necessary for you to become a successful Java developerBook Description: This comprehensive guide will help non-Java developers already using different languages transition from their current language to all things Java. The chapters are designed in a way that re-enforces a developer's existing knowledge of object-oriented methodologies as they apply to Java.This book has been divided into four sections, with each section touching upon different aspects that'll enable your effective transition. The first section helps you get to grips with the Java development environment and the Maven build tool for modern Java applications. In the second section, you'll learn about Java language fundamentals, along with exploring object-oriented programming (OOP) methodologies and functional programming and discovering how to implement software design patterns in Java. The third section shows you how to code in Java on different platforms and helps you get familiar with the challenges faced on these platforms. In the fourth section, you'll find out how you can manage and package your Java code.By the end of this Java programming book, you'll have learned the core concepts of Java that'll help you successfully transition from a different language to Java.What You Will Learn: Gain a solid understanding of the syntax in JavaExplore the object-oriented programming basics of the Java languageDiscover how to implement functions in JavaUnderstand which Java frameworks would be best for solving various problemsExplore creational, structural, and behavioral patterns in JavaGet to grips with server-side coding in JavaWho this book is for: This book is for anyone who is currently working with other programming languages and wishes to add Java to their skillset. Prior working experience as a developer using languages other than Java is expected, although no prior knowledge of Java is required.
Learning JavaScript Design Patterns
Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patterns is the ideal place to start. Author Addy Osmani shows you how to apply modern design patterns to JavaScript and React--including modules, mixins, observers, and mediators. You'll learn about performance and rendering patterns such as server-side rendering and Islands architecture. You'll also learn how architectural patterns like MVC, MVP, and MVVM are useful from the perspective of a modern web application developer. This book explores: Architectural patterns for structuring your components and apps More than 20 design patterns in JavaScript and React, applicable for developers at any level Different pattern categories including creational, structural, and behavioral Essential performance patterns including dynamic imports and code-splitting Rendering patterns such as server-side rendering, hydration, Islands architecture, and more Additionally, you'll explore modern JavaScript syntax like JavaScript modules, React patterns like Hooks, higher-order components (HOCs), and more, to stay ahead in the ever-evolving world of web development.
JavaScript All-In-One for Dummies
A developer's resource to learning one of the most-used scripting languages JavaScript All-in-One For Dummies saves you shelf space by offering a complete introduction to JavaScript and how it's used in the real world. This book serves up JavaScript coding basics before diving into the tools, libraries, frameworks, and runtime environments new and experienced coders need to know. Start by learning the basics of JavaScript and progress through the techniques and tools used by professional JavaScript developers, even if you've never written code before. You also get the details of today's hottest libraries and frameworks--React.js, Vue.js, Svelte, and Node.js. Learn the basics of web and application development with the JavaScript language Grasp the similarities and differences between React.js, Vue.js, and Svelte Discover how to write server-side JavaScript and how to access databases with Node.js Gain a highly marketable skill, with one of the most popular coding languages Launch or further your career as a coder with easy-to-follow instruction This is the go-to Dummies guide for future and current coders who need an all-inclusive guide JavaScript. This is the go-to Dummies guide for future and current coders who need an all-inclusive guide to the world of JavaScript.
Python QuickStart Guide
Learn Python fundamentals that can be used in any programming setting - use the guidance in this book to program your own game in a unique and practical Python learning experience. Learning Python opens the door to a world of programming possibilities. Python powers the services of household names like Google, Netflix, and Spotify along with tech pioneers like NASA, IBM, and Intel. Put simply, Python is the in-demand and easy-to-learn programming language that gets stuff done. It doesn't matter if you are a new or existing programmer, a job seeker looking for a career change or promotion, or just someone who wants to learn how to automate basic tasks with Python-Robert's step-by-step approach, complete with a hands-on companion Python game project, is the perfect starting point to master Python fundamentals! Python QuickStart Guide is Perfect for: New or experienced programmers looking to enhance their career opportunities with an in-demand programming language Job seekers who want to supercharge their resumes and increase their value in the job marketplace Students or recent college grads who have their sights set on a lucrative position in the tech industry Full stack developers or programmers who need to round out their programming skills to take on new projects Coding or programming bootcamp students looking for supplemental learning material Anyone who wants to explore the world of programming, use Python to automate tedious tasks, or enhance their resume and future-proof their skills! You Will Learn How to Use Python - Practical Examples, Code Snippets, Plus Follow Along to Code Your Own Game! Python Fundamentals - How to Use Python for Web Design and Interfacing with GitHub, SQL, and Other Applications Object-Oriented Programming Principles - Managing Data, Scripts, Logic, Inputs, Outputs, and More! Programming Essentials - Debugging, Producing Clean Code, Best Practices, Time-Savers, and Tips Python Next Steps -Testing, Optimization, Speed Improvements, Integrations with Other Applications, and More!
Python QuickStart Guide
Learn Python fundamentals that can be used in any programming setting - use the guidance in this book to program your own game in a unique and practical Python learning experience. Learning Python opens the door to a world of programming possibilities. Python powers the services of household names like Google, Netflix, and Spotify along with tech pioneers like NASA, IBM, and Intel. Put simply, Python is the in-demand and easy-to-learn programming language that gets stuff done. It doesn't matter if you are a new or existing programmer, a job seeker looking for a career change or promotion, or just someone who wants to learn how to automate basic tasks with Python-Robert's step-by-step approach, complete with a hands-on companion Python game project, is the perfect starting point to master Python fundamentals! Python QuickStart Guide is Perfect for: New or experienced programmers looking to enhance their career opportunities with an in-demand programming language Job seekers who want to supercharge their resumes and increase their value in the job marketplace Students or recent college grads who have their sights set on a lucrative position in the tech industry Full stack developers or programmers who need to round out their programming skills to take on new projects Coding or programming bootcamp students looking for supplemental learning material Anyone who wants to explore the world of programming, use Python to automate tedious tasks, or enhance their resume and future-proof their skills! You Will Learn How to Use Python - Practical Examples, Code Snippets, Plus Follow Along to Code Your Own Game! Python Fundamentals - How to Use Python for Web Design and Interfacing with GitHub, SQL, and Other Applications Object-Oriented Programming Principles - Managing Data, Scripts, Logic, Inputs, Outputs, and More! Programming Essentials - Debugging, Producing Clean Code, Best Practices, Time-Savers, and Tips Python Next Steps -Testing, Optimization, Speed Improvements, Integrations with Other Applications, and More!
Application of CPlusPlus for Practical Problems
Application of Cplusplus for solving practical problems
How to Build Android Apps with Kotlin - Second Edition
Unleash the power of Android programming to build scalable and reliable apps using industry best practicesPurchase of the print or Kindle book includes a free PDF eBookKey FeaturesBuild apps with Kotlin, Google's preferred programming language for Android developmentUnlock solutions to development challenges with guidance from experienced Android professionalsImprove your apps by adding valuable features that make use of advanced functionalityBook DescriptionLooking to kick-start your app development journey with Android 13, but don't know where to start? How to Build Android Apps with Kotlin is a comprehensive guide that will help jump-start your Android development practice.This book starts with the fundamentals of app development, enabling you to utilize Android Studio and Kotlin to get started with building Android projects. You'll learn how to create apps and run them on virtual devices through guided exercises. Progressing through the chapters, you'll delve into Android's RecyclerView to make the most of lists, images, and maps, and see how to fetch data from a web service.You'll also get to grips with testing, learning how to keep your architecture clean, understanding how to persist data, and gaining basic knowledge of the dependency injection pattern. Finally, you'll see how to publish your apps on the Google Play store.You'll work on realistic projects that are split up into bitesize exercises and activities, allowing you to challenge yourself in an enjoyable and attainable way. You'll build apps to create quizzes, read news articles, check weather reports, store recipes, retrieve movie information, and remind you where you parked your car.By the end of this book, you'll have the skills and confidence to build your own creative Android applications using Kotlin.What you will learnCreate maintainable and scalable apps using KotlinUnderstand the Android app development lifecycleSimplify app development with Google architecture componentsUse standard libraries for dependency injection and data parsingApply the repository pattern to retrieve data from outside sourcesBuild user interfaces using Jetpack ComposeExplore Android asynchronous programming with Coroutines and the Flow APIPublish your app on the Google Play storeWho this book is forIf you want to build Android applications using Kotlin but are unsure of how and where to begin, then this book is for you. To easily grasp the concepts in this book, a basic understanding of Kotlin, or experience in a similar programming language is a must.Table of ContentsCreating Your First AppBuilding User Screen FlowsDeveloping the UI with FragmentsBuilding App NavigationEssential Libraries: Retrofit, Moshi, and GlideAdding and Interacting with RecyclerViewAndroid Permissions and Google MapsServices, WorkManager, and NotificationsBuilding User Interfaces Using Jetpack ComposeUnit Tests and Integration Tests with JUnit, Mockito, and EspressoAndroid Architecture ComponentsPersisting DataDependency Injection with Dagger, Hilt, and KoinCoroutines and FlowArchitecture PatternsAnimations and Transitions with CoordinatorLayout and MotionLayoutLaunching Your App on Google Play
Beginning Java Objects
Among Java's many attractive features as a programming language, its object-oriented nature is key to creating powerful, reusable code and applications that are easy to maintain and extend.
Learn Core PYTHON PROGRAMMING In 100 Hours
Learn Core Python Programming in 100 hours " is an easy-to-follow guide that introduces you to the world of programming using the popular Python language. Whether you're an absolute beginner or have some experience with coding, this book will take you step-by-step through the basics of Python programming and help you build a solid foundation in this versatile language. In this book, you'll learn how to write your first Python program, understand data types, variables, and functions, modules and explore the fundamental concepts of programming such as loops, conditional statements, and objects. You'll also delve into more advanced topics like numpy, pandas. With clear explanations, practical examples and output screenshots, this book offers a hands-on approach to learning Python programming. You'll work through exercises and projects that will help you apply what you've learned and build your skills. Along the way, you'll also gain insights into best practices, tips, and tricks that will make you a more effective programmer. Whether you want to pursue a career in software development, build your own applications, or simply learn a new skill, "Python Programming for Beginners" is the ideal resource to help you get started. With its accessible and engaging style, this book makes learning Python programming fun and rewarding.
Programming in C++ Lab Manual
C++ is a general-purpose programming language that is widely used in software development. It is an extension of the C programming language and supports object-oriented programming (OOP) features. Some of the topics that might be covered in a C++ programming lab manual include: Basic syntax and data types in C++.Control statements like if-else, for loop, while loop, and switch case.Functions and function overloading.Arrays and pointers in C++.Object-oriented programming concepts like classes, objects, inheritance, and polymorphism.File handling in C++.Exception handling in C++.
watchOS With SwiftUI by Tutorials (Second Edition)
Learn & Master watchOS with SwiftUI!watchOS with SwiftUI by Tutorials is here to help you learn all you need to know about Apple Watch development using the new declarative SwiftUI framework for building modern and engaging user interfaces. Learn all the main concepts by building different watchOS apps that implement all all of these functionalities. In this book, you will cover most of the concepts required to master watchOS development.Who This Book is ForThis book is for beginner and intermediate developers who wish to know how to develop watchOS apps in a declarative and modern way by implementing SwiftUI.Topics Covered in watchOS With SwiftUI by Tutorials: watchOS app project structure: Apple Watch has a slightly different project structure compared to iOS. So you will learn those differences.Use the Digital Crown in your apps: Build the famous Pong videogame but for watchOS and learn how the Digital Crown can enhance your users experience.Watch Connectivity: The Watch Connectivity framework will show you the different ways you can transfer data between iOS and watchOS apps.Snapshots: Snapshots provide a way for users to quickly view the state of an app showing updated and relevant information.Notifications: watchOS offers support for several different types of notifications and allows you to customize them to the individual needs of your watch app.watchOS app Lifecycle: Find out about the Apple Watch Lifecycles and how it transitions between states while extending current runtime sessions.Complications: Complications are small elements that appear on the user's selected watch face and provide quick access to frequently used data from within your app.Watch Face sharing: You can easily share your own custom Watch Faces through your iOS device or via web.Signing in with Apple Watch: Sign in with Apple to allow simple and straight-forward registration and authentication.HealthKit: Implement HealthKit in your WatchOS app to track health-related information and take advantage of Apple Health capabilities.One thing you can count on: after reading this book, you'll be prepared to develop professional Apple Watch apps with SwiftUI.
Python Data Analytics
Explore the latest Python tools and techniques to help you tackle the world of data acquisition and analysis. You'll review scientific computing with NumPy, visualization with matplotlib, and machine learning with scikit-learn. This third edition is fully updated for the latest version of Python and its related libraries, and includes coverage of social media data analysis, image analysis with OpenCV, and deep learning libraries. Each chapter includes multiple examples demonstrating how to work with each library. At its heart lies the coverage of pandas, for high-performance, easy-to-use data structures and tools for data manipulationAuthor Fabio Nelli expertly demonstrates using Python for data processing, management, and information retrieval. Later chapters apply what you've learned to handwriting recognition and extending graphical capabilities with the JavaScript D3 library. Whether you are dealing with sales data, investment data, medical data, web page usage, or other data sets, Python Data Analytics, Third Edition is an invaluable reference with its examples of storing, accessing, and analyzing data.What You'll LearnUnderstand the core concepts of data analysis and the Python ecosystemGo in depth with pandas for reading, writing, and processing dataUse tools and techniques for data visualization and image analysisExamine popular deep learning libraries Keras, Theano, TensorFlow, and PyTorchWho This Book Is For Experienced Python developers who need to learn about Pythonic tools for data analysis
Master the Raspberry Pi Pico in C
Adding WiFi to the Raspberry Pi Pico turns this low-cost, small form factor device into a true IoT device. The extra capabilities added to the Pico W open up loads of opportunities, but only if you are prepared to do battle with the two libraries that provide networking and security - lwIP and mbedtls respectively. The problem with these large libraries of code is that they are poorly documented and don't refer directly to the Pico W and its SDK. This book sets out to remedy this by providing a guide to these libraries along with examples of what you can do with them. Having introduced the Pico WiFi Stack and basic network connections, we look at how to use TCP to create the all-important Protocol Control Block and then tackle implementing an HTTP client. As well as covering the basic mechanics of using lwIP, we also concentrate on how to organize the use of an asynchronous library based on callbacks. The problem of IoT security is unique because IoT devices can be physically accessed by an attacker and hence any secrets embedded in their code have to be considered almost as public knowledge. Even so it is worth implementing encryption and this is achieved using mbedtls to create an HTTPS client. If you can ensure the physical security of the IoT device, then running it as a server is possible and this is covered in both HTTP and HTTPS modes, complete with certificates. We cover the basics of cryptography, including the problem of generating random numbers, what an encryption suite is and the various modes of AES encryption.The later chapters are devoted to specific protocols, making use of both lwIP and mbedtls. We look at UDP; SNTP to set the Pico W's real time clock; SMTP to allow email notifications and MQTT. Harry Fairhead is also the author of Programming The Raspberry Pi Pico/W In C; Raspberry Pi IoT in C, Raspberry Pi IoT In C Using Linux Drivers, Applying C For The IoT With Linux, Fundamental C: Getting Closer To The Machine and Micro: bit IoT in C. Mike James is the author of Programming the Raspberry Pi Pico/W in MicroPython; Raspberry Pi IoT In Python Using GPIO Zero; and the Programmer's Python: Something Completely Different series of books and several other programming and computer science titles in the I Programmer Library.
Quick Start Guide to Large Language Models
The Practical, Step-by-Step Guide to Using LLMs at Scale in Projects and Products Large Language Models (LLMs) like ChatGPT are demonstrating breathtaking capabilities, but their size and complexity have deterred many practitioners from applying them. In Quick Start Guide to Large Language Models, pioneering data scientist and AI entrepreneur Sinan Ozdemir clears away those obstacles and provides a guide to working with, integrating, and deploying LLMs to solve practical problems. Ozdemir brings together all you need to get started, even if you have no direct experience with LLMs: step-by-step instructions, best practices, real-world case studies, hands-on exercises, and more. Along the way, he shares insights into LLMs' inner workings to help you optimize model choice, data formats, parameters, and performance. You'll find even more resources on the companion website, including sample datasets and code for working with open- and closed-source LLMs such as those from OpenAI (GPT-4 and ChatGPT), Google (BERT, T5, and Bard), EleutherAI (GPT-J and GPT-Neo), Cohere (the Command family), and Meta (BART and the LLaMA family). Learn key concepts: pre-training, transfer learning, fine-tuning, attention, embeddings, tokenization, and more Use APIs and Python to fine-tune and customize LLMs for your requirements Build a complete neural/semantic information retrieval system and attach to conversational LLMs for retrieval-augmented generation Master advanced prompt engineering techniques like output structuring, chain-ofthought, and semantic few-shot prompting Customize LLM embeddings to build a complete recommendation engine from scratch with user data Construct and fine-tune multimodal Transformer architectures using opensource LLMs Align LLMs using Reinforcement Learning from Human and AI Feedback (RLHF/RLAIF) Deploy prompts and custom fine-tuned LLMs to the cloud with scalability and evaluation pipelines in mind "By balancing the potential of both open- and closed-source models, Quick Start Guide to Large Language Models stands as a comprehensive guide to understanding and using LLMs, bridging the gap between theoretical concepts and practical application."--Giada Pistilli, Principal Ethicist at HuggingFace "A refreshing and inspiring resource. Jam-packed with practical guidance and clear explanations that leave you smarter about this incredible new field."--Pete Huang, author of The Neuron Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Beginning Ethereum Smart Contracts Programming
Use this book to write an Ethereum blockchain smart contract, test it, deploy it, and create a web application to interact with your smart contract. This new edition has been expanded and updated to cover web3.js APIs, additional Consensus Protocols, non-Fungible Tokens (NFTs), developing NFT tokens using ERC-721, and more!Beginning Ethereum Smart Contracts Programming, second edition is your fastest and most efficient means of getting started if you are unsure where to begin and how to connect to the Ethereum blockchain. The book begins with a foundational discussion of blockchain and the motivation behind it. From there, you will get up close and personal with the Ethereum blockchain, learning how to use an Ethereum client (geth) to create a private Ethereum blockchain to perform transactions such as sending Ethers to another account on another node. You will learn about smart contracts without having to wade through tons of documentation. Author Lee's "learn-by-doing" approach will allow you to be productive and feel confident in your ability in no time. The last part of this book covers tokens, a topic that has taken the cryptocurrency market by storm.Sample code in Python, Solidity, and JavaScript is provided in the book and online. What You'll LearnUnderstand the basic premise of blockchain and "record keeping" in a peer-to-peer networkExperience blockchain in action by creating your own blockchain using PythonKnow the foundation of smart contracts programming and how to deploy and test smart contractsWork on a case study to illustrate the use of blockchainBe familiar with tokens, and how to create and launch your own ICO digital tokenWrite smart contracts that transact using tokensWho This Book Is ForThose who want to get started quickly with Ethereum smart contracts programming. Basic programming knowledge and an understanding of Python or JavaScript is recommended.
Introductory C with C++
C differs from most programming languages in its use of expressions, pointers, and arrays. For those learning C, pointers are the greatest source of confusion. The primary aim of this text is to provide working models of how pointers are used in C as well as an introduction to their use in C++. Most beginners falter on the use of pointers. Many try to avoid pointers completely, but quickly find that pointers are used extensively throughout C programs. Some attain a partial understanding of pointers which, at first, gets them by. However, when faced with complex programming tasks, they find that pointers become a necessity. In most programming languages one learns about pointers only after most other topics have been discussed. Pointers are just one more added feature of the language. In C and in C++, however, pointers are used with every feature. There are pointers to variables, pointers as parameters, pointers as arrays, pointers to structures, and even pointers to pointers. With each feature pointers are used differently. The way pointers work with variables is very different from the way pointers work with arrays. In this text, you learn pointers as you learn each feature of the language. With variables, you learn pointers to variables; with parameters, pointers to parameters; with functions: pointers to functions; with arrays, pointers in arrays; with structures, pointers to structures. In addition, for C++ you will learn pointers to objects, to class members, and derived objects. Such an approach provides an understanding of the many different ways pointers are used throughout the language. The text is arranged in five sections. The first section focuses on the basic structure of the language. Variables, functions, and expressions are carefully examined. The second section deals with arrays. Arrays form an exception in C. Unlike structures they are not data objects. They are completely managed by pointers. The third section describes data structures and file management. The chapter on data structures introduces basic concepts such as linked lists and trees. A special examination is made of recursion and how it operates with lists, trees, and b-trees. The chapters on file management discuss the different types of files with special emphasis on record files b-tree indexes. The fourth section provides an introduction to C++, covering classes and objects, their use with pointers, as well as operator overloading and inheritance. The fifth section covers additional topics greater detail such as the pre-processor and bitwise operations.
200 Problems on Languages, Automata, and Computation
Formal languages and automata have long been fundamental to theoretical computer science, but students often struggle to understand these concepts in the abstract. This book provides a rich source of compelling exercises designed to help students grasp the subject intuitively through practice. The text covers important topics such as finite automata, regular expressions, push-down automata, grammars, and Turing machines via a series of problems of increasing difficultly. Problems are organised by topic, many with multiple follow-ups, and each section begins with a short recap of the basic notions necessary to make progress. Complete solutions are given for all exercises, making the book well suited for self-study as well as for use as a course supplement. Developed over the course of the editors' two decades of experience teaching the acclaimed Automata, Formal Languages, and Computation course at the University of Warsaw, it is an ideal resource for students and instructors alike.
200 Problems on Languages, Automata, and Computation
Formal languages and automata have long been fundamental to theoretical computer science, but students often struggle to understand these concepts in the abstract. This book provides a rich source of compelling exercises designed to help students grasp the subject intuitively through practice. The text covers important topics such as finite automata, regular expressions, push-down automata, grammars, and Turing machines via a series of problems of increasing difficultly. Problems are organised by topic, many with multiple follow-ups, and each section begins with a short recap of the basic notions necessary to make progress. Complete solutions are given for all exercises, making the book well suited for self-study as well as for use as a course supplement. Developed over the course of the editors' two decades of experience teaching the acclaimed Automata, Formal Languages, and Computation course at the University of Warsaw, it is an ideal resource for students and instructors alike.
Test-Driven Development in Go
Explore Go testing techniques and leverage TDD to deliver and maintain microservices architecture, including contract, end-to-end, and unit testingPurchase of the print or Kindle book includes a free PDF eBookKey Features: Write Go test suites using popular mocking and testing frameworksLeverage TDD to implement testing at all levels of web applications and microservices architectureMaster the art of writing tests that cover edge cases and concurrent codeBook Description: Experienced developers understand the importance of designing a comprehensive testing strategy to ensure efficient shipping and maintaining services in production. This book shows you how to utilize test-driven development (TDD), a widely adopted industry practice, for testing your Go apps at different levels. You'll also explore challenges faced in testing concurrent code, and learn how to leverage generics and write fuzz tests.The book begins by teaching you how to use TDD to tackle various problems, from simple mathematical functions to web apps. You'll then learn how to structure and run your unit tests using Go's standard testing library, and explore two popular testing frameworks, Testify and Ginkgo. You'll also implement test suites using table-driven testing, a popular Go technique. As you advance, you'll write and run behavior-driven development (BDD) tests using Ginkgo and Godog. Finally, you'll explore the tricky aspects of implementing and testing TDD in production, such as refactoring your code and testing microservices architecture with contract testing implemented with Pact. All these techniques will be demonstrated using an example REST API, as well as smaller bespoke code examples.By the end of this book, you'll have learned how to design and implement a comprehensive testing strategy for your Go applications and microservices architecture.What You Will Learn: Create practical Go unit tests using mocks and assertions with TestifyBuild table-driven test suites for HTTP web applicationsWrite BDD-style tests using the Ginkgo testing frameworkUse the Godog testing framework to reliably test web applicationsVerify microservices architecture using Pact contract testingDevelop tests that cover edge cases using property testing and fuzzingWho this book is for: If you are an intermediate-level developer or software testing professional who knows Go fundamentals and is looking to deliver projects with Go, then this book is for you. Knowledge of Go syntax, structs, functions, and interfaces will help you get the most out of this book.
Modern C++ for Absolute Beginners
Learn the C++ programming language in a structured, straightforward, and friendly manner. This book teaches the basics of the modern C++ programming language, the C++ Standard Library, and modern C++ standards, including C++23. No previous programming experience is required. C++ is a language like no other, surprising in its complexity, yet wonderfully sleek and elegant in so many ways. It is also a language that cannot be learned by guessing, one that is easy to get wrong and challenging to get right. To overcome this, each section is filled with real-world examples that gradually increase in complexity. Modern C++ for Absolute Beginners, Second Edition teaches more than just programming in C++23. It provides a solid C++ foundation to build upon. The author takes you through the C++ programming language, the Standard Library, and C++11 to C++23 standard basics. Each chapter is accompanied by the right amount oftheory and plenty of source code examples. You will work with C++23 features and standards, yet you will also compare and take a look into previous versions of C++. After reading this book, you'll be able to start programming in modern C++ standards. You will do so with plenty of relevant source code examples, freely available via a dedicated GitHub repository. What You Will LearnGet Introduced to modern C++ in a friendly but effective wayWork with the basics of C++: types, operators, variables, constants, expressions, references, functions, classes, I/O, smart pointers, polymorphism, and moreSet up the Visual Studio environment on Windows and GCC on Linux, where you can write your own codeDeclare and define functions, classes, and objects, and organize code into namespacesDiscover object-oriented programming: classes and objects, encapsulation, inheritance, polymorphism, and more using the most advanced C++ featuresEmploy best practices in organizing source code and controlling program workflowGet familiar with C++ language do's and don'ts, and moreManage the basics of lambdas, inheritance, polymorphism, smart pointers, templates, modules, contracts, concepts, and moreWho This Book Is For Beginner or novice programmers who wish to learn C++ programming. No prior programming experience is required.
A Practical Guide to Quantum Machine Learning and Quantum Optimisation
Work with fully explained algorithms and ready-to-use examples that can be run on quantum simulators and actual quantum computers with this comprehensive guideKey Features: Get a solid grasp of the principles behind quantum algorithms and optimization with minimal mathematical prerequisitesLearn the process of implementing the algorithms on simulators and actual quantum computersSolve real-world problems using practical examples of methodsBook Description: This book provides deep coverage of modern quantum algorithms that can be used to solve real-world problems. You'll be introduced to quantum computing using a hands-on approach with minimal prerequisites.You'll discover many algorithms, tools, and methods to model optimization problems with the QUBO and Ising formalisms, and you will find out how to solve optimization problems with quantum annealing, QAOA, Grover Adaptive Search (GAS), and VQE. This book also shows you how to train quantum machine learning models, such as quantum support vector machines, quantum neural networks, and quantum generative adversarial networks. The book takes a straightforward path to help you learn about quantum algorithms, illustrating them with code that's ready to be run on quantum simulators and actual quantum computers. You'll also learn how to utilize programming frameworks such as IBM's Qiskit, Xanadu's PennyLane, and D-Wave's Leap.Through reading this book, you will not only build a solid foundation of the fundamentals of quantum computing, but you will also become familiar with a wide variety of modern quantum algorithms. Moreover, this book will give you the programming skills that will enable you to start applying quantum methods to solve practical problems right away.What You Will Learn: Review the basics of quantum computingGain a solid understanding of modern quantum algorithmsUnderstand how to formulate optimization problems with QUBOSolve optimization problems with quantum annealing, QAOA, GAS, and VQEFind out how to create quantum machine learning modelsExplore how quantum support vector machines and quantum neural networks work using Qiskit and PennyLaneDiscover how to implement hybrid architectures using Qiskit and PennyLane and its PyTorch interfaceWho this book is for: This book is for professionals from a wide variety of backgrounds, including computer scientists and programmers, engineers, physicists, chemists, and mathematicians. Basic knowledge of linear algebra and some programming skills (for instance, in Python) are assumed, although all mathematical prerequisites will be covered in the appendices.
Programming Ruby 3.3
Ruby is one of the most important programming languages in use for web development. It powers the Rails framework, which is the backing of some of the most important sites on the web. The Pickaxe Book, named for the tool on the cover, is the definitive reference on Ruby, a highly-regarded, fully object-oriented programming language. This updated edition is a comprehensive reference on the language itself, with a tutorial on the most important features of Ruby - including pattern matching and Ractors - and describes the language through Ruby 3.3. Would you like to go from first idea to working code much, much faster? Do you currently spend more time satisfying the compiler instead of your clients or end users? Are you frustrated with demanding languages that seem to get in your way instead of helping you get the work done? Are you using Rails and want to dig deeper into the underlying Ruby language? If so, then we've got a language and book for you! Ruby is a fully object-oriented language. The combination of the power of a pure object-oriented language with the convenience of a scripting language makes Ruby a favorite tool of programmers that want to get things done quickly and cleanly. This comprehensive reference manual for Ruby includes a description of the most important standard library modules, built-in classes, and modules. It also includes all the new and changed syntax and semantics introduced through Ruby 3.3, including pattern matching and Ractors, and describes the language through Ruby 3.3. What You Need: This book assumes you have a basic understanding of object-oriented programming. In general, Ruby programmers tend to favor the the command line for running their code, and they tend to use text editors rather than IDEs. Ruby runs on Windows, Linux, and MacOS.
Computer Arithmetic in Practice
Computer Arithmetic in Practice - Exercises and Programming is a simple, brief introductory volume for undergraduate and graduate students at university courses interested in understanding the foundation of computers.
Programming Languages and Systems
This open access book constitutes the proceedings of the 32nd European Symposium on Programming, ESOP 2023, which was held during April 22-27, 2023, in Paris, France, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2023.The 20 regular papers presented in this volume were carefully reviewed and selected from 55 submissions. They deal with fundamental issues in the specification, design, analysis, and implementation of programming languages and systems.
Python Programming for Linguistics and Text-Focussed Digital Humanities
Learn how to use Python for linguistics and digital humanities research, perfect for students working with Python for the first time Python programming is no longer only for computer science students; it is now an essential skill in linguistics, the digital humanities (DH), and social science programs that involve text analytics. Python Programming for Linguistics and Digital Humanities provides a comprehensive introduction to this widely used programming language, offering guidance on using Python to perform various processing and analysis techniques on text. Assuming no prior knowledge of programming, this student-friendly guide covers essential topics and concepts such as installing Python, using the command line, working with strings, writing modular code, designing a simple graphical user interface (GUI), annotating language data in XML and TEI, creating basic visualizations, and more. This invaluable text explains the basic tools students will need to perform their own research projects and tackle various data analysis problems. Throughout the book, hands-on exercises provide students with the opportunity to apply concepts to particular questions or projects in processing textual data and solving language-related issues. Each chapter concludes with a detailed discussion of the code applied, possible alternatives, and potential pitfalls or error messages. Teaches students how to use Python to tackle the types of problems they will encounter in linguistics and the digital humanities Features numerous practical examples of language analysis, gradually moving from simple concepts and programs to more complex projects Describes how to build a variety of data visualizations, such as frequency plots and word clouds Focuses on the text processing applications of Python, including creating word and frequency lists, recognizing linguistic patterns, and processing words for morphological analysis Includes access to a companion website with all Python programs produced in the chapter exercises and additional Python programming resourcesPython Programming for Linguistics and Digital Humanities: Applications for Text-Focused Fields is a must-have resource for students pursuing text-based research in the humanities, the social sciences, and all subfields of linguistics, particularly computational linguistics and corpus linguistics.
Practical Opentelemetry
Learn the value that OpenTelemetry can bring to organizations that aim to implement observability best practices, and gain a deeper understanding of how different building blocks interact with each other to bring out-of-the-box, vendor-neutral instrumentation to your stack. With examples in Java, this book shows how to use OpenTelemetry APIs and configure plugins and SDKs to instrument services and produce valuable telemetry data. You'll learn how to maximize adoption of OpenTelemetry and encourage the change needed in debugging workflows to reduce cognitive load for engineers troubleshooting production workloads. Adopting observability best practices across an organization is challenging. This book begins with a discussion of how operational monitoring processes widely followed for decades fall short at providing the insights needed for debugging cloud-native, distributed systems in production. The book goes on to show how the Cloud Native Computing Foundation's OpenTelemetry project helps you standardize instrumentation and transport of telemetry signals, providing a common language for all observability tooling. You Will LearnWhy observability is a necessity in modern distributed systemsThe value of OpenTelemetry for engineers and organizations OpenTelemetry component specification and general designTracing, metrics, and logs APIs and SDKs, with examples in JavaOpenTelemetry Collectors and recommended transport and processing pipelinesHow to adopt observability standards across an organizationWho This Book Is ForSoftware engineers familiar with cloud-native technologies and operational monitoring who want to instrument and export telemetry data from their services; observability leads who want to roll out OpenTelemetry standards and bestpractices across their organizations; and Java developers who want a book with OpenTelemetry examples in that language
PL/SQL From Beginner to Pro
In PL/SQL From Beginner to Pro world-recognized Rick Phillips, Ph.D. leverages his experience with 8 courses and over 65 thousand online students to take the learner through the wonderland which is PL/SQL programming. Whether you are young or old, new to programming or a seasoned veteran, this is the PL/SQL book for you. Google Rick Phillips, Ph.D. to learn more about his experience and lifestyle.
Super Arduino
Geek out-amazing gadget projects for Arduino beginners.Welcome to the wonderful wired world of Arduino-the flexible open-source electronics platform for creators. Become a coding superhero with Super Arduino-the easiest step-by-step, project-based guide for beginners who want to learn the latest tips and tricks while taking their DIY programming skills to the next level.Let your engineering imagination run wild. In this Arduino project workbook, you'll learn how to create great gadgets like a fabulous flag-waver, flashing disco shoes, a crazy clock, flip-a-switch with Wi-Fi, and even an echolocation distance sensor-like a bat! So what are you waiting for?Plug into Super Arduino and get the following: Calling all coders-Explore these easy-to-follow programming sketches specifically designed for Arduino beginners.Ignite your imagination-You'll make wired wearables, crazy costumes, and even home gadgets using step-by-step Arduino projects that build your skills-and coding confidence.Full-color format-From start to finish, four-color sketch images will help guide you.If you can dream it, there's a good chance you can build it-with this awesome Arduino beginner's guide.
Functional Programming in Go
Leverage core functional programming (FP) concepts to write more maintainable and testable code in GoPurchase of the print or Kindle book includes a free PDF eBookKey Features: Learn functional programming techniques at the architectural level and use them to solve real-world problemsUnderstand how to think about code functionallyLearn about the trade-offs of functional programming and object-oriented programming (OOP) in GoBook Description: While Go is a multi-paradigm language that gives you the option to choose whichever paradigm works best for the particular problem you aim to solve, it supports features that enable you to apply functional principles in your code. In this book, you'll learn about concepts central to the functional programming paradigm and how and when to apply functional programming techniques in Go.Starting with the basic concepts of functional programming, this Golang book will help you develop a deeper understanding of first-class functions. In the subsequent chapters, you'll gain a more comprehensive view of the techniques and methods used in functional languages, such as function currying, partial application, and higher-order functions. You'll then be able to apply functional design patterns for solving common programming challenges and explore how to apply concurrency mechanisms to functional programming.By the end of this book, you'll be ready to improve your code bases by applying functional programming techniques in Go to write cleaner, safer, and bug-free code.What You Will Learn: Gain a deeper understanding of functional programming through practical examplesBuild a solid foundation in core FP concepts and see how they apply to Go codeDiscover how FP can improve the testability of your code baseApply functional design patterns for problem solvingUnderstand when to choose and not choose FP conceptsDiscover the benefits of functional programming when dealing with concurrent codeWho this book is for: If you are a Go engineer with a background in traditionally object-oriented languages such as Java or C++ and want to broaden your knowledge of functional programming, this book is for you.
iOS 16 App Development Essentials - UIKit Edition
This book aims to teach the skills necessary to create iOS apps using the iOS 16 SDK, UIKit, Xcode 14, and the Swift programming language.Beginning with the basics, this book outlines the steps necessary to set up an iOS development environment. Next, an introduction to the architecture of iOS 16 and programming in Swift 5.7 is provided, followed by an in-depth look at the design of iOS apps and user interfaces. More advanced topics such as file handling, database management, graphics drawing, and animation are also covered, as are touch screen handling, gesture recognition, multitasking, location management, local notifications, camera access, and video playback support. Other features include Auto Layout, local map search, user interface animation using UIKit dynamics, Siri integration, iMessage app development, and biometric authentication.Additional features of iOS development using Xcode are also covered, including Swift playgrounds, universal user interface design using size classes, app extensions, Interface Builder Live Views, embedded frameworks, collection and stack layouts, CloudKit data storage, and the document browser.Other features of iOS 16 and Xcode 14 are also covered in detail, including iOS machine learning features.The aim of this book, therefore, is to teach you the skills necessary to build your own apps for iOS 16. Assuming you are ready to download the iOS 16 SDK and Xcode 14, have a Mac, and some ideas for some apps to develop, you are ready to get started.
Raspberry Pi Pico Python SDK
This is a printed compilation for people that enjoy using and working with printed manuals. The information in this compilation is available for free in PDF format directly from Raspberry Pi. This manual is printed in accordance with their CC BY-ND license. This is a third party printing of their documentation by DienstNet LLC. Python is the fastest way to get started with embedded software on Raspberry Pi Pico. This book is about the official MicroPython port for RP2040-based microcontroller boards. MicroPython is a Python 3 implementation for microcontrollers and small embedded systems. Because MicroPython is highly efficient, and RP2040 is designed with a disproportionate amount of system memory and processing power for its price, MicroPython is a serious tool for embedded systems development, which does not compromise on approachability.
Blazor WebAssembly By Example - Second Edition
Build exciting web apps following step-by-step instructions and video examples.Purchase of the print or Kindle book includes a free eBook in PDF format.Key Features: Explore and build complete, easy-to-follow web projects using Blazor. Each project includes a video example too.Test your skills in building a weather app, an expense tracker, and a Kanban board with real-world applications.Develop a deeper understanding on how to work with Blazor WebAssembly without spending too much time focusing on the theory.Book Description: Blazor WebAssembly helps developers build web applications without the need for JavaScript, plugins, or add-ons. With its continued growth in popularity, getting started with Blazor now can open doors to new career paths and exciting projects - and Blazor WebAssembly by Example will make your first steps easier. This is a project-based guide that will teach you how to build single-page web applications with Blazor, focusing heavily on the practical over the theoretical by providing detailed step-by-step instructions for each project. The author also includes a video for each project showing her following the step-by-step instructions, so readers can use them if they're unsure about any particular step.In this updated edition, you'll start by building simple standalone web applications and gradually progress to developing more advanced hosted web applications with SQL Server backends. Each project will cover a different aspect of the Blazor WebAssembly ecosystem, such as Razor components, JavaScript interop, security, event handling, debugging on the client, application state, and dependency injection. The book's projects get more challenging as you progress, but you don't have to complete them in order, which makes this book a valuable resource for beginners as well as those who just want to dip into specific topics.By the end of this book, you will have experience and lots of know-how on how to build a wide variety of single-page web applications with .NET, Blazor WebAssembly, and C#.What You Will Learn: Discover the power of the C# language for both server-side and client-side web developmentBuild your first Blazor WebAssembly application with the Blazor WebAssembly App project templateLearn how to debug a Blazor WebAssembly app, and use ahead-of-time compilation before deploying it on Microsoft's cloud platformUse templated components and the Razor class library to build and share a modal dialog boxLearn how to use JavaScript with Blazor WebAssemblyBuild a progressive web app (PWA) to enable native app-like performance and speedSecure a Blazor WebAssembly app using Azure Active DirectoryGain experience with ASP.NET Web APIs by building a task manager appWho this book is for: This book is for .NET web developers who want to leverage the power of .NET and C# to write single-page web applications using Blazor WebAssembly without using JavaScript frameworks. To get started with this book, you'll need at least beginner-level knowledge of the C# language, .NET framework, Microsoft Visual Studio, and web development concepts.
Implementing Event-driven Microservices Architecture in .NET 7
Implement modern design patterns that leverage domain-driven data, to achieve resiliency and scalability for data-dependent applicationsKey Features: Learn the tenets of event-driven architecture, coupled with reliable design patterns to enhance your knowledge of distributed systems and build a foundation for professional growthUnderstand how to translate business goals and drivers into a domain model that can be used to develop an app that enables those goals and driversIdentify areas to enhance development and ensure operational support through the architectural design processBook Description: This book will guide you through various hands-on practical examples for implementing event-driven microservices architecture using C# 11 and .NET 7. It has been divided into three distinct sections, each focusing on different aspects of this implementation.The first section will cover the new features of .NET 7 that will make developing applications using EDA patterns easier, the sample application that will be used throughout the book, and how the core tenets of domain-driven design (DDD) are implemented in .NET 7.The second section will review the various components of a local environment setup, the containerization of code, testing, deployment, and the observability of microservices using an EDA approach.The third section will guide you through the need for scalability and service resilience within the application, along with implementation details related to elastic and autoscale components. You'll also cover how proper telemetry helps to automatically drive scaling events. In addition, the topic of observability is revisited using examples of service discovery and microservice inventories.By the end of this book, you'll be able to identify and catalog domains, events, and bounded contexts to be used for the design and development of a resilient microservices architecture.What You Will Learn: Explore .NET 7 and how it enables the development of applications using EDAUnderstand messaging protocols and producer/consumer patterns and how to implement them in .NET 7Test and deploy applications written in .NET 7 and designed using EDA principlesAccount for scaling and resiliency in microservicesCollect and learn from telemetry at the platform and application levelGet to grips with the testing and deployment of microservicesWho this book is for: This book will help .NET developers and architects looking to leverage or pivot to microservices while using a domain-driven event model.
Learning Angular - Fourth Edition
Build your first production-grade web applications from scratch with Angular with the help of expert guidance and step-by-step explanations.Purchase of the print or Kindle book includes a free eBook in PDF format.Key Features: Learn the fundamentals of Angular 15 to build web applicationsExplore the basics of Angular development, from components and templates to forms, routing, and servicesDiscover best practices for building, deploying, debugging, and testing Angular applicationsBook Description: As Angular continues to reign as one of the top JavaScript frameworks, more developers are seeking out the best way to get started with this extraordinarily flexible and secure framework. Learning Angular, now in its fourth edition, will show you how you can use it to achieve cross-platform high performance with the latest web techniques, extensive integration with modern web standards, and integrated development environments (IDEs).The book is especially useful for those new to Angular and will help you to get to grips with the bare bones of the framework to start developing Angular apps. You'll learn how to develop apps by harnessing the power of the Angular command-line interface (CLI), write unit tests, style your apps by following the Material Design guidelines, and finally, deploy them to a hosting provider.Updated for Angular 15, this new edition covers lots of new features and tutorials that address the current frontend web development challenges. You'll find a new dedicated chapter on observables and RxJS, more on error handling and debugging in Angular, and new real-life examples.By the end of this book, you'll not only be able to create Angular applications with TypeScript from scratch, but also enhance your coding skills with best practices.What You Will Learn: Use the Angular CLI to scaffold, build, and deploy a new Angular applicationBuild components, the basic building blocks of an Angular applicationDiscover new Angular Material components such as Google Maps, YouTube, and multi-select dropdownsUnderstand the different types of templates supported by AngularCreate HTTP data services to access APIs and provide data to componentsLearn how to build Angular apps without modules in Angular 15.x with standalone APIsImprove your debugging and error handling skills during runtime and developmentWho this book is for: This book is for JavaScript and full-stack developers dipping their feet first time in the world of frontend development with Angular, as well as those migrating to the Angular framework to build professional web applications. You'll need prior exposure JavaScript and a solid foundation in the basics of web programming before you get started with this book.
Practical Rust Projects
Go beyond the basics and build complete applications using the Rust programming language, updated for Rust 2021 edition. The applications you'll build over the course of this book include a high-performance web client, an embedded computer (for a robot, for example), a game, a serverless web app, and an application that incorporates AI and machine learning. Each chapter is organized in the following format: what the kind of should application look like; requirements and user stories of our example program; an introduction to the Rust libraries used; the actual implementation of the example program, including common pitfalls and their solutions; and a brief comparison of libraries for building each application, if there is no clear preference. Practical Rust Projects, Second Edition will open your eyes to how Rust can be put to practical, real-world use. After reading this book, you will be able to use Rust to build a variety of your own projects. What You Will Learn Explore practical Rust programming language-based projects, examples and case studiesCreate a GUIBuild a high performance web Front-end using WebAssemblyDevelop REST APIs using RustGo serverless to develop a cloud application using the Amazon AWS Rust SDKCreate a game using Rust, along with AI and machine learning apps Who This Book Is For Those with basic Rust knowledge who want to learn more about how to apply Rust in real-world scenarios.
React.js Design Patterns
Get familiar with React design patterns and best practices to solve common React development problemsKey Features● Get tips to create a better React app architecture.● Explore the best practices for building scalable React apps.● Discover ways to write tests for your React applications.DescriptionReact is a JavaScript library created by Facebook to help build applications with components. In React, there are proven methods to solve common problems experienced by React developers. If you are looking for different ways how to choose your pattern when building a React app, then this book is for you.The book starts by sharing the best practices for architecting your React app. It then helps you learn how to create clean, performant, and maintainable React components using JavaScript and TypeScript. The book helps you explore and work with some useful hooks in React. It also helps you learn how to enable server-side rendering for your React app. Later, the book will help you discover ways to style your React components effectively. Towards the end, the book will help you learn how to write tests for your React applications.By the end of the book, you will be able to build complex and maintainable React apps with JavaScript and TypeScript.What you will learn● Learn how to manage State with Hooks on React components.● Learn how to style React components with CSS.● Understand how to use Next.js for server-side rendering of your React app.● Explore different ways to fetch data using API in React.● Test your React app with React testing library, Jest, and Cypress.Who this book is forThis book is for Web developers, JavaScript developers, and Typescript developers who want to build complex and scalable apps with React. Software engineers and developers who are early in their React careers will find this book very helpful.Table of Contents1. React Anti-Patterns and Best Practices2. Writing Components3. Clean and Maintainable Code4. React Hooks5. Styling6. Server-Side Renderings7. Data Fetching8. Building Scalable Applications9. Testing
Head First Java
What will you learn from this book? Head First Java is a complete learning experience in Java and object-oriented programming. With this book, you'll learn the Java language with a unique method that goes beyond how-to manuals and helps you become a great programmer. Through puzzles, mysteries, and soul-searching interviews with famous Java objects, you'll quickly get up to speed on Java's fundamentals and advanced topics including lambdas, streams, generics, threading, networking, and the dreaded desktop GUI. If you have experience with another programming language, Head First Java will engage your brain with more modern approaches to coding--the sleeker, faster, and easier to read, write, and maintain Java of today. What's so special about this book? If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. If you haven't, you're in for a treat. With Head First Java, you'll learn Java through a multisensory experience that engages your mind, rather than by means of a text-heavy approach that puts you to sleep.
Android Studio Electric Eel Essentials - Java Edition
Fully updated for Android Studio Electric Eel, this book aims to teach you how to develop Android-based applications using the Java programming language.This book begins with the basics and outlines how to set up an Android development and testing environment. An overview of Android Studio is included covering areas such as tool windows, the code editor, and the Layout Editor tool. An introduction to the architecture of Android is followed by an in-depth look at the design of Android applications and user interfaces using the Android Studio environment.Chapters are also included covering the Android Architecture Components, including view models, lifecycle management, Room database access, the Database Inspector, app navigation, live data, and data binding.More advanced topics such as intents are also covered, as are touch screen handling, gesture recognition, and the recording and playback of audio. This book edition also covers printing, transitions, and foldable device support.The concepts of material design are also covered in detail, including the use of floating action buttons, Snackbars, tabbed interfaces, card views, navigation drawers, and collapsing toolbars.Other key features of Android Studio and Android are also covered in detail, including the Layout Editor, the ConstraintLayout and ConstraintSet classes, MotionLayout Editor, view binding, constraint chains, barriers, and direct reply notifications. Chapters also cover advanced features of Android Studio, such as App Links, Dynamic Delivery, Gradle build configuration, in-app billing, and submitting apps to the Google Play Developer Console.Assuming you already have some Java programming experience, are ready to download Android Studio and the Android SDK, have access to a Windows, Mac, or Linux system, and have ideas for some apps to develop, you are ready to get started.
Pro Spring Boot 3
This book will teach you how to build complex Spring applications and microservices out of the box, with minimal concern over things like configurations. Pro Spring Boot 3 will show you how to fully leverage Spring Boot 3's robust features and how to apply them to create enterprise-ready applications, microservices, and web/cloud applications that just work. Special focus is given to what's been added in the new Spring Boot 3 release, including support for Java 17 and 19; changes to Spring Security; Spring Boot Actuator with Micrometer updates; GraalVM support; RSocket service interfaces; many dependency upgrades; more flexible support for Spring Data JDBC, the new AOT (Ahead-of-Time Transformation); and much more.This book is your authoritative, pragmatic guide for increasing your enterprise Java and cloud application productivity while decreasing development time. It's a no-nonsense reference packed with casestudies that increase in complexity over the course of the book. The author, a senior solutions architect and Principal Technical instructor with VMware, the company behind the Spring Framework, shares his experience, insights, and firsthand knowledge about how Spring Boot technology works and best practices for getting the most out of it.This is an essential book for your Spring learning and reference library.What You Will LearnBuild web/cloud, microservices, and enterprise applications with the Spring Boot 3 frameworkPersist data with JDBC, JPA, and NoSQL databasesMessage with JMS, RabbitMQ, WebSockets, and RSocketGain a review of Spring Cloud projectsExtend Spring Boot by creating your own Spring Boot Starter and @Enable featureTest and deploy with Spring Boot with best practicesUnderstand the new AOT (Ahead-Of-Time Transformations) and the GraalVM support to go nativeUse the latest version of Spring SecurityWho This Book Is ForExperienced Spring and Java developers seeking increased productivity gains and decreased complexity and development time in their applications and software services.
C++ Programming Fundamentals
This book is designed to cover the basics of C++, the powerful programming language used by developers all over the world. Its readily understandable concepts and easy syntax areused in video games, embedded systems, IoT devices, and resource-heavy AI applications. Using a "self-teaching" method with numerous examples and figures, the book covers all of the major C++ concepts, including pointers, classes, strings, arrays, polymorphism, inheritance, file handling, and more. Various types of the end of chapter exercises include theoretical, practical, and multiple choice (with answers) to enhance comprehension of the topics covered.
Android Studio Electric Eel Essentials - Kotlin Edition
Fully updated for Android Studio Electric Eel, this book aims to teach you how to develop Android-based applications using the Kotlin programming language.This book begins with the basics and outlines the steps necessary to set up an Android development and testing environment, followed by an introduction to programming in Kotlin, including data types, control flow, functions, lambdas, and object-oriented programming. Asynchronous programming using Kotlin coroutines and flow is also covered in detail.An overview of Android Studio is included covering areas such as tool windows, the code editor, and the Layout Editor tool. An introduction to the architecture of Android is followed by an in-depth look at the design of Android applications and user interfaces using the Android Studio environment.Chapters are also included covering the Android Architecture Components, including view models, lifecycle management, Room database access, the Database Inspector, app navigation, live data, and data binding.More advanced topics such as intents are also covered, as are touch screen handling, gesture recognition, and the recording and playback of audio. This book edition also covers printing, transitions, and foldable device support.The concepts of material design are also covered in detail, including the use of floating action buttons, Snackbars, tabbed interfaces, card views, navigation drawers, and collapsing toolbars.Other key features of Android Studio and Android are also covered in detail, including the Layout Editor, the ConstraintLayout and ConstraintSet classes, MotionLayout Editor, view binding, constraint chains, barriers, and direct reply notifications. Chapters also cover advanced features of Android Studio, such as App Links, Dynamic Delivery, Gradle build configuration, in-app billing, and submitting apps to the Google Play Developer Console.Assuming you already have some programming experience, are ready to download Android Studio and the Android SDK, have access to a Windows, Mac, or Linux system, and have ideas for some apps to develop, you are ready to get started.
Learn Three.js - Fourth Edition
Become a creative JavaScript professional by creating and animating stunning 3D, browser-based graphics with Three.js from beginning to endPurchase of the print or Kindle book includes a free eBook in PDF formatKey Features: - Enhance your 3D graphics with light sources, shadows, advanced materials, and textures- Load models from external sources, visualize and, animate them directly using JavaScript- Create your own custom WebGL shader, explore Three.js' postprocessing feature, and learn how to integrate with Blender, React, and TypescriptBook Description: Three.js has become the industry standard for creating stunning 3D WebGL content. In this edition, you'll learn about all the features of Three.js and understand how to integrate it with the newest physics engines. You'll also develop a strong grip on creating and animating immersive 3D scenes directly in your browser, reaping the full potential of WebGL and modern browsers.The book starts with the basic concepts and building blocks used in Three.js and helps you explore these essential topics in detail through extensive examples and code samples. You'll learn how to create realistic-looking 3D objects using textures and materials and how to load existing models from an external source. Next, you'll understand how to control the camera using the Three.js built-in camera controls, which will enable you to fly or walk around the 3D scene you've created. Later chapters will cover the use of HTML5 video and canvas elements as materials for your 3D objects to animate your models. You'll learn how to use morph targets and skeleton-based animation, before understanding how to add physics, such as gravity and collision detection, to your scene. Finally, you'll master combining Blender with Three.js and creating VR and AR scenes.By the end of this book, you'll be well-equipped to create 3D-animated graphics using Three.js.What You Will Learn: - Implement the different camera controls provided by Three.js to navigate your 3D scene- Discover working with vertices directly to create snow, rain, and galaxy-like effects- Import and animate models from external formats, such as glTF, OBJ, STL, and COLLADA- Design and run animations using morph targets and bone-based animation- Create realistic-looking 3D objects using advanced textures on materials- Interact directly with WebGL by creating custom vertex and fragment shaders- Make scenes using the Rapier physics engine, and integrate Three.js with VR and ARWho this book is for: This book is for JavaScript developers looking to learn the use of Three.js library.Table of Contents- Creating Your First 3D Scene withThree.js- The Basic Components that Make up a Three.js Application- Working with Light Sources in Three.js- Working with Three.js Materials- Learning to Work with Geometries- Exploring Advanced Geometries- Points and Sprites- Creating and Loading Advanced Meshes and Geometries- Animations and moving the camera- Loading and Working with Textures- Render Postprocessing- Adding Physics and Sounds to Your Scene- Working with Blender and Three.js- Three.js together with React, Typescript, and Web-XR
ChromeOS System Administrator's Guide
Explore the sysadmin features and architecture of ChromeOS to master its local and cloud-based administrative tools and capabilitiesKey Features: Get a complete overview of using ChromeOS as a powerful system admin toolGet hands-on experience working with Google's administration platformLearn about centralized management of resources as the hallmark of enterprise system administrationBook Description: Google's ChromeOS provides a great platform for technicians, system administrators, developers, and casual users alike, providing a seemingly simplistic architecture that is easy enough for a novice user to begin working with. However, beneath the surface, this operating system boasts a plethora of powerful tools, able to rival any other OS on the market. So, learning how to harness the full potential of the OS is critical for you as a technical worker and user to thrive at your workplace. ChromeOS System Administrator's Guide will help you reap the benefits of all features of ChromeOS.This book explains ChromeOS' unique architecture and its built-in tools that perform essential tasks such as managing user accounts, working with data, and launching applications. As you build your foundational knowledge of the OS, you'll be exposed to higher-level concepts such as security, command line, and enterprise management.By the end of this book, you'll be well-equipped to perform a range of system administration tasks within ChromeOS without requiring an alternative operating system, thereby broadening your options as a technician, system administrator, developer, or engineer.What You Will Learn: Install, update, and configure ChromeOS on standalone devicesManage Google's cloud-based applications and resources effectivelyImplement key networking and security features to protect your architecture from cyber threatsUnderstand common troubleshooting and disaster recovery techniquesMigrate data from other platforms to Google Workspace efficientlyPerform administrative tasks and run Linux scripts with Chrome ShellManage your enterprise from the Google Workspace Admin ConsoleWho this book is for: This book is for you if you want to become a system administrator, developer, or engineer, and are looking to explore ChromeOS architecture all while expanding your knowledge of administration tools and techniques. Basic knowledge of system administration is required.
Python in a Nutshell
Python was recently ranked as today's most popular programming language on the TIOBE index, thanks to its broad applicability to design and prototyping to testing, deployment, and maintenance. With this updated fourth edition, you'll learn how to get the most out of Python, whether you're a professional programmer or someone who needs this language to solve problems in a particular field. Carefully curated by recognized experts in Python, this new edition focuses on version 3.10, bringing this seminal work on the Python language fully up to date on five version releases, including preview coverage of upcoming 3.11 features. This handy guide will help you: Learn how Python represents data and program as objects Understand the value and uses of type annotations Examine which language features appeared in which recent versions Discover how to use modern Python idiomatically Learn ways to structure Python projects appropriately Understand how to debug Python code
Kotlin Essentials
Kotlin is a powerful language, largely thanks to its expressive syntax, intuitive and null-safe type system, and great tooling support. It's no wonder that Kotlin is the most popular language for Android development and is a popular replacement for Java on backend applications. It is also used for data science and for multiplatform, iOS, desktop, and web application development.About the bookThis book covers the essentials of Kotlin so you can start developing with this amazing programming language. It shows nearly everything you need to know in clear and executable code examples.Who this book is forThis book is for developers with experience in other programming languages. Specifically, experience with an object-oriented programming language (such as Java, JavaScript, Python, or C++) would be beneficial to the reader.What is coveredThis book focuses on the essential Kotlin features, including: variables, values, and types, conditional statements and loops, support for nullability, classes, interfaces, and inheritance, object expressions and declarations, data, sealed, enum, and annotation classes, extension functions, collections, operator overloading, the type system, generics.
Absolute Beginner's Python Programming Full Color Guide with Lab Exercises
Written as an illustrated, step-by-step guide and workbook for complete beginners, this illustrated, full color book will introduce you to the python programming language using clear explanations, diagrams, coded examples, lab exercises and video demos. You'll begin by learning how to set up the python interpreter and development environment on your computer, then you'll dive straight into the basics of python such as python language syntax, python keywords, and how to write and execute python program. Next, you will learn how to work with python variables, basic data types, arithmetic, companion, and boolean operators. Furthermore, the book covers flow control constructs such as if/else statements and loops in python. You'll also learn how to define and use functions, recursion, and exception handling, as well as a look at the principles of object-oriented programming. You'll also learn how to use turtle graphics to draw various shapes and patterns, and how to build a graphical user interface using tkinter. The last section covers developing a game using the PyGame module and how to add graphics, create basic animations, and user interactivity. At the end of each chapter, you'll find various lab exercises to test what you've learned in the chapter. Also included is a growing repository of sample python source code, bonus material for each chapter, videos, and model solutions to lab exercises to further enhance your learning experience. Absolute Beginner's Python Programming Guide will give you the tools, confidence, and inspiration to start writing Python programs. If you are a beginner, a developer, a student, or someone who wants to learn on their own, this book is for you. What You Will LearnGain an understanding of computer programming with pythonUnderstand different data and data types in pythonWork with Classes and OOP in pythonBuild interfaces, simple games, and web development with Python This Book Is Forbeginnersdevelopersstudentsanyone who wants to learn Python programming on their own.
Embedded Systems Architecture - Second Edition
Design safe and reliable software for embedded systems and explore the internals of device drivers, RTOS, and TEEKey Features: - Identify and overcome challenges in embedded environments- Understand and implement the steps required to increase the security of IoT solutions- Build safety-critical and memory-safe parallel and distributed embedded systemsBook Description: Embedded Systems Architecture begins with a bird's-eye view of embedded development and how it differs from the other systems that you may be familiar with. This book will help you get the hang of the internal working of various components in real-world systems.You'll start by setting up a development environment and then move on to the core system architectural concepts, exploring system designs, boot-up mechanisms, and memory management. As you progress through the topics, you'll explore the programming interface and device drivers to establish communication via TCP/IP and take measures to increase the security of IoT solutions. Finally, you'll be introduced to multithreaded operating systems through the development of a scheduler and the use of hardware-assisted trusted execution mechanisms.With the help of this book, you will gain the confidence to work with embedded systems at an architectural level and become familiar with various aspects of embedded software development on microcontrollers-such as memory management, multithreading, and RTOS-an approach oriented to memory isolation.What You Will Learn: - Participate in the design and definition phase of an embedded product- Get to grips with writing code for ARM Cortex-M microcontrollers- Build an embedded development lab and optimize the workflow- Secure embedded systems with TLS- Demystify the architecture behind the communication interfaces- Understand the design and development patterns for connected and distributed devices in the IoT- Master multitasking parallel execution patterns and real-time operating systems- Become familiar with Trusted Execution Environment (TEE)Who this book is for: If you're a software developer or designer looking to learn about embedded programming, this is the book for you. You'll also find this book useful if you're a beginner or a less experienced embedded programmer on a quest to expand your knowledge on embedded systems.Table of Contents- Embedded Systems- Work Environment and Workflow Optimization- Architectural Patterns- The Boot-Up Procedure- Memory Management- General-Purpose Peripherals- Local Bus Interfaces- Power Management and Energy Saving- Distributed Systems and IoT Architecture- Parallel Tasks and Scheduling- Trusted Execution Environment