Programming in Ada 2022
The latest version of 'Programming in Ada' covers the full details of the core language Ada 2022 as approved by ISO in 2023, including new features that aid program proof and the efficient use of multicore architectures. The book is arranged in four parts. The first part introduces the key ideas to the newcomer with a working example illustrating the basic ideas. The algorithmic features, structural features such as OOP and multitasking, and details of the standard library and interaction with the external environment are all covered in subsequent parts. This comprehensive guide includes several working examples and is enhanced by a range of supplementary online materials, including a dozen complete executable programs, five of which illustrate important new features. 'Programming in Ada' is a must-have for anyone looking to learn Ada programming language, and will serve as a definitive reference for years to come.
JavaScript QuickStart Guide
THE ULTIMATE BEGINNER'S GUIDE TO LEARNING JAVASCRIPT! **Includes FREE Digital Bonuses! GitHub Repository, Cheat Sheets, and More!** Learn Why QuickStart Guides are Loved by Over 1 Million Readers Around the World Master the most popular programming language in the world. Learn how to bring websites to life with the power of JavaScript, add dynamic interactivity and rich animations to otherwise dull webpages, all with the versatile programming language that builds apps, websites, and more! The Easiest Way to Learn JavaScript In a Step-by-Step Comprehensive Guide Without the power of JavaScript, there is no modern internet.JavaScript powers everything from the website interactivity we take for granted every day to full-scale web applications run by multi-billion dollar corporations. It's no surprise then, that JavaScript is the most popular programming language in the world and massively in demand across the tech sector. Written by a senior developer and programming expert with two decades of JavaScript and programming experience. In JavaScript QuickStart Guide senior developer and expert programmer Robert Oliver presents the fastest and easiest way to master JavaScript fundamentals. Written specifically for beginners and drawing on over two decades of experience coding and programming, this book's practical, project-based approach can be used by anyone to learn to program with JavaScript.Learn by doing with practical follow-along JavaScript projects. It doesn't matter if you are new to web development, an existing developer looking to broaden your horizons, or simply looking for a career change or promotion-using this book and Robert's simplified, hands-on approach anyone with any level of experience can master JavaScript fundamentals! JavaScript QuickStart Guide Is Perfect For: Jobseekers, career changers, and anyone in the job market looking to enter the lucrative tech sector New and experienced web developers who want to learn or brush up on critical web development skills Designers, data analysts, gig workers, and side-hustlers who want to upskill and unlock new earning capacity Anyone who wants to learn how to bring webpages to life with the power of JavaScript quickly and easily! With JavaScript QuickStart Guide, You'll Easily Understand These Crucial Concepts: Practical JavaScript - Set Up Your Development Space and Build a Working Portfolio-Ready Project JavaScript Core Fundamentals - How to Use Variables, Objects, Strings, Functions, and More! Programming Essentials - Troubleshooting, Debugging, Writing Clean Code, Tips and Timesavers Advanced JavaScript Concepts - Animating with JavaScript, Mastering jQuery, And Creating Interactivity Completing The Stack - Expanding Your Horizons Using Node.js, AJAX, React, and GitHub
JavaScript QuickStart Guide
THE ULTIMATE BEGINNER'S GUIDE TO LEARNING JAVASCRIPT! **Includes FREE Digital Bonuses! GitHub Repository, Cheat Sheets, and More!** Learn Why QuickStart Guides are Loved by Over 1 Million Readers Around the World Master the most popular programming language in the world. Learn how to bring websites to life with the power of JavaScript, add dynamic interactivity and rich animations to otherwise dull webpages, all with the versatile programming language that builds apps, websites, and more! The Easiest Way to Learn JavaScript In a Step-by-Step Comprehensive Guide Without the power of JavaScript, there is no modern internet.JavaScript powers everything from the website interactivity we take for granted every day to full-scale web applications run by multi-billion dollar corporations. It's no surprise then, that JavaScript is the most popular programming language in the world and massively in demand across the tech sector. Written by a senior developer and programming expert with two decades of JavaScript and programming experience. In JavaScript QuickStart Guide senior developer and expert programmer Robert Oliver presents the fastest and easiest way to master JavaScript fundamentals. Written specifically for beginners and drawing on over two decades of experience coding and programming, this book's practical, project-based approach can be used by anyone to learn to program with JavaScript.Learn by doing with practical follow-along JavaScript projects. It doesn't matter if you are new to web development, an existing developer looking to broaden your horizons, or simply looking for a career change or promotion-using this book and Robert's simplified, hands-on approach anyone with any level of experience can master JavaScript fundamentals! JavaScript QuickStart Guide Is Perfect For: Jobseekers, career changers, and anyone in the job market looking to enter the lucrative tech sector New and experienced web developers who want to learn or brush up on critical web development skills Designers, data analysts, gig workers, and side-hustlers who want to upskill and unlock new earning capacity Anyone who wants to learn how to bring webpages to life with the power of JavaScript quickly and easily! With JavaScript QuickStart Guide, You'll Easily Understand These Crucial Concepts: Practical JavaScript - Set Up Your Development Space and Build a Working Portfolio-Ready Project JavaScript Core Fundamentals - How to Use Variables, Objects, Strings, Functions, and More! Programming Essentials - Troubleshooting, Debugging, Writing Clean Code, Tips and Timesavers Advanced JavaScript Concepts - Animating with JavaScript, Mastering jQuery, And Creating Interactivity Completing The Stack - Expanding Your Horizons Using Node.js, AJAX, React, and GitHub
C# Fundamentals
Looking to master the essentials of C# programming in a structured and engaging manner? C# Fundamentals: The Complete Beginner's Guide to C# 13 and .NET 9 (2024 Edition) is your go-to resource, meticulously crafted by a seasoned developer and educator. This comprehensive guide is tailored not only to usher beginners into the world of C# but also to provide experienced programmers with insightful knowledge to refine their coding skills.What's New in the 7th Edition?The 7th edition of C# Fundamentals is thoroughly updated to include the latest advancements from C# 13, .NET 9, and Visual Studio 2022, equipping you with the contemporary knowledge and techniques essential for today's programming landscape.Why Choose This Book?Tailored Learning Experience: Authored by a senior developer with a rich background in higher education instruction, each chapter ensures a step-by-step progression, making it suitable for learners at all levels-from absolute beginners to seasoned programmers.Updated Content: This edition is meticulously updated to encompass the latest features in C# 13, .NET 9, and Visual Studio 2022, ensuring you stay ahead in the fast-evolving world of programming.Engaging & Interactive: Go beyond theory with Mini Quizzes and hands-on Activities designed to reinforce your learning and test your grasp on topics.Comprehensive Coverage: With over 50 essential topics, delve deep into everything from the basics to advanced concepts, facilitating rapid learning through concrete programming concepts paired with illustrative examples.Benefits & FeaturesSwift Learning Curve: The insightful blend of theoretical knowledge with practical tasks enables a rapid understanding and application of C# programming concepts.Holistic Understanding: Chapters enriched with quizzes and activities solidify understanding and provide a well-rounded learning experience.Key Topics CoveredBuilding Blocks: Variables, Loops, Arrays, and Methods.Advanced Concepts: Classes, Records, Unit Testing, Interfaces, and the latest C# 13 features like Enhanced Pattern Matching.Expanding Horizons: Dive into Database Connectivity, Asynchronous Programming, and explore new .NET 9 functionalities.Embark on your programming journey with a resource that grows with you. Whether you're starting from scratch or looking to update your skills with the latest C# advancements, C# Fundamentals: The Complete Beginner's Guide to C# 13 and .NET 9 (2024 Edition) is the definitive guide to elevate your coding proficiency.Unlock the full potential of C# and .NET with this comprehensive, up-to-date guide. Get your copy today and step confidently into the future of programming!
ASYNC Rust
Already popular among programmers for its memory safety and speed, the Rust programming language is also valuable for asynchrony. This practical book shows you how asynchronous Rust can help you solve problems that require multitasking. You'll learn how to apply async programming to solve problems with an async approach. You will also dive deeper into async runtimes, implementing your own ways in which async runtimes handle incoming tasks. Authors Maxwell Flitton and Caroline Morton also show you how to implement the Tokio software library to help you with incoming traffic, communicate between threads with shared memory and channels, and design a range of complex solutions using actors. You'll also learn to perform unit and end-to-end tests on a Rust async system. With this book, you'll learn: How Rust approaches async programming How coroutines relate to async Rust Reactive programming and how to implement pub sub in async rust How to solve problems using actors How to customize Tokio to gain control over how tasks are processed Async Rust design patterns How to build an async TCP server just using the standard library How to unit test async Rust By the end of the book, you'll be able to implement your own async TCP server completely from the standard library with zero external dependencies, and unit test your async code.
Powerful Python
Once you've mastered the basics of Python, how do you skill up to the top 1%? How do you focus your learning time on topics that yield the most benefit for production engineering and data teams--without getting distracted by info of little real-world use? This book answers these questions and more. Based on author Aaron Maxwell's software engineering career in Silicon Valley, this unique book focuses on the Python first principles that act to accelerate everything else: the 5% of programming knowledge that makes the remaining 95% fall like dominos. It's also this knowledge that helps you become an exceptional Python programmer, fast. Learn how to think like a Pythonista: explore advanced Pythonic thinking Create lists, dicts, and other data structures using a high-level, readable, and maintainable syntax Explore higher-order function abstractions that form the basis of Python libraries Examine Python's metaprogramming tool for priceless patterns of code reuse Master Python's error model and learn how to leverage it in your own code Learn the more potent and advanced tools of Python's object system Take a deep dive into Python's automated testing and TDD Learn how Python logging helps you troubleshoot and debug more quickly
C# 13 and .NET 9 - Modern Cross-Platform Development Fundamentals - Ninth Edition
An accessible guide for beginner-to-intermediate programmers to the concepts, real-world applications, and latest features of C# 13 and .NET 9, with hands-on exercises using Visual Studio and Visual Studio CodeKey Features: - Explore the newest additions to C# 13, the .NET 9 class libraries, and Entity Framework Core 9- Build professional websites and services with ASP.NET Core 9 and Blazor- Enhance your skills with step-by-step code examples and best practices tipsBook Description: This Packt bestseller continues to be the definitive guide to modern cross-platform development. The 9th edition of C# 13 and .NET 9 - Modern Cross-Platform Development Fundamentals has been updated to cover the latest features and improvements in .NET 9 and C# 13. You'll start by mastering object-oriented programming, learning how to write, test, and debug functions, and implementing interfaces. You'll then dive into .NET APIs for data management, filesystem operations, and serialization.This latest edition integrates .NET 9 enhancements into its examples: faster exceptions and new LINQ methods. New ASP.NET Core 9 features include optimized static assets, built-in OpenAPI document generation, and the HybridCache.Practical examples, such as building websites and services with ASP.NET Core, have been refreshed to utilize the latest .NET 9 features. The book also introduces Blazor, with its new unified hosting model for unparalleled code reusability. With these updates, you'll learn how to build robust applications and services efficiently and effectively.By the end of this book, you'll have the knowledge and confidence to create professional and high-performance web applications using the latest technologies in C# 13 and .NET 9.What You Will Learn: - Discover the new features of .NET 9, including more flexible params and new LINQ like CountBy and Index- Leverage the new ASP.NET Core 9 features for optimized static assets, OpenAPI document generation, and HybridCache- Utilize the native AOT publish capability for faster startup and reduced memory footprint- Build rich web user interface experiences using Blazor in ASP.NET Core 9- Integrate and update databases in your applications using Entity Framework Core 9 models- Query and manipulate data using LINQ- Build powerful services using Minimal APIsWho this book is for: This book is aimed at beginner to intermediate-level C# and .NET developers. While prior exposure to C# or .NET is not a prerequisite, a general understanding of programming concepts will be beneficial.If you want to learn more technologies for building modern .NET projects like gRPC, SignalR, and .NET MAUI, read Mark's Apps and Services with .NET 8 book next; and if you aim to become a professional .NET developer quickly or mainly work on team projects, read his other book, Tools and Skills for .NET 8.Table of Contents- Hello, C#! Welcome, .NET!- Speaking C#- Controlling Flow, Converting Types, and Handling Exceptions- Writing, Debugging, and Testing Functions- Building Your Own Types with Object-Oriented Programming- Implementing Interfaces and Inheriting Classes- Packaging and Distributing .NET Types- Working with Common .NET Types- Working with Files, Streams, and Serialization(N.B. Please use the Read Sample option to see further chapters)
Learn SQL with MySQL
A step-by-step guide that will help you manage data in a relational database using SQL with ease Key FeaturesUnderstand the concepts related to relational databases. Learn how to install MariaDB and MySQL on Windows, Linux and tools to access it. Learn how to connect Python and Pandas to MySQL/MariaDB.Description This book starts with the concepts in RDBMS (Relational Database Management Systems) and SQL (Structured Query Language). The first few chapters cover the definitions and a brief explanation of all the important concepts. They also cover the installation of MariaDB and MySQL on Windows and Raspberry Pi, as well as the setup of various tools used to connect to MySQL and MariaDB server processes. We will also understand how to install sample schemas and how to use basic SQL queries. Then we move on to the SELECT query in detail. The book explores the data retrieval aspect of SQL queries in detail with the WHERE clause and NULL handling in detail. The book also explores the functions available in MySQL. Those are single row and group functions. Then we explore how to combine the data from multiple sources. The technique is known as Joins, and we will learn ANSI style and the old-style syntax for all the types of Joins. The last part explores the DDL and DMLs in depth. We also learn the concepts of Transactions and Constraints. The book explores how we can run the SQL queries from a Python 3 program and load a pandas DataFrame with the data from a table in a schema in the MySQL database. What will you learn Understand the basics of MySQL and MariaDB.Get familiar with MySQL Arithmetic Operators, DDL, DML, DCL & TCL commands.Understand the concept of Single-Row Functions and Group Functions in detail. Retrieve data from multiple sources using the Joins. Who this book is forThis book is designed for beginners as well as professionals alike. The book will also be useful to Data Scientists, Data Analysts, Database Administrators, and Data Engineers. Table of Contents 1. Introduction and Installation2. Getting Started with MySQL3. Getting Started with SQL Queries4. The WHERE clause in detail5. Single Row Functions6. Group Functions7. Joins in MySQL8. Subqueries9. DDL, DML, and Transactions10. Views11. Python 3, MySQL, and Pandas About the Author Ashwin is an experienced veteran who, for the past 25 years, has been working with STEM (Science, Technology, Engineering, and Mathematics). In his career, Ashwin has worked for more than 7 years as an employee for various IT companies and Software Product Companies. He has written more than 2 dozen books on Arduino, Python programming, Computer Vision, IoT, databases, and other popular topics with BPB and other international publications. He has also reviewed many other technical books. He also creates courses for BPB and other platforms and teaches to 60000 students online. He has been working as a freelancer since 2017. He got his first taste in writing in 2015 when he wrote his first book on Raspberry Pi. In his free time, Ashwin makes videos for his Youtube channel, which has 10000 subscribers now. Outside work, Ashwin volunteers his spare time as a STEM Ambassador, helping, coaching, and mentoring young people in taking up careers in technology. Your Blog links: https: //www.youtube.com/ashwinpajankarYour LinkedIn Profile: https: //www.linkedin.com/in/ashwinpajankar/
Mobile OS Vulnerabilities
This book offers in-depth analysis of security vulnerabilities in different mobile operating systems. It provides methodology and solutions for handling Android malware and vulnerabilities and transfers the latest knowledge in machine learning and deep learning models towards this end.
Android Studio Ladybug Essentials - Kotlin Edition
This book, fully updated for Android Studio Ladybug and the new UI, teaches you how to develop Android-based applications using the Kotlin programming language.Beginning with the basics, the book outlines how 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.Chapters also cover the Android Architecture Components, including view models, lifecycle management, Room database access, content providers, 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, 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.
JavaScript from Beginner to Professional
Start your journey towards becoming a JavaScript developer with the help of more than 100 fun exercises and projectsKey Features: - Write eloquent JavaScript and employ fundamental and advanced features to create your own web apps- Interact with the browser with HTML and JavaScript, and add dynamic images, shapes, and text with HTML5 Canvas- Build a password checker, paint web app, hangman game, and many more fun projectsBook Description: This book demonstrates the capabilities of JavaScript for web application development by combining theoretical learning with code exercises and fun projects that you can challenge yourself with. The guiding principle of the book is to show how straightforward JavaScript techniques can be used to make web apps ranging from dynamic websites to simple browser-based games.JavaScript from Beginner to Professional focuses on key programming concepts and DOM (Document Object Model) manipulations that are used to solve common problems in professional web applications. These include data validation, manipulating the appearance of web pages, working with asynchronous and concurrent code, and much more.The book follows project-based learning to provide context for the theoretical components in a series of code examples that can be used as modules of an application, such as input validators, games, and simple animations. This will be supplemented with a brief crash course on HTML and CSS to illustrate how JavaScript components fit into a complete web application.As you learn the concepts, you can try them in your own editor or browser console to get a solid understanding of how they work and what they do. By the end of this JavaScript book, you will feel confident writing core JavaScript code and be equipped to progress to more advanced libraries, frameworks, and environments such as React, Angular, and Node.js.What You Will Learn: - Use logic statements to make decisions within your code- Save time with JavaScript loops by avoiding writing the same code repeatedly- Use JavaScript functions and methods to selectively execute code- Connect to HTML5 elements and bring your own web pages to life with interactive content- Make your search patterns more effective with regular expressions (regex)- Explore concurrency and asynchronous programming to process events efficiently and improve performance- Get a head start on your next steps with primers on key libraries, frameworks, and APIsWho this book is for: This book is for people who are new to JavaScript (JS) or those looking to build up their skills in web development. Basic familiarity with HTML & CSS would be beneficial.Whether you are a junior or intermediate developer who needs an easy-to-understand practical guide for JS concepts, a developer who wants to transition into working with JS, or a student studying programming concepts using JS, this book will prove helpful.Table of Contents- Getting Started with JavaScript- JavaScript Essentials- JavaScript Multiple Values- Logic Statements- Loops- Functions- Classes- Built-In JavaScript Methods- The Document Object Model- Dynamic Element Manipulation Using the DOM- Interactive Content and Event Listeners- Intermediate JavaScript- Concurrency- HTML5, Canvas, and JavaScript- Next Steps- Appendix
Minimal APIs in ASP.NET 9 - Second Edition
Create APIs that embody simplicity, scalability, and precision with proven development techniques and the robust features of .NETKey Features: - Get to grips with API design, architecture, and development methodologies to create elegant and scalable APIs in .NET- Get insights into contemporary trends and tools shaping the API industry- Explore both basic and advanced topics such as optimization, data integration, and caching- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Written by an esteemed technology leader, a .NET specialist, and Microsoft MVP for Developer Technologies, Minimal APIs in ASP.NET 9 provides you with specialized insights into the latest advancements in .NET technology, particularly minimal APIs.You'll get your first minimal API set up and running, before exploring the anatomy of a typical minimal API project, seeing how the framework can be used to create various HTTP endpoints, route, and validate requests, as well as enhancing those requests with custom middleware. After covering the basics, you'll move on to data mapping, managing important dependencies through dependency injection and integrating your minimal APIs with data sources such as Entity Framework, Dapper, and SQL databases for creating CRUD operations. The chapters also walk you through performance optimization, asynchronous programming, and caching, which'll allow you to examine the more advanced aspects of minimal API development, with code examples reflecting real-world scenarios.By the end of this book, you'll be armed with the necessary best practices and skills needed for deploying performant, elegant, and scalable minimal APIs in .NET.What You Will Learn: - Become proficient in minimal APIs within the .NET Core 9 framework- Find out how to ensure scalability, performance, and maintainability- Work with databases and ORMs, such as Entity Framework and Dapper- Optimize minimal APIs, including asynchronous programming, caching strategies, and profiling tools- Implement advanced features like dependency injection, request validation, data mapping, and routing techniques- Create and configure minimal API projects effectivelyWho this book is for: If you're a generalist developer looking for a fresh perspective on API development with an emphasis on minimalism, then this book is for you. Aimed at intermediate developers, this book strikes the right balance between accessibility and depth. The book assumes an intermediate level of C# and .NET knowledge, while providing sufficient guidance and explanations to help you progress confidently through the chapters.Table of Contents- Getting Up and Running with Minimal API Development- Creating Your First Minimal API- The Anatomy of a Minimal API- Handling HTTP Methods and Routing - The Middleware Pipeline- Parameter Binding- Dependency Injection in Minimal APIs - Integrating Minimal APIs with Data Sources - Object Relational Mapping with Entity Framework Core and Dapper- Profiling and Identifying Bottlenecks- Utilizing Asynchronous Programming for Scalability - Caching Strategies for Enhanced Performance - Best Practices for Minimal API Resiliency - Unit Testing, Compatibility, and Deployment of Minimal APIs
Learning Modern C++ for Finance
This practical book demonstrates why C++ is still one of the dominant production-quality languages for financial applications and systems. Many programmers believe that C++ is too difficult to learn. Author Daniel Hanson demonstrates that this is no longer the case, thanks to modern features added to the C++ Standard beginning in 2011. Financial programmers will discover how to leverage C++ abstractions that enable safe implementation of financial models. You'll also explore how popular open source libraries provide additional weapons for attacking mathematical problems. C++ programmers unfamiliar with financial applications also benefit from this handy guide. Learn C++ basics from a modern perspective: syntax, inheritance, polymorphism, composition, STL containers, and algorithms Dive into newer features and abstractions including functional programming using lambdas, task-based concurrency, and smart pointers Implement basic numerical routines in modern C++ Understand best practices for writing clean and efficient code
Mastering Object Oriented Programming with Java in NetBeans
The book "Mastering Object-Oriented Programming with Java in NetBeans" is a comprehensive guide designed to help students and professionals develop their object-oriented programming skills using the Java language and the NetBeans platform. The focus of the book is on providing a solid understanding of the fundamental concepts of object-oriented programming and how to apply them in practical projects. In addition, the book incorporates lab practices designed by Aguaszoft to provide readers with a practical and effective learning experience.
Core Java for the Impatient
An Essential Guide to the Core Language and Libraries--Updated for Java 21 Modern Java introduces major enhancements that impact the core language and APIs at the heart of the Java platform. Many old Java idioms are no longer needed, and new features and programming paradigms can make you far more effective. However, navigating these changes can be challenging. Core Java for the Impatient, Fourth Edition, is a complete guide that reflects all changes through Java SE 21, Oracle's latest Long-Term Support (LTS) release. Written by Cay S. Horstmann--author of the classic two-volume Core Java--this concise tutorial offers a faster, easier pathway for learning modern Java. Horstmann covers everything working developers need to know, including the powerful concepts of lambda expressions and streams, modern constructs such as records and sealed classes, and sophisticated concurrent programming techniques. Given the size and scope of Java 21, there's plenty to cover. As in previous editions, everything is presented in small chunks organized for quick access and easy understanding, with plenty of practical insights and sample code to help you quickly apply all that's new. Test code as you create it with JShell Improve your object-oriented design with records and sealed classes Effectively use text blocks, switch expressions, and pattern matching Understand functional programming with lambda expressions Streamline and optimize data management with the Streams API Use structured techniques, threadsafe data structures, and virtual threads for effective concurrent programming Work with the modularized Java API and third-party modules Take advantage of API improvements for working with collections, input/output, regular expressions, and processes Whether you're an experienced developer just getting started with modern Java or have been programming with Java for years, this guide will help you write more robust, efficient, and secure Java code. Core Java for the Impatient provides accessible coverage of Java features that will enable readers to Master foundational techniques, idioms, and best practices for writing superior Java code Leverage the power of input/output Improve performance and efficiency Fully utilize multicore processors with Java's improved concurrency Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Minimal CMake
Design, build, and share cross-platform software effortlessly, and enhance your development workflow with this hands-on guideKey Features: - Unlock efficient cross-platform builds with streamlined CMake setups- Learn CMake's most powerful features for streamlined software development from a seasoned game and engine developer- Create and distribute an application with step-by-step instructions, practical examples, and working code- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Minimal CMake guides you through creating a CMake project one step at a time. The book utilizes the author's unique expertise in game and engine development to craft compelling examples of how CMake can be used to build complex software. The chapters introduce concepts gradually, each one building on the last. Throughout the course of the book, you will progress from a simple console application all the way through to a full windowed app.The book will help you build a strong foundation in CMake that will translate to future projects. You'll learn how to integrate existing software libraries to enhance your app's functionality, how to build reusable libraries to share with others, and how to manage developing for multiple platforms simultaneously, including macOS, Windows, and Linux. You'll also find out how CMake facilitates testing and how to package your application ready for distribution.The book aims to not overwhelm you with everything there is to know about CMake. Instead, it focuses on the most relevant and important parts that will help you become productive quickly.By the end of this book, you will be a confident CMake user and will have gained the skills and experience to build and share your own libraries and applications.What You Will Learn: - Set up projects for seamless cross-platform development- Integrate external libraries to enhance your project's functionality- Create and share reusable libraries- Manage complex software dependencies for improved maintainability- Package and distribute applications efficiently- Utilize top tools to streamline your CMake workflow- Explore resources for continuous learningWho this book is for: If you are a programmer skilled in C, C++, Swift, Objective-C, or C#, and keen on cross-platform development and open-source software, this book is for you. A solid grasp of CMake helps you to effectively utilize and create open-source libraries and applications. No prior knowledge of CMake is necessary, though familiarity with an imperative programming language (especially C and C++) is beneficial. While a basic understanding of the terminal is advantageous, comprehensive setup instructions will guide you across Windows, macOS, and Linux (Ubuntu).Table of Contents- Getting Started- Hello, CMake!- Using FetchContent with External Dependencies- Creating Libraries for FetchContent- Streamlining CMake Configuration- Installing Dependencies and ExternalProject_Add- Adding Install Support for Your Libraries- Using Super Builds to Simplify Onboarding- Writing Tests for the Project- Packaging the Project for Sharing- Supporting Tools and Next Steps
Artificial Intelligence in Unreal Engine 5
Tap into the cutting-edge artificial intelligence features of Unreal Engine 5 and unlock their potential to craft captivating and engaging experiences in your games and applications in this part-color guideKey Features: - Adopt AI techniques for developing immersive gameplay experiences- Learn how to use the Unreal Engine gameplay framework system with C++ and Blueprints- Plan and develop AI behaviors carefully from start to finish- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Have you ever wondered how to create engaging gameplay experiences that involve formidable AI opponents, capable of challenging and pushing players to their limits? If the answer is yes, then get ready to enter the realm of AI creation with Unreal Engine 5.Within the pages of this book, written by a brilliant author and game development expert, you'll find the secrets of Unreal Engine's cutting-edge AI framework. With this newfound knowledge, you'll be able to create immersive and dynamic gaming experiences. This step-by-step guide will teach you the art of crafting intelligent and responsive virtual opponents that challenge and engage players on a whole new level. As you follow along with practical examples, the book will guide you through the creation of fully functional AI systems. You'll be able to harness the power of behavior trees, NavMesh systems, and sensory perception models, breathing life into your virtual characters.By the end of this book, you'll be equipped with the knowledge you need to unleash the full potential of AI in Unreal Engine. Get ready to revolutionize your gaming creations and captivate players with AI-driven wonders that push the boundaries of what's possible!What You Will Learn: - Discover the basics of AI development in video games- Gain a deep understanding of the main actors in the Unreal Engine AI framework- Design and develop engaging AI actors for a game- Create dynamic and immersive AI experiences with behavior trees, navigation systems, MassEntity, and other AI features- Debug AI systems using dedicated Unreal Engine debugging tools- Extend the AI system with custom nodes and functions- Understand how to cope with the AI system by employing Blueprints and/or C++- Create games that focus on tactics, motion, and moreWho this book is for: This book is for game programmers, as well as Unreal Engine developers with little to no knowledge of AI systems in video games, who want to explore this topic in depth. Developers who are proficient in other game engines and are interested in understanding the principles of the Unreal AI framework will also benefit from this book. You'll need basic knowledge of Unreal Engine and C++ and a strong passion for game development to get the most out of this book.Table of Contents- Getting Started with AI Game Development- Introducing the Unreal Engine AI System- Presenting the Unreal Engine Navigation System- Setting Up a Navigation Mesh- Improving Agent Navigation- Optimizing the Navigation System- Introducing Behavior Trees- Setting Up a Behavior Tree- Extending Behavior Trees- Improving Agents with the Perception System- Understanding the Environment Query System- Using Hierarchical State Machines with State Trees- Implementing Data-Oriented Calculations with Mass- Implementing Interactable Elements with Smart Objects- Appendix - Understanding C++ in Unreal Engine
Developing a Cybersecurity Framework for Small and Medium Enterprises in the UK
Academic Paper from the year 2024 in the subject Computer Science - Commercial Information Technology, language: English, abstract: This research fills the existing gap of having a general framework for cybersecurity and comes up with strategies best suited for SMEs in the UK. Due to the large number of SMEs in the UK, the economy heavily depends on them; however, those organizations have many cybersecurity issues due to the lack of funds, the increased number of strict rules, and new/advanced types of cyber threats. The study's goal is to develop an implementable cybersecurity model that can adequately counter these factors and build SME immunity against cyber threats. The first step undertaken in the study is the review of the literature which seeks to establish specific cybersecurity threats that impact SMEs and assess the preparedness of existing architectures in supporting SMEs. According to it, there is a step-wise cybersecurity framework in terms of policies, standards, and guidelines suitable for SMEs based on their operations and regulatory policies. Examples of Manufacturing, Financial Services, and Healthcare industries make the study applicable and offer practical evidence of the framework application. Specifically, key findings stress that network segmentation and employee training, which are vital yet inexpensive approaches, are indispensable for addressing cyber threats. The general picture leads to the identification of the regulation as the most important area of concern that directly relates to GDPR and industry standards with an emphasis on ongoing monitoring and updates. Concerning the proposed cybersecurity architecture, ranging from perimeter to data protection layers, it provides a conceptual framework for protecting SMEs' IT resources. Possible future research directions include the utilization of new technologies like AI and machine learning for improved threat detection, the improvement of cybersecurity knowledge among the different le
Building User-Friendly Dsls
Craft domain-specific languages that empower experts to create software themselves. Domain-specific languages put business experts at the heart of software development. These purpose-built tools let your clients write down their business knowledge and have it automatically translated into working software--no dev time required. They seamlessly bridge the knowledge gap between programmers and subject experts, enabling better communication and freeing you from time-consuming code adjustments. Inside Building User-Friendly DSLs you'll learn how to: - Build a complete Domain IDE for a car rental company - Implement a projectional editor for your DSL - Implement content assist, type systems, expressions, and versioning language aspects - Evaluate business rules - Work with Abstract Syntax Trees - Reduce notated DSL content in concrete syntax into abstract syntax Building User-Friendly DSLs takes you on a carefully-planned journey through everything you need to create your own DSLs. It focuses on building DSLs that are easy for busy business experts to learn and master. By working through a detailed example of a car rental company, you'll see how to create a custom DSL with a modern and intuitive UI that can replace tedious coding activities. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Here's the central problem of software development: business users know what they need their apps to do, but they don't know how to write the code themselves. As a developer, this means you spend a lot of time learning the same domain-specific details your user already knows. Now there's a way to bridge this gap! You can create a Domain-Specific Language (DSL) that empowers non-technical business users to create and customize their own applications without writing any code. About the book Building User-Friendly DSLs teaches you how to create a complete domain-specific language that looks and works like a web application. These easy-to-use DSLs put the power to create custom software into the hands of business domain experts. As you go, you'll cover all the essentials, from establishing structure and syntax of your DSL to implementing a user-friendly interface. What's inside - Implement a projectional editor for your DSL - Work with Abstract Syntax Trees - Evaluate business rules About the reader For developers with JavaScript and web development experience. About the author Meinte Boersma is a senior developer and an evangelist of model-driven software development and DSLs. Table of Contents 1 What is a domain-specific language? 2 Representing DSL content as structured data 3 Working with ASTs in code 4 Projecting the AST 5 Editing values in the projection 6 Editing objects in the projection 7 Implementing persistence and transportation of ASTs 8 Generating code from the AST 9 Preventing things from blowing up 10 Managing change 11 Implementing expressions: Binary operations 12 Implementing expressions: Order of operations 13 Implementing a type system 14 Implementing business rules 15 Some topics we didn't cover
Eloquent Javascript, 4th Edition
Start building beautiful web applications in JavaScript with the bestselling introduction to the language, updated with new features, fresh exercises, and fun projects. JavaScript, the programming language that allows us to add programs to web pages, lies at the heart of almost every modern web application, from social media sites to browser-based games. Just about every device can run it, making it a great choice for writing universally useful code. The fourth edition of this classic textbook takes you on a journey through the language of the web, starting from its basic elements and building up to engaging, complete programs. The author's personal experiences from years of maintaining popular open source projects enliven the text with practical insights and examples. This edition of Eloquent JavaScript updates the book to describe the 2024 version of JavaScript, and shifts the attention given to some topics to better reflect current development practices. The text takes a practical approach to teaching, rooting theory in plenty of motivating examples. The first half of the book describes the fundamentals of the language, whereas the second half shows how to apply it in two programming environments: the web browser and Node.js. Five project chapters show how to build bigger programs, working through these projects in a piecemeal, conversational way. They include a pathfinding robot, a small programming language, a platform game, a pixel drawing program, and a simple dynamic website. Exercises provided at the end of most chapters will challenge you to creatively apply the concepts and techniques introduced. The book's companion website provides an interactive environment for working on these exercises and playing with the example programs. Whether you're looking to learn JavaScript or to deepen your programming skills, you'll find this book full of stimulating material. Updated to ECMAScript 2024
Programming The ESP32 In C Using The Espressif IDF
The Espressif ESP32 is a remarkable device. It is low cost but with many different subsystems that make it more powerful than you might think. You can use it for simple applications because it is cheap, but you can also use it for more sophisticated applications because it is capable. C is the ideal choice of language to program the ESP32, ensuring that your programs are fast and efficient, and here it is used with the Espressif IoT Development Framework, ESP-IDF and VS Code, a combination which makes it simple to get started and provides a wealth of functions not found elsewhere. The purpose of this book is to reveal what you can do with the ESP32's GPIO lines together with widely used sensors, servos and motors and ADCs. After covering the GPIO, outputs and inputs, events and interrupts, it gives you hands-on experience of PWM (Pulse Width Modulation), PWM for Motor control, the SPI bus, the I2C bus and the 1-Wire bus, the UARTs and of course WiFi. To round out, it covers direct access to the hardware, adding an SD Card reader, sleep states to save power, the RTC, RMT and touch sensors. It also devotes a chapter to FreeRTOS which takes us into the realm of asynchronous processing. This is not a projects book, although there isn't much left for you to do to round out the embryonic projects that are used as examples. Instead it is about understanding concepts and the acquisition of skills. The hope is that by the end of the book you will know how to tackle your own projects and get them safely to completion without wasting time in trial and error. Harry Fairhead is the co-author of Programming the ESP32 in MicroPython, but C is his programming language of choice and electronics is his forte. He is the author of Fundamental C: Getting Closer To The Machine and Applying C For The IoT With Linux. His other books on programming single-board computers include Programming the Raspberry Pi Pico/W in C; Raspberry Pi IoT In C; Raspberry Pi IoT in C With Linux Drivers and Micro: bit IoT in C.
Programming in C
Welcome to the world of C programming language, that has been the foundation of Computer Science. C is powerful, efficient & versatile language, used to build operating system, web browsers, games, compilers & other applications. In this book, I will start with basic of C syntax, data types, operators & gradually move on to more advanced topics such as pointers, structure, union. From this book, you will learn how to install C software also write efficient, readable code, save code into file & run that file. This book is designed specially for students who want to learn C programs practically. I tried to collect all topics programs with output.
Data Structures and Algorithms in Java
A hands-on undergraduate textbook covering all core data structures and algorithms topics with an emphasis on real-world projects. Accessibly written and includes over 250 'Try It Yourself' boxes, more than 500 end-of-chapter problems, and additional interview question sections.
Mastering iOS 18 Development
Elevate your iOS development skills with this comprehensive iOS 18 guide covering the latest changes and improvements in iOS SDK and Swift, while mastering practical techniques to become an exceptional iOS developerKey Features: - Stay up to date with the latest changes and improvements in iOS SDK and Swift programming language- Learn how you can improve user experience by focusing on customizing components and animations- Get to grips with advanced topics such as SwiftData and high-efficiency applications through an in-depth discussion- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Embark on a comprehensive iOS 18 development journey with Avi Tsadok, a veteran iOS developer and author of 4 books and over 40 tutorials and articles. A recognized public speaker, Avi has a knack for demystifying complex concepts and brings unparalleled expertise to the forefront of iOS 18 development education. This guide focuses on iOS 18 advancements, equipping developers with tools to maximize its potential.This book covers essential topics for seasoned developers, including Swift, SwiftUI, Xcode foundations, and the latest iOS SDK updates. You'll get to grips with optimizing performance and understanding advanced architectural paradigms. By implementing the newest iOS updates, you'll also explore intricate animation methods and harness a new framework, SwiftData that replaces Core Data for having persistent storage. The book builds your proficiency in advanced networking with URLSession and shows you how to conjure stunning visuals and adopt sophisticated testing techniques. You'll explore the world of machine learning with Apple's Core ML diving into built-in frameworks like NLP, vision, and sound analysis to train and integrate your own models into iOS apps.By the end of the book, you'll possess skills to build exceptional apps, excel in advanced roles, and confidently tackle iOS development challenges.What You Will Learn: - Develop functional iOS applications on the iOS platform- Build intricate custom animations and UI elements- Master data handling and persistence in iOS apps- Utilize Combine for efficient data management- Harness the power of the neural engine through CoreML- Explore architectures and streamline programming with Swift Macros- Improve engagement by adding Widgets and App IntentsWho this book is for: If you are an experienced iOS developer looking to enhance your mobile development skills, create exceptional applications, and excel in advanced positions, this book is designed for you. To derive maximum benefit from this book and ensure a strong understanding of the advanced content, it is recommended that you have a solid foundation in Swift, SwiftUI, and Xcode.Table of Contents- What's New in iOS 18- Simplifying Our Entities with SwiftData- Understanding SwiftUI Observation- Advanced Navigation with SwiftUI- Enhancing iOS Applications with WidgetKit- SwiftUI Animations and SF Symbols- Improving Feature Exploration with TipKit- Connecting and Fetching Data from the Network- Creating Dynamic Graphs with Swift Charts- Swift Macros- Creating Pipelines with Combine- Being Smart with Apple Intelligence and ML- Exposing Your App to Siri with App Intents - Improving the App Quality with Swift Testing- Exploring Architectures for iOS
Optimizing Cloud Native Java
Performance tuning is an experimental science, but that doesn't mean engineers should resort to guesswork and folklore to get the job done. Yet that's often the case. With this practical book, intermediate to advanced Java technologists working with complex platforms will learn how to tune Java cloud applications for performance using a quantitative, verifiable, and repeatable approach. In response to the ubiquity of cloud computing, this updated edition of Optimizing Cloud Native Java addresses topics that are key to high performance of Java applications in the cloud. Many resources on performance tend to focus on the theory and internals of Java virtual machines, but this book discusses the low-level technical aspects within the context of performance-tuning practicalities and examines a wide range of aspects. With this book, you will: Learn how Java principles and technology make the best use of modern hardware, operating systems, and cloud stacks Examine the pitfalls of measuring Java performance numbers and the drawbacks of microbenchmarking Understand how to package, deploy, operate, and debug Java/JVM applications in modern cloud environments Apply emerging observability approaches to obtain deep understanding of cloud native applications Use Java language performance techniques including concurrent and distributed forms
APRAN PROGRAMMING DANS PYTHON (learn programming in Python, english version)
The book aims to demystify complex concepts of programming into simple concepts by using analogies of Mauritius (situated next to Africa).At the end of the book, you learn how to plot dots in Python to draw a Mauritius MAP. Such strategy can be applied for any other country map or drawing.Such analogy is part of what Yeeshtdevisingh Hosanee called as a series of MOCKTALES where real-life examples are given to make programming concepts familiar.
SwiftUI for Masterminds 5th Edition
Anyone can learn how to develop professional applications for iPhones, iPads, and Mac computers. All you need is the information to be presented in a format that is clear and easy to understand. If that's what you are looking for, this book is for you. SwiftUI for Masterminds covers both fundamental and advanced concepts, from computer programming and the Swift programming language to database storage, data sharing, graphics, the user interface, and everything you need to know to develop applications for Apple devices. Each topic is supported by practical step-by-step examples, making the latest technologies accessible to everyone.Whether you are a complete beginner or an experienced developer, SwiftUI for Masterminds will help you master SwiftUI and develop professional apps for Apple devices. By the end of this book, you will have a deep understanding of computer programming, the Swift language, SwiftUI, and every technology provided by Apple to create innovated applications and stunning user interfaces.Discover how easy and powerful app development can be. With SwiftUI for Masterminds, you will have everything you need to turn your ideas into fully functional applications!
Bare-Metal Embedded C Programming
Become proficient in designing and developing embedded systems and reduce reliance on third-party librariesKey Features: - Learn to develop bare-metal firmware for Arm microcontrollers from scratch- Understand hardware intricacies to minimize your dependency on third-party libraries- Navigate microcontroller manuals with ease and learn to write optimized code- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Bare-Metal Embedded C Programming takes you on an unparalleled journey to equip you with the skills and knowledge to excel in the world of embedded systems. The author, with over a decade of hands-on experience in engineering, takes a unique, practical approach to teach you how to decode microcontroller datasheets so that you're able to extract vital information for precise firmware development. Register manipulation will become second nature to you as you learn to craft optimized code from scratch.The book provides in-depth insights into the hardware intricacies of microcontrollers. You'll navigate user manuals and documentation with ease, ensuring a profound understanding of the underlying technology. The true uniqueness of this book lies in its commitment to fostering independent expertise. Instead of simply copy pasting, you'll develop the capability to create firmware with confidence, paving the way for professional-grade mastery.By the end of this book, you'll have honed your skills in reading datasheets, performing register manipulations, and crafting optimized code, as well as gained the confidence needed to navigate hardware intricacies and write optimized firmware independently, making you a proficient and self-reliant embedded systems developer.What You Will Learn: - Decode microcontroller datasheets, enabling precise firmware development- Master register manipulations for optimized Arm-based microcontroller firmware creation- Discover how to navigate hardware intricacies confidently- Find out how to write optimized firmware without any assistance- Work on exercises to create bare-metal drivers for GPIO, timers, ADC, UART, SPI, I2C, DMA, and more- Design energy-efficient embedded systems with power management techniquesWho this book is for: Whether you're an experienced engineer seeking in-depth expertise in decoding datasheets, precise register manipulations, and creating firmware from scratch, or a software developer transitioning to the embedded systems domain, this book is your comprehensive guide. It equips you with the practical skills needed for confident, independent firmware development, making it an essential resource for professionals and enthusiasts in the field.Table of Contents- Setting Up the Tools of the Trade- Constructing Peripheral Registers from Memory Addresses- Understanding the Build Process and Exploring the GNU Toolchain- Developing the Linker Script and Startup File- The "Make" Build System- The Common Microcontroller Software Interface Standard (CMSIS)- The General-Purpose Input/Output (GPIO) Peripheral- System Tick (SysTick) Timer- General-Purpose Timers (TIM)- The Universal Asynchronous Receiver/Transmitter Protocol- Analog-to-Digital Converter (ADC)- Serial Peripheral Interface (SPI)- Inter-Integrated Circuit (I2C)- External Interrupts and Events (EXTI)- The Real-Time Clock (RTC)- Independent Watchdog (IWDG)- Direct Memory Access (DMA)- Power Management and Energy Efficiency in Embedded Systems
Scalable Android Applications in Kotlin
DESCRIPTION Kotlin, a modern and expressive language, has revolutionized Android app development. As the app complexity grows, building scalable and maintainable Android apps becomes crucial. This book is a complete guide to modern Android app development using Kotlin. It covers key concepts like clean architecture and dependency injection for building strong, maintainable apps. This book will also help you learn how to use Kotlin DSL for build configuration and Jetpack Compose for creating user interfaces. It also covers testing, debugging, networking, and API integration. With best practices and real-world examples, this book will help developers create high-quality Android apps using Kotlin.By the end of this book, you will be equipped with the knowledge and skills to architect, develop, and deploy scalable Android apps using Kotlin. You will confidently tackle complex app development challenges, write clean, efficient, and testable code, and become a proficient Android developer.WHAT YOU WILL LEARN● Kotlin and Jetpack Compose fundamentals.● Feature-oriented separation of concerns.● Clean-code architecture in Android.● Kotlin-specific test-driven development.● Multi-module project organization.● Tips and techniques for debugging.● Continuous integration and releasing applications.WHO THIS BOOK IS FORThis book can be understood by novice developers but will also benefit intermediate/seasoned professionals in the Android space. This book is a must-have for Android developers, software engineers, and mobile app developers striving to create exceptional applications.
iOS 18 App Development Essentials
This book aims to teach the skills necessary to build iOS 18 applications using SwiftUI, Xcode 16, and the Swift programming language and includes access to over 50 online knowledge test quizzes.Beginning with the basics, this book outlines the steps to set up an iOS development environment, together with an introduction to using Swift Playgrounds to learn and experiment with Swift.The book also includes in-depth chapters introducing the Swift programming language, including data types, control flow, functions, object-oriented programming, property wrappers, structured concurrency, and error handling.A guided tour of Xcode in SwiftUI development mode follows an introduction to the key concepts of SwiftUI and project architecture. The book also covers creating custom SwiftUI views and explains how these views are combined to create user interface layouts, including stacks, frames, and forms.Other topics covered include data handling using state properties and observable, state, and environment objects, as are key user interface design concepts such as modifiers, lists, tabbed views, context menus, user interface navigation, and outline groups.The book also includes chapters covering graphics and chart drawing, user interface animation, view transitions and gesture handling, WidgetKit, Live Activities, document-based apps, Core Data, SwiftData, and CloudKit.Chapters also explain how to integrate SwiftUI views into existing UIKit-based projects and integrate UIKit code into SwiftUI.Finally, the book explains how to package up a completed app and upload it to the App Store for publication.Along the way, the topics covered in the book are put into practice through detailed tutorials, the source code for which is also available for download.The aim of this book, therefore, is to teach you the skills to build your own apps for iOS 18 using SwiftUI. Assuming you are ready to download the iOS 18 SDK and Xcode 16 and have an Apple Mac system, you are ready to get started.
AI-based Static Application Security Testing Guide
Code smells are usually ignored as they are neither a bug, nor a vulnerability. Quality engineers and, specially, security architects ignore them. As some of the code smells may lead towards vulnerability which may further be exploited by the hackers, therefore, such vulnerable code smells must be considered and further mitigated by threat modelers. In order to provide a repository of such code smells to security designers, a process had been devised and experimented. During the execution, various web applications had been passed through SAST and resulting code smells had been extracted and then inserted into a new dataset via Python. Later on, the code smells deposited in the dataset had been classified into various categories. Finally, machine learning algorithms had been assessed through WEKA and the fastest as well the most accurate algorithm had been selected. Current security standards do not ensure mitigation of threats caused by leading-to-vulnerability code smells, till to date. Typically, threat modelers assess security of a system through modeling threats via CIA, STRIDE and LINDDUN standards on its DFD and various architectural / infrastructural diagrams.
Flutter Design Patterns and Best Practices
Elevate your mobile app development skills using reusable software development methodologies and code design principles, leveraging proven strategies from industry experts who have fostered thriving developer communitiesKey Features: - Cover code structure, app architecture, testing, performance optimization, error handling, and more- Get hands on with code examples and exercises to apply design patterns and best practices in real-world scenarios- Leverage the intricacies of the Flutter framework to build better apps for your clients- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Flutter's rapid adoption by developers and businesses alike has led to an increased demand for skilled developers who can deliver high-quality Flutter apps. Flutter can be a great tool to develop apps for yourself, but you don't always need to consider things like scalability or business goals as a hobbyist. When you build apps for a business, however, you must use specific tools to help the business achieve its goals. This requires solutions to be fast, reliable, and delivered on time. This book will help you meet these business requirements.You'll begin by learning how to build responsive UIs that work on all devices. Next, you'll delve into state management, understanding how to select the appropriate solution and gaining hands-on experience with InheritedWidget, ChangeNotifier, and BLoC. Later, you'll move on to high-level practices such as layered architecture, dependency injection, and repository patterns. The book will also show you how to develop features of any complexity, such as multithreading and native layer implementations. You'll also learn how to ensure the quality of your solutions by prioritizing testing.By the end of this book, you'll be able to deliver well-architected Flutter projects that are stable, scalable, and maintainable.What You Will Learn: - Translate business requirements into technical solutions- Understand when and where specific design patterns would be applicable- Separate concerns into multiple layers with scoped responsibility- Build reusable architecture that can be applied to any type of app and supported by various teams- Debug and solve problems before they reach the user- Prevent production bugs by prioritizing testing during the development cycle- Design encapsulated features that are resilient to business requirement changes and software updatesWho this book is for: If you're a mobile developer who has already realized the potential of Flutter as a tool to solve business problems and are looking forward to leveling up your app-building skills, then this book is for you. Freelancers, agencies, or individuals who have already developed basic applications with Flutter and want to level up their skills to build production-ready apps at scale will find this book helpful. Basic Flutter knowledge and experience in building apps will be beneficial. Moreover, if you're transitioning from another mobile framework, this book will make the transition easier.Table of Contents- Best Practices for Building UIs with Flutter- Responsive UIs for All Devices- Vanilla State Management- State Management Patterns and Their Implementations- Creating Consistent Navigation- The Responsible Repository Pattern- Implementing the Inversion of Control Principle- Ensuring Scalability and Maintainability with Layered Architecture- Mastering Concurrent Programming in Dart- A Bridge to the Native Side of Development- Unit Tests, Widget Tests, and Mocking Dependencies- Static Code Analysis and Debugging Tools
Android Studio Koala Essentials - Kotlin Edition
This book, fully updated for Android Studio Koala Feature Drop (2024.1.2) and the new UI, teaches you how to develop Android-based applications using the Kotlin programming language.This book begins with the basics and outlines how 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.Chapters also cover the Android Architecture Components, including view models, lifecycle management, Room database access, content providers, 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, 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.
C Programming
C programming is taught as the primary computer language in almost every university and its affiliated colleges. as it acts as a building block to learn other high-level languages. This book can act as a textbook or a supplementary book that helps the learner understand the subject in greater detail. It can also be used by professionals.
Python Programming
Purposefully designed to be instantly applicable, PYTHON PROGRAMMING - A PRACTICAL APPROACH provides implementation examples so that the described subject matter can be immediately implemented by the reader to well-known versatility of Python in handling different data types with ease.
Pragmatic Flutter
Have you ever thought of creating beautiful blazing fast native apps for iOS and Android from a single codebase? If so, this book, Pragmatic Flutter: Building Cross-Platform Mobile Apps for Android, iOS, Web & Desktop, is the right place to start your journey to developing cross-platform apps.
Survival Analysis with Python
Survival analysis uses statistics to calculate time to failure. The book takes a fresh look at this complex subject by explaining how to use the Python programming language to perform this type of analysis.
Android Studio Koala Essentials - Java Edition
his book, fully updated for Android Studio Koala Feature Drop (2024.1.2) and the new UI, teaches 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, followed by an overview of 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 also cover the Android Architecture Components, including view models, lifecycle management, Room database access, content providers, 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, 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.
JavaScript
This book focuses on developing the basics concepts of Javascript and enlightening the readers about the horizons that can be accessed using this language. It offers detailed explanation of the core topics & provides examples to enable ease of learning.
Data Science with .NET and Polyglot Notebooks
Expand your skillset by learning how to perform data science, machine learning, and generative AI experiments in .NET Interactive notebooks using a variety of languages, including C#, F#, SQL, and PowerShellKey Features: - Conduct a full range of data science experiments with clear explanations from start to finish- Learn key concepts in data analytics, machine learning, and AI and apply them to solve real-world problems- Access all of the code online as a notebook and interactive GitHub Codespace- Purchase of the print or Kindle book includes a free PDF eBookBook Description: As the fields of data science, machine learning, and artificial intelligence rapidly evolve, .NET developers are eager to leverage their expertise to dive into these exciting domains but are often unsure of how to do so. Data Science in .NET with Polyglot Notebooks is the practical guide you need to seamlessly bring your .NET skills into the world of analytics and AI.With Microsoft's .NET platform now robustly supporting machine learning and AI tasks, the introduction of tools such as .NET Interactive kernels and Polyglot Notebooks has opened up a world of possibilities for .NET developers. This book empowers you to harness the full potential of these cutting-edge technologies, guiding you through hands-on experiments that illustrate key concepts and principles. Through a series of interactive notebooks, you'll not only master technical processes but also discover how to integrate these new skills into your current role or pivot to exciting opportunities in the data science field.By the end of the book, you'll have acquired the necessary knowledge and confidence to apply cutting-edge data science techniques and deliver impactful solutions within the .NET ecosystem.What You Will Learn: - Load, analyze, and transform data using DataFrames, data visualization, and descriptive statistics- Train machine learning models with ML.NET for classification and regression tasks- Customize ML.NET model training pipelines with AutoML, transforms, and model trainers- Apply best practices for deploying models and monitoring their performance- Connect to generative AI models using Polyglot Notebooks- Chain together complex AI tasks with AI orchestration, RAG, and Semantic Kernel- Create interactive online documentation with Mermaid charts and GitHub CodespacesWho this book is for: This book is for experienced C# or F# developers who want to transition into data science and machine learning while leveraging their .NET expertise. It's ideal for those looking to learn ML.NET and Semantic kernel and extend their .NET skills to data science, machine learning, and Generative AI Workflows.Table of Contents- Data Science, Notebooks, and Kernels- Exploring Polyglot Notebooks- Getting Data and Code into Your Notebooks- Working with Tabular Data and DataFrames- Visualizing Data- Variable Correlations- Classification Experiments with ML.NET AutoML- Regression Experiments with ML.NET AutoML- Beyond AutoML: Pipelines, Trainers, and Transforms- Deploying Machine Learning Models- Generative AI in Polyglot Notebooks- AI Orchestration with Semantic Kernel- Enriching Documentation with Mermaid Diagrams- Extending Polyglot Notebooks- Adopting and Deploying Polyglot Notebooks
Node.js Secure Coding
Learn about JavaScript's insecure code patterns that lead to code injection vulnerabilities in Node.js applications. This book provides a comprehensive guide to code security in server-side JavaScript applications and how to mitigate code injection vulnerabilities by analyzing real-world security vulnerabilities reported as CVE to popular open-source npm packages. This book begins by laying the foundations of application security and continues to unfold the theory and practice behind code injection vulnerabilities. It then takes a hands-on approach to vulnerable code, demonstrating how insecure JavaScript and Node.js APIs lead to code injection security risks. Following vulnerable code reviews with applied security vulnerabilities will teach you how to recognize and avoid insecure code patterns in your Node.js applications. The more you spend time reading code, the easier it becomes to grasp its intricacies and gain deeper contextual understanding. This book's primary objective is to facilitate that learning process by examining vulnerable code, allowing us to learn from its flaws. This activity cultivates patterns within our cognitive processes, enabling our brains to identify and recognize security red flags and code insecurity swiftly. These acquired patterns become invaluable assets in daily programming and code review routines, enhancing your ability to proactively detect and mitigate security vulnerabilities.
Beyond Effective Go
Discover the unique secrets to writing high-quality code efficiently and effectively and dramatically improve your development productivity. Building on the success of Beyond Effective Go-Part 1: Achieving High-Performance Code, Corey shares wisdom and practical approaches to software engineering, software design, and code UX that will set you on the path to success.This series doesn't waste time on the basics but dives straight into the solutions for the everyday challenges that professional programmers face. With clear explanations and real-world examples, you'll gain the skills to build performant, maintainable, and testable applications in Go efficiently and effectively.Unlike many programming books, Beyond Effective Go focuses on the programmer and the code. Whether you're building large-scale backend services or convenient automation tools, the book will help you write maintainable, high-quality code that meets the needs of your users, programmers, and your business.This book, Part 2 of the series, focuses on striving for high-quality code. It is built around the idea that we can only be consistently productive by producing quality work. To achieve quality, we need an arsenal of tricks, tools, and methodologies and the knowledge to apply them.After reading this book, you will: Understand fundamental software design principles and patterns and how to apply them using the appropriate Go manner.Appreciate how code usability (Code UX) is essential and how small, seemingly insignificant decisions can dramatically improve the quality of your code.Know when and how to use tests to ensure that code works and how to leverage tests to make yourself more productive.Discover how being lazy, observant, introspective, and adventurous can help you do more with less time.Know how to leverage your Go skills to build your own productivity tools.Beyond Effective Go is an essential resource for programmers, software engineers, and software managers who want to make the most out of their Golang programming efforts.
Java Concurrency and Parallelism
Unlock Java's full potential for cloud computing through expert insights from real-world case studies and stay ahead with the latest trends in agile and robust Java application developmentKey Features: - Master concurrency and parallelism to overcome cloud computing challenges in Java- Build scalable solutions with Big Data, ML, microservices, and serverless architectures- Explore cloud scaling, GPU utilization, and future tech innovations in Java applications- Purchase of the print or Kindle book includes a free PDF eBookBook Description: If you're a software developer, architect, or systems engineer, exploring Java's concurrency utilities and synchronization in the cloud, this book is an essential resource. Tech visionary Jay Wang, with over three decades of experience transforming industry giants, brings unparalleled expertise to guide you through Java's concurrency and parallel processing in cloud computing.This comprehensive book starts by establishing the foundational concepts of concurrency and parallelism, vital for cloud-native development, and gives you a complete overview, highlighting challenges and best practices. Wang expertly demonstrates Java's role in big data, machine learning, microservices, and serverless computing, shedding light on how Java's tools are effectively utilized in these domains. Complete with practical examples and insights, this book bridges theory with real-world applications, ensuring a holistic understanding of Java in cloud-based scenarios. You'll navigate advanced topics, such as synchronizing Java's concurrency with cloud auto-scaling and GPU computing, and be equipped with the skills and foresight to tackle upcoming trends in cloud technology.This book serves as your roadmap to innovation and excellence in Java cloud applications, giving you in-depth knowledge and hands-on practice for mastering Java in the cloud era.What You Will Learn: - Understand Java concurrency in cloud app development- Get to grips with the core concepts of serverless computing in Java- Boost cloud scaling and performance using Java skills- Implement Java GPU acceleration for advanced computing tasks- Gain insights into Java's role in the evolving cloud and AI technology- Access hands-on exercises for real-world Java applications- Explore diverse Java case studies in tech and fintech- Implement Java in AI-driven cloud and data workflows- Analyze Java's application in IoT and real-time analyticsWho this book is for: This book is for Java developers, software engineers, and cloud architects with intermediate Java knowledge. It's ideal for professionals transitioning to cloud-native development or seeking to enhance their concurrent programming skills. DevOps engineers and tech leads involved in cloud migration will also find valuable insights. Basic Java proficiency, familiarity with cloud concepts, and some experience with distributed systems is expected.Table of Contents- Concurrency, Parallelism, and the Cloud: Navigating the Cloud-Native Landscape- Introduction to Java's Concurrency Foundations: Threads, Processes, and Beyond- Mastering Parallelism in Java - Java Concurrency Utilities and Testing in the Cloud Era- Mastering Concurrency Patterns in Cloud Computing - Java and Big Data - a Collaborative Odyssey - Concurrency in Java for Machine Learning- Microservices in the Cloud and Java's Concurrency- Serverless Computing and Java's Concurrent Capabilities- Synchronizing Java's Concurrency with Cloud Auto-Scaling Dynamics- Advanced Java Concurrency Practices in Cloud Computing- The Horizon Ahead- APPENDIX A- APPENDIX B
Native Desktop Applications with .NET 8
DESCRIPTION Microsoft recently released .NET 8, a fresh and exciting release with lots of new features and performance enhancements. In this book, we will cover several frameworks such as WinForms, WPF, Windows App SDK, Blazor, and MAUI.This book will begin with a tour of the .NET technology, including its versions and support. You will also discover how .NET evolved into a unified development platform and be introduced to a variety of desktop frameworks. The upcoming chapter will be devoted exclusively to discussing the new features and improvements in .NET 8, together with the features that are now available in the C# 12 version. Since we now have a solid grasp of .NET 8, we can get started in chapter three by using the .NET Command Line Interface (CLI) commands to create new projects and solutions. We will study this by examining several desktop application frameworks from chapters 4 to 8. The following two chapters will cover a variety of application design patterns and best practices.Upon completion, readers will have a thorough understanding of various native desktop application development techniques, as well as the most recent C# features and how they integrate into existing design approaches.WHAT YOU WILL LEARN● Familiarize yourself with new features and improvements in .NET 8, together with the features that are now available in the C# 12 version.● Understanding CLI commands and creating projects using them.● Using Windows Forms, WPF, and Windows App SDK concepts along with real-time use-cases.● Understanding how mobile apps can be built using the .NET MAUI platform.● Achieve the potential of the Blazor framework along with new changes and features introduced since .NET 8.● Exploring various architecture and design patterns along with best practices.WHO THIS BOOK IS FORThis book is for software developers, UI/UX designers, and .NET enthusiasts seeking to create cutting-edge desktop applications, as this book provides the essential knowledge and practical guidance to excel in .NET 8 desktop development.
Competitive Coding for Learners in C++
DESCRIPTION C++ is a powerful language essential for logic building and competitive programming. It demands a solid grasp of data structures and algorithms to excel in coding challenges. This book is the perfect guide to help you confidently navigate this path. This book is meticulously crafted to make the fundamentals of C++ programming accessible and engaging for learners at all levels.This book starts with basic programming concepts like variables, operators, and control flow to build a solid foundation. It then covers arrays, focusing on efficient memory management and manipulation. Loop structures, including nested loops, are also explained in detail in this book for handling iterative processes and pattern recognition. Further, Recursion is introduced for advanced problem-solving, along with optimization strategies. The book finishes with string manipulation for text processing and performance optimization techniques. In this book, you'll find exercises like output-based questions, error identification, and multiple-choice questions to test your knowledge. Each chapter also includes practical programming problems to enhance your skills. Take the time to absorb the concepts, tackle the challenges, and enjoy the process of crafting elegant solutions to complex problems. Let this book be your companion on your journey to becoming a proficient C++ programmer. Happy coding!KEY FEATURES ● Simplified explanations for complex C++ concepts.● Logical progression from basics to advanced topics.● Variety of challenges like output, error, and multiple-choice questions.● Practical programming problems for hands-on experience.WHAT YOU WILL LEARN● Master the fundamentals of C++ programming.● Understand and apply advanced C++ concepts.● Develop strong problem-solving skills.● Write efficient and error-free code.● Debug and optimize C++ programs.● Tackle complex programming challenges.WHO THIS BOOK IS FORThis book is ideal for beginners with no programming experience and intermediate programmers looking to deepen their C++ knowledge. It's also a valuable resource for experienced coders aiming to refine their skills and tackle advanced C++ concepts.