Dependable Software Engineering. Theories, Tools, and Applications
This book constitutes the proceedings of the 9th International Symposium on Dependable Software Engineering, SETTA 2023, held in Nanjing, China, during November 27-29, 2023. The 24 full papers presented in this volume were carefully reviewed and selected from 78 submissions. They deal with latest research results and ideas on bridging the gap between formal methods and software engineering.
Bridging the Gap Between AI and Reality
This book constitutes the proceedings of the First International Conference on Bridging the Gap between AI and Reality, AISoLA 2023, which took place in Crete, Greece, in October 2023. The papers included in this book focus on the following topics: The nature of AI-based systems; ethical, economic and legal implications of AI-systems in practice; ways to make controlled use of AI via the various kinds of formal methods-based validation techniques; dedicated applications scenarios which may allow certain levels of assistance; and education in times of deep learning.
Refactoring in Java
Master code refactoring techniques, improve code quality, design, and maintainability, and boost your development productivity with this comprehensive handbookKey Features: Get a thorough understanding of code refinement for enhanced codebase efficiencyWork with real-world examples and case studies for hands-on learning and applicationFocus on essential tools, emphasizing development productivity and robust coding habitsPurchase of the print or Kindle book includes a free PDF eBookBook Description: Refactoring in Java serves as an indispensable guide to enhancing your codebase's quality and maintainability.The book begins by helping you get to grips with refactoring fundamentals, including cultivating good coding habits and identifying red flags. You'll explore testing methodologies, essential refactoring techniques, and metaprogramming, as well as designing a good architecture. The chapters clearly explain how to refactor and improve your code using real-world examples and proven techniques. Part two equips you with the ability to recognize code smells, prioritize tasks, and employ automated refactoring tools, testing frameworks, and code analysis tools. You'll discover best practices to ensure efficient code improvement so that you can navigate complexities with ease. In part three, the book focuses on continuous learning, daily practices enhancing coding proficiency, and a holistic view of the architecture. You'll get practical tips to mitigate risks during refactoring, along with guidance on measuring impact to ensure that you become an efficient software craftsperson.By the end of this book, you'll be able to avoid unproductive programming or architecturing, detect red flags, and propose changes to improve the maintainability of your codebase.What You Will Learn: Recognize and address common issues in your codeFind out how to determine which improvements are most importantImplement techniques such as using polymorphism instead of conditionsEfficiently leverage tools for streamlining refactoring processesEnhance code reliability through effective testing practicesDevelop the skills needed for clean and readable code presentationGet to grips with the tools you need for thorough code examinationApply best practices for a more efficient coding workflowWho this book is for: This book is for Java developers, software architects, and technical leads looking for a comprehensive guide to advancing their skills in software design and refactoring. The book is ideal for experienced Java enthusiasts, quality assurance engineers, and codebase maintainers as it provides practical insights, real-world examples, and essential patterns. Development managers who want to foster clean coding practices by using best practices for efficient workflows will also find this book useful.
Clean Code with C# - Second Edition
Enhance your programming skills through code reviews, TDD and BDD implementation, and API design to overcome code inefficiency, redundancy, and other issues arising from bad codeKey Features: Write code that seamlessly integrates with other systems while maintaining well-defined software boundariesUnderstand how coding principles and standards elevate software qualityLearn how to avoid common errors while implementing concurrency or threadingPurchase of the print or Kindle book includes a free PDF eBookBook Description: Traditionally associated with Windows desktop applications and game development, C# has expanded into web, cloud, and mobile development. However, despite its extensive coding features, professionals often encounter issues with efficiency, scalability, and maintainability due to poor code. Clean Code in C# guides you in identifying and resolving these problems using coding best practices.This book starts by comparing good and bad code to emphasize the importance of coding standards, principles, and methodologies. It then covers code reviews, unit testing, and test-driven development, and addresses cross-cutting concerns. As you advance through the chapters, you'll discover programming best practices for objects, data structures, exception handling, and other aspects of writing C# computer programs. You'll also explore API design and code quality enhancement tools, while studying examples of poor coding practices to understand what to avoid.By the end of this clean code book, you'll have the developed the skills needed to apply industry-approved coding practices to write clean, readable, extendable, and maintainable C# code.What You Will Learn: Master the art of writing evolvable and adaptable codeImplement the fail-pass-refactor methodology using a sample C# console applicationDevelop custom C# exceptions that provide meaningful informationIdentify low-quality C# code in need of refactoringImprove code performance using profiling and refactoring toolsCreate efficient and bug-free code using functional programming techniquesWrite cross-platform code using MAUIDevelop cloud-deployable microservices for versatile applicationsWho this book is for: This coding book is for proficient C# developers, team leads, senior software engineers, and software architects who want to improve the efficiency of their legacy systems. A strong understanding of C# programming is assumed.
Deploy Container Applications Using Kubernetes
Navigate through the Kubernetes landscape to create and deploy container-based applications. This book will show you how to choose between the various available container-based operating systems, and how to design a better continuous integration pipeline for your container images, where to store them, and how to scan and secure them. In the first half of the book, you'll learn the practical tips on how to setup the system for visibility and troubleshooting, how to reduce the attack vector and reduce risks. The second half of the book focuses on Kubernetes, the popular container orchestration system. You'll see how to setup your Kubernetes for practical applications such as show/chargeback using tagging, efficient use of namespaces and pods, various isolation layers. It also shows you how to integrate with popular implementations of K8S such as AWS EKS (Elastic Container Service), GCP Google Kubernetes Engine (GKE) in touch points such as authentication and authorization, optimization, logging and troubleshooting tools, etc. By practicing the scenarios given in this book, you will be able to make better design choices that are appropriate for the constraints you are working with. Deploy Container Applications Using Kubernetes is your go-to resource for an optimal deployment of workloads using containers and Kubernetes in both public and private cloud settings. What You'll LearnUnderstand the various design choices, their pros and consBuild a better CI/CD pipeline for your containers and KubernetesDeploy your first container application in a public cloud K8S engineImprove your existing K8S deployment for efficiency and eleganceWho This Book Is ForIT Platform Architects, System Engineers/, and System Administrators
Source Code Exploration with Memcached
Open-source development has been the single most significant contributor to the development community, and the contributions are used across the IT landscape including corporations, universities, schools, etc. Despite being highly popular, contributing to open-source and navigating open-source systems has always been challenging. Some reasons could be that most open-source developers hold other day jobs, which might also be their regular work. Memcached is one of the largest commercially and non-commercially used caching systems in the IT world, with a relatively smaller codebase that enables developers to understand the basic skeletal of source code structures while enabling developers to hone their skills towards the development of high-quality production-grade, enterprise-ready open-source software. Most server-based technologies.
Deep Dive Into Power Automate
Understand the basics of flow and learn how to implement guidelines in real-life scenarios, including Robotic Process Automation (RPA) capabilities. This book covers the evolution of flow and how it is transformed to a full-fledged RPA (such as Power Automate).The book starts with an introduction to flow and its transformation to Process Automation. You will learn how to create a Power Automate environment and demonstrate different types of flows within it. Author Goloknath Mishra takes you through various types of cloud flows and their best practices. Desktop Flows (RPA) or Power Automate Desktop (PAD) is discussed and the author teaches you its architecture, installation steps, and how to manage, schedule, and share a desktop. You will learn about Business Process Flow, Process Advisors, and AI Builder. You also will go through licensing considerations in Power Automate and AI Builder, and demonstrate all of your learnings through a mini project.After reading thebook, you will have gained expertise in Power Automate and be able to implement its guidelines and solve problems at your organization.What Will You LearnKnow the difference between Intelligent Process Automation (IPA) and Robotic Process Automation (RPA)Understand the different types of flows in Power AutomateCreate various types of cloud flows, Desktop flows, Business Process flows, and AI Builder modelsStudy common use cases and be aware of Power Automate best practicesWho This Book Is ForBusiness executives, citizen developers, IT professionals, and computer scientists who wish to efficiently automate monotonous work
Hardware and Software Projects Troubleshooting
Learn how to create good requirements when designing hardware and software systems. While this book emphasizes writing traditional "shall" statements, it also provides guidance on use case design and creating user stories in support of agile methodologies. The book surveys modelling techniques and various tools that support requirements collection and analysis. You'll learn to manage requirements, including discussions of document types and digital approaches using spreadsheets, generic databases, and dedicated requirements tools. Good, clear examples are presented, many related to real-world work the author has performed during his career. More importantly, you will learn how these techniques can prevent the problems that occur during requirements development. Most of all, you will learn how good requirements governance will greatly increase the success of development projects by getting all people involved to eliminate the adverse impacts to requirements throughout the developmentlifecycle. Hardware and Software Projects Troubleshooting covers techniques for defining user needs, so you can determine which combination of approaches to use for your projects. You'll also learn how to analyze the different development methodologies so that you can determine the advantages and disadvantages of different requirements approaches and implement them correctly as your needs evolve. Unlike most requirements books, this one teaches writing both hardware and software requirements because many projects include both areas. To exemplify this approach, two example projects are developed throughout the book, one focusing on hardware, and the other on software. What You Will Learn Focus on how to eliminate or mitigate requirements problemsUnderstand the 14 techniques for capturing all requirementsAddress software and hardware needs; because most projects involve bothEnsure all statements meetthe 16 attributes of a good requirementDifferentiate the 19 different functional types of requirements, and the 31 non-functional typesWrite requirements properly based on extensive examples of good 'shall' statements, user stories, and use casesEmploy modelling techniques to mitigate the imprecision of wordsInstall requirements governance to significantly improve project success Who This Book Is For Requirements engineers who want to improve and master their craft, as well as students and those employed in government or other organizations at all levels.
Making Use
John Carroll shows how a pervasive but underused element of design practice, the scenario, can transform information systems design.Difficult to learn and awkward to use, today's information systems often change our activities in ways that we do not need or want. The problem lies in the software development process. In this book John Carroll shows how a pervasive but underused element of design practice, the scenario, can transform information systems design. Traditional textbook approaches manage the complexity of the design process via abstraction, treating design problems as if they were composites of puzzles. Scenario-based design uses concretization. A scenario is a concrete story about use. For example: "A person turned on a computer; the screen displayed a button labeled Start; the person used the mouse to select the button." Scenarios are a vocabulary for coordinating the central tasks of system development--understanding people's needs, envisioning new activities and technologies, designing effective systems and software, and drawing general lessons from systems as they are developed and used. Instead of designing software by listing requirements, functions, and code modules, the designer focuses first on the activities that need to be supported and then allows descriptions of those activities to drive everything else. In addition to a comprehensive discussion of the principles of scenario-based design, the book includes in-depth examples of its application.
JavaScript Bootcamp
���� JavaScript Bootcamp: From Zero to Hero - Hands-On Learning for Web Developers ����Are you ready to become a web development hero? Look no further than our comprehensive book bundle, "JavaScript Bootcamp: From Zero to Hero." Whether you're a newcomer to the world of web development or an experienced coder looking to master JavaScript, this bundle is your ultimate guide.���� Book 1 - JavaScript Fundamentals: A Beginner's Guide to Web Development ����Start your journey with a solid foundation! In this book, we'll introduce you to the core concepts of JavaScript, from variables and data types to control flow and functions. By the end, you'll have a strong grasp of JavaScript fundamentals, setting you up for success in web development.���� Book 2 - Intermediate JavaScript Mastery: Building Web Applications with ES6 and Beyond ����Ready to take your skills to the next level? Dive into the world of modern JavaScript with this book. Explore advanced topics like ES6 features, asynchronous programming, DOM manipulation, and event handling. You'll gain the skills needed to create dynamic web applications that stand out.���� Book 3 - Advanced JavaScript Techniques: Mastering Complex Projects and Frameworks ����Master the art of web development with advanced techniques! Tackle complex projects and delve into popular JavaScript frameworks like React, Angular, and Vue.js. You'll be equipped to build scalable and maintainable applications, making you a sought-after developer in the field.���� Book 4 - JavaScript Ninja: Harnessing the Full Power of the Language ����Elevate your skills to ninja level! Explore advanced concepts such as functional programming, metaprogramming, concurrency, and memory management. With this knowledge, you'll be capable of solving intricate development challenges and creating custom JavaScript libraries.���� Why Choose "JavaScript Bootcamp: From Zero to Hero"? ����✅ Hands-On Learning: Our books are packed with practical examples, exercises, and real-world projects to reinforce your learning.✅ Progressive Learning: Whether you're a beginner or an expert, our bundle offers a guided path to success at every level.✅ Master Modern JavaScript: Stay up-to-date with the latest JavaScript features and best practices.✅ Become a Web Development Hero: Unlock the limitless possibilities of JavaScript and excel in web development.Don't miss out on this opportunity to become a JavaScript hero! With dedication and practice, you'll emerge from this journey ready to create remarkable web experiences and contribute to the ever-evolving digital landscape.Get the "JavaScript Bootcamp: From Zero to Hero" bundle today and embark on your path to web development mastery! ��������
Dynamic Logic. New Trends and Applications
This book constitutes the revised selected papers of the 5th International Workshop on Dynamic Logic. New Trends and Applications, DaL穩 2023, held in Tbilisi, Georgia, during September 15-16, 2023. The 8 full papers in this book were carefully reviewed and selected from 10 submissions. They deal with new trends and applications in the area of Dynamic Logic.
Algorithmics of Wireless Networks
This book constitutes the refereed proceedings of the 19th International Symposium on Algorithmics of Wireless Networks, ALGOWIN 2023, held in Amsterdam, The Netherlands, during September 7-8, 2023.The 10 full papers included in this book were carefully reviewed and selected from 22 submissions. They were organized in topical sections as follows: design and analysis of algorithms, models of computation and experimental analysis.
Learning C# Through Small Projects
Learning C# Through Small Projects offers you a hands-on approach to understanding advanced C# concepts through engaging projects and minigames. The rationale is simple: learning by doing. You dive straight into the action, building eleven distinct projects that range from an interactive storytelling program to a responsive Discord chatbot. Each project is meticulously designed to introduce and reinforce specific C# concepts, ensuring that you not only understand the theory but can also apply it in real-world scenarios. The book is structured to provide a gradual learning curve. The initial chapters lay the foundation, introducing you to the basics of C# programming. As you progress, the projects become more intricate, delving into advanced topics such as asynchronous operations, data integrity, and API integration. By the end of the book, you'll have a comprehensive understanding of C# and a portfolio of projects to showcase your skills. Authored by Denis Panjuta and Jafar Jabbarzadeh, renowned instructors with a combined student base of over 350,000, this book is more than just a guide--it's a mentor. Their vast teaching experience shines through in every chapter, ensuring that complex topics are broken down into easily digestible segments. Moreover, their commitment to practical learning ensures that every concept is paired with a hands-on project, thus reinforcing your understanding and building your confidence.
Search-Based Software Engineering
This book constitutes the refereed proceedings of the 15th International Symposium on Search-Based Software Engineering, SSBSE 2023, which took place in San Francisco, CA, USA, during December 8, 2023.The 7 full and 7 short papers included in this book were carefully reviewed and selected from 23 submissions. They focus on formulating various optimization problems in software engineering as search problems, addressing them with search techniques, intending to automate complex software engineering tasks.
Product-Focused Software Process Improvement
This book constitutes the refereed proceedings of the 24th International Conference on Product-Focused Software Process Improvement, PROFES 2023, which took place in Dornbirn, Austria, in December 2023. The 21 full technical papers, 8 short papers, and 1 poster paper presented in this volume were carefully reviewed and selected from 82 submissions. The book also contains one tutorial paper, 12 and workshop papers and 3 doctoral symposium papers.The contributions were organized in topical sections as follows: Part I: Software development and project management; machine learning and data science; software analysis and tools; software testing and quality assurance; security, vulnerabilities, and human factors; Part II: Posters; Tutorials; 2nd Workshop on Computational Intelligence and Software Engineering (CISE 2023); 2nd Workshop on Engineering Processes and Practices for Quantum Software (PPQS' 23); doctoral symposium.
Ultimate Full-Stack Web Development with MERN
Master Web Development with MERN Stack for Designing, Testing, and Deploying Professional-Grade Applications using MongoDB, Express, React, and Node.jsBook DescriptionEmbark on a transformative and disruptive journey into MERN stack development with Ultimate Full-Stack Web Development with MERN. Beginning with an in-depth introduction to MERN and REST APIs, the book advances through the complete project overview and the setup of a Node.js application. Next, it delves into the essentials of Node.js, MongoDB connection, models, and crucial aspects of user authentication, including JWT implementation and password hashing. Security takes center stage in next chapters as you explore middleware creation and route protection.In the Frontend section you'll construct a dynamic ReactJS application with a focus on creating components, pages, and establishing Redux for state management. This book will guide you through setting up Redux, implementing registration and login functionalities, and refining your application with a user-friendly dashboard and task form. The book concludes with chapters on frontend and backend testing, ensuring the robustness of your application and also covers deployment strategies for both frontend and backend components, providing a comprehensive guide to showcase your application to the world.Table of Contents1. Getting Started with MERN and Setup2. Starting a NodeJS App3. MongoDB Connection and Models4. JWT Authentication and Hashing Password5. Auth Middleware and Protecting Routes6. Creating Frontend and React Router7. Redux Setup with Slice8. Login and Logout Functionalities9. Dashboard Creation and Task Form10. Using Thunk and Completing App11. Frontend Testing12. Backend Testing13. Deployment Index
Product-Focused Software Process Improvement
This book constitutes the refereed proceedings of the 24th International Conference on Product-Focused Software Process Improvement, PROFES 2023, which took place in Dornbirn, Austria, in December 2023. The 21 full technical papers, 6 industrial papers, 8 short papers and 1 poster paper were carefully reviewed and selected from 82 submissions. The book also contains one tutorial paper, 11 workshop papers and 3 doctoral symposium papers. The contributions were organized in topical sections as follows: Part I: Software development and project management; machine learning and data science; software analysis and tools; software testing and quality assurance; security, vulnerabilities, and human factors; Part II: Posters; Tutorials; 2nd Workshop on Computational Intelligence and Software Engineering (CISE 2023); 2nd Workshop on Engineering Processes and Practicesfor Quantum Software (PPQS' 23); doctoral symposium.
Formal Methods: Foundations and Applications
This book constitutes the refereed proceedings of the 26th Brazilian Symposium on Formal Methods, SBMF 2023, held in Manaus, Brazil, during December 4-8, 2023.The 7 full papers and 2 short papers presented in this book were carefully reviewed and selected from 16 submissions.The papers are divided into the following topical sections: specification and modeling languages; testing; and verification and validation.
Machine Learning Security with Azure
Implement industry best practices to identify vulnerabilities and protect your data, models, environment, and applications while learning how to recover from a security breachKey Features: Learn about machine learning attacks and assess your workloads for vulnerabilitiesGain insights into securing data, infrastructure, and workloads effectivelyDiscover how to set and maintain a better security posture with the Azure Machine Learning platformPurchase of the print or Kindle book includes a free PDF eBookBook Description: With AI and machine learning (ML) models gaining popularity and integrating into more and more applications, it is more important than ever to ensure that models perform accurately and are not vulnerable to cyberattacks. However, attacks can target your data or environment as well. This book will help you identify security risks and apply the best practices to protect your assets on multiple levels, from data and models to applications and infrastructure.This book begins by introducing what some common ML attacks are, how to identify your risks, and the industry standards and responsible AI principles you need to follow to gain an understanding of what you need to protect. Next, you will learn about the best practices to secure your assets. Starting with data protection and governance and then moving on to protect your infrastructure, you will gain insights into managing access and securing your Azure ML workspace. This book introduces DevOps practices to automate your tasks securely and explains how to recover from ML attacks. Finally, you will learn how to set a security benchmark for your scenario and best practices to maintain and monitor your security posture.By the end of this book, you'll be able to implement best practices to assess and secure your ML assets throughout the Azure Machine Learning life cycle.What You Will Learn: Explore the Azure Machine Learning project life cycle and servicesAssess the vulnerability of your ML assets using the Zero Trust modelExplore essential controls to ensure data governance and compliance in AzureUnderstand different methods to secure your data, models, and infrastructure against attacksFind out how to detect and remediate past or ongoing attacksExplore methods to recover from a security breachMonitor and maintain your security posture with the right tools and best practicesWho this book is for: Machine learning book; Ai and machine learning for coders; Cybersecurity; Hand-on machine learning; Cybersecurity booksThis book is for anyone looking to learn how to assess, secure, and monitor every aspect of AI or machine learning projects running on the Microsoft Azure platform using the latest security and compliance, industry best practices, and standards. This is a must-have resource for machine learning developers and data scientists working on ML projects. IT administrators, DevOps, and security engineers required to secure and monitor Azure workloads will also benefit from this book, as the chapters cover everything from implementation to deployment, AI attack prevention, and recovery.
Exploring Macos
If you are a new to the Apple macOS ecosystem and want to get started using it for your enterprise, this is the book for you. You will learn how to navigate the Mac operating system, including an introduction to macOS and its fundamentals, management settings, reinstallation process, and usability. The book also provides tutorials which can be used for troubleshooting networks, configuration, and to ease Windows users' transition to the Mac world. Additionally, it provides detailed information about managing Mac devices using Jamf Pro within organizations, as well as basic and advanced automation scripting. By the time you finish Exploring macOS, you will have a detailed understanding of macOS and its functionality, how to manage Mac devices for enterprise use, and the role Jamf Pro plays in managing and securing Mac devices effectively whilse providing a seamless user experience. What You Will Learn Perform administrative tasks on macOS devicesImplement macOS in an enterprise settingUnderstand the differences between various operating systems, particularly macOS and WindowsManage network configuration and its servicesManage Apple macOS devices using Jamf Pro, a stable, robust, and renowned enterprise mobility management toolGet started with Bash (shell) scripting to automate tasks Who Is This Book For: Helpdesk consultants, remote desktop support professionals, system engineers, macOS Apple desktop administrators, enterprise Apple macOS desktop architects, Jamf system engineers, and digital workplace engineers.
Business Process Automation with Salesforce Flows
Create seamless and structured workflows that can streamline complicated business processes with this comprehensive BPA bookKey FeaturesExplore business processes for automation to add value for your business usersAnalyze, evaluate, and devise effective ways to implement automation through Salesforce FlowsBecome an expert in flow orchestration and compose complex business processes using real-world examples, tips, and tricksPurchase of the print or Kindle book includes a free PDF eBookBook DescriptionThe low adoption of most IT projects often stems from a lack of business process automation. While business users get the functionality they need, the excessive manual steps involved in execution impede efficiency. Business Process Automation with Salesforce Flows will address this issue by helping you recognize the need for automation and guiding you through automating such processes.This book starts by quickly exploring various aspects of process automation using Salesforce Flows, covering flow nuts and bolts, flow structure, flow execution order, and different types of flows, as well as troubleshooting techniques to manage your processes using the Flow Builder tool. You'll then become acquainted with the Flow Orchestration tool, which enables you to compose and orchestrate complex business processes. Through real-world scenarios, you'll learn how to effectively automate business processes, follow the end-to-end business process flow, automate it using flow orchestration, and learn how to demystify and simplify business process automation.By the end of this book, you'll be proficient in seamlessly automating your business processes without any hassle.What you will learnGain insights into gathering business requirements and identifying automation needsIdentify opportunities for improving business process flowsTranslate critical steps in the business process flow and automate them using Flow BuilderIdentify different types of Salesforce Flows tailored to various scenariosOptimize and troubleshoot Salesforce Flows for increased efficiencyDiscover ways to implement complex business process automation through flow orchestrationWho this book is forThis book is for system administrators, technical team members, and business analysts with a solid understanding of the Salesforce CRM software who want to effectively automate business processes using Salesforce Flows. Administrative-level Salesforce experience, along with some technical experience working with automation tools like Workflow, Process Builder, and Flows, will facilitate a better comprehension of the concepts covered in this book.Table of ContentsProcess Flows - Understanding Business RequirementsIdentification of Functional Requirements for AutomationBusiness Process Features to AutomateFlow Building Blocks, Triggering, and Entry ConditionsSalesforce Order of ExecutionTypes of Salesforce FlowsFlows Using Apex SharingOptimizing and Troubleshooting FlowsFlow OrchestrationCompose and Orchestrate Business Processes
Software Architectures
This textbook concentrates on processes, activities and results related to software architectures. It describes the separation of architecture artefacts corresponding to their nature, their logical or their modeling level on one hand and at the same time emphasizes their integration based on their mutual relations. Design or development processes demand for integration, as different artifacts must be elaborated, which are mutually dependent and need to be in a consistent form. The book is structured in four parts. The introductory Part I deals with the relevance of architectures, the central role of the design subprocess both in development or maintenance, and the importance of the decisions and artefacts in the overall result. Another topic is the spectrum of views an architecture language has to offer, and that there are different architectures to be regarded, from abstract and static to detailed, technical, and specific. Part II then discusses "important topics" onthe architecture level. It deals with adaptability especially for embedded systems, with integrating styles/ pattern notations, with different reuse forms and how to find them, with the role of architectures for integrating different existing systems, and with reverse and reengineering of legacy systems. Next, Part III covers architecture modeling and its relation to surrounding activities, as well as architectures to surrounding other results. The single chapters are on transformation between requirements and architectures, architectures and programming, architectures and project management and organization, as well as architectures and their relations to quality assurance or documentation. Eventually, Part IV summarizes the main messages and presents open problems, both for every single chapter and across chapters. Every chapter focuses on a specific problem it addresses, a question it answers, the attention it demands, a message it conveys, and further open questions it raises. The chapters are mostly independent, which implies a certain redundancy, yet it allows lecturers (and their students) to either use the book as the basis of teaching software architecture or design, or to just pick those aspects that need special attention in a more advanced course.
Optimization Algorithms for Distributed Machine Learning
This book discusses state-of-the-art stochastic optimization algorithms for distributed machine learning and analyzes their convergence speed. The book first introduces stochastic gradient descent (SGD) and its distributed version, synchronous SGD, where the task of computing gradients is divided across several worker nodes. The author discusses several algorithms that improve the scalability and communication efficiency of synchronous SGD, such as asynchronous SGD, local-update SGD, quantized and sparsified SGD, and decentralized SGD. For each of these algorithms, the book analyzes its error versus iterations convergence, and the runtime spent per iteration. The author shows that each of these strategies to reduce communication or synchronization delays encounters a fundamental trade-off between error and runtime.
The Essential Guide to Creating Multiplayer Games with Godot 4.0
Level up your Godot 4 networking skills with this comprehensive guide featuring dedicated servers and persistent worlds, illustrated with key images in colorKey Features- Ensure player synchronization and coexistence in a game world- Mitigate latency in your multiplayer games to design a seamless shared experience- Optimize and debug your games using profilers and monitors to visualize performance- Purchase of the print or Kindle book includes a free PDF eBookBook DescriptionThe Essential Guide to Creating Multiplayer Games with Godot 4.0 guides you in exploring the built-in network API for online multiplayer games, offering practical knowledge through concrete use cases.Throughout the book, you'll assume the role of a network engineer in a fictional indie game studio, tackling real-world requests from your peers and gaining expertise in adding new network features to the studio's games. Following step-by-step instructions, you'll go from making your first network handshake to optimizing online gameplay. You'll learn how to sync players and pass data over the internet as you add online multiplayer features to a top-down shooter adventure game.This book puts you in a fictional game project team where you set up your first online server before advancing to creating an online chat system and transitioning local gameplay to go online. With a focus on implementing multiplayer features, you'll create shared world adventures and learn optimization techniques to allow more players to join your virtual world.By the end of this book, you'll have learned how to set up a client-server network, implement remote procedure calls (RPCs), sync node properties remotely, and optimize your games to create smooth online multiplayer experiences.What you will learn- Understand the fundamentals of networking and remote data exchange between computers- Use the Godot game engine's built-in API to set up a network for players- Master remote procedure calls and learn how to make function calls on objects remotely- Enhance your GDScript proficiency to get the most out of this powerful language- Explore industry-standard solutions for common online multiplayer challenges- Improve your networking skills and discover how to turn single-player games into multiplayer experiencesWho this book is forIf you're involved in game development with Godot and want to add multiplayer capabilities to enrich the shared gaming experience, then this book is for you. You'll also find this book useful if you're a network engineer looking to gain hands-on experience with practical projects. To get the most out of this book, a prior understanding of the Godot Engine design philosophy, the GDScript programming language, the SceneTree structure, and how nodes work is essential.Table of Contents- Setting up a server for multiplayer game- Sending and receiving data- Making a lobby to gather players together- Creating an online chat- Making an online quiz game- Building an online checkers game- Developing an online Pong- Designing an online co-op platformer- Creating a top-down adventure game- Debugging and profiling the network- Optimizing data requests- Implementing prediction and interpolation- Caching data to decrease bandwidth
Istqb(r) Certified Tester Foundation Level
This book is aimed at everyone preparing for the ISTQB(R) Certified Tester - Foundation Level exam based on the Foundation Level syllabus (version 4.0) published in 2023. It provides candidates with reliable knowledge based on this document and thus distinguishes itself from all the information about ISTQB(R) syllabi and exams on the Internet, which is often of rather poor quality and may even contain serious errors. The book expands and details many issues that are described in the new 2023 version of the syllabus in a perfunctory or general way only. According to the ISTQB(R) guidelines for syllabus-based training, an exercise must be provided for each learning objective at the K3 level, and a practical example must be provided for each objective at the K2 or K3 level. In order to satisfy these requirements, the authors prepared numerous exercises and examples for all learning objectives at these levels. In addition, for each learning objective, one or more sample exam questions are presented which are similar to those that the candidate will see in the exam. This makes the book an excellent aid for studying and preparing for the exam and verifying acquired knowledge.
Theoretical Aspects of Computing - Ictac 2023
This book constitutes the proceedings of the 20th International Colloquium on Theoretical Aspects of Computing, ICTAC 2023, which took place in Lima, Peru, during December 4-8, 2023. The 20 full papers presented in this volume together with 3 invited papers and 1 tool paper were carefully reviewed and selected from 40 submissions. They were organised in the topical sections as follows: Bring Together Practitioners; Researchers from Academia; Industry; Government to Present Research Results and Exchange Experience and Ideas.
Software, System, and Service Engineering
This book constitutes the refereed proceedings of the S3E 2023 Topical Area, 24th Conference on Practical Aspects of and Solutions for Software Engineering, KKIO 2023, and 8th Workshop on Advances in Programming Languages, WAPL 2023, as Part of FedCSIS 2023, held in Warsaw, Poland, during September 17-20, 2023. The 6 revised papers presented in this book were carefully reviewed and selected from a total of 55 submissions. They focus on new ideas and developments in practical aspects and solutions for software engineering.
Exception Handling
This book presents the fundamentals of exception handling with examples written in C++ and Python. Starting with its history and evolution, it explores the many facets of exception handling, such as its syntax, semantics, challenges, best practices, and implementation patterns. The book is composed of five chapters: Chapter 1 provides an introduction, covering the history, various definitions, and challenges of exception handling. Chapter 2 then delves into the basics, offering insights into the foundational concepts and techniques. Subsequently, chapter 3 touches upon the best practices for exception handling, including the differences between errors and exceptions, the use of assertions, and how to provide meaningful error messages. Chapter 4 takes a deep dive into advanced exception-handling techniques, exploring e.g. patterns, guard clauses, and hierarchical exception handling. Eventually, chapter 5 focuses on the complexities of exception handling in real-time and embedded systems. This book is mainly written for both students and professionals. Its readers will understand the nuances between syntax and semantic errors, learn how to employ try-catch blocks effectively, grasp the importance of logging exceptions, and delve into advanced exception-handling techniques. This way, they will be enabled to handle exceptions effectively and thus write more robust, reliable, and resilient code.
A Power Bi Compendium
Are you a reasonably competent Power BI user but still struggling to generate reports that truly tell the story of your data? Or do you simply want to extend your knowledge of Power BI by exploring more complex areas of visualizations, data modelling, DAX, and Power Query? If so, this book is for you. This book serves as a comprehensive resource for users to implement more challenging visuals, build better data models, use DAX with more confidence, and execute more complex queries so they can find and share important insights into their data. The contents of the chapters are in a question-and-answer format that explore everyday data analysis scenarios in Power BI. These questions have been generated from the author's own client base and from commonly sought-for information from the Power BI community. They cover a wide and diverse range of topics that many Power BI users often struggle to get to grips with or don't fully understand. Examples of suchquestions are: How can I generate dynamic titles for visuals?How can I control subtotals in a Matrix visual?Why do I need a date dimension?How can I show the previous N month's sales in a column chart?Why do I need a Star Schema?Why aren't my totals correct?How can I bin measures into numeric ranges?Can I import a Word document?Can I dynamically append data from different source files? Solutions to these questions and many more are presented in non-technical and easy-to-follow explanations negating the requirement to perform tiresome and fruitless "google" searches. There are also companion Power BI Desktop files that set out the answers to each question so you can follow along with the examples given in the book.. After working through this book, you will have extended your knowledge of Power BI to an expert level, alleviating your existing frustrations and so enabling you to design Power BI reports where you are no longer limited by your lack of knowledge or experience. Who is This Book For: Power BI users who can build reports and now want to extend their knowledge of Power BI.
Deep Learning and Applications
In recent years, the field of artificial intelligence has witnessed an extraordinary resurgence, with deep learning emerging as the cornerstone of numerous breakthroughs across various domains. "Deep Learning and Applications" embarks on a journey into the captivating realm of deep learning, unraveling its intricate concepts, techniques, and transformative potential. This book serves as a comprehensive guide for both newcomers and seasoned practitioners, delving into the foundations of deep learning while illuminating its diverse applications. The rapid evolution of this field has not only enriched our understanding of machine learning but has also revolutionized industries, from healthcare and finance to art and entertainment. However, this book is not merely a theoretical exposition. It celebrates the synergy between theory and practice. With practical examples, code snippets, and case studies, readers are empowered to embark on their own deep learning odyssey. We showcase how to wield the power of frameworks like TensorFlow and PyTorch, demystifying the process of constructing, training, and fine-tuning deep learning models. "Deep Learning and Applications" is an invitation to be part of the transformative wave that is reshaping technology and society. Whether you are an aspiring data scientist, a researcher pushing the boundaries of AI, or a curious mind seeking to comprehend the forces shaping our digital age, this book promises a rewarding voyage into the depths of knowledge and innovation. So, embark on this adventure with us, as we navigate the intricate seas of deep learning and its boundless applications.
Building Kotlin Applications
Kotlin is a modern, expressive, and concise programming language popular among developers for its many benefits. These include its interoperability with Java, ability to build native mobile and web applications, and support for functional programming. This book provides a comprehensive introduction to Kotlin, covering everything you need to know to start building Kotlin applications, regardless of your prior programming experience.
Tools and Methods of Program Analysis
This book constitutes the refereed proceedings of the 6th International Conference on Tools and Methods of Program Analysis, TMPA 2021, held in Tomsk, Russia, during November 25-27, 2021.The 15 full papers and 3 short papers included in this book were carefully reviewed and selected from 45 submissions. They focus on various aspects of application of modern methods of data science to the analysis of software quality.
Swarm Intelligence for Iris Recognition
Swarm intelligence has been one of the methods of natural computing that falls under the artificial intelligence. The swarm intelligence is the winning algorithm since it searches for the genuine user effectively and tolerates with high noise in the iris template during the matching process in the iris recognition.
Junior to Senior
As a programmer, you've spent plenty of time learning technical and programming skills. Junior engineers-and even some who have been in it a long time-must constantly focus on improving their "hard" technical skills.But writing code is only part of our job as software developers. It's equally essential for developers to cultivate the soft skills critical for adding value for their team, their company, their customers, and their career-and it's often neglected.Junior to Senior is one of only a few books that gives practical advice on the soft skills needed to thrive as an engineer: Dealing with lack of confidenceLearning from others and by reading unfamiliar codeManaging your timeWorking effectively with your managerCommunicating clearly with business stakeholders and writing clear documentationUnderstanding different ways to add value for a company and its customersManaging risks and recovering from mistakesDealing with conflictBalancing the demands of work and personal life... and much more.Improvements in these areas are important milestones on the journey from junior to senior software developer. Junior to Senior is filled with insights, from one engineer to another, to guide you along that path.Whether you studied Computer Science, graduated from a coding bootcamp, or are a self-taught programmer, this book will help you manage yourself, build value, and earn the confidence of your team to take on roles with greater responsibility and impact.The print edition also includes a special upgrade offer for full digital access on Holloway.com, with lifetime access to free updates, extra online resources, and multiple DRM-free digital download formats. The ebook edition includes a special upgrade offer for the same access.
Python for Machine Learning
In a world driven by data, the synergy of programming and machine learning has transformed how we perceive and interact with information. Welcome to "Python for Machine Learning," a comprehensive guide designed to empower both beginners and experienced programmers with the tools to harness the power of Python in the realm of machine learning. Machine learning, once considered a futuristic concept, has evolved into an essential discipline that powers everyday applications, from personalized recommendations to self-driving cars. At the heart of this revolution lies Python, a versatile and approachable programming language that has become the lingua franca of machine learning practitioners. Our goal is not only to teach you the syntax and mechanics of Python for machine learning, but also to cultivate a deeper understanding of the underlying principles. As you progress through this book, you will develop the ability to think critically about data, algorithms, and their applications.
Coding Theory Essentials
In an era where data is the lifeblood of our interconnected world, the ability to transmit and protect information is of paramount importance. Coding Theory Essentials is your comprehensive guide to understanding the fundamental principles and techniques that underpin the art of coding theory. This edited book brings together the expertise of leading researchers and practitioners to explore the intricate world of coding theory. From error-correcting codes to channel capacity, from block codes to convolutional codes, this collection covers a wide range of topics, providing both theoretical foundations and practical insights. Whether you are a computer scientist, an electrical engineer, or simply curious about the inner workings of information coding, this book offers a captivating journey into the heart of modern communication. Explore the elegant beauty of coding theory and unleash your potential to innovate within this exciting field. Join us on a quest to decode the secrets of coding theory and unleash the power of reliable communication. Coding Theory Essentials is a must-have resource for researchers, students, and practitioners seeking to navigate the complexities of our digital world. Open the book, unlock the knowledge, and embark on a transformative journey into the world of coding theory.
Procedural Programming with PostgreSQL Pl/Pgsql
Learn the fundamentals of PL/PGSQL, the programming language of PostgreSQL which is most robust Open Source Relational Database. This book provides practical insights into developing database code objects such as functions and procedures, with a focus on effectively handling strings, numbers, and arrays to achieve desired outcomes, and transaction management.The unique approach to handling Triggers in PostgreSQL ensures that both functionality and performance are maintained without compromise. You'll gain proficiency in writing inline/anonymous server-side code within the limitations, along with learning essential debugging and profiling techniques. Additionally, the book delves into statistical analysis of PL/PGSQL code and offers valuable knowledge on managing exceptions while writing code blocks. Finally, you'll explore the installation and configuration of extensions to enhance the performance of stored procedures and functions.What You'll LearnUnderstand the PL/PGSQL conceptsLearn to debug, profile, and optimize PL/PGSQL codeStudy linting PL/PGSQL codeReview transaction management within PL/PGSQL codeWork with developer friendly features like operators, casts, and aggregatorsWho Is This Book ForApp developers, database migration consultants, and database administrators.
Fundamentals of Trace and Log Analysis
This book will help you analyze traces and logs from different software environments and communicate analysis results using a pattern language that covers everything from a small debugging log to a distributed trace with billions of messages from hundreds of computers, thousands of software components, threads, and processes. The book begins with the basic terminology of operating systems and programming, the foundation for understanding trace and log analysis. It then talks about patterns that help describe problems from a user's view and patterns for errors and failures. Then, the book covers a range of trace patterns that group messages, and explores how logs depict software activities. It even examines specific message patterns and how they connect in a single trace. Moving forward, you'll review patterns for multiple traces and logs and how to evaluate them. In this way, you can use similar methods to find problems across a wide variety of software. The book also provides guidance for analyzing issues on systems such as Windows, macOS, Linux, Android, iOS, and other types of computers, including those in networks and the Internet of Things, regardless of their system differences. Upon completing this book, you will be able to navigate the complexities of trace and log analysis and apply uniform diagnostics and anomaly detection pattern language across diverse software environments to help you troubleshoot, debug, and fix issues. What You Will Learn Understand pattern language for trace and log analysisGain a pattern-oriented methodology for trace and log analysis applicable to various domains, including cybersecurityMaster the fundamentals of operating systems and programming related to trace and log analysisUnderstand observed behavior in traces and logs, which aids incident response, diagnostics, root cause analysis, troubleshooting, and debugging Who This Book Is For Software technical support engineers, system and network administrators, software developers, testers, DevOps and DevSecOps, digital forensics and malware analysts, security incident response engineers, data analysts, and data mining practitioners.
Use of the SOLID principles with the IEC 61131-3
SOLID principles are an essential part of object-oriented software development and have proven to be valuable tools for developing clean, maintainable and extensible code. In industrial automation engineering, especially in programming controllers with IEC 61131-3, it is of particular importance to develop robust and reliable systems. In this book, SOLID principles are presented in detail and explained with examples in IEC 61131-3. It also illustrates how the application of these principles improves the maintainability, extensibility, and reliability of software systems. In addition to the SOLID principles, the principles KISS, DRY, LoD and YAGNI are also presented. These do not belong to the group of SOLID principles, but they are a helpful addition.
Go Crazy
Go beyond the basics of Go and build complete applications using open-source libraries or the Go programming language by Google. This book will take you deep into the memory lane of the Go language with crunchy details straight from outer space.The applications in this book include the framework for a 2D Go-based game, an image random generator Rest API, financial time series handling for trading, a Kubernetes operator, a Blockchain coding and more. You'll also get refreshers on Go constructs and useful code tricks to build performant projects, and develop an HTTP based cloud ready image generator. Each chapter will be organized in the following format: what the particular application looks like; requirements and user stories of our example program; an introduction to the Go libraries or frameworks used; and the actual implementation of the example program, including common pitfalls and their solutions. Go Crazy will open your eyes to anew world of practical applications for Go. After reading the book, you will be able to apply your Golang knowledge to build your own crazy projects. Free source code will be available on this book's Apress GitHub page. What You'll Learn Compile and inline other programming languages, including GPU coding.Handle Kubernetes clusters via your own operator Write Go to code against Ethereum based block chains. Write intelligent bot code to get you rich and famous. Who This Book Is ForGo programmers both experienced and novice.
Refactoring with C#
Learn how to improve the maintainability of C# code using modern tools and techniques to resolve technical debt while working safely and efficiently with legacy codeKey Features: - Apply a wide range of refactoring techniques using the latest tools and features of C#- Discover ways to safely improve your code using tests, Roslyn analyzers, and AI assistance- Find ways of communicating technical debt and improving your code in agile and enterprise settings- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Software projects start as brand-new greenfield projects, but invariably become muddied in technical debt far sooner than you'd expect. In Refactoring with C#, you'll explore what technical debt is and how it arises before walking through the process of safely refactoring C# code using modern tooling in Visual Studio and more recent C# language features using C# 12 and .NET 8. This book will guide you through the process of refactoring safely through advanced unit testing with XUnit and libraries like Moq, Snapper, and Scientist .NET. You'll explore maintainable code through SOLID principles and defensive coding techniques made possible in newer versions of C#. You'll also find out how to run code analysis and write custom Roslyn analyzers to detect and resolve issues unique to your code.The nature of coding is changing, and you'll explore how to use AI with the GitHub Copilot Chat to refactor, test, document, and generate code before ending with a discussion about communicating technical debt to leadership and getting organizational buy-in to refactor your code in enterprise organizations and in agile teams.By the end of this book, you'll understand the nature of refactoring and see how you can safely, effectively, and repeatably pay down the technical debt in your application while adding value to your business.What You Will Learn: - Understand technical debt, its causes and effects, and ways to prevent it- Explore different ways of refactoring classes, methods, and lines of code- Discover how to write effective unit tests supported by libraries such as Moq- Understand SOLID principles and factors that lead to maintainable code- Use AI to analyze, improve, and test code with the GitHub Copilot Chat- Apply code analysis and custom Roslyn analyzers to ensure that code stays clean- Communicate tech debt and code standards successfully in agile teamsWho this book is for: This book is for any developer familiar with C# who wants to improve the code they work with on a day-to-day basis. While this book will be most beneficial to new developers with only a year or two of experience, even senior engineers and engineering managers can make the most of this book by exploring not just the process of refactoring, but advanced techniques with libraries like Moq, Snapper, Scientist .NET, and writing custom Roslyn analyzers.Table of Contents- Technical Debt, Code Smells, and Refactoring- Introduction to Refactoring- Method-Level Refactorings- Class-Level Refactorings- Code-Level Refactorings- Unit Testing- Test Driven Development- Avoiding Code Anti-Patterns with SOLID- Advanced Unit Testing- Defensive Coding Techniques- AI-Assisted Refactoring with GitHub Copilot- Code Analysis in Visual Studio- Creating a Roslyn Analyzer- Refactoring Code with Roslyn Analyzers- Communicating Technical Debt- Adopting Code Standards- Agile Refactoring
Grpc Microservices in Go
Build super fast and super secure microservices with the gRPC high-performance messaging protocol and powerful Go language. In gRPC Microservices in Go you'll learn: Designing and implementing resilient microservice architecture Testing microservices Deploying microservices to the cloud with modern orchestration tools Monitoring and overseeing microservices The powerful gRPC Remote Procedure Call framework delivers superior speed and security over protocols like REST. When paired with Golang's low-level efficiency and flexibility, gRPC and Go become a killer combination for latency-sensitive microservices applications. gRPC Microservices in Go shows you how to utilize these powerful tools to build production-grade microservices. You'll learn to develop microservice inter-service communication patterns that are powered by gRPC, design backward compatible APIs, and apply hexagonal architecture to microservices. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Go is perfect for writing fast, reliable microservices code, but that's only half the story. You also need a communications framework like gRPC to connect your services and handle load balancing, tracing, health checking, and authentication. Together, Go and gRPC accelerate the development process and eliminate many of the challenges you face when building and deploying microservices. About the book gRPC Microservices in Go teaches you how to build production-ready microservices using Go and gRPC. In it, you'll learn to create efficient APIs in Go, use gRPC for network communication, and deploy on cloud and Kubernetes. Helpful examples, including a complete eCommerce web app, make it easy to grasp each concept. You'll also get an inside look at testing, deployment, and efficient DevOps practices for microservices. What's inside Designing and implementing resilient microservice architecture Testing microservices Cloud deploying microservices with orchestration tools Monitoring and overseeing microservices About the reader For software developers who know the basics of Go. About the author H羹seyin Babal has been using Go in production since 2017 to build and maintain SaaS platforms. Table of Contents PART 1 - GRPC AND MICROSERVICES ARCHITECTURE 1 Introduction to Go gRPC microservices 2 gRPC meets microservices PART 2 - DEVELOPING, TESTING, AND DEPLOYING A GRPC MICROSERVICE APPLICATION 3 Getting up and running with gRPC and Golang 4 Microservice project setup 5 Interservice communication 6 Resilient communication 7 Testing microservices 8 Deployment PART 3 - GRPC AND MICROSERVICES ARCHITECTURE 9 Observability
Parallel Python with Dask
Unlock the Power of Parallel Python with Dask: A Perfect Learning Guide for Aspiring Data ScientistsDask has revolutionized parallel computing for Python, empowering data scientists to accelerate their workflows. This comprehensive guide unravels the intricacies of Dask to help you harness its capabilities for machine learning and data analysis.Across 10 chapters, you'll master Dask's fundamentals, architecture, and integration with Python's scientific computing ecosystem. Step-by-step tutorials demonstrate parallel mapping, task scheduling, and leveraging Dask arrays for NumPy workloads. You'll discover how Dask seamlessly scales Pandas, Scikit-Learn, PyTorch, and other libraries for large datasets.Dedicated chapters explore scaling regression, classification, hyperparameter tuning, feature engineering, and more with clear examples. You'll also learn to tap into the power of GPUs with Dask, RAPIDS, and Google JAX for orders of magnitude speedups.This book places special emphasis on practical use cases related to scalability and distributed computing. You'll learn Dask patterns for cluster computing, managing resources efficiently, and robust data pipelines. The advanced chapters on DaskML and deep learning showcase how to build scalable models with PyTorch and TensorFlow.With this book, you'll gain practical skills to: Accelerate Python workloads with parallel mapping and task schedulingSpeed up NumPy, Pandas, Scikit-Learn, PyTorch, and other librariesBuild scalable machine learning pipelines for large datasetsLeverage GPUs efficiently via Dask, RAPIDS and JAXManage Dask clusters and workflows for distributed computingStreamline deep learning models with DaskML and DL frameworksPacked with hands-on examples and expert insights, this book provides the complete toolkit to harness Dask's capabilities. It will empower Python programmers, data scientists, and machine learning engineers to achieve faster workflows and operationalize parallel computing.Table of ContentIntroduction to DaskDask FundamentalsBatch Data Parallel Processing with DaskDistributed Systems and DaskAdvanced Dask: APIs and Building BlocksDask with PandasDask with Scikit-learnDask and PyTorchDask with GPUsScaling Machine Learning Projects with Dask
Mental Canvas for Training and Development
​Take advantage of layering and other digital techniques to create stunning, interactive compositions suitable for delivering instructional content and presentations on your iOS or Android device. This book shows you how to move from traditional paper and pen drawing to 3D content that can be interacted with by the viewer. Designed to be used on tablets, the Mental Canvas app is a reimagining of presentation software in the digital age that uses patented technology developed by a research team at Yale University. Whether producing concept drawings, storyboards, tutorials, sales presentations, or other forms of interactive media, you'll learn the skills to transform boring presentations into something exciting and new! You'll create stunning panoramic views; allow viewers to move through your artwork with multiple scenes; publish to the web for viewing on any smart phone, tablet, or computer; import image files; and export animated fly-throughs as .mp4files. Mental Canvas can be used by individual creatives or as part of a collaborative design team sharing files between multiple devices giving global instructional design firms an edge over their competition. Provide fun, interactive, and engaging presentations and throw out those boring click-through, static presentations of the past. Business Dashboards, Organizational About Us pages, Sales presentations - virtually whatever the organization's creatives can think up you'll learn to develop in Mental Canvas!What You'll LearnUse layering to create stunning 3D effects in an otherwise static 2D imageImport and adapt existing images into your dynamic presentationCreate .mp4 fly-throughs that bring websites and presentations to life with videoWho This Book Is ForAny creative who wishes to build engaging and interactive presentations with their iOS or Android device.
SwiftUI for Masterminds 4th Edition
Learn how to create apps for iOS 17 and macOS Sonoma with Swift 5.9 and the SwiftUI framework.SwiftUI for Masterminds is a complete course on creating professional applications for iPhones, iPads, and Mac computers. After reading this book, you will know how to program in Swift, how to design user interfaces, and how to combine traditional frameworks with SwiftUI's advanced features to create modern applications.In this book, we show you how to build insanely great apps from scratch. We explore basic and complex concepts; from computer programming and the Swift programming language to database storage, data sharing, and everything you need to know to develop applications for Apple devices. The information is backed up by practical examples that provide a step-by-step introduction to the latests technologies available for app development, making them accessible to everyone.SwiftUI for Masterminds is designed to prepare you for the future and was written for the genius in you, for Masterminds. Introduction to Swift 5.9Swift ParadigmSwift ConcurrencySwiftDataDeclarative User InterfacesSwiftUI FrameworkMultiplatform ApplicationsNavigation StacksNavigation Split ViewsCustom LayoutsScroll ViewsLists and GridsTablesMapsFormsGraphics and AnimationsChartsFilesArchivingDocumentsiCloudCloudKitCamera and PhotosVideo ViewWeb ViewGesture RecognizersDrag & DropNotificationsInternationalization and LocalizationUIKit in SwiftUI...and more!iOS and Mac development with iOS 17, Xcode 15, Swift 5.9 and SwiftUI