Pro iOS Testing
Discover what tools there are for unit testing in iOS and how to work in a test-driven environment. This book reveals how testing is a crucial capability in any iOS developer's toolset, and a minimum requirement in iOS interviews.
A few years ago, tests on mobile platforms were not very popular. It wasn't a technical constraint, more a cultural one. But these days it's a crucial skill set, especially when projects become big and hard to maintain. This book shows you how to set up a testing target in XCode unit tests. You'll learn how to write unit tests properly and incorporate concepts like spies and mocks and code coverage. You'll also learn the philosophy behind the architecture of UI tests, and how to mock network and DB layers in testing. Write unbreakable UI tests performance tests, as well. And learn the difference between integration tests and snapshot testing.
This book will show you how to maintain code that's not only bug-free but will also remain hi ...
Apple macOS and iOS System Administration
Effectively manage Apple devices anywhere from a handful of Macs at one location to thousands of iPhones across many locations. This book is a comprehensive guide for supporting Mac and iOS devices in organizations of all sizes.
You'll learn how to control a fleet of macOS clients using tools like Profile Manager, Apple Device Enrollment Program (DEP), and Apple Remote Desktop. Then integrate your Mac clients into your existing Microsoft solutions for file sharing, print sharing, Exchange, and Active Directory authentication without having to deploy additional Mac-specific middle-ware or syncing between multiple directory services.
Apple macOS and iOS System Administration shows how to automate the software installation and upgrade process using the open source Munki platform and provides a scripted out-of-the box experience for large scale deployments of macOS endpoints in any organization. Finally, you'll see how to provision and manage thousands of iOS dev ...
Developing Inclusive Mobile Apps
By failing to consider those with needs different to ourselves, we are telling these people they are not welcome in our app, and therefore that technology as a whole, is not for them. This is not hyperbole - 23% of people in the US with a registered disability aren't online at all, that's three times more likely than the general population. When asked why they're not online, disabled respondents say their disability prevents them or that using the internet is too hard.
To help your apps combat the issue of digital exclusion, this book covers considerations and tools mobile developers, or anyone creating mobile experiences, can use to make mobile work better for those with disabilities - mental or physical - and how to create a better experience for everyone. Software is not made up of cold, unthinking algorithms. Software is a craft in the truest sense of the word, and one of the greatest tools you can have as a craftsperson is empathy for the people who will be using your app. Each ...
Native Mobile Development
Learn how to make mobile native app development easier. If your team frequently works with both iOS and Android - or plans to transition from one to the other - this hands-on guide shows you how to perform the most common development tasks in each platform. Want to learn how to make network connections in iOS? Or how to work with a database in Android? This book has you covered.
In the book's first part, authors Shaun Lewis and Mike Dunn from O'Reilly's mobile engineering group provide a list of common, platform-agnostic tasks. The second part helps you create a bare-bones app in each platform, using the techniques from part one.
Common file and database operations; Network communication with remote APIs; Application lifecycle; Custom views and components; Threading and asynchronous work; Unit and integration tests; Configuring, building, and running an app on a device. ...
Programming iOS 13
If you're grounded in the basics of Swift, Xcode, and the Cocoa framework, this book provides a structured explanation of all essential real-world iOS app components. Through deep exploration and copious code examples, you'll learn how to create views, manipulate view controllers, and add features from iOS frameworks.
Create, arrange, draw, layer, and animate views that respond to touch; Use view controllers to manage multiple screens of interface; Master interface classes for scroll views, table views, text, popovers, split views, web views, and controls; Dive into frameworks for sound, video, maps, and sensors; Access user libraries: music, photos, contacts, and calendar; Explore files, networking, and threads.
Stay up-to-date on iOS 13 innovations, such as: Symbol images; Light and dark mode; Sheet presentation; Diffable data sources and compositional layout; Context menus and previews; Window scene delegates and multiple windows on iPad.
Want to brush ...
Developing Accessible iOS Apps
Any developer aiming for a global audience needs to cover a series of requisites for their apps, and one of them is to make them accessible. Just having an app in the App Store is not enough for it to be a global success anymore. More than that, it is arguably our duty as developers to create inclusive apps that anyone can use.
Apple provides us with excellent tools for creating accessible apps. However, many developers just don't know about them or think they're difficult to us. This concise guide offers a focused look at breaking those myths and proving that creating accessible apps is very easy, and that it's just as easy to embed accessibility into the development process of your team.
You'll have a look at the tools iOS provides. Some, like zoom, button shapes, etc., come integrated in the operating system. Others, like VoiceOver, Larger Accessibility Sizes with Dynamic Types, and Smart Inverted Colours will need extra work to support appropriately. Then go from the b ...
Deploying SharePoint 2019
Update to a version of SharePoint that offers the best of both on-premise and the cloud using SharePoint 2019, the latest release of this cornerstone technology from Microsoft. Don your technical learning hat to get up close and confident on the new time-saving modern features of on-premise, and the many new security and hybrid settings.
Deploying SharePoint 2019 begins with a general introduction to SharePoint 2019, covering new features and expanding your knowledge and capability with the technology systematically. You will learn about the new world of SharePoint, and how it was “cloud-born” from Office 365. From there you will dive into learning how to design a physical architecture for SharePoint Server 2019 and get familiar with the key concepts of high availability (HA) and disaster recovery (DR) solutions.
Install, configure, and optimize SharePoint 2019; Understand SharePoint 2019 as a hybrid framework; Get comfortable with new tools, such as Flow, PowerApps, and Powe ...
Hello Swift! is a how-to guide to programming iOS Apps with the Swift language, written from a kid's perspective. This approachable, well-illustrated, step-by-step guide takes you from beginning programming concepts all the way through developing complete apps. (Adults will like it too!)
It's fun to play games and explore new things on your iPhone. How amazing would it be to create your own apps? With a little practice, you can! Apple's Swift language, along with special coding playgrounds and an easy-to-use programming environment, make it easier than ever. Take it from author Tanmay Bakshi, who started programming when he was just five years old.
His book, Hello Swift! iOS app programming for kids and other beginners, teaches you how to write apps for iPhones and iOS devices step by step, starting with your first line of Swift code. Packed with dozens of apps and special exercises, the book will teach you how to program by writing games, solving puzzles, an ...
React Native in Action
React Native in Action gives iOS Android, and web developers the knowledge and confidence they need to begin building high-quality iOS and Android apps using the React Native framework.
React Native in Action teaches you to build high-quality cross-platform mobile and web apps. In this hands-on guide, you'll jump right into building a complete app with the help of clear, easy-to-follow instructions. As you build your skills, you'll drill down to more-advanced topics like styling, APIs, animations, data architecture, and more! You'll also learn how to maximize code reuse without sacrificing native plat ...
Beginning Machine Learning in iOS
Implement machine learning models in your iOS applications. This short work begins by reviewing the primary principals of machine learning and then moves on to discussing more advanced topics, such as CoreML, the framework used to enable machine learning tasks in Apple products.
Many applications on iPhone use machine learning: Siri to serve voice-based requests, the Photos app for facial recognition, and Facebook to suggest which people that might be in a photo. You'll review how these types of machine learning tasks are implemented and performed so that you can use them in your own apps.
Beginning Machine Learning in iOS is your guide to putting machine learning to work in your iOS applications.
Understand the CoreML components; Train custom models; Implement GPU processing for better computation efficiency; Enable machine learning in your application. ...
100 Questions and Answers to Help You Land Your Dream iOS Job
Are you an iOS developer, looking forward to your next career move? Or are you interviewing for positions at your company or start-up? Either way, this book provides the right questions and answers to help you in the review process.
If you are an interviewer, this book can guide you on which questions are the most useful to ask to find the perfect candidate. Generic interview questions found online are repetitive and often unrelated to the day-to-day tasks of an iOS developer. If you are looking to hire a professional programmer you should consider more advanced questions about architecture, patterns or frameworks such as those included in this book.
All questions are answered clearly and comprehensively and each one is categorized and reviewed by some of the top iOS engineers worldwide. Some of the questions provide quick follow-ups, which might make the difference between a good enough answer and a stellar one. Questions are divided into three different le ...