Test-Driven iOS Development with Swift, 4th EditionTest-driven development (TDD) is a proven way to find software bugs earlier on in software development. Writing tests before you code improves the structure and maintainability of your apps, and so using TDD in combination with Swift 5.5's improved syntax leaves you with no excuse for writing bad code.
Developers working with iOS will be able to put their knowledge to work with this practical guide to TDD in iOS. This book will help you grasp the fundamentals and show you how to run TDD with Xcode. You'll learn how to test network code, navigate between different parts of the app, run asynchronous tests, and much more. Using practical, real-world examples, you'll begin with an overview of the TDD workflow and get to grips with unit testing concepts and code cycles. You'll then develop an entire iOS app using TDD while exploring different strategies for writing tests for models, view controllers, and networking code. Additionally, you'll explore how to test the user interface and bus ...
Practical AI for Healthcare ProfessionalsArtificial Intelligence (AI) is a buzzword in the healthcare sphere today. However, notions of what AI actually is and how it works are often not discussed. Furthermore, information on AI implementation is often tailored towards seasoned programmers rather than the healthcare professional/beginner coder. This book gives an introduction to practical AI in the medical sphere, focusing on real-life clinical problems, how to solve them with actual code, and how to evaluate the efficacy of those solutions. You'll start by learning how to diagnose problems as ones that can and cannot be solved with AI. You'll then learn the basics of computer science algorithms, neural networks, and when each should be applied. Then you'll tackle the essential parts of basic Python programming relevant to data processing and making AI programs. The Tensorflow/Keras library along with Numpy and Scikit-Learn are covered as well.
Once you've mastered those basic computer science and programming concepts, you ...
Microsoft Azure Data SolutionsCloud technologies are advancing at an accelerating pace, supplanting traditional relational and data warehouse storage solutions with novel, high-value alternatives. Now, three pioneering Azure Data consultants offer an expert introduction to the relational, non-relational, and data warehouse solutions offered by the Azure platform. Drawing on their extensive experience helping organizations get more value from the Microsoft Data Platform, the authors guide you through decision-making, implementation, operations, security, and more. Throughout, step-by-step tutorials and hands-on exercises prepare you to succeed, even if you have no cloud data experience.
Three leading experts in Microsoft Azure Data Solutions show how to: Master essential concepts of data storage and processing in cloud environments; Handle the changing responsibilities of data engineers moving to the cloud; Get started with Azure data storage accounts and other data facilities; Walk through implementing relationa ...
Programming ML.NETML.NET brings the power of machine learning to all .NET developers and Programming ML.NET helps you apply it in real production solutions. Modeled on Dino Espositos best-selling Programming ASP.NET, this book takes the same scenario-based approach Microsofts team used to build ML.NET itself. After a foundational overview of ML.NETs libraries, the authors illuminate mini-frameworks (ML Tasks) for regression, classification, ranking, anomaly detection, and more. For each ML Task, they offer insights for overcoming common real-world challenges. Finally, going far beyond shallow learning, the authors thoroughly introduce ML.NET neural networking. They present a complete example application demonstrating advanced Microsoft Azure cognitive services and a handmade custom Keras network showing how to leverage popular Python tools within .NET.
14-time Microsoft MVP Dino Esposito and son Francesco Esposito show how to: Build smarter machine learning solutions that are closer to your users nee ...
Machine Learning with PySpark, 2nd EditionMaster the new features in PySpark 3.1 to develop data-driven, intelligent applications. This updated edition covers topics ranging from building scalable machine learning models, to natural language processing, to recommender systems.
Machine Learning with PySpark, Second Edition begins with the fundamentals of Apache Spark, including the latest updates to the framework. Next, you will learn the full spectrum of traditional machine learning algorithm implementations, along with natural language processing and recommender systems. You'll gain familiarity with the critical process of selecting machine learning algorithms, data ingestion, and data processing to solve business problems. You'll see a demonstration of how to build supervised machine learning models such as linear regression, logistic regression, decision trees, and random forests. You'll also learn how to automate the steps using Spark pipelines, followed by unsupervised models such as K-means and hierarchical clustering ...
Trustworthy AIIn Trustworthy AI, award-winning executive Beena Ammanath offers a practical approach for enterprise leaders to manage business risk in a world where AI is everywhere by understanding the qualities of trustworthy AI and the essential considerations for its ethical use within the organization and in the marketplace. The author draws from her extensive experience across different industries and sectors in data, analytics and AI, the latest research and case studies, and the pressing questions and concerns business leaders have about the ethics of AI.
Filled with deep insights and actionable steps for enabling trust across the entire AI lifecycle, the book presents: In-depth investigations of the key characteristics of trustworthy AI, including transparency, fairness, reliability, privacy, safety, robustness, and more; A close look at the potential pitfalls, challenges, and stakeholder concerns that impact trust in AI application; Best practices, mechanisms, and governance considerati ...
Software Architecture by ExampleDesign system solutions using modern architectural patterns and practices. This book discusses methods to keep a system responsive, even when it is being constantly updated, extending a system's functionality without changing the core code, methods of maintaining data history, and designing a distributed transactional system.
This book will guide you in understanding how a software solution is designed using different architectural processes and scenarios. Each scenario explains if and why a software solution is required to resolve a given issue, and discusses possible architectural approaches to solve the problem. You will learn specific implementations of software architecture for each case along with different approaches to achieve the solutions. Each chapter is structured as a real-world requirement from a client and describes a process to meet that requirement.
After reading this book, you should have a high-level understanding of the architectural patterns used in the book, ...
Beginning jOOQLearn to use the jOOQ library to manage SQL database operations in Java and JVM applications. This book walks you through what JOOQ is, how to install and get started with it, and then gets you working with it.
Practical examples and case studies demonstrate how jOOQ offers a more efficient and versatile alternative to Object-Relational Mapping frameworks like Hibernate and JPA, while providing a natural, native-SQL feeling for the developer. You'll see how to maximize the full potential of your SQL database with advanced query syntax and functions with this lightweight, SQL-friendly framework. Come see how you can use high performance approaches like reactive, data streaming and cloud-native programming to get data from SQL tables.
Never write another incorrect SQL statement again and protect your application from SQL injection with the strong typing and inbuilt controls in jOOQ. Learn how to add jOOQ to your existing Hibernate, Spring Boot or Quarkus applications.
When you've ...
Open Data StructuresOffered as an introduction to the field of data structures and algorithms, Open Data Structures covers the implementation and analysis of data structures for sequences (lists), queues, priority queues, unordered dictionaries, ordered dictionaries, and graphs. Focusing on a mathematically rigorous approach that is fast, practical, and efficient, Morin clearly and briskly presents instruction along with source code.
Analyzed and implemented in Java, the data structures presented in the book include stacks, queues, deques, and lists implemented as arrays and linked-lists; space-efficient implementations of lists; skip lists; hash tables and hash codes; binary search trees including treaps, scapegoat trees, and red-black trees; integer searching structures including binary tries, x-fast tries, and y-fast tries; heaps, including implicit binary heaps and randomized meldable heaps; graphs, including adjacency matrix and adjacency list representations; and B-trees.
A modern treatment of ...
Modern Data Engineering with Apache SparkLeverage Apache Spark within a modern data engineering ecosystem. This hands-on guide will teach you how to write fully functional applications, follow industry best practices, and learn the rationale behind these decisions. With Apache Spark as the foundation, you will follow a step-by-step journey beginning with the basics of data ingestion, processing, and transformation, and ending up with an entire local data platform running Apache Spark, Apache Zeppelin, Apache Kafka, Redis, MySQL, Minio (S3), and Apache Airflow.
Apache Spark applications solve a wide range of data problems from traditional data loading and processing to rich SQL-based analysis as well as complex machine learning workloads and even near real-time processing of streaming data. Spark fits well as a central foundation for any data engineering workload. This book will teach you to write interactive Spark applications using Apache Zeppelin notebooks, write and compile reusable applications and modules, and fully t ...