{"title":"Apple operating systems Books","description":"","products":[{"product_id":"an-introduction-to-the-ipad-with-ios10-9780859347679","title":"An Introduction to the iPad with iOS10","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"Bernard Babani Publishing","offers":[{"title":"Default Title","offer_id":48737759461719,"sku":"9780859347679","price":7.99,"currency_code":"GBP","in_stock":false}]},{"product_id":"macos-sierra-in-easy-steps-covers-os-x-10-12-9781840787443","title":"macOS Sierra in easy steps: Covers OS X 10. 12","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003emacOS Sierra in easy steps\u003c\/strong\u003e covers the essentials of the operating system that runs the stylish Mac desktop and laptop computers. This primer will get you up and running with your Mac in no time:\u003c\/p\u003e\u003cli\u003eObtain macOS Sierra and navigate using Multi-Touch gestures on a mouse or trackpad.\u003c\/li\u003e\u003cli\u003eFind your way around your Mac using the Finder, personalize your Desktop, and use Siri to carry out tasks for you. \u003c\/li\u003e\u003cli\u003eEnjoy the digital lifestyle  use your Mac computer for photos, music, video, books and games; find places with Maps; surf the web, use email, messaging and video calling to stay in touch; and get productive and organized. \u003c\/li\u003e\u003cli\u003eShare photos, documents, apps and more, seamlessly between your Mac and other devices using iCloud Drive and Family Sharing  now you can work anytime, anywhere. \u003c\/li\u003e\u003cp\u003eGets straight to the point  ideal for Mac newbies as well as for those upgrading to macOS Sierra! \u003c\/p\u003e\u003cp\u003e\u003ci\u003eCovers macOS Sierra (OS X 10.12), released September 2016.\u003c\/i\u003e\u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48742041518423,"sku":"9781840787443","price":9.89,"currency_code":"GBP","in_stock":false}]},{"product_id":"macos-support-essentials-12-apple-pro-training-series-9780137696444","title":"macOS Support Essentials 12  Apple Pro Training","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eInstallation and Configuration\u003c\/p\u003e \u003cp\u003eLesson 1 Introduction to macOS\u003c\/p\u003e \u003cp\u003eLesson 2 Update, Upgrade, or Reinstall macOS\u003c\/p\u003e \u003cp\u003eLesson 3 Set Up and Configure macOS\u003c\/p\u003e \u003cp\u003eLesson 4 Use the Command-Line Interface\u003c\/p\u003e \u003cp\u003eLesson 5 Use macOS Recovery\u003c\/p\u003e \u003cp\u003eLesson 6 Update macOS\u003c\/p\u003e \u003cp\u003eUser Accounts\u003c\/p\u003e \u003cp\u003eLesson 7 Manage User Accounts\u003c\/p\u003e \u003cp\u003eLesson 8 Manage User Home Folders\u003c\/p\u003e \u003cp\u003eLesson 9 Manage Security and Privacy\u003c\/p\u003e \u003cp\u003eLesson 10 Manage Password Changes\u003c\/p\u003e \u003cp\u003eFile Systems\u003c\/p\u003e \u003cp\u003eLesson 11 Manage File Systems and Storage\u003c\/p\u003e \u003cp\u003eLesson 12 Manage FileVault\u003c\/p\u003e \u003cp\u003eLesson 13 Manage Permissions and Sharing\u003c\/p\u003e \u003cp\u003eLesson 14 Use Hidden Items, Shortcuts, and File Archives\u003c\/p\u003e \u003cp\u003eData Management\u003c\/p\u003e \u003cp\u003eLesson 15 Manage System Resources\u003c\/p\u003e \u003cp\u003eLesson 16 Use Metadata, Siri, and Spotlight\u003c\/p\u003e \u003cp\u003eLesson 17 Manage Time Machine\u003c\/p\u003e \u003cp\u003eApps and Processes\u003c\/p\u003e \u003cp\u003eLesson 18 Install Apps\u003c\/p\u003e \u003cp\u003eLesson 19 Manage Files\u003c\/p\u003e \u003cp\u003eLesson 20 Manage and Troubleshoot Apps\u003c\/p\u003e \u003cp\u003eNetwork Configuration\u003c\/p\u003e \u003cp\u003eLesson 21 Manage Basic Network Settings\u003c\/p\u003e \u003cp\u003eLesson 22 Manage Advanced Network Settings\u003c\/p\u003e \u003cp\u003eLesson 23 Troubleshoot Network Issues\u003c\/p\u003e \u003cp\u003eNetwork Services\u003c\/p\u003e \u003cp\u003eLesson 24 Manage Network Services\u003c\/p\u003e \u003cp\u003eLesson 25 Manage Host Sharing and Personal Firewall\u003c\/p\u003e \u003cp\u003eSystem Management\u003c\/p\u003e \u003cp\u003eLesson 26 Troubleshoot Peripherals\u003c\/p\u003e \u003cp\u003eLesson 27 Manage Printers and Scanners\u003c\/p\u003e \u003cp\u003eLesson 28 Troubleshoot Startup and System Issues\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48864175980887,"sku":"9780137696444","price":999.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780137696444.jpg?v=1722270748"},{"product_id":"swift-development-with-cocoa-9781491908945","title":"Swift Development with Cocoa","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eIf you're an experienced programmer who's never touched Apple developer tools, this hands-on book shows you how to use the Swift language to make incredible iOS and OS X apps, using Cocoa and Cocoa Touch.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":48867304374615,"sku":"9781491908945","price":25.59,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781491908945.jpg?v=1722282695"},{"product_id":"managing-apple-devices-9780134301853","title":"Managing Apple Devices","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48883795788119,"sku":"9780134301853","price":38.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780134301853.jpg?v=1722529081"},{"product_id":"os-x-server-5-0-essentials-apple-pro-training-series-9780134434773","title":"OS X Server 5.0 Essentials  Apple Pro Training","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eArek Dreyer\u003c\/strong\u003e (Chicago, IL) has been an Apple Certified Trainer since 2002. President of Dreyer Network Consultants Inc. in Chicago, Arek delivers courses and provides training around the world, both in the classroom and at events like the MacIT Conference and European Macintosh System Administrators Meetings. Arek provides consulting, troubleshooting, and integration services for customers that use iOS devices and Macs in complicated environments. \u003cbr\u003e\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eBen Greisler \u003c\/strong\u003e(Exton, PA) is the owner and technical lead of Kadimac Corp., a firm specializing in the integration of iOS and OS X into enterprise IT settings. Ben is an Apple Certified Trainer, author, consultant, and lecturer who has served on the Advisory Councils of the Apple Consultants Network and MacIT Conference. Together Arek and Ben have collaborated to write several titles in the Apple Pro Training Series including \u003cem\u003eOS X Server Essentials 10.9.\u003c\/em\u003e\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48883795886423,"sku":"9780134434773","price":39.76,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780134434773.jpg?v=1722529081"},{"product_id":"macos-support-essentials-11-apple-pro-training-series-9780137345953","title":"macOS Support Essentials 11  Apple Pro Training","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eArek Dreyer\u003c\/strong\u003e, an Apple Certified Trainer since 2002, delivers consulting, training, and integration services for customers around the world who use Apple devices in complicated environments.\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eAdam Karneboge\u003c\/strong\u003e has been an Apple Certified Trainer since 2003. Adam conducts technical training courses, and delivers consulting, deployment, and integration services to business, enterprise, and education clients. Arek and Adam have written and contributed to numerous Peachpit publications and Apple courses covering topics about macOS and iOS\/iPad OS.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e About This Guide \u003cstrong\u003eInstallation and Configuration\u003c\/strong\u003e Lesson 1 Introduction to macOS Lesson 2 Update, Upgrade, or Reinstall macOS Lesson 3 Set Up and Configure macOS Lesson 4 Use the Command-Line Interface Lesson 5 Use macOS Recovery Lesson 6 Update macOS \u003cstrong\u003eUser Accounts\u003c\/strong\u003e Lesson 7 Manage User Accounts Lesson 8 Manage User Home Folders Lesson 9 Manage Security and Privacy Lesson 10 Manage Password Changes \u003cstrong\u003eFile Systems\u003c\/strong\u003e Lesson 11 Manage File Systems and Storage Lesson 12 Manage FileVault Lesson 13 Manage Permissions and Sharing Lesson 14 Use Hidden Items, Shortcuts, and File Archives \u003cstrong\u003eData Management\u003c\/strong\u003e Lesson 15 Manage System Resources Lesson 16 Use Metadata, Siri, and Spotlight Lesson 17 Manage Time Machine \u003cstrong\u003eApps and Processes\u003c\/strong\u003e Lesson 18 Install Apps Lesson 19 Manage Files Lesson 20 Manage and Troubleshoot Apps \u003cstrong\u003eNetwork Configuration\u003c\/strong\u003e Lesson 21 Manage Basic Network Settings Lesson 22 Manage Advanced Network Settings Lesson 23 Troubleshoot Network Issues \u003cstrong\u003eNetwork Services\u003c\/strong\u003e Lesson 24 Manage Network Services Lesson 25 Manage Host Sharing and Personal Firewall \u003cstrong\u003eSystem Management\u003c\/strong\u003e Lesson 26 Troubleshoot Peripherals Lesson 27 Manage Printers and Scanners Lesson 28 Troubleshoot Startup and System Issues Index\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48883799392599,"sku":"9780137345953","price":38.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780137345953.jpg?v=1722529096"},{"product_id":"net-developers-guide-to-augmented-reality-in-ios-9781484267691","title":".NET Developers Guide to Augmented Reality in iOS","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eBeginning-Intermediate user level\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 1 - Setting Up Your Environment\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 2 - Basic Concepts\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 3 - Nodes, Geometries, Materials, and Anchors\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 4 - Built in AR Guides \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 5 - Animations \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 6 - Constraints \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 7 - Lighting \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 8 - Video and Sound\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 9 - Plane Detection \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 10 - Image Detection \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 11 - Face Tracking and Expression Detection \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 12 - Touch Gestures and Interaction \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 13 - 3D Models \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 14 - Physics \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 15 - Object Detection\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 16 - Body Tracking\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 17 - Publishing to the App Store \u003c\/b\u003e\u003c\/p\u003e\u003cbr\u003e  \u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":48885825995095,"sku":"9781484267691","price":41.24,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484267691.jpg?v=1791472329"},{"product_id":"statistical-analysis-with-swift-9781484277645","title":"Statistical Analysis with Swift","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cdiv\u003e\n\u003cdiv\u003eWork with large data sets, create statistical models, and make predictions with statistical methods using the Swift programming language. The variety of problems that can be solved using statistical methods range in fields from financial management to machine learning to quality control and much more.  Those who possess knowledge of statistical analysis become highly sought after candidates for companies worldwide.    \u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003eStarting with an introduction to statistics and probability theory, you will learn core concepts to analyze your data''s distribution. You''ll get an introduction to random variables, how to work with them, and how to leverage their properties in computations. On top of the mathematics, you''ll learn several essential features of the Swift language that significantly reduce friction when working with large data sets. These functionalities will prove especially useful when working with multivariate data, which applies\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eChapter 1: Swift Primer\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e•           Introduction to Swift and its pros when working with large data sets\u003c\/p\u003e•           Provided data sets and how to load them using the Decodable protocol\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•           Higher-Order Functions (map, filter, reduce, apply)\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 2: Introduction to Probability and Random Variables\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e•           What is a random variable?\u003c\/p\u003e\n\u003cp\u003e•           Sample spaces\u003c\/p\u003e\n\u003cp\u003e•           Laws and axioms of probability\u003c\/p\u003e\n\u003cp\u003e•           Variable Independence\u003c\/p\u003e\n\u003cp\u003e•           Conditional probability\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter \u003c\/b\u003e\u003cb\u003e3\u003c\/b\u003e\u003cb\u003e: Distributions and Random Numbers\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e•           Mass and density functions\u003c\/p\u003e\n\u003cp\u003e•           Discrete distributions\u003c\/p\u003e\n\u003cp\u003e•           Discrete uniform distribution\u003c\/p\u003e\n\u003cp\u003e•           Bernoulli trials\u003c\/p\u003e•           Binomial distribution\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•           Poisson distribution\u003c\/p\u003e\n\u003cp\u003e•           Continuous distributions\u003c\/p\u003e\n\u003cp\u003e•           Continuous uniform distribution\u003c\/p\u003e\n\u003cp\u003e•           Exponential distribution\u003c\/p\u003e\n\u003cp\u003e•           Normal distribution\u003c\/p\u003e\n\u003cp\u003e•           Implement a random number generator that samples from a given distribution\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter \u003c\/b\u003e\u003cb\u003e4\u003c\/b\u003e\u003cb\u003e:\u003c\/b\u003e\u003cb\u003e Predicting House Sale Prices with Linear Regression\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e•           Central tendency measures\u003c\/p\u003e•           Variance measures\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•           Association measures\u003c\/p\u003e\n\u003cp\u003e•           Stratification of data\u003c\/p\u003e\n\u003cp\u003e•           Linear regression\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter \u003c\/b\u003e\u003cb\u003e5\u003c\/b\u003e\u003cb\u003e: \u003c\/b\u003e\u003cb\u003eHypothesis Testing\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e•           T Testing\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•           Null and Alternative Hypotheses\u003c\/p\u003e\n\u003cp\u003e•           P-value\u003c\/p\u003e•           Determining sample sizes\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter \u003c\/b\u003e\u003cb\u003e6\u003c\/b\u003e\u003cb\u003e: \u003c\/b\u003e\u003cb\u003eData\u003c\/b\u003e\u003cb\u003e Compression\u003c\/b\u003e\u003cb\u003e Using Statistical Methods\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e•           Measurement scales\u003c\/p\u003e\n\u003cp\u003e•           Calculate the distribution of example data\u003c\/p\u003e\n\u003cp\u003e•           Compute a Huffman Tree\u003c\/p\u003e\n\u003cp\u003e•           Encode the original data in a smaller package\u003c\/p\u003e•           Decode the compressed data\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter \u003c\/b\u003e\u003cb\u003e7\u003c\/b\u003e\u003cb\u003e: \u003c\/b\u003e\u003cb\u003eMovie Recommendations Using Clustering\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e•           Data transformation\u003c\/p\u003e•           Similarity measurements\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•           Simple movie recommendation system\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 8\u003c\/b\u003e\u003cb\u003e: \u003c\/b\u003e\u003cb\u003eBringing It All Together\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•           Applying to new, real-world projects\u003c\/p\u003e\n\u003cp\u003e•           Building your data intuition\u003cbr\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":48885827371351,"sku":"9781484277645","price":37.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484277645.jpg?v=1722537839"},{"product_id":"asynchronous-programming-with-swiftui-and-combine-9781484285718","title":"Asynchronous Programming with SwiftUI and Combine","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eDevelop UI-heavy applications more easily, faster, and error-free. Based on several enhancements to the Swift language, SwiftUI takes a declarative approach to building UIs. Instead of imperatively coding the UI, this book will show you how to describe how you want your UI to look. \u003c\/p\u003eSwiftUI treats the UI as a function of its state, thereby making managing your app''s state a lot easier. Change the underlying data model to redraw all parts of the UI that are connected to that particular slice of data. Likewise, easily update the underlying data model from the UI elements your data model is connected to. Combine is Apple''s Functional Reactive Programming framework. It complements SwiftUI and other frameworks, such as the networking APIs, in a natural way. Using Combine, you can subscribe to events and describe data processing in a way that is free of side effects. This allows for an easier implementation of event-driven applications.\u003cp\u003e\u003c\/p\u003e\u003cp\u003eUsing SwiftUI and Combine build more e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 1: SwiftUI - A new Beginning \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eWhy a New UI framework? \u003c\/li\u003e\n\u003cli\u003eSwiftUI Principles \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eDeclarative vs Imperative \u003c\/li\u003e\n\u003cli\u003eState Management \u003c\/li\u003e\n\u003cli\u003eComposition over Inheritance \u003c\/li\u003e\n\u003cli\u003eEverything is a View \u003c\/li\u003e\n\u003cli\u003eUIs are a function of their state \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003cli\u003eA quick tour of SwiftUI \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eCreating a new app \u003c\/li\u003e\n\u003cli\u003eAnatomy of a SwiftUI app \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\u003cul\u003e\n\u003cli\u003eTwo-way tooling\u003c\/li\u003e\n\u003cli\u003eAdding your first button \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003ePrint “hello” to the console \u003c\/li\u003e\n\u003cli\u003eExplain live mode (need to turn on debug mode so you can \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003esee console output while in preview) \u003c\/p\u003e\u003cul\u003e\u003cli\u003eA brief overview of statement management \u003c\/li\u003e\u003c\/ul\u003e\u003cli\u003eUse code editor and preview pane to update the “hello \u003c\/li\u003e\u003cp\u003eworld” app to allow the user to give their name \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eTextField, Label, (Button) \u003c\/li\u003e\n\u003cli\u003e@State to bind the TextField input \u003c\/li\u003e\n\u003cli\u003eBind Label, so it gets updated automatically \u003c\/li\u003e\n\u003cli\u003eRun the app in live preview \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eChapter 2: Getting Started with SwiftUI\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e○ Building Blocks \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eViews \u003c\/li\u003e\n\u003cli\u003eView Modifiers \u003c\/li\u003e\n\u003cli\u003eProperty Wrappers \u003c\/li\u003e\n\u003cli\u003eSimple UI Controls \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003e■ Lists \u003c\/p\u003e\u003cp\u003e■ Navigation\u003cbr\u003e○ Composing UIs from simple UI elements \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eBuilding a list row\u003c\/li\u003e\n\u003cli\u003eMaking it reusable\u003c\/li\u003e\n\u003cli\u003eextracting parts into separate structs \/ views \u003c\/li\u003e\n\u003cli\u003eusing ViewBuilders (properties \/ functions) \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eChapter 3: SwiftUI Foundation \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eOpaque return types \u003c\/li\u003e\n\u003cli\u003eImplicit returns from single-expression functions \u003c\/li\u003e\n\u003cli\u003eFunction Builders \u003c\/li\u003e\n\u003cli\u003eView Builders \u003c\/li\u003e\n\u003cli\u003eMultiple Trailing Closures \u003c\/li\u003e\n\u003cli\u003eDomain Specific languages \u003c\/li\u003e\n\u003cli\u003eProperty Wrappers\u003c\/li\u003e\n\u003cli\u003eThe View Life Cycle  \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eChapter 4: State Management\u003c\/p\u003e\u003cul\u003e\u003cli\u003eManaging State with Property Wrappers ■ @State \u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003e■ @ObservableObject ■ @ObservedObject\u003cbr\u003e■ @StateObject\u003cbr\u003e■ @EnvironmentObject \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eSwiftUI Patterns and State Management\u003cbr\u003e\u003cbr\u003e\n\u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003ePattern: Drill-Down Navigation \u003c\/li\u003e\n\u003cli\u003ePattern: Input form \u003c\/li\u003e\n\u003cli\u003ePattern: Lookup field \u003c\/li\u003e\n\u003cli\u003ePattern: Local state in a single dialog \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003cli\u003eView Lifecycle \u003c\/li\u003e\n\u003cli\u003eSee Michael Long’s article \u003c\/li\u003e\n\u003cli\u003eMaybe even build some sort of introspector? \u003c\/li\u003e\n\u003cli\u003eBuild my own debugging utilities \u003c\/li\u003e\n\u003c\/ul\u003eChapter 5: Building Input Forms \u003cp\u003e\u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eBuilding simple forms\u003cbr\u003eBuild a simple form with a couple of simple input fields. \u003c\/li\u003e\n\u003cli\u003eBuilding advanced forms \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003e■ Look-up fields \u003c\/p\u003e\u003cp\u003e■ Drill-down \u003c\/p\u003e\u003cp\u003e■ In-place editing (e.g. date picker) ■ Sections \u003c\/p\u003e\u003cp\u003e■ Forms and Data Binding \/ State Management \u003c\/p\u003e\u003cp\u003e■ Building a sign-up form \u003c\/p\u003e\u003cp\u003e■ Username \u003c\/p\u003e\u003cp\u003e■ Password \/ Repetition ■ Validation \u003c\/p\u003e\u003cp\u003e■ Come up with a non-Combine version for the following rules: \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eDo the passwords match? \u003c\/li\u003e\n\u003cli\u003ePassword strong enough? \u003c\/li\u003e\n\u003cli\u003eUsername long enough? \u003c\/li\u003e\n\u003cli\u003eUsername still available? \u003c\/li\u003e\n\u003c\/ul\u003e\u003cul\u003e\u003cli\u003eHow to handle state? \u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003eChapter 6: Functional Reactive Programming and Combine \u003c\/p\u003e\u003cul\u003e\u003cli\u003e\u003cul\u003e\n\u003cli\u003eIntroduction to Functional Reactive Programming \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eWhat is it? \u003c\/li\u003e\n\u003cli\u003eWhy is it so cool \/ hot? \u003c\/li\u003e\n\u003cli\u003eHow can it help to make your apps better and more error-free \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003cli\u003eCore Combine Concepts ■ Publishers \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003e■ Subscribers\u003c\/p\u003e\u003cp\u003e■ Operators\u003c\/p\u003e\u003cul\u003e\u003cli\u003e\u003cul\u003e\n\u003cli\u003eCombine Visualised \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eMarble Diagrams \u003c\/li\u003e\n\u003cli\u003eShow some Combine operators as Marble Diagrams \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003eChapter 7: Combine and SwiftUI \u003c\/p\u003e\u003cp\u003e○ Driving UI state\u003cbr\u003e○  Input validation using Combine\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\u003cul\u003e\u003cli\u003e\u003cul\u003e\n\u003cli\u003everify that the passwords match \u003c\/li\u003e\n\u003cli\u003everify username length \u003c\/li\u003e\n\u003cli\u003everify username is still available \u003c\/li\u003e\n\u003cli\u003everify password meets password complexity rules \u003c\/li\u003e\n\u003cli\u003eshow error messages for the individual error conditions \u003c\/li\u003e\n\u003cli\u003ecombine all the above into a single state that drives the enabled \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003estate of the sign-up button \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eOptimise our code \u003c\/li\u003e\n\u003cli\u003euse debounce to throttle the number of calls on our fake backend \u003c\/li\u003e\n\u003cli\u003eensure UI updates happen on the main thread (use receiveOn) \u003c\/li\u003e\n\u003c\/ul\u003e\u003cli\u003eClosure \u003c\/li\u003e\u003cul\u003e\n\u003cli\u003eCombine makes our code more maintainable. \u003c\/li\u003e\n\u003cli\u003eIt helps to decouple business logic from our UI \u003c\/li\u003e\n\u003cli\u003eThis also makes our code more testable \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eChapter 8: Testing Combine Code \u003c\/p\u003e\u003cul\u003e\u003cli\u003e\u003cul\u003e\n\u003cli\u003eWriting tests for asynchronous code \u003c\/li\u003e\n\u003cli\u003eMocking parts of your implementation \u003c\/li\u003e\n\u003cli\u003eSome useful helpers \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003eChapter 9: Advanced SwiftUI UIs \u003c\/p\u003e\u003cp\u003e○ LazyVGrid \/ LazyHGrid \u003c\/p\u003e\u003cp\u003e○ Outlines\u003c\/p\u003eChapter 10: Advanced SwiftUI - Building Reusable UI Components \u003cp\u003e\u003c\/p\u003e\u003cul\u003e\u003cli\u003e\u003cul\u003e\n\u003cli\u003eKeep it lean and mean\u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eExtracting functionality into sub-views \u003c\/li\u003e\n\u003cli\u003eUsing ViewBuilders to organise view code within a screen \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003cli\u003eCreating Container Components \u003c\/li\u003e\n\u003cli\u003eMaking your views customisable \u003c\/li\u003e\n\u003cli\u003ePackaging your components using Swift Package Manager \u003c\/li\u003e\n\u003cli\u003eIntegrating views and view modifiers with the Xcode library \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003eChapter 11: Building a Complete App with SwiftUI and Combine \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eFeatures of the app \u003c\/li\u003e\n\u003cli\u003eData Model \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eOpenLibrary API\u003c\/li\u003e\n\u003cli\u003eFirebase\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eChapter 12: Displaying a list of books \u003c\/p\u003e\u003cul\u003e\u003cli\u003e\u003cul\u003e\n\u003cli\u003eBuilding a list cell from simple UI views  \u003c\/li\u003e\n\u003cli\u003eCompose a list view \u003c\/li\u003e\n\u003cli\u003eMake your code reusable \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\u003c\/ul\u003e\u003cp\u003eChapter 13: Implementing a search screen\u003c\/p\u003e\u003cp\u003e○ Implementing a re-usable search bar \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eDesigning the UI \u003c\/li\u003e\n\u003cli\u003eData Binding and State Management \u003c\/li\u003e\n\u003cli\u003eMaking the view re-usable \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003e○ Connecting to the OpenLibrary API \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eSearching book titles \u003c\/li\u003e\n\u003cli\u003eUsing Combine to improve working with the API \u003c\/li\u003e\n\u003cli\u003eDebounce \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eMapping JSON Data \u003c\/li\u003e\n\u003cli\u003eError handling \u003c\/li\u003e\n\u003cli\u003eAutomatic retries \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eChapter 14: Drill-Down Navigation and State Management \u003c\/p\u003e\u003cp\u003e○ Implementing a book details \/ edit screen \u003c\/p\u003e\u003cp\u003e○ Drill-down navigation pattern \u003c\/p\u003e\u003cp\u003eChapter 15: Persisting Data in Firestore \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eWhat is Firebase? \u003c\/li\u003e\n\u003cli\u003eWhat is Firestore? \u003c\/li\u003e\n\u003cli\u003eNoSQL \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003e■ Real-time Sync \u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eMapping our data model to Firestore \u003c\/li\u003e\n\u003cli\u003eReading and writing data from \/ to Firestore \u003c\/li\u003e\n\u003cli\u003eImplementing Combine Publishers for Firestore \u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eChapter 16: App Store Hero Animation\u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eMagic Move\u003cbr\u003e\u003cbr\u003e\n\u003c\/li\u003e\n\u003cli\u003eSwiftUI Magic Move Animations \u003c\/li\u003e\n\u003cli\u003e\u003cul\u003e\n\u003cli\u003eExplain how they work \u003c\/li\u003e\n\u003cli\u003eTransition the current list view to make use of animations \u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/li\u003e\n\u003cli\u003eDistribute your code \u003c\/li\u003e\n\u003c\/ul\u003eAppendix A: An Overview of all SwiftUI Views","brand":"APress","offers":[{"title":"Default Title","offer_id":48885827961175,"sku":"9781484285718","price":41.24,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484285718.jpg?v=1722537842"},{"product_id":"modern-concurrency-on-apple-platforms-9781484286944","title":"Modern Concurrency on Apple Platforms","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eBuild solid software with modern and safe concurrency features. Concurrency is one of the hardest problems in computer science. For years, computer scientists and engineers have developed different strategies for dealing with concurrency. However, the original concurrency primitives are complicated and difficult to understand, and even harder to implement.\u003c\/p\u003eUsing the new async\/await APIs in Swift, this book will explain how your code can abstract a lot of the complexity with a simpler interface so you never have to deal with concurrency primitives such as semaphores, locks, and threads yourself. This will allow you to write concurrent code that is easier to read, easier to write, and easier to maintain.  These new APIs are deeply ingrained into Swift, offering compile-level features that will keep you from writing dangerous concurrent code.\u003cp\u003e\u003c\/p\u003e\u003cp\u003eYou''ll start by exploring why concurrency is hard to implement in a traditional system. Explaining the definition of concu\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eChapter 1: Introduction to Concurrency\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e•             What is concurrency?\u003c\/p\u003e\u003cp\u003e•             Why is concurrency hard to implement?\u003c\/p\u003e\u003cp\u003e•             Existing methods to implement concurrency in Apple Platforms (before async\/await).\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 2: Async\/Await Basics\u003c\/p\u003e\u003cp\u003e•             The keywords and components that play a role in the new concurrency system\u003c\/p\u003e\u003cp\u003e•             Explaining the `async` keyword\u003c\/p\u003e•             Explaining the `await` keyword\u003cp\u003e\u003c\/p\u003e\u003cp\u003e•             Understanding tasks\u003c\/p\u003e\u003cp\u003e•             Understanding the meaning of Continuations.\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 3: Introducing Structured Concurrency\u003c\/p\u003e•             Understanding structured concurrency\u003cp\u003e\u003c\/p\u003e\u003cp\u003e•             Using the `async let` construct to create concurrency.\u003c\/p\u003e\u003cp\u003e•             Migrating older delegate and callback-based code into async\/await.\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 4: The Task Tree\u003c\/p\u003e•             The Task Tree structure\u003cp\u003e\u003c\/p\u003e\u003cp\u003e•             Understanding Task cancellation\u003c\/p\u003e\u003cp\u003e•             What is cooperative task cancellation?\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 5: Task Groups\u003c\/p\u003e•             Understanding and implementing task groups.\u003cp\u003e\u003c\/p\u003e\u003cp\u003e•             Implementing concurrency with `withThrowingTaskGroup`\u003c\/p\u003e\u003cp\u003e•             Understanding `withTaskGroup`.\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 6: Unstructured Concurrency\u003c\/p\u003e•             Launching concurrent tasks from non-concurrent contexts.\u003cp\u003e\u003c\/p\u003e\u003cp\u003e•             Understanding detached tasks and how to use them.\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 7: Actors and Global Actors\u003c\/p\u003e\u003cp\u003e•             Understanding actors as reference types.\u003c\/p\u003e•             The purpose of state isolation.\u003cp\u003e\u003c\/p\u003e\u003cp\u003e•             Understanding the purpose of global actors.\u003c\/p\u003e\u003cp\u003eChapter 8: Final Bits\u003c\/p\u003e\u003cp\u003e•             Understanding the @TaskLocal property wrapper\u003c\/p\u003e\u003cp\u003e•             Using the `AsyncSequence` protocol in Swift.\u003c\/p\u003e\u003cp\u003e•             Using AsyncStream to receive events in an awaited loop.\u003c\/p\u003e\u003cp\u003e•             Sendable types\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eAudience: Advanced\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":48885828419927,"sku":"9781484286944","price":41.24,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484286944.jpg?v=1722537843"},{"product_id":"hardening-your-macs-9781484289389","title":"Hardening Your Macs","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eLearn the skills and solutions required to secure your Mac's operating system, the underlying hardware, and allow users to get work done safely. This book will show you how to create a Mac that's made of steel and won't buckle when attacked!Ok, there's no such thing as unhackable. No magic tool or silver bullet will eliminate risk in all forms. Security is an ongoing journey  not a simple action or software application. And that is exactly what you'll learn to masterthe foundational knowledge, skills, and mindset to holistically protect Macs. Regardless of whether it's your personal iMac or a fleet of MacBook Pro's assigned to the remote employees within your organization, you'll be able to limit access while identifying and mitigating risk unique to your environment.   In addition to the information security best practices pertaining to protecting Apple computers, you'll pivot to a coherent, security-focused mindset to better understand macOS-specificsecurity. You'll learn how it work\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eChapter 1: Security 101\u003c\/p\u003e\u003cp\u003e·      Introduction\u003c\/p\u003e\u003cp\u003e·      What is it?\u003c\/p\u003e\u003cp\u003e·      Why is it important?\u003c\/p\u003e\u003cp\u003e·      When is it necessary?\u003c\/p\u003e\u003cp\u003e·      Who is responsible for it?\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 2: Risky Business\u003c\/p\u003e\u003cp\u003e·      Risk\u003c\/p\u003e\u003cp\u003e·      Assessments\u003c\/p\u003e\u003cp\u003e·      Matrix\u003c\/p\u003e\u003cp\u003e·      Tolerance\/Appetite\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 3: (Return of) the Mac\u003c\/p\u003e\u003cp\u003e·      macOS\u003c\/p\u003e\u003cp\u003e·      Hardware\u003c\/p\u003e·      Software\u003cp\u003e\u003c\/p\u003e\u003cp\u003e·      Distribution\u003c\/p\u003e·      Frameworks (Security, Privacy, etc.)\u003cp\u003e\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 4: A World of Hurt\u003c\/p\u003e\u003cp\u003e·      Threat types\u003c\/p\u003e\u003cp\u003e·      Attack types\u003c\/p\u003e\u003cp\u003e·      Internal attacks\u003c\/p\u003e\u003cp\u003e·      External attacks\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 6: The Mind of an Attacker\u003c\/p\u003e\u003cp\u003e·      Think like them\u003c\/p\u003e\u003cp\u003e·      Act like them\u003c\/p\u003e\u003cp\u003e·      Understand them\u003c\/p\u003e\u003cp\u003e·      Protect against them\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 7: Hardware Solutions\u003c\/p\u003e\u003cp\u003e·      Startup\u003c\/p\u003e\u003cp\u003e·      Full-Disk Encryption\u003c\/p\u003e\u003cp\u003e·      Cable Lock\u003c\/p\u003e\u003cp\u003e·      Sensor Covers\u003c\/p\u003e\u003cp\u003e·      Accessories\u003c\/p\u003e\u003cp\u003e·      Licensed Cables\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 8: Software Solutions\u003c\/p\u003e\u003cp\u003e·      Passwords\u003c\/p\u003e\u003cp\u003e·      Login\u003c\/p\u003e\u003cp\u003e·      User Account Types\u003c\/p\u003e\u003cp\u003e·      Multifactor Authentication\u003c\/p\u003e\u003cp\u003e·      FileVault\u003c\/p\u003e\u003cp\u003e·      System Preferences\u003c\/p\u003e\u003cp\u003e·      Screensaver\u003c\/p\u003e\u003cp\u003e·      Lock-screen\u003c\/p\u003e\u003cp\u003e·      Malware Protection\u003c\/p\u003e\u003cp\u003e·      Firewall\u003c\/p\u003e\u003cp\u003e·      VPN\/ZTNA\u003c\/p\u003e·      iCloud\u003cp\u003e\u003c\/p\u003e\u003cp\u003e·      App Stores\u003c\/p\u003e·      Secure Memory\u003cp\u003e\u003c\/p\u003e\u003cp\u003e·      Transparency, Consent, and Control (TCC)\u003c\/p\u003e·      Touch ID\u003cp\u003e\u003c\/p\u003e\u003cp\u003e·      Apple Software Update\u003c\/p\u003e·      3\u003csup\u003erd\u003c\/sup\u003e-party Patches\u003cp\u003e\u003c\/p\u003e\u003cp\u003e·      File Permissions\u003c\/p\u003e·      Sharing Permissions\u003cp\u003e\u003c\/p\u003e\u003cp\u003e·      Extensions\u003c\/p\u003e·      Backups\u003cp\u003e\u003c\/p\u003e\u003cp\u003e·      Remote Wipe\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 9: Work Smarter, \u003ci\u003eNot\u003c\/i\u003e Harder\u003c\/p\u003e\u003cp\u003e·      Remote Controlling your fleet\u003c\/p\u003e\u003cp\u003e·      Mobile Device Management\u003c\/p\u003e\u003cp\u003e·      Device Configuration\u003c\/p\u003e\u003cp\u003e·      App Deployment\u003c\/p\u003e\u003cp\u003e·      Securing Devices\u003c\/p\u003e\u003cp\u003e·      Automating Workflows\u003c\/p\u003e\u003cp\u003e·      Zero Touch\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 10: Make a Plan and Stick to It\u003c\/p\u003e\u003cp\u003e·      Standardize your environment\u003c\/p\u003e\u003cp\u003e·      Develop workflows to address common issues\u003c\/p\u003e\u003cp\u003e·      Automate whenever possible\u003c\/p\u003e\u003cp\u003e·      Stay on top of the latest security threats\u003c\/p\u003e\u003cp\u003e·      Train users (or your friends) to recognize threats\u003c\/p\u003e\u003cp\u003e·      Align with enterprise security frameworks\u003c\/p\u003e\u003cp\u003e·      Comply with regulatory requirements\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eAudience: Advanced\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":48885830156631,"sku":"9781484289389","price":41.24,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484289389.jpg?v=1722537849"},{"product_id":"ios-architecture-patterns-9781484290682","title":"iOS Architecture Patterns","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e1.           Introduction \u003c\/p\u003e\u003cp\u003e1.1. What are architecture patterns? \u003c\/p\u003e\u003cp\u003e1.2. Why we need an architecture pattern for our apps? \u003c\/p\u003e\u003cp\u003e1.3. The search for a ‘Clean Architecture’. \u003c\/p\u003e\u003cp\u003e1.4. How to choose the right architecture.\u003c\/p\u003e\u003cp\u003e1.5. Most used architecture patterns. \u003c\/p\u003e\u003cp\u003e2.           MVC: Model-View-Controller \u003c\/p\u003e\u003cp\u003e2.1. What is MVC. \u003c\/p\u003e\u003cp\u003e2.2. Components in MVC. \u003c\/p\u003e\u003cp\u003e2.3. How it works. \u003c\/p\u003e\u003cp\u003e2.4. When to use MVC. \u003c\/p\u003e\u003cp\u003e2.5. Applying MVC. \u003c\/p\u003e\u003cp\u003e2.6. Testing. \u003c\/p\u003e\u003cp\u003e2.7. Advantages and disadvantages of MVC. \u003c\/p\u003e\u003cp\u003e3.           MVP: Model-View-Presenter \u003c\/p\u003e\u003cp\u003e3.1. What is MVP. \u003c\/p\u003e\u003cp\u003e3.2. Components in MVP. \u003c\/p\u003e\u003cp\u003e3.3. How it works. \u003c\/p\u003e\u003cp\u003e3.4. When to use MVP. \u003c\/p\u003e\u003cp\u003e3.5. Applying MVP. \u003c\/p\u003e\u003cp\u003e3.6. Testing. \u003c\/p\u003e\u003cp\u003e3.7. Advantages and disadvantages of MVP. \u003c\/p\u003e\u003cp\u003e4.           MVVM: Model-View-ViewModel\u003c\/p\u003e\u003cp\u003e4.1. What is MVVM. \u003c\/p\u003e\u003cp\u003e4.2. Components in MVVM. \u003c\/p\u003e\u003cp\u003e4.3. How it works: Data binding. \u003c\/p\u003e\u003cp\u003e4.4. When to use MVVM. \u003c\/p\u003e\u003cp\u003e4.5. Applying MVVM. \u003c\/p\u003e\u003cp\u003e4.6. Testing. \u003c\/p\u003e\u003cp\u003e4.7. Advantages and disadvantages of MVVM \u003c\/p\u003e\u003cp\u003e4.8. MVVM-C: Abstracting Navigation from MVVM \u003c\/p\u003e\u003cp\u003e5.            VIPER: View-Interactor-Presenter-Entity-Router \u003c\/p\u003e\u003cp\u003e5.1. What is VIPER. \u003c\/p\u003e\u003cp\u003e5.2. Components in VIPER. \u003c\/p\u003e\u003cp\u003e5.3. How it works. \u003c\/p\u003e\u003cp\u003e5.4. When to use VIPER. \u003c\/p\u003e\u003cp\u003e5.5. Applying VIPER. \u003c\/p\u003e\u003cp\u003e5.6. Testing. \u003c\/p\u003e\u003cp\u003e5.7. Advantages and disadvantages of VIPER \u003c\/p\u003e\u003cp\u003e6.           VIP: View-Interactor-Presenter \u003c\/p\u003e\u003cp\u003e6.1. What is VIP. \u003c\/p\u003e\u003cp\u003e6.2. Components in VIP. \u003c\/p\u003e\u003cp\u003e6.3. How it works. \u003c\/p\u003e\u003cp\u003e6.4. When to use VIP. \u003c\/p\u003e\u003cp\u003e6.5. Applying VIP. \u003c\/p\u003e\u003cp\u003e6.6. Testing. \u003c\/p\u003e\u003cp\u003e6.7. Advantages and disadvantages of VIP \u003c\/p\u003e\u003cp\u003e7. Other Architecture Patterns\u003c\/p\u003e\u003cp\u003e7.1. RIBs: Router, Interactor and  Builder\u003c\/p\u003e7.2. TCA: The Composable Architecture7.3. Redux\u003cp\u003e7.4. TEA: The Elm Architecture  \u003c\/p\u003e\u003cp\u003e8.           Conclusion \u003c\/p\u003e\u003cp\u003e8.1. Importance of Clean Architecture. \u003c\/p\u003e\u003cp\u003e8.2. Moving Forward\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003eAudience: Intermediate\u003cp\u003e\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":48885831467351,"sku":"9781484290682","price":41.24,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484290682.jpg?v=1722537855"},{"product_id":"apple-device-management-9781484291559","title":"Apple Device Management","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eWorking effectively with Apple platforms at a corporate or business level includes not only infrastructure, but a mode of thinking that administrators have to adopt to find success. A mode of thinking that forces you to leave 30 years of IT dogma at the door. This book is a guide through how to integrate Apple products in your environment with a minimum of friction. Because the Apple ecosystem is not going away.\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003eYou''ll start by understanding where Apple, third-party software vendors, and the IT community is taking us. What is Mobile Device Management and how does it work under the hood. By understanding how MDM works, you will understand what needs to happen on your networks in order to allow for MDM, as well as the best way to give the least amount of access to the servers or services that''s necessary. You''ll then look at management agents that do not include MDM, as well as when you will need to use an agent as opposed to when to use other options. Once you ca\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eCHAPTER 1: THE EVOLUTION OF APPLE DEVICE MANAGEMENT\u003c\/p\u003e\u003cp\u003eNeXT\u003c\/p\u003e\u003cp\u003eMac + Unix = Mac OS X\u003c\/p\u003e\u003cp\u003eEcosystem Coexistence\u003c\/p\u003e\u003cp\u003eiOS Device Management\u003c\/p\u003e\u003cp\u003eiOS + Mac OS X = macOS\u003c\/p\u003e\u003cp\u003eImaging Is Dead?\u003c\/p\u003e\u003cp\u003emacOS – Unix = appleOS\u003c\/p\u003e\u003cp\u003eDon’t Forget The Apps\u003c\/p\u003e\u003cp\u003eSERVERS\u003c\/p\u003e\u003cp\u003eBALANCED APPLE SCORECARD\u003c\/p\u003e\u003cp\u003eAccess to organizational resources\u003c\/p\u003e\u003cp\u003eCradle to Grave device management\u003c\/p\u003e\u003cp\u003eDirectory Services\u003c\/p\u003e\u003cp\u003eEndpoint Protection\u003c\/p\u003e\u003cp\u003eWorld class support\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 2: AGENT-BASED MANAGEMENT\u003c\/p\u003e\u003cp\u003eDaemons and Agents\u003c\/p\u003e\u003cp\u003eServices\u003c\/p\u003e\u003cp\u003eLaunchDaemons and LaunchAgents\u003c\/p\u003e\u003cp\u003eCreate Your Own Daemon\u003c\/p\u003e\u003cp\u003eThird Party Daemons\u003c\/p\u003e\u003cp\u003eUse Lingon To See and change Daemons and Agents Easily\u003c\/p\u003e\u003cp\u003eWorking with Daemons and Agents in Scripts\u003c\/p\u003e\u003cp\u003eJamf\u003c\/p\u003e\u003cp\u003eMunki\u003c\/p\u003e\u003cp\u003eChef\u003c\/p\u003e\u003cp\u003ePuppet\u003c\/p\u003e\u003cp\u003eRootless\u003c\/p\u003e\u003cp\u003eThe Impact of UAMDM\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 3: PROFILES\u003c\/p\u003e\u003cp\u003eUse Apple Configurator to Create a Profile\u003c\/p\u003e\u003cp\u003eView the Raw Contents of a Profiles\u003c\/p\u003e\u003cp\u003eInstall a Profile\u003c\/p\u003e\u003cp\u003eView a Profile from iOS\u003c\/p\u003e\u003cp\u003eView the Effects of a Profile on a Mac\u003c\/p\u003e\u003cp\u003eRemove a Profile\u003c\/p\u003e\u003cp\u003eRestrict Profile Installation on iOS\u003c\/p\u003e\u003cp\u003eUse the Profiles Command on macOS\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 4: A DEEP DIVE INTO MDM\u003c\/p\u003e\u003cp\u003eManaged Preferences\u003c\/p\u003e\u003cp\u003eManaged Client\u003c\/p\u003e\u003cp\u003eAPNs\u003c\/p\u003e\u003cp\u003eEnrollment\u003c\/p\u003e\u003cp\u003eUAMDM\u003c\/p\u003e\u003cp\u003eHow MDM Commands Work\u003c\/p\u003e\u003cp\u003eSending A Command\u003c\/p\u003e\u003cp\u003eProfiles As Commands\u003c\/p\u003e\u003cp\u003eDevice Supervision\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 4: EXPLORING MDM WORKFLOWS\u003c\/p\u003e\u003cp\u003eWiping a Device Using Profile Manager\u003c\/p\u003e\u003cp\u003eLocking a Device Using VMware Workspace ONE\u003c\/p\u003e\u003cp\u003eResetting a Device Lock Using Jamf Pro\u003c\/p\u003e\u003cp\u003eDisabling the Camera Using MobileIron\u003c\/p\u003e\u003cp\u003eInstalling a Package from Jamf Now\u003c\/p\u003e\u003cp\u003ePushing a Password Policy from Intune\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 5: APPS, VPP, AND APPLICATION DISTRIBUTION\u003c\/p\u003e\u003cp\u003eInstall an ipa on iOS\u003c\/p\u003e\u003cp\u003eRewrapping an ipa\u003c\/p\u003e\u003cp\u003eInstall a .app on macOS\u003c\/p\u003e\u003cp\u003eInstall an installation Package on macOS\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 6: THE APP AND OS DISTRIBUTION BUILD TRAIN\u003c\/p\u003e\u003cp\u003eAutopkg\u003c\/p\u003e\u003cp\u003eAutopkgr\u003c\/p\u003e\u003cp\u003eIntegrate Autopkgr With Jamf\u003c\/p\u003e\u003cp\u003eIntegrate Autopkgr With Other Products\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 7: ACCESSING NETWORK SERVICES\u003c\/p\u003e\u003cp\u003eGetting on the Network\u003c\/p\u003e\u003cp\u003e802.1x\u003c\/p\u003e\u003cp\u003eDEP and Guest Networks\u003c\/p\u003e\u003cp\u003eIdentity Providers and SaaS Apps\u003c\/p\u003e\u003cp\u003eAccessing Files\u003c\/p\u003e\u003cp\u003eRemote Control\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 7: SECURING YOUR FLEET\u003c\/p\u003e\u003cp\u003eSecuring the Platform\u003c\/p\u003e\u003cp\u003eCombat Malware on macOS\u003c\/p\u003e\u003cp\u003eXprotect\u003c\/p\u003e\u003cp\u003eClamAV\u003c\/p\u003e\u003cp\u003eThird Party Solutions\u003c\/p\u003e\u003cp\u003eThreat Management on iOS\u003c\/p\u003e\u003cp\u003eBinary Whitelisting\u003c\/p\u003e\u003cp\u003eCompliance\u003c\/p\u003e\u003cp\u003eCentralized Log Capture and Analysis\u003c\/p\u003e\u003cp\u003eBeyond Agents\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 8: A CULTURE OF CONTINUAL TESTING\u003c\/p\u003e\u003cp\u003eManual Testing\u003c\/p\u003e\u003cp\u003eBuild A Testing Matrix\u003c\/p\u003e\u003cp\u003eAutomated Testing\u003c\/p\u003e\u003cp\u003eSikuli\u003c\/p\u003e\u003cp\u003eTestplant\u003c\/p\u003e\u003cp\u003eExpect Scripting\u003c\/p\u003e\u003cp\u003eKanban\u003c\/p\u003e\u003cp\u003eRelease Management\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eCHAPTER 9: THE FUTURE OF APPLE DEVICE MANAGEMENT\u003c\/p\u003e\u003cp\u003eThe Future Of Agents\u003c\/p\u003e\u003cp\u003eSummary\u003c\/p\u003e\u003cp\u003eAPPENDIX 1: THE APPLE ECOSYSTEM\u003c\/p\u003e\u003cp\u003eAntivirus\u003c\/p\u003e\u003cp\u003eAutomation Tools\u003c\/p\u003e\u003cp\u003eBackup\u003c\/p\u003e\u003cp\u003eCollaboration Suites and File Sharing\u003c\/p\u003e\u003cp\u003eCRM\u003c\/p\u003eDEP Splash Screens and Help Menus\u003cp\u003e\u003c\/p\u003e\u003cp\u003eDevelopment Tools, IDEs, and Text Manipulators\u003c\/p\u003e\u003cp\u003eDigital Signage and Kiosks\u003c\/p\u003e\u003cp\u003eDirectory Services and Authentication Tools\u003c\/p\u003e\u003cp\u003eIdentity Management\u003c\/p\u003e\u003cp\u003eImaging and Configuration Tools\u003c\/p\u003e\u003cp\u003eLog Collection and Analysis\u003c\/p\u003e\u003cp\u003eManagement Suites\u003c\/p\u003e\u003cp\u003eMisc\u003c\/p\u003e\u003cp\u003ePoint of Sale\u003c\/p\u003e\u003cp\u003ePrint Servers\u003c\/p\u003eRemote Management\u003cp\u003e\u003c\/p\u003e\u003cp\u003eSecurity Tools\u003c\/p\u003e\u003cp\u003eService Desk Tools\u003c\/p\u003e\u003cp\u003eSoftware Packaging and Package Management\u003c\/p\u003e\u003cp\u003eStorage\u003c\/p\u003e\u003cp\u003eTroubleshooting, Repair, and Service Tools\u003c\/p\u003e\u003cp\u003eVirtualization and Emulation\u003c\/p\u003e\u003cp\u003eHonorable Mention\u003c\/p\u003e\u003cp\u003eAPPENDIX 2: COMMON APPLE PORTS\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":48885831827799,"sku":"9781484291559","price":55.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484291559.jpg?v=1791472336"},{"product_id":"ios-development-at-scale-9781484294550","title":"iOS Development at Scale","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003ePart 1: General Apple System Knowledge\u003cp\u003e\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 1: Structures and Classes\u003c\/p\u003e\u003cp\u003e1.1 Structures And Classes\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e1.2 Initializing\u003c\/p\u003e\u003cp\u003e1.3 Instance Variables\u003c\/p\u003e\u003cp\u003e1.4 Properties\u003c\/p\u003e\u003cp\u003e1.5 Methods\u003c\/p\u003e\u003cp\u003e1.5 Protocols\u003c\/p\u003e\u003cp\u003e1.6 Generics\u003c\/p\u003e\u003cp\u003e1.7 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 2: Swift Memory Management\u003c\/p\u003e\u003cp\u003e2. Memory Management\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e2.1 App Memory Usage\u003c\/p\u003e\u003cp\u003e2.2 Swift Memory Model\u003c\/p\u003e\u003cp\u003e2.3 Automatic Reference Counting (ARC) Overview\u003c\/p\u003e\u003cp\u003e2.4 ARC Object Ownership\u003c\/p\u003e\u003cp\u003e2.5 Heap Allocation\u003c\/p\u003e\u003cp\u003e2.6 Stack Allocation\u003c\/p\u003e\u003cp\u003e2.7 Method Dispatch\u003c\/p\u003e\u003cp\u003e2.8 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 3: Persistent Storage for iOS\u003c\/p\u003e\u003cp\u003e3. Persistence For iOS\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e3.1 Core Data\u003c\/p\u003e\u003cp\u003e3.2 Deep Dive SQLite\u003c\/p\u003e\u003cp\u003e3.3 Core Data Alternatives and Tradeoffs\u003c\/p\u003e\u003cp\u003e3.4 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 4: Concurrency and Parallelism\u003c\/p\u003e\u003cp\u003e4.1 Concurrency, Parallelism, and Async Programming\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e4.2 Benefits Concurrent Programming\u003c\/p\u003e\u003cp\u003e4.3 Implementing concurrent programming using threads and locks\u003c\/p\u003e\u003cp\u003e4.4 Using GCD For Concurrency\u003c\/p\u003e\u003cp\u003e4.5 Using NSOperation queues\u003c\/p\u003e\u003cp\u003e4.6 Swift Structured Concurrency\u003c\/p\u003e\u003cp\u003e4.7 Conclusion: Choosing The Right Abstraction\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 5: Algorithms and Data Structures\u003c\/p\u003e\u003cp\u003e5. Algorithms and Data Structures\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e5.1 Arrays\u003c\/p\u003e\u003cp\u003e5.2 Dictionaries\u003c\/p\u003e\u003cp\u003e5.3 Tree Traversals\u003c\/p\u003e\u003cp\u003e5.4 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003ePart 2: Common App Architecture and Design Patterns\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 6: Mobile Systems Design\u003c\/p\u003e\u003cp\u003e6. Mobile Systems Design\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e6.1 Approaching Systems Design At Scale\u003c\/p\u003e\u003cp\u003e6.2 Importance Of Modularity \u003c\/p\u003e\u003cp\u003e6.3 API Engineering For Mobile Engineers\u003c\/p\u003e\u003cp\u003e6.4 Advanced State Management - deep links and notifications\u003c\/p\u003e\u003cp\u003e6.5 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 7: Mobile Systems Architecture\u003c\/p\u003e\u003cp\u003e7. Mobile App Architecture\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e7.1 MVC Architecture\u003c\/p\u003e\u003cp\u003e7.2 MVVM Architecture\u003c\/p\u003e\u003cp\u003e7.3 Reactive Programming\u003c\/p\u003e\u003cp\u003e7.4 VIPER\u003c\/p\u003e7.5 Conclusion\u003cp\u003e\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 8: Mobile Design Patterns\u003c\/p\u003e\u003cp\u003e8. Mobile Design Patterns\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e8.1 Coordinators\u003c\/p\u003e\u003cp\u003e8.2 Delegate Pattern\u003c\/p\u003e8.3 Dependency Injection\u003cp\u003e\u003c\/p\u003e\u003cp\u003e8.4 Aspect-Oriented Programming\u003c\/p\u003e\u003cp\u003e8.5 Singletons\u003c\/p\u003e\u003cp\u003e8.6 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003ePart 3: Apps At Scale\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003eChapter 9: Testable Mobile Applications\u003cp\u003e\u003c\/p\u003e\u003cp\u003e9. Testability\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e9.1 Unit testing\u003c\/p\u003e\u003cp\u003e9.2 E2E testing\u003c\/p\u003e\u003cp\u003e9.3 Leveraging QA\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003eChapter 10: Enforcing Modularity\u003cp\u003e\u003c\/p\u003e\u003cp\u003e10. Dependency Management\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e10.1 Splitting to improve build time\u003c\/p\u003e\u003cp\u003e10.2 Shared libraries\u003c\/p\u003e\u003cp\u003e10.3 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 11: Releasing Your Application\u003c\/p\u003e\u003cp\u003e11. Build\/Release Pipeline\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e11.1 Automated tests\u003c\/p\u003e\u003cp\u003e11.2 Automated code quality\u003c\/p\u003e\u003cp\u003e11.3 Automated releases\u003c\/p\u003e\u003cp\u003e11.4 Building a release cycle - managing the process, handling changes, and bugs\u003c\/p\u003e\u003cp\u003e11.5 Project timing for releases mobile is special\u003c\/p\u003e\u003cp\u003e11.6 Forced deprecation\u003c\/p\u003e\u003cp\u003e11.7 Analytics, Monitoring, and Alerting\u003c\/p\u003e\u003cp\u003e11.8 Mobile On-Call\u003c\/p\u003e\u003cp\u003e11.9 Compliance, Privacy, and Security\u003c\/p\u003e\u003cp\u003e11.10 Third-party libraries\u003c\/p\u003e\u003cp\u003e11.11 ePD\/GDPR regulations\u003c\/p\u003e\u003cp\u003e11.13 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 12: App Performance\u003c\/p\u003e\u003cp\u003e12. Performance\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e12.1 Establishing performance goals\u003c\/p\u003e\u003cp\u003e12.2 App size\u003c\/p\u003e\u003cp\u003e12.3 Adding logging\u003c\/p\u003e\u003cp\u003e12.4 Making it part of the experimentation process\u003c\/p\u003e\u003cp\u003e12.5 iOS Performance Tooling Review\u003c\/p\u003e\u003cp\u003e12.6 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 13: Developing For All Audiences13. Localization\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e13.1 Understanding the market\u003c\/p\u003e\u003cp\u003e13.2 Getting content specialists involved\u003c\/p\u003e\u003cp\u003e13.3 Automating the tedious parts\u003c\/p\u003e\u003cp\u003e13.4 Supporting RTL mode\u003c\/p\u003e\u003cp\u003e13.5 Supporting all languages - Tamil (tall characters) Russian (long strings)\u003c\/p\u003e\u003cp\u003e13.6 Accessibility in iOS\u003c\/p\u003e\u003cp\u003e13.7 Testing accessibility\u003c\/p\u003e\u003cp\u003e13.8 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 14: Experimentation\u003c\/p\u003e\u003cp\u003e14. Experimentation\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e14.1 Understanding the value of A\/B Testing\u003c\/p\u003e\u003cp\u003e14.2 Understanding what metrics are important for the team and app-wide\u003c\/p\u003e\u003cp\u003e14.3 Considerations for a successful experiment and shipping\u003c\/p\u003e\u003cp\u003e14.4 Statistical considerations for evaluating experiments\u003c\/p\u003e\u003cp\u003e14.5 Network effects\u003c\/p\u003e\u003cp\u003e14.6 Designing and using a holdout\u003c\/p\u003e\u003cp\u003e14.7 Considering performance\u003c\/p\u003e\u003cp\u003e14.8 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 15: Cross-Platform Development\u003c\/p\u003e\u003cp\u003e15. Cross-Platform Versus Native Development\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e15.1 Avoid mobile release cycle\u003c\/p\u003e\u003cp\u003e15.2 Small team iterate quickly\u003c\/p\u003e\u003cp\u003e15.3 Less ability to take advantage of new features and high performance\u003c\/p\u003e\u003cp\u003e15.4 App dependent\u003c\/p\u003e\u003cp\u003e15.5 Shared core libraries in C\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 16: Becoming a true team lead\u003c\/p\u003e\u003cp\u003e16. Leading and working with large teams\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e16.1 Understanding engineer archetypes and roles\u003c\/p\u003e\u003cp\u003e16.2 TL Large team - Delegate\u003c\/p\u003e\u003cp\u003e16.3 TL large team - Uplevel others\u003c\/p\u003e\u003cp\u003e16.4 The TL and the project lifecycle\u003c\/p\u003e\u003cp\u003e16.5 Questioning Mindset\u003c\/p\u003e\u003cp\u003e16.6 Communication - verbal and written\u003c\/p\u003e\u003cp\u003e16.7 Scaling oneself\u003c\/p\u003e\u003cp\u003e16.8 Conclusion\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003ePart 4: Bringing Everything Together\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003eChapter 17: Practical Examples\u003cp\u003e\u003c\/p\u003e\u003cp\u003e17. Practical Examples\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e17.1 Example 1 - Building A Photo Viewing App\u003c\/p\u003e\u003cp\u003e17.2 Example 2 - Improving A Legacy Airplane App\u003c\/p\u003e\u003cp\u003e17.3 Example 3 - Re-building A Messaging App Implementing Encryption \u003c\/p\u003e\u003cp\u003e17.4 Conclusion\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":48885833072983,"sku":"9781484294550","price":37.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484294550.jpg?v=1722537860"},{"product_id":"mac-os-x-leopard-in-easy-steps-9781840783506","title":"Mac OS X Leopard in Easy Steps","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cdiv\u003eThe \u003ci\u003eIn Easy Steps\u003c\/i\u003e series is designed to save learning time by breaking down the process into easily grasped, illustrated steps. This authoritative look at the latest iteration of the acclaimed Mac operating system is no exception. Written by experienced trainer and computer columnist Trevor Middleton, \u003ci\u003eMac OS X Leopard In Easy Steps\u003c\/i\u003e guides the reader gently through the installation, setup, use, and maintenance of this powerful operating system. The book thoroughly covers the OS''s innovations, including the Time Machine; the system-level backup utility; and Spaces, which allows the setup of dedicated workspaces for certain applications or groups of applications. The author provides lucid examples to follow and learn how to get the most out of Mac. Featuring numerous full-color screenshots to optimize the learning process, this book puts any reader, novice or experienced, on the road to becoming a Mac OS X Leopard power user.\u003c\/div\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888015356247,"sku":"9781840783506","price":999.99,"currency_code":"GBP","in_stock":false}]},{"product_id":"mac-basics-in-easy-steps-covers-os-x-yosemite-10-10-9781840786033","title":"Mac Basics in Easy Steps: Covers OS X Yosemite","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eCovering the Mac operating system, OS Yosemite, \u003cstrong\u003eMac Basics in easy steps\u003c\/strong\u003e shows you how to get up and running on your Mac with minimum time and effort. Useful for anyone new to the world of Mac computing.\u003c\/p\u003e\u003cp\u003e\u003cstrong\u003eMac Basics in easy steps\u003c\/strong\u003e covers all the essentials a novice needs to know, from getting started to security issues. Areas covered include: \u003c\/p\u003e\u003cli\u003eGetting to grips with the Mac\u003c\/li\u003e\u003cli\u003eDealing with Documents\u003c\/li\u003e\u003cli\u003eMastering email\u003c\/li\u003e\u003cli\u003eBrowsing the web\u003c\/li\u003e\u003cli\u003eCalendars \u0026amp; Contacts\u003c\/li\u003e\u003cli\u003ePhotos \u0026amp; Videos on the Mac\u003c\/li\u003e\u003cli\u003eThe world of iTunes\u003c\/li\u003e\u003cli\u003eNetworking using the Mac\u003c\/li\u003e\u003cli\u003eVideo chat using the Mac\u003c\/li\u003e\u003cli\u003ePersonalising your Mac\u003c\/li\u003e\u003cli\u003eTroubleshooting\u003c\/li\u003e\u003cp\u003eThis handy guide even shows how to move over from a PC - in easy steps - with minimum hassle.\u003c\/p\u003e\u003cp\u003e\u003cem\u003eCovers OS X Yosemite.\u003c\/em\u003e\u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888020238679,"sku":"9781840786033","price":999.99,"currency_code":"GBP","in_stock":false}]},{"product_id":"macos-high-sierra-in-easy-steps-covers-version-10-13-9781840787931","title":"macOS High Sierra in easy steps: Covers version","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003emacOS  is the operating system at the heart of Mac computers. The latest version, macOS High Sierra, builds on some of the innovative functions and level of performance that were introduced with the previous version, macOS Sierra, to provide a stylish, effective and powerful operating system for your Mac desktop or laptop computer.\u003c\/p\u003e\u003cp\u003e\u003cstrong\u003emacOS High Sierra in easy steps\u003c\/strong\u003e opens up by explaining the foundations of macOS: the Dock and the Finder. Then, it reveals a raft of ways in which you can make the most of macOS High Sierra: \u003c\/p\u003e\u003cli\u003eMulti-Touch navigation options for getting around in macOS High Sierra.\u003c\/li\u003e\u003cli\u003eWorking with and managing your apps. \u003c\/li\u003e\u003cli\u003eProductivity options on your Mac. \u003c\/li\u003e\u003cli\u003eGetting online with Safari, Mail, Messages and FaceTime. \u003c\/li\u003e\u003cli\u003eManaging your digital lifestyle for photos, music, video, books and games. \u003c\/li\u003e\u003cli\u003eThe invaluable iCloud online function for backing up and sharing your files. \u003c\/li\u003e\u003cp\u003eThere is also a chapter on troubleshooting and keeping macOS High Sierra in tiptop shape. \u003c\/p\u003e\u003cp\u003e\u003cstrong\u003emacOS High Sierra in easy steps\u003c\/strong\u003e also covers the new features in the operating system, which include: \u003c\/p\u003e\u003cli\u003eInternal enhancements designed to make your Mac more responsive and efficient. \u003c\/li\u003e\u003cli\u003eAn improved file system, designed to meet modern computing needs. \u003c\/li\u003e\u003cli\u003eAn enhanced graphics processor for the best graphics on a Mac yet. \u003c\/li\u003e\u003cli\u003eSupport for a wide range of virtual reality options. \u003c\/li\u003e\u003cli\u003eEnhancements to exists apps, including Photos, Safari, Siri, Mail, FaceTime and Notes. \u003c\/li\u003e\u003cp\u003eWhether you're new to the Mac or just upgrading, use this book to master the essentials and then unleash the power of macOS High Sierra. Covers macOS High Sierra (OS X 10.13). \u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888024727895,"sku":"9781840787931","price":999.99,"currency_code":"GBP","in_stock":false}]},{"product_id":"ipad-in-easy-steps-covers-all-models-of-ipad-with-ios-12-9781840788167","title":"iPad in Easy Steps: Covers All Models of iPad","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eAre you making the most of your iPad? The iPad is a fun, functional and powerful tablet computer, and \u003cstrong\u003eiPad in easy steps, 8th edition\u003c\/strong\u003e will help you navigate your way through its myriad features and discover all the clever things you can do with your iPad. This popular guide is updated to cover all iPad models with the latest operating system:  iOS 12.\u003c\/p\u003e\u003cli\u003eOptimize your settings so that your new device works exactly how you want it to.\u003c\/li\u003e\u003cli\u003eStay up-to-date with family, world news and podcasts; enjoy surfing the web; explore apps for photos, music, videos, games and books; and share and save using Family Sharing. \u003c\/li\u003e\u003cli\u003eUtilize your iPad for work: get organized, sync with your other devices, run presentations and write documents  from anywhere, at any time. \u003c\/li\u003e\u003cli\u003eMaster the new features such as the Measure app, Screen Time and the Siri Shortcuts. \u003c\/li\u003e\u003cp\u003ePacked with tips and shortcuts, this primer will help you to use your iPad to do lots more! \u003c\/p\u003e\u003cp\u003e\u003ci\u003eCovers all models of iPad with iOS 12, including iPad mini and iPad Pro.\u003c\/i\u003e\u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888024826199,"sku":"9781840788167","price":8.79,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840788167.jpg?v=1722547381"},{"product_id":"macos-mojave-in-easy-steps-covers-v-10-14-9781840788358","title":"macOS Mojave in easy steps: Covers v 10.14","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003emacOS Mojave in easy steps\u003c\/strong\u003e opens up by explaining the foundations of macOS: the Dock and the Finder. Then, it reveals a raft of ways in which you can make the most of macOS Mojave:\u003c\/p\u003e \u003cli\u003eMulti-Touch navigation options for getting around in macOS Mojave.\u003c\/li\u003e \u003cli\u003eWorking with and managing your apps. \u003c\/li\u003e \u003cli\u003eProductivity options on your Mac. \u003c\/li\u003e \u003cli\u003eGetting online with Safari, Mail, Messages and FaceTime. \u003c\/li\u003e \u003cli\u003eEnjoying a digital lifestyle with photos, music, video, books and games. \u003c\/li\u003e \u003cli\u003eThe invaluable iCloud function for backing up, sharing and continuing from different devices. \u003c\/li\u003e\u003cli\u003eUsing Siri, Dynamic Desktop and Dark Mode to make things even easier.\u003c\/li\u003e\u003cli\u003eKeeping your Mac working smoothly.\u003c\/li\u003e \u003cp\u003eThere is also a chapter on troubleshooting and keeping macOS Mojave in tiptop shape. \u003c\/p\u003e\u003cp\u003eGet more out of your iMac, Mac mini, Mac Pro or MacBook with minimum time and effort! \u003c\/p\u003e\u003cp\u003e\u003ci\u003eCovers macOS Mojave (OS X 10.14), released September 2018.\u003c\/i\u003e \u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888024924503,"sku":"9781840788358","price":999.99,"currency_code":"GBP","in_stock":false}]},{"product_id":"macos-catalina-in-easy-steps-covers-version-10-15-9781840788648","title":"macOS Catalina in easy steps: Covers version","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003emacOS Catalina in easy steps\u003c\/strong\u003e covers the latest operating system that runs the sophisticated Mac desktop and laptop computers. This concise guide will get you up and running in no time, and then it?ll take you through the key features to help you use your Mac to do more.  It covers:\u003c\/p\u003e\u003cli\u003eMulti-Touch navigation options for getting around in macOS Catalina.\u003c\/li\u003e\u003cli\u003eWorking with and managing your apps. \u003c\/li\u003e\u003cli\u003eProductivity tools on your Mac. \u003c\/li\u003e\u003cli\u003eGetting online with Safari, Mail and FaceTime. \u003c\/li\u003e\u003cli\u003eEnjoying a digital lifestyle with photos, music, TV shows, books, games, podcasts, and more. \u003c\/li\u003e\u003cli\u003eThe invaluable iCloud function for backing up, sharing and continuing from different devices. \u003c\/li\u003e\u003cli\u003eUsing Siri, Dynamic Desktop and Dark Mode to make things even easier. \u003c\/li\u003e\u003cli\u003eKeeping your Mac working smoothly. \u003c\/li\u003e\u003cp\u003eGet more out of your Mac, Mac mini, Mac Pro or MacBook with minimum time and effort!\u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888025284951,"sku":"9781840788648","price":11.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840788648.jpg?v=1791478415"},{"product_id":"macos-big-sur-in-easy-steps-covers-version-11-9781840789164","title":"macOS Big Sur in easy steps: Covers version 11","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003emacOS Big Sur in easy steps\u003c\/strong\u003e is perfect for those wanting to quickly get a grasp of the latest Mac operating system. This concise guide will help you get up and running in no time, and then takes you through the key features to help you use their Mac to do more.  It includes:\u003c\/p\u003e\u003cbr\u003e\u003cli\u003eMulti-Touch navigation options for getting around in macOS.\u003c\/li\u003e\u003cli\u003eWorking with and managing apps. \u003c\/li\u003e\u003cli\u003eProductivity tools on a Mac. \u003c\/li\u003e\u003cli\u003eGetting online with Safari, Mail and FaceTime. \u003c\/li\u003e\u003cli\u003eEnjoying a digital lifestyle with photos, music, TV shows, books, games, podcasts, and more. \u003c\/li\u003e\u003cli\u003eThe invaluable iCloud function for backing up, sharing and continuing from different devices. \u003c\/li\u003e\u003cli\u003eUsing Siri, Dynamic Desktop and Dark Mode to make things even easier. \u003c\/li\u003e\u003cli\u003eKeeping your Mac working smoothly. \u003c\/li\u003e\u003cli\u003eAnd more. \u003c\/li\u003e\u003cbr\u003e\u003cp\u003eGet more out of your Mac, Mac mini, Mac Pro or MacBook with minimum time and effort! \u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888025645399,"sku":"9781840789164","price":9.59,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840789164.jpg?v=1722547386"},{"product_id":"macbook-in-easy-steps-9781840789171","title":"MacBook in easy steps","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eMacBook in easy steps\u003c\/strong\u003e, now in its seventh edition, illustrates all the clever and powerful features on this iconic device. Covering all MacBook models, it:\u003c\/p\u003e\u003cbr\u003e\u003cli\u003eDemystifies Mac jargon and MacBook versions, and will have you up and running in no time.\u003c\/li\u003e\u003cli\u003eExplains the Dock, Desktop, Finder, Launchpad, Touch Bar, and customizing your MacBook. \u003c\/li\u003e\u003cli\u003eShows how to use and manage the new Control Center of useful widgets. \u003c\/li\u003e\u003cli\u003eGuides you through Safari, Mail, and discovering, downloading and using key apps. \u003c\/li\u003e\u003cli\u003eCovers Siri to vocally command your MacBook. \u003c\/li\u003e\u003cli\u003eDemonstrates the Universal Clipboard to access and continue working with your documents whilst on the move, with any Apple device. \u003c\/li\u003e\u003cli\u003eReveals how to add other users, and use Family Sharing to share music, movies, books and more. \u003c\/li\u003e\u003cli\u003eDemonstrates iCloud and iCloud Drive, and how to keep your MacBook in tip-top condition! \u003c\/li\u003e\u003cbr\u003e\u003cp\u003eIdeal for anyone new to the MacBook, including Senior readers.\u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888025776471,"sku":"9781840789171","price":11.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840789171.jpg?v=1722547386"},{"product_id":"macos-monterey-in-easy-steps-9781840789461","title":"macOS Monterey in easy steps","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003emacOSMonterey (macOS 12) is the latest version of the powerful operating system for Apple Mac computers. \u003cstrong\u003emacOS Monterey in easy steps\u003c\/strong\u003eis the latest edition of this acclaimed guide that?ll help you get more from your Mac. It covers: \u003c\/p\u003e\u003cbr\u003e\u003cli\u003eGettingaround your Mac, iMac or MacBook and setting it up to suit the way you work.\u003c\/li\u003e\u003cli\u003eAppsto help with everyday tasks and for entertainment and communication. \u003c\/li\u003e\u003cli\u003eBackingup, security and maintenance. \u003c\/li\u003e\u003cli\u003eKeynew features in macOS Monterey: the upgraded FaceTime app for sharing music and movies when on a FaceTime call; Quick Notes for making notes directly from other apps; Focus to control your notifications to avoid distractions when working or dining; enhanced Safari, Messages and Maps apps, and more! \u003c\/li\u003e\u003cbr\u003e\u003cp\u003eIdeal for newcomers to the stylish world of Apple Macs and for those seeking to getmore from their Mac computer. \u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888025973079,"sku":"9781840789461","price":12.34,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840789461.jpg?v=1722547387"},{"product_id":"macos-in-easy-steps-illustrated-using-macos-ventura-9781840789836","title":"macOS in easy steps: Illustrated using macOS","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eIdeal for newcomers to the stylish worldof Apple Macs and for those seeking to get more from their Mac computer.Illustrated using macOS Ventura.\u003c\/strong\u003e\u003c\/p\u003e\u003cbr\u003e\u003cp\u003eDiscover the true potential of the stylish world ofApple computers with \u003cstrong\u003emacOS in easy steps\u003c\/strong\u003e. Using \u003ci\u003emacOSVentura\u003c\/i\u003e to illustrate, this primer will have you up and running, andgetting more out of your Mac in no time. Areas covered include:\u003c\/p\u003e\u003cbr\u003e\u003cli\u003eGetting around your Mac, iMac or MacBook andsetting it up to suit the way you work, including how to use the Finder and theDock.\u003c\/li\u003e\u003cli\u003eApps to help with everyday tasks and forcommunication: Contacts, Calendar, News, Reminders, Notes, Mail, and Messaging.\u003c\/li\u003e\u003cli\u003eBrowsing the internet with Safari web browser.\u003c\/li\u003e\u003cli\u003eThe digital lifestyle: photos, music, TV, videos,podcasts, and books. \u003c\/li\u003e\u003cli\u003eUsing iCloud to back up and share items. \u003c\/li\u003e\u003cli\u003eUtilizing Stage Manager to get productive. \u003c\/li\u003e\u003cli\u003eSecurity, maintenance, and troubleshooting. \u003c\/li\u003e\u003cbr\u003e\u003cp\u003eIdeal for newcomers as well as those seeking to getmore from their Mac computer.\u003c\/p\u003e \u003cp\u003e\u003cspan style=\"font-weight: bolder;\"\u003eIdeal for newcomers to the stylish world of Apple Macs and for those seeking to get more from their Mac computer. Illustrated using macOS Ventura.\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003eDiscover the true potential of the stylish world of Apple computers with\u003cspan style=\"font-weight: bolder;\"\u003emacOS in easy steps\u003c\/span\u003e. Using\u003ci\u003emacOS Ventura\u003c\/i\u003eto illustrate, this primer will have you up and running, and getting more out of your Mac in no time. Areas covered include:\u003c\/p\u003e\u003cli\u003eGetting around your Mac, iMac or MacBook and setting it up to suit the way you work, including how to use the Finder and the Dock.\u003c\/li\u003e\u003cli\u003eApps to help with everyday tasks and for communication: Contacts, Calendar, News, Reminders, Notes, Mail, and Messaging.\u003c\/li\u003e\u003cli\u003eBrowsing the internet with Safari web browser.\u003c\/li\u003e\u003cli\u003eThe digital lifestyle: photos, music, TV, videos, podcasts, and books.\u003c\/li\u003e\u003cli\u003eUsing iCloud to back up and share items.\u003c\/li\u003e\u003cli\u003eUtilizing Stage Manager to get productive.\u003c\/li\u003e\u003cli\u003eSecurity, maintenance, and troubleshooting.\u003c\/li\u003e\u003cp\u003eIdeal for newcomers as well as those seeking to get more from their Mac computer.\u003c\/p\u003e","brand":"In Easy Steps Limited","offers":[{"title":"Default Title","offer_id":48888026071383,"sku":"9781840789836","price":12.34,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781840789836.jpg?v=1722547389"},{"product_id":"essential-ipad-ios-10-edition-9781911174202","title":"Essential iPad: iOS 10 Edition","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"Elluminet Press","offers":[{"title":"Default Title","offer_id":48888532402519,"sku":"9781911174202","price":11.16,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781911174202.jpg?v=1722549858"},{"product_id":"essential-mac-os-sierra-editon-9781911174189","title":"Essential Mac OS: Sierra Editon","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e","brand":"Elluminet Press","offers":[{"title":"Default Title","offer_id":48888532500823,"sku":"9781911174189","price":15.9,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781911174189.jpg?v=1722549859"},{"product_id":"shell-programming-in-unix-linux-and-os-x-9780134496009","title":"Shell Programming in Unix Linux and OS X","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003eStephen Kochan \u003c\/strong\u003eis the author or co-author of several best-selling titles on Unix and the C language, including \u003cem\u003eProgramming in C\u003c\/em\u003e, \u003cem\u003eProgramming in Objective-C\u003c\/em\u003e, \u003cem\u003eTopics in C Programming, \u003c\/em\u003eand \u003cem\u003eExploring the Unix System\u003c\/em\u003e. He is a former software consultant for AT\u0026amp;T Bell Laboratories, where he developed and taught classes on Unix and C programming.\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003ePatrick Wood\u003c\/strong\u003e is the CTO of the New Jersey location of Electronics for Imaging. He was a member of the technical staff at Bell Laboratories when he met Mr. Kochan in 1985. Together they founded Pipeline Associates, Inc., a Unix consulting firm, where he was vice president. They co-authored \u003cem\u003eExploring the Unix System\u003c\/em\u003e, \u003cem\u003eUnix System Security\u003c\/em\u003e, \u003cem\u003eTopics in C Programming\u003c\/em\u003e, and \u003cem\u003eUnix Shell Programming\u003c\/em\u003e.\u003c\/p\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cstrong\u003e1 A Quick Review of the Basics\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Some Basic Commands\u003c\/p\u003e \u003cp\u003e Displaying the Date and Time: The date Command\u003c\/p\u003e \u003cp\u003e Finding Out Who’s Logged In: The who Command\u003c\/p\u003e \u003cp\u003e Echoing Characters: The echo Command\u003c\/p\u003e \u003cp\u003e Working with Files\u003c\/p\u003e \u003cp\u003e Listing Files: The ls Command\u003c\/p\u003e \u003cp\u003e Displaying the Contents of a File: The cat Command\u003c\/p\u003e \u003cp\u003e Counting the Number of Words in a File: The wc Command\u003c\/p\u003e \u003cp\u003e Command Options\u003c\/p\u003e \u003cp\u003e Making a Copy of a File: The cp Command\u003c\/p\u003e \u003cp\u003e Renaming a File: The mv Command\u003c\/p\u003e \u003cp\u003e Removing a File: The rm Command\u003c\/p\u003e \u003cp\u003e Working with Directories\u003c\/p\u003e \u003cp\u003e The Home Directory and Pathnames\u003c\/p\u003e \u003cp\u003e Displaying Your Working Directory: The pwd Command\u003c\/p\u003e \u003cp\u003e Changing Directories: The cd Command\u003c\/p\u003e \u003cp\u003e More on the ls Command\u003c\/p\u003e \u003cp\u003e Creating a Directory: The mkdir Command\u003c\/p\u003e \u003cp\u003e Copying a File from One Directory to Another\u003c\/p\u003e \u003cp\u003e Moving Files Between Directories\u003c\/p\u003e \u003cp\u003e Linking Files: The ln Command\u003c\/p\u003e \u003cp\u003e Removing a Directory: The rmdir Command\u003c\/p\u003e \u003cp\u003e Filename Substitution\u003c\/p\u003e \u003cp\u003e The Asterisk\u003c\/p\u003e \u003cp\u003e Matching Single Characters\u003c\/p\u003e \u003cp\u003e Filename Nuances\u003c\/p\u003e \u003cp\u003e Spaces in Filenames\u003c\/p\u003e \u003cp\u003e Other Weird Characters\u003c\/p\u003e \u003cp\u003e Standard Input\/Output, and I\/O Redirection\u003c\/p\u003e \u003cp\u003e Standard Input and Standard Output\u003c\/p\u003e \u003cp\u003e Output Redirection\u003c\/p\u003e \u003cp\u003e Input Redirection\u003c\/p\u003e \u003cp\u003e Pipes\u003c\/p\u003e \u003cp\u003e Filters\u003c\/p\u003e \u003cp\u003e Standard Error\u003c\/p\u003e \u003cp\u003e More on Commands\u003c\/p\u003e \u003cp\u003e Typing More Than One Command on a Line\u003c\/p\u003e \u003cp\u003e Sending a Command to the Background\u003c\/p\u003e \u003cp\u003e The ps Command\u003c\/p\u003e \u003cp\u003e Command Summary\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e2 What Is the Shell?\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e The Kernel and the Utilities\u003c\/p\u003e \u003cp\u003e The Login Shell\u003c\/p\u003e \u003cp\u003e Typing Commands to the Shell\u003c\/p\u003e \u003cp\u003e The Shell’s Responsibilities\u003c\/p\u003e \u003cp\u003e Program Execution\u003c\/p\u003e \u003cp\u003e Variable and Filename Substitution\u003c\/p\u003e \u003cp\u003e I\/O Redirection\u003c\/p\u003e \u003cp\u003e Hooking up a Pipeline\u003c\/p\u003e \u003cp\u003e Environment Control\u003c\/p\u003e \u003cp\u003e Interpreted Programming Language\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e3 Tools of the Trade\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Regular Expressions\u003c\/p\u003e \u003cp\u003e Matching Any Character: The Period (.)\u003c\/p\u003e \u003cp\u003e Matching the Beginning of the Line: The Caret (^)\u003c\/p\u003e \u003cp\u003e Matching the End of the Line: The Dollar Sign $\u003c\/p\u003e \u003cp\u003e Matching a Character Set: The [...] Construct\u003c\/p\u003e \u003cp\u003e Matching Zero or More Characters: The Asterisk (*)\u003c\/p\u003e \u003cp\u003e Matching a Precise Number of Subpatterns: \\{...\\}\u003c\/p\u003e \u003cp\u003e Saving Matched Characters: \\(...\\)\u003c\/p\u003e \u003cp\u003e cut\u003c\/p\u003e \u003cp\u003e The -d and -f Options\u003c\/p\u003e \u003cp\u003e paste\u003c\/p\u003e \u003cp\u003e The -d Option\u003c\/p\u003e \u003cp\u003e The -s Option\u003c\/p\u003e \u003cp\u003e sed\u003c\/p\u003e \u003cp\u003e The -n Option\u003c\/p\u003e \u003cp\u003e Deleting Lines\u003c\/p\u003e \u003cp\u003e tr\u003c\/p\u003e \u003cp\u003e The -s Option\u003c\/p\u003e \u003cp\u003e The -d Option\u003c\/p\u003e \u003cp\u003e grep\u003c\/p\u003e \u003cp\u003e Regular Expressions and grep\u003c\/p\u003e \u003cp\u003e The -v Option\u003c\/p\u003e \u003cp\u003e The -l Option\u003c\/p\u003e \u003cp\u003e The -n Option\u003c\/p\u003e \u003cp\u003e sort\u003c\/p\u003e \u003cp\u003e The -u Option\u003c\/p\u003e \u003cp\u003e The -r Option\u003c\/p\u003e \u003cp\u003e The -o Option\u003c\/p\u003e \u003cp\u003e The -n Option\u003c\/p\u003e \u003cp\u003e Skipping Fields\u003c\/p\u003e \u003cp\u003e The -t Option\u003c\/p\u003e \u003cp\u003e Other Options\u003c\/p\u003e \u003cp\u003e uniq\u003c\/p\u003e \u003cp\u003e The -d Option\u003c\/p\u003e \u003cp\u003e Other Options\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e4 And Away We Go\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Command Files\u003c\/p\u003e \u003cp\u003e Comments\u003c\/p\u003e \u003cp\u003e Variables\u003c\/p\u003e \u003cp\u003e Displaying the Values of Variables\u003c\/p\u003e \u003cp\u003e Undefined Variables Have the Null Value\u003c\/p\u003e \u003cp\u003e Filename Substitution and Variables\u003c\/p\u003e \u003cp\u003e The ${variable} Construct\u003c\/p\u003e \u003cp\u003e Built-in Integer Arithmetic\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e5 Can I Quote You on That?\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e The Single Quote\u003c\/p\u003e \u003cp\u003e The Double Quote\u003c\/p\u003e \u003cp\u003e The Backslash\u003c\/p\u003e \u003cp\u003e Using the Backslash for Continuing Lines\u003c\/p\u003e \u003cp\u003e The Backslash Inside Double Quotes\u003c\/p\u003e \u003cp\u003e Command Substitution\u003c\/p\u003e \u003cp\u003e The Back Quote\u003c\/p\u003e \u003cp\u003e The $(...) Construct\u003c\/p\u003e \u003cp\u003e The expr Command\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e6 Passing Arguments\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e The $# Variable\u003c\/p\u003e \u003cp\u003e The $* Variable\u003c\/p\u003e \u003cp\u003e A Program to Look Up Someone in the Phone Book\u003c\/p\u003e \u003cp\u003e A Program to Add Someone to the Phone Book\u003c\/p\u003e \u003cp\u003e A Program to Remove Someone from the Phone Book\u003c\/p\u003e \u003cp\u003e ${n}\u003c\/p\u003e \u003cp\u003e The shift Command\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e7 Decisions, Decisions\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Exit Status\u003c\/p\u003e \u003cp\u003e The $? Variable\u003c\/p\u003e \u003cp\u003e The test Command\u003c\/p\u003e \u003cp\u003e String Operators\u003c\/p\u003e \u003cp\u003e An Alternative Format for test\u003c\/p\u003e \u003cp\u003e Integer Operators\u003c\/p\u003e \u003cp\u003e File Operators\u003c\/p\u003e \u003cp\u003e The Logical Negation Operator !\u003c\/p\u003e \u003cp\u003e The Logical AND Operator -a\u003c\/p\u003e \u003cp\u003e Parentheses\u003c\/p\u003e \u003cp\u003e The Logical OR Operator -o\u003c\/p\u003e \u003cp\u003e The else Construct\u003c\/p\u003e \u003cp\u003e The exit Command\u003c\/p\u003e \u003cp\u003e A Second Look at the rem Program\u003c\/p\u003e \u003cp\u003e The elif Construct\u003c\/p\u003e \u003cp\u003e Yet Another Version of rem\u003c\/p\u003e \u003cp\u003e The case Command\u003c\/p\u003e \u003cp\u003e Special Pattern-Matching Characters\u003c\/p\u003e \u003cp\u003e The -x Option for Debugging Programs\u003c\/p\u003e \u003cp\u003e Back to the case\u003c\/p\u003e \u003cp\u003e The Null Command :\u003c\/p\u003e \u003cp\u003e The \u0026amp;\u0026amp; and || Constructs\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e8 'Round and 'Round She Goes\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e The for Command\u003c\/p\u003e \u003cp\u003e The $@ Variable\u003c\/p\u003e \u003cp\u003e The for Without the List\u003c\/p\u003e \u003cp\u003e The while Command\u003c\/p\u003e \u003cp\u003e The until Command\u003c\/p\u003e \u003cp\u003e More on Loops\u003c\/p\u003e \u003cp\u003e Breaking Out of a Loop\u003c\/p\u003e \u003cp\u003e Skipping the Remaining Commands in a Loop\u003c\/p\u003e \u003cp\u003e Executing a Loop in the Background\u003c\/p\u003e \u003cp\u003e I\/O Redirection on a Loop\u003c\/p\u003e \u003cp\u003e Piping Data into and out of a Loop\u003c\/p\u003e \u003cp\u003e Typing a Loop on One Line\u003c\/p\u003e \u003cp\u003e The getopts Command\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e9 Reading and Printing Data\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e The read Command\u003c\/p\u003e \u003cp\u003e A Program to Copy Files\u003c\/p\u003e \u003cp\u003e Special echo Escape Characters\u003c\/p\u003e \u003cp\u003e An Improved Version of mycp\u003c\/p\u003e \u003cp\u003e A Final Version of mycp\u003c\/p\u003e \u003cp\u003e A Menu-Driven Phone Program\u003c\/p\u003e \u003cp\u003e The $$ Variable and Temporary Files\u003c\/p\u003e \u003cp\u003e The Exit Status from read\u003c\/p\u003e \u003cp\u003e The printf Command\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e10 Your Environment\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Local Variables\u003c\/p\u003e \u003cp\u003e Subshells\u003c\/p\u003e \u003cp\u003e Exported Variables\u003c\/p\u003e \u003cp\u003e export -p\u003c\/p\u003e \u003cp\u003e PS1 and PS2\u003c\/p\u003e \u003cp\u003e HOME\u003c\/p\u003e \u003cp\u003e PATH\u003c\/p\u003e \u003cp\u003e Your Current Directory\u003c\/p\u003e \u003cp\u003e CDPATH\u003c\/p\u003e \u003cp\u003e More on Subshells\u003c\/p\u003e \u003cp\u003e The .Command\u003c\/p\u003e \u003cp\u003e The exec Command\u003c\/p\u003e \u003cp\u003e The (...) and { ...; } Constructs\u003c\/p\u003e \u003cp\u003e Another Way to Pass Variables to a Subshell\u003c\/p\u003e \u003cp\u003e Your .profile File\u003c\/p\u003e \u003cp\u003e The TERM Variable\u003c\/p\u003e \u003cp\u003e The TZ Variable\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e11 More on Parameters\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Parameter Substitution\u003c\/p\u003e \u003cp\u003e ${parameter}\u003c\/p\u003e \u003cp\u003e ${parameter:-value}\u003c\/p\u003e \u003cp\u003e ${parameter:=value}\u003c\/p\u003e \u003cp\u003e ${parameter:?value}\u003c\/p\u003e \u003cp\u003e ${parameter:+value}\u003c\/p\u003e \u003cp\u003e Pattern Matching Constructs\u003c\/p\u003e \u003cp\u003e ${#variable}\u003c\/p\u003e \u003cp\u003e The $0 Variable\u003c\/p\u003e \u003cp\u003e The set Command\u003c\/p\u003e \u003cp\u003e The -x Option\u003c\/p\u003e \u003cp\u003e set with No Arguments\u003c\/p\u003e \u003cp\u003e Using set to Reassign Positional Parameters\u003c\/p\u003e \u003cp\u003e The -- Option\u003c\/p\u003e \u003cp\u003e Other Options to set\u003c\/p\u003e \u003cp\u003e The IFS Variable\u003c\/p\u003e \u003cp\u003e The readonly Command\u003c\/p\u003e \u003cp\u003e The unset Command\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e12 Loose Ends\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e The eval Command\u003c\/p\u003e \u003cp\u003e The wait Command\u003c\/p\u003e \u003cp\u003e The $! Variable\u003c\/p\u003e \u003cp\u003e The trap Command\u003c\/p\u003e \u003cp\u003e trap with No Arguments\u003c\/p\u003e \u003cp\u003e Ignoring Signals\u003c\/p\u003e \u003cp\u003e Resetting Traps\u003c\/p\u003e \u003cp\u003e More on I\/O\u003c\/p\u003e \u003cp\u003e \u0026lt;\u0026amp;- and \u0026gt;\u0026amp;-\u003c\/p\u003e \u003cp\u003e In-line Input Redirection\u003c\/p\u003e \u003cp\u003e Shell Archives\u003c\/p\u003e \u003cp\u003e Functions\u003c\/p\u003e \u003cp\u003e Removing a Function Definition\u003c\/p\u003e \u003cp\u003e The return Command\u003c\/p\u003e \u003cp\u003e The type Command\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e13 Rolo Revisited\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Data Formatting Considerations\u003c\/p\u003e \u003cp\u003e rolo\u003c\/p\u003e \u003cp\u003e add\u003c\/p\u003e \u003cp\u003e lu\u003c\/p\u003e \u003cp\u003e display\u003c\/p\u003e \u003cp\u003e rem\u003c\/p\u003e \u003cp\u003e change\u003c\/p\u003e \u003cp\u003e listall\u003c\/p\u003e \u003cp\u003e Sample Output\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003e14 Interactive and Nonstandard Shell Features\u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003e Getting the Right Shell\u003c\/p\u003e \u003cp\u003e The ENV File\u003c\/p\u003e \u003cp\u003e Command-Line Editing\u003c\/p\u003e \u003cp\u003e Command History\u003c\/p\u003e \u003cp\u003e The vi Line Edit Mode\u003c\/p\u003e \u003cp\u003e Accessing Commands from Your History\u003c\/p\u003e \u003cp\u003e The emacs Line Edit Mode\u003c\/p\u003e \u003cp\u003e Accessing Commands from Your History\u003c\/p\u003e \u003cp\u003e Other Ways to Access Your History\u003c\/p\u003e \u003cp\u003e The history Command\u003c\/p\u003e \u003cp\u003e The fc Command\u003c\/p\u003e \u003cp\u003e The r Command\u003c\/p\u003e \u003cp\u003e Functions\u003c\/p\u003e \u003cp\u003e Local Variables\u003c\/p\u003e \u003cp\u003e Automatically Loaded Functions\u003c\/p\u003e \u003cp\u003e Integer Arithmetic\u003c\/p\u003e \u003cp\u003e Integer Types\u003c\/p\u003e \u003cp\u003e Numbers in Different Bases\u003c\/p\u003e \u003cp\u003e The alias Command\u003c\/p\u003e \u003cp\u003e Removing Aliases\u003c\/p\u003e \u003cp\u003e Arrays\u003c\/p\u003e \u003cp\u003e Job Control\u003c\/p\u003e \u003cp\u003e Stopped Jobs and the fg and bg Commands\u003c\/p\u003e \u003cp\u003e Miscellaneous Features\u003c\/p\u003e \u003cp\u003e Other Features of the cd Command\u003c\/p\u003e \u003cp\u003e Tilde Substitution\u003c\/p\u003e \u003cp\u003e Order of Search\u003c\/p\u003e \u003cp\u003e Compatibility Summary\u003c\/p\u003e \u003cp\u003e\u003cstrong\u003eAppendixes \u003c\/strong\u003e\u003c\/p\u003e \u003cp\u003eA Shell Summary\u003c\/p\u003e \u003cp\u003eB For More Information\u003c\/p\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":49369127944535,"sku":"9780134496009","price":31.82,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780134496009.jpg?v=1791453928"},{"product_id":"office-2011-for-mac-for-dummies-9780470878699","title":"Office 2011 for Mac for Dummies","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eGet started with Office 2011 for Mac and discover the creative possibilities    The leading suite of productivity software for the Mac, Microsoft Office helps users complete common business tasks, including word processing, e-mail, presentations, financial analysis, and much more.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cb\u003eIntroduction.\u003c\/b\u003e  \u003cp\u003e\u003cb\u003ePart I: Introduction to the Microsoft Office 2011 Suite.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 1: Overview from 10,000 Feet.\u003c\/p\u003e \u003cp\u003eChapter 2: A Sweet Suite: Introducing the Office 2011 Applications.\u003c\/p\u003e \u003cp\u003eChapter 3: Common Knowledge: Things That Work the Same in All Office Applications.\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart II: Mastering Microsoft Word.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 4: Getting to Know Microsoft Word.\u003c\/p\u003e \u003cp\u003eChapter 5: Processing Documents with Word.\u003c\/p\u003e \u003cp\u003eChapter 6: Refining and Editing Documents with Word.\u003c\/p\u003e \u003cp\u003eChapter 7: Going for the Designer Look: Using Templates and Other Design Elements.\u003c\/p\u003e \u003cp\u003eChapter 8: This and That: Advanced and Collaboration Features.\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart III: Powerful Presentations with Microsoft PowerPoint.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 9: Getting to Know Microsoft PowerPoint.\u003c\/p\u003e \u003cp\u003eChapter 10: Creating Slide Shows.\u003c\/p\u003e \u003cp\u003eChapter 11: Making Your Slide Shows Sing.\u003c\/p\u003e \u003cp\u003eChapter 12: Presentation Mastery.\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart IV: Crunching Data with Microsoft's Most Excellent Excel.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 13: Getting to Know Microsoft Excel.\u003c\/p\u003e \u003cp\u003eChapter 14: Crunching Numbers (And Data) with Excel.\u003c\/p\u003e \u003cp\u003eChapter 15: Enhancing and Printing Your Excel Spreadsheets.\u003c\/p\u003e \u003cp\u003eChapter 16: Advanced Spreadsheeting.\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart V: Microsoft Outlook: Miraculous Manager of Most Things.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 17: Getting to Know Outlook.\u003c\/p\u003e \u003cp\u003eChapter 18: Outlook Online.\u003c\/p\u003e \u003cp\u003eChapter 19: Managing Your Affairs with Outlook.\u003c\/p\u003e \u003cp\u003eChapter 20: Getting Advanced with Outlook.\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart VI: The Part of Tens.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 21: Ten Things in Offi ce 2011 That Didn't Fit Elsewhere.\u003c\/p\u003e \u003cp\u003eChapter 22: Ten Timesaving Shortcuts and Tips for Enhanced Productivity.\u003c\/p\u003e \u003cp\u003eChapter 23: Ten Ways to Customize Office.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eIndex.\u003c\/b\u003e\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":49402451034455,"sku":"9780470878699","price":15.29,"currency_code":"GBP","in_stock":false}]},{"product_id":"building-cocoa-applications-a-stepbystep-guide-9780596002350","title":"Building Cocoa Applications  A StepbyStep Guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThis developer's guide to creating applications for computers using Mac OS X, explains how to build sophisticated applications rather than offer a series of simplistic and vague examples.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003ePart I Cocoa overview: understanding the Aqua interface, what makes Mac OS X so special?, a quick look at the Mac OS X user interface, basic principles of the Aqua interface, the mouse and cursor, window types and behaviour, menus and the menu bar, the dock controls, the finder configuring your desktop, step-by-step, menu guidelines and keyboard equivalents, working with the filesystem step-by-step, summary, exercises, references; tools for developing Cocoa applications - developer tools, utilities, working with the terminal, debugging programs with gdb user interface design, summary, exercises; creating a simple application with interface builder - getting started with interface builder, adding objects to your application, objects, messages, and targets, summary, exercise; an objective-C application without interface - builder, the Tiny.m program, an introduction to objective-C, Tiny.m revisited, summary, exercises, references. Part II Calculator: building a simple application; building a project - a four-function calculator, getting started - building the calculator project, building the calculator's user interface, building the calculator's controller class, customizing buttons and making connections, compiling and running a program, compiler error messages, the enterDigit - action method, adding the four calculator functions, adding the Unary Minus function to the controller class, the files in a project, summary, exercises; nibs and icons - customizing mainmenu.nib, managing multiple nibs, adding icons to applications, changing calculator's application icon, Cocoa's NSImage class, summary, exercises, references; delegation and resizing - handling different bases, delegation, disabling buttons for bettermultiradix input, resizing windows programmatically, two very important classes - NSWindow and NSView, summary, exercises; events and responders - events and the NSResponder chain, events and the NSApplication object. Part III MathPaper: a multiple-document, multiprocess application; MathPaper and Cocoa's document-based architecture - the MathPaper application, the evaluator back end, Cocoa 's Document-Based Architecture, building MathPaper's front end, summary, exercises, references; tasks, pipes, and NSTextView - processes, pipes, and resources, making evaluator a MathPaper auxiliary executable, MathDocument class modifications, creating PaperController, a subclass of NSWindowController, the NSScrollView and NSTextView classes, PaperController class modifications, summary, exercises; rich text format and NSText - rich text format and NSText, rich text format, creating an RTF class, integrating our RTF class into MathPaper, summary, exercises; saving, loading, and printing - data management with NSDocument, saving to a file, loading from a file, marking a document window as edited, adding printing capability, summary, exercises. (Part Contents)","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49403354284375,"sku":"9780596002350","price":38.99,"currency_code":"GBP","in_stock":false}]},{"product_id":"mac-os-x-for-unix-geeks-9780596520625","title":"Mac OS X for UNIX Geeks","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eIntends to serve as a bridge for Unix developers and system administrators who've been lured to Mac OS X because of its Unix roots. This book is a guide for taming the Unix side of Mac OS X.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49403367817559,"sku":"9780596520625","price":22.39,"currency_code":"GBP","in_stock":false}]},{"product_id":"mac-os-x-leopard-pocket-guide-9780596529819","title":"MAC OS X Leopard Pocket Guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eNo matter how much Mac experience you have, Mac OS X Leopard requires that you get reacquainted. This guide is filled with more than 300 tips and techniques to help you do just that. It explains: What's new in Leopard, including the Time Machine; How to use Leopard's totally revamped Finder; and How to use Leopard's enhanced Parental Controls.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49403369521495,"sku":"9780596529819","price":10.79,"currency_code":"GBP","in_stock":false}]},{"product_id":"mac-os-x-leopard-the-missing-manual-9780596529529","title":"Mac OS X Leopard The Missing Manual","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThe new Mac OS X 10.5, better known as Leopard, is faster than its predecessors. This title gives you a jargon-free introduction to the Dock, the Mac OS X folder structure, and the Mail application. It also includes mini-manuals on iLife applications such as iMovie, iDVD, and iPhoto, and a tutorial for Safari, Mac's web browser.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49403369554263,"sku":"9780596529529","price":22.39,"currency_code":"GBP","in_stock":false}]},{"product_id":"mac-os-x-snow-leopard-pocket-guide-9780596802721","title":"Mac OS X Snow Leopard Pocket Guide","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eHelps you learn fundamental concepts of Snow Leopard. This book offers information on the system's built-in applications and utilities, along with configuration tips, keyboard shortcuts, and a short guide to troubleshooting and network configuration. It provides a reference to configuring sync, networking, and explains how to manage user accounts.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49403370176855,"sku":"9780596802721","price":10.79,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780596802721.jpg?v=1730483252"},{"product_id":"ios-hackers-handbook-9781118204122","title":"iOS Hackers Handbook","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cb\u003eDiscover all the security risks and exploits that can threaten iOS-based mobile devices\u003c\/b\u003e  \u003cp\u003eiOS is Apple''s mobile operating system for the iPhone and iPad. With the introduction of iOS5, many security issues have come to light. This book explains and discusses them all. The award-winning author team, experts in Mac and iOS security, examines the vulnerabilities and the internals of iOS to show how attacks can be mitigated. The book explains how the operating system works, its overall security architecture, and the security risks associated with it, as well as exploits, rootkits, and other payloads developed for it.\u003c\/p\u003e \u003cul\u003e \u003cli\u003eCovers iOS security architecture, vulnerability hunting, exploit writing, and how iOS jailbreaks work\u003c\/li\u003e \u003cli\u003eExplores iOS enterprise and encryption, code signing and memory protection, sandboxing, iPhone fuzzing, exploitation, ROP payloads, and baseband attacks\u003c\/li\u003e \u003cli\u003eAlso examines kernel debugging and exploitation\u003c\/li\u003e \u003cli\u003eCompanion website includes\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eIntroduction xv\u003c\/p\u003e \u003cp\u003eChapter 1 iOS Security Basics 1\u003c\/p\u003e \u003cp\u003eChapter 2 iOS in the Enterprise 15\u003c\/p\u003e \u003cp\u003eChapter 3 Encryption 47\u003c\/p\u003e \u003cp\u003eChapter 4 Code Signing and Memory Protections 69\u003c\/p\u003e \u003cp\u003eChapter 5 Sandboxing 107\u003c\/p\u003e \u003cp\u003eChapter 6 Fuzzing iOS Applications 139\u003c\/p\u003e \u003cp\u003eChapter 7 Exploitation 185\u003c\/p\u003e \u003cp\u003eChapter 8 Return-Oriented Programming 219\u003c\/p\u003e \u003cp\u003eChapter 9 Kernel Debugging and Exploitation 249\u003c\/p\u003e \u003cp\u003eChapter 10 Jailbreaking 297\u003c\/p\u003e \u003cp\u003eChapter 11 Baseband Attacks 327\u003c\/p\u003e \u003cp\u003eAppendix References 365\u003c\/p\u003e \u003cp\u003eIndex 369\u003c\/p\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":49406840865111,"sku":"9781118204122","price":27.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781118204122.jpg?v=1730497301"},{"product_id":"macos-ventura-for-dummies-9781119912873","title":"macOS Ventura For Dummies","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eLearn the ins and outs of macOS Ventura macOS Ventura For Dummies is packed with all the information you need on this latest version of macOS. With expert tips, tricks, and troubleshooting ideas, it's the trusted guide for those new to Mac computers and those upgrading their systems. Learn how to organize your files, ensure that your data is secure, work more efficiently, and take advantage of the newest features. Dummies helps you navigate the interface, use helpful shortcuts, and beyondthe easy way. Explore the features of macOS Ventura and get things done with easeFind out how to locate files, open and close programs, and customize the OSTroubleshoot common problems and keep your system running smoothlyMake sure your data is secure and your computer is hacker-proofThis is the perfect Dummies guide for first-time macOS users, as well as people who are upgrading their systems and need a reference.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eIntroduction 1\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart 1: macOS Basics 5\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 1: macOS Ventura 101 (Prerequisites: None) 7\u003c\/p\u003e \u003cp\u003eChapter 2: Desktop and Windows and Menus (Oh My!) 21\u003c\/p\u003e \u003cp\u003eChapter 3: What’s Up, Dock? 43\u003c\/p\u003e \u003cp\u003eChapter 4: Getting to Know Finder and Its Desktop 61\u003c\/p\u003e \u003cp\u003eChapter 5: Delving Even Deeper into Ventura’s Desktop and Finder 93\u003c\/p\u003e \u003cp\u003eChapter 6: Having It Your Way 105\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart 2: Getting Things Done 125\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 7: Opening and Saving Files 127\u003c\/p\u003e \u003cp\u003eChapter 8: File and Folder Management Made Easy 151\u003c\/p\u003e \u003cp\u003eChapter 9: Eight Terrific Time-Saving Tools 165\u003c\/p\u003e \u003cp\u003eChapter 10: Organizing Your Life 195\u003c\/p\u003e \u003cp\u003eChapter 11: Maps Are Where It’s At 217\u003c\/p\u003e \u003cp\u003eChapter 12: Apps Born in iOS 229\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart 3: Getting Along with Others 241\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 13: (Inter)Networking 243\u003c\/p\u003e \u003cp\u003eChapter 14: Dealing with People 261\u003c\/p\u003e \u003cp\u003eChapter 15: Communicating with Mail and Messages 273\u003c\/p\u003e \u003cp\u003eChapter 16: Sharing Your Mac and Liking It 299\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart 4: Getting Creative 327\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 17: The Musical Mac 329\u003c\/p\u003e \u003cp\u003eChapter 18: The Multimedia Mac 343\u003c\/p\u003e \u003cp\u003eChapter 19: Publish or Perish: Creating Documents and Printing 355\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart 5: Care and Feeding 377\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 20: Features for the Way You Work 379\u003c\/p\u003e \u003cp\u003eChapter 21: Safety First: Backups and Other Security Issues 409\u003c\/p\u003e \u003cp\u003eChapter 22: Utility Chest 425\u003c\/p\u003e \u003cp\u003eChapter 23: Troubleshooting macOS 437\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart 6: The Part of Tens 447\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eChapter 24: Ten Ways to Speed Up Your Mac Experience 449\u003c\/p\u003e \u003cp\u003eChapter 25: Ten Great Websites for Mac Freaks 457\u003c\/p\u003e \u003cp\u003eIndex 463\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":49407189942615,"sku":"9781119912873","price":21.84,"currency_code":"GBP","in_stock":false}]},{"product_id":"switching-to-the-mac-9781449372262","title":"Switching to the Mac","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eReady to move to the Mac? This incomparable guide helps you make a smooth transition. New York Times columnist and Missing Manuals creator David Pogue gets you past four challenges: syncing with iOS, transferring your stuff, assembling Mac programs so you can do what you did with Windows, and learning your way around OS X Mavericks.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49408549880151,"sku":"9781449372262","price":19.19,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781449372262.jpg?v=1730503300"},{"product_id":"switching-to-the-mac-the-missing-manual-lion-edition-9781449398538","title":"Switching to the Mac The Missing Manual Lion","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eReady to move to the Mac? This incomparable guide helps you make a smooth transition. New York Times columnist and Missing Manuals creator David Pogue gets you past three challenges: transferring your stuff, assembling Mac programs so you can do what you did with Windows, and learning your way around Mac OS X.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49408551747927,"sku":"9781449398538","price":22.39,"currency_code":"GBP","in_stock":true}]},{"product_id":"mac-os-x-lion-the-missing-manual-9781449397494","title":"Mac OS X Lion The Missing Manual","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eWith Lion, Apple has unleashed the most innovative version of Mac OS X yet - and you'll learn all about it with David Pogue's meticulous Missing Manual. Mac OS X 10.7 completely transforms the Mac user interface with multi-touch gestures borrowed from the iPhone and iPad, and includes more 250 brand-new features.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49408551780695,"sku":"9781449397494","price":22.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781449397494.jpg?v=1730503308"},{"product_id":"pro-ios-testing-9781484263815","title":"Pro iOS Testing","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eDiscover 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.\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\u003cdiv\u003eA 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.\u003c\/div\u003e\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\u003cdiv\u003eThis book will show you how to maintain code that''s not only bug-fr\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003col\u003e\n\u003cli\u003e\n\u003cb\u003eChapter 1 - Introduction to Testing\u003cbr\u003e\u003c\/b\u003e1. Testing - Doing the same thing over and over again expecting the same results 2. Where Testing meets us and why it’s important\u003cbr\u003e3. Different Types of Testing Methods\u003cbr\u003e4. Say hello to XCTest Framework \u003c\/li\u003e\n\u003cli\u003e\n\u003cb\u003eChapter 2 - Setup a testing infrastructure \u003c\/b\u003e1. All About testing targets\u003cbr\u003e2. Testing Code Organization \u003c\/li\u003e\n\u003cli\u003e\n\u003cb\u003eChapter 3 - Prepare your code for testing \u003c\/b\u003e1. Using interactors and entities\u003cbr\u003e2. Mark private methods\u003cbr\u003e3. Mocks and Spies \u003c\/li\u003e\n\u003cli\u003e\n\u003cb\u003eChapter 4 - Unit Tests\u003cbr\u003e\u003c\/b\u003e1. What are unit tests?\u003cbr\u003e2. What functions should be covered?\u003cbr\u003e3. Write our first unit test\u003cbr\u003e4. Code Coverage\u003cbr\u003e5. Write several tests for the same function 6. Testing A-Sync functions\u003cbr\u003e7. Best Practices \u003c\/li\u003e\n\u003cli\u003e\u003cb\u003eChapter 5 - Performance Tests \u003c\/b\u003e\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003cp\u003e\u003cb\u003e1. Importance of Performance Tests 2. What metrics can we measure? 3. Meet XCTMetric Protocol\u003cbr\u003e4. Write our first Performance test 5. Set Baseline \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e6. Best Practices \u003c\/b\u003e\u003c\/p\u003e\n\u003col\u003e\u003cli\u003e\u003cb\u003eChapter 6 - Integration Tests \u003c\/b\u003e\u003c\/li\u003e\u003c\/ol\u003e\n\u003cp\u003e\u003cb\u003e1. What are the differences between unit tests and Integration Tests 2. How to set the ground for integration tests\u003cbr\u003e3. We still have mocks\u003cbr\u003e4. What integrations are common to test? \u003c\/b\u003e\u003c\/p\u003e\n\u003col\u003e\u003cli\u003e\u003cb\u003eChapter 7 - UI Tests \u003c\/b\u003e\u003c\/li\u003e\u003c\/ol\u003e\n\u003cp\u003e\u003cb\u003e1. What are UI Tests\u003cbr\u003e2. It all starts with accessibility 3. UI Testing Challenges \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e4. Simulate your backend 5. Meet Page Object Model 6. UI Testing Best Practices \u003c\/p\u003e\n\u003col\u003e\u003cli\u003e\u003cb\u003eChapter 8 - Snapshot Testing \u003c\/b\u003e\u003c\/li\u003e\u003c\/ol\u003e\n\u003cp\u003e\u003cb\u003e1. Snapshot Testing - Closest to real QA Manual Regression 2. iOS-snapshot-test-case - Facebook and Uber solution\u003cbr\u003e3. How to use it?\u003cbr\u003e4. Pros and Cons \u003c\/b\u003e\u003c\/p\u003e\n\u003col\u003e\u003cli\u003e\u003cb\u003eChapter 9 - Share Tests between iOS and Android \u003c\/b\u003e\u003c\/li\u003e\u003c\/ol\u003e\n\u003cp\u003e\u003cb\u003e1. Shared code - out, shared tests - in. 2. It all starts with consistent API\u003cbr\u003e3. Prepare your unit tests for that\u003cbr\u003e4. Setup a dedicated repository \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e5. Best practices \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e10. Chapter 10 - Test-Driven Development (TDD) \u003c\/b\u003e\u003c\/p\u003e1. In short - what is TDD?\u003cbr\u003e2. TDD Advantages\u003cbr\u003e3. TDD is not a type of test, it’s a development method 4. TDD Process \u003c\/div\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":49409122926935,"sku":"9781484263815","price":46.74,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484263815.jpg?v=1791472328"},{"product_id":"macos-daemonology-9781484272763","title":"macOS Daemonology","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eTake advantage of the full power of Swift through XPC. Development for macOS differs from iOS and web-based development because of multicomponent applications. Besides the usual GUI-based applications and app extensions, there are a wide range of daemonsprocesses that run in the backgroundto worry about. These include system monitoring, event listening, notification agents, and many-many more.\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\u003cdiv\u003eFirst, you''ll take a tour around different types of daemons: user agents, privileged helpers, login items, XPC services, and System Extensions. Knowing key specifics of the daemons will open a wide range of possibilities from non-trivial application development to system development. You''ll find lots of examples, working code samples, and even ready-to-use utilities. The book will guide you step-by-step through preparation, registration, and management of all kinds of daemons.\u003c\/div\u003e\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\u003cdiv\u003eSystem Extensions are brand new for macOS and open additional powerful feat\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cb\u003ePart 1. Daemons: Overview \u0026amp; Management\u003c\/b\u003e\u003cp\u003e\u003cb\u003eChapter 1. Daemons at a Glance\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eThe operating system background world\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eDifferent types of daemons \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 2. launchd and launchd Jobs\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003elaunchd functional related to daemons\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eDaemons' configuration (.plist files).\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 3. launchctl\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eSetup and manage daemons\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003elaunchctl tool in detail\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eSwift API for daemons management\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003ePart 2. Daemons in Detail\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 4. Choose the right daemon for you\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eComparing daemon types\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003ePicking a daemon type based on needs \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 5. Classic Daemons\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eWhat is a classic daemon?\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eRoot background processes\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 6. User Agents\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eSpecifics of user agents\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eUser background processes\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 7. XPC Services\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eThe Simplest daemon\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eWorking with XPC services\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 8. Privileged Helpers\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eSpecial daemons \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eThe official and modern way of privilege escalation in macOS\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 9. Login Items\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eUser Agent LoginItem \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eAPIs related to LoginItem\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 10. System Extensions (since macOS 10.15)\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eBrand new daemon types\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eSystem Extension\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eEndpointSecurity.framework\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eRequired entitlements\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eSpecific installation\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eManagement\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003ePart 3. Talking to Daemons\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 11. XPC Communication\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eExamples of XPC communication between processes\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eCorner cases\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003ePassing objects by-proxy\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eUsing NSProgress within XPC\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eOther details\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 12. XPC Security\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eNotes and recommendations \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eSecuring XPC communication between processes\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eCode signing\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 13. XPC and Swift\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eAdopting XPC communication to Swift\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003ePassing structures over XPC\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eWorking with callbacks instead of delegates\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003ePart 4. Specifics and Nuances\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eChapter 14. UserAgents and Sandboxs (AppStore compatible)\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eUse UserAgents as part of sandboxed applications\u003c\/b\u003e\u003c\/p\u003e\n\u003cb\u003eAppStore compatibility\u003c\/b\u003e\n\u003c\/div\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":49409123189079,"sku":"9781484272763","price":999.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484272763.jpg?v=1730505523"},{"product_id":"computer-vision-and-augmented-reality-in-ios-9781484274613","title":"Computer Vision and Augmented Reality in iOS","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eLearn how computer vision works, how augmented reality renders digital graphics into the physical world via an iPhone's camera, and how to incorporate these technologies into your own apps. This book shows you how to take full advantage of computer vision technologies.   Interacting with other people online usually involves user-generated images and videos; whether it be memes, short videos, or heavily-modified images. Before smart phones, generating this content required a professional using high-level image and video editing software. Not any more.This book will teach you to use computer vision in the most popular ways, such as for facial recognition, image to text analysis and, of course, recording a video of a dancing hot dog in your living room. Starting with the history of computer vision, image and video processing fundamentals, and an introduction to developing augmented reality applications, you'll learn to incorporate computer vision both in the content youcreate and the apps\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e1.     Brief History of Computer Vision\u003c\/p\u003e\u003cp\u003eThis chapter will focus on the history of computer vision, what it is, the importance of it and its applications.\u003c\/p\u003e\u003cp\u003ea.     What is Computer Vision?\u003c\/p\u003eb.     Why do we need it?\u003cp\u003e\u003c\/p\u003e\u003cp\u003ec.     The evolution of Computer Vision\u003c\/p\u003e\u003cp\u003ed.     Computer Vision Applications\u003c\/p\u003e2.     Introduction to Augmented Reality\u003cp\u003e\u003c\/p\u003e\u003cp\u003eThis chapter will introduce Augmented Reality and its different applications to the reader.\u003c\/p\u003ea.     What is augmented reality?\u003cp\u003e\u003c\/p\u003e\u003cp\u003eb.     How does it work?\u003c\/p\u003e\u003cp\u003ec.     How can I use this technology?\u003c\/p\u003e\u003cp\u003e3.     Image and Video Processing Fundamentals\u003c\/p\u003e\u003cp\u003eThis chapter will go over fundamental mathematics and algorithms that will be used throughout the book.\u003c\/p\u003e\u003cp\u003ea.     Math overview\u003c\/p\u003e\u003cp\u003eb.     Computer Vision basics\u003c\/p\u003e\u003cp\u003ec.     Standard algorithms\u003c\/p\u003e\u003cp\u003ed.     Implementing standard algorithms using OpenCV\u003c\/p\u003e4.     Building Computer Vision Applications using OpenCV \u0026amp; Vision Framework\u003cp\u003e\u003c\/p\u003e\u003cp\u003eThis chapter will cover various Computer Vision applications and how to implement them. \u003c\/p\u003ea.     Face Detection \/ Recognition\u003cp\u003e\u003c\/p\u003e\u003cp\u003eb.     Body Detection \/ Tracking\u003c\/p\u003e\u003cp\u003ec.     Image to Text Analysis\u003c\/p\u003e\u003cp\u003e5.     Building Custom Models\u003c\/p\u003e\u003cp\u003eThis chapter will cover developing custom Computer Vision models \/ algorithms.\u003c\/p\u003ea.     Custom Object Tracking\u003cp\u003e\u003c\/p\u003e\u003cp\u003eb.     Custom Barcode Generator \/ Reader (similar to Snapchat Codes aka Snapcodes)\u003c\/p\u003e\u003cp\u003e6.     Augmented Reality using OpenCV\u003c\/p\u003e\u003cp\u003eThis chapter will cover the two main approaches used in the Augmented Reality industry; marker-based \u0026amp; marker-less AR. \u003c\/p\u003e\u003cp\u003ea.     Marker-based Augmented Reality\u003c\/p\u003eb.     Marker-less Augmented Reality using Visual Inertial Estimation on a Phone\u003cp\u003e\u003c\/p\u003e\u003cp\u003e7.     Augmented Reality using ARKit \u0026amp; OpenCV\u003c\/p\u003e\u003cp\u003eThis chapter will cover how to use both ARKit and OpenCV technologies simultaneously.\u003c\/p\u003e\u003cp\u003ea.     Using Body Tracking with ARKit\u003c\/p\u003e\u003cp\u003eb.     Using Face Detection with ARKit\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":49409123680599,"sku":"9781484274613","price":999.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484274613.jpg?v=1730505524"},{"product_id":"beginning-ios-game-center-and-gamekit-9781484277553","title":"Beginning iOS Game Center and GameKit","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eCreate fun and polished games and gamify your apps with GameKit and Game Center. This fully updated new edition of Kyle Richter's classic can help you reach new customers through social integrations, multiplayer, and  achievements. Quickly add a level of polish to your apps that used to take weeks of hard work and late nights.   Implementing a leaderboard and achievement system has never been so simple! Gone are the days of writing and maintaining your own server. You'll also see how to easily add advanced networking concepts like VoIP support in hours, not days. Game Center is heavily pushed and promoted by Apple. By adding Game Center into your game, not only do you gain access to polished and professional features but your app will see a boost in downloads and sharing.   Expeditiously implement a plethora of advanced social networking concepts into your apps. Create custom Game Center Manager classes that can be rapidly deployed into any of your new or existing projects. And jump ri\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003e\u003cb\u003eChapter 1: Getting Started with Game Kit and Game Center \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003e\u003cbr\u003e\u003c\/b\u003eGame Kit and Game Center a History\u003cbr\u003eGame Center Benefits and Marketing\u003cb\u003e\u003cbr\u003e\u003c\/b\u003eGame Kit: An Overview \u003c\/p\u003e\u003cp\u003eSample Game: UFOs\u003c\/p\u003e\u003cp\u003eUFOs: Examining the Source Code\u003c\/p\u003e\u003cp\u003eGetting Started with iTunes Connect\u003c\/p\u003e\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 2: Game Center: Setting Up and Getting Started \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eGame Center from the user perspective\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eTesting for Game Center \u003c\/p\u003e\u003cp\u003eAuthenticating with Game Center \u003c\/p\u003e\u003cp\u003eThe Sandbox \u003c\/p\u003e\u003cp\u003eWatching for Status Changes\u003c\/p\u003e\u003cp\u003eWorking with GKLocalPlayer\u003c\/p\u003e\u003cp\u003eRetrieving a Friends List\u003c\/p\u003e\u003cp\u003eFriend List Avatars \u003c\/p\u003e\u003cp\u003eWorking with Players \u003c\/p\u003e\u003cp\u003e\u003cb\u003e \u003c\/b\u003e\u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 3: Leaderboards\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eWhy a Leaderboard?\u003c\/p\u003e\u003cp\u003eAn Overview of Leaderboards in Game Center \u003c\/p\u003eConfiguring a Leaderboard in iTunes Connect\u003cp\u003e\u003c\/p\u003e\u003cp\u003ePosting a Score\u003c\/p\u003e\u003cp\u003eSetting a Default Leaderboard \u003c\/p\u003eAdding Score Posting to UFOs\u003cp\u003e\u003c\/p\u003e\u003cp\u003eHandling Failures When Submitting a Score\u003c\/p\u003e\u003cp\u003ePresenting a Leaderboard\u003c\/p\u003eCustomizing the Leaderboard\u003cp\u003e\u003c\/p\u003e\u003cp\u003eMapping a Player ID\u003c\/p\u003e\u003cp\u003eLocal Player Score\u003c\/p\u003eA Better Approach\u003cp\u003e\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 4: Achievements  \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eWhy Achievements?\u003c\/p\u003e\u003cp\u003eAn Overview of Achievements in Game Center\u003c\/p\u003e\u003cp\u003eConfiguring Achievements in iTunes Connect \u003c\/p\u003e\u003cp\u003eResetting Achievements \u003c\/p\u003e\u003cp\u003eAdding Achievement Hooks \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 5: Matchmaking and Invitations  \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003eWhy Add Matchmaking and Invitations to Your App? \u003cp\u003e\u003c\/p\u003e\u003cp\u003eCommon Matchmaking Scenarios \u003c\/p\u003e\u003cp\u003eCreating a New Match Request \u003c\/p\u003ePresenting Match GUI \u003cp\u003e\u003c\/p\u003e\u003cp\u003eHandling Incoming Invitations \u003c\/p\u003e\u003cp\u003eAuto-Matching \u003c\/p\u003eMatching Programmatically\u003cp\u003e\u003c\/p\u003e\u003cp\u003eAdding a Player to a Match\u003c\/p\u003e\u003cp\u003eiOS 5 \u003c\/p\u003eReinvites\u003cp\u003e\u003c\/p\u003e\u003cp\u003ePlayer Groups\u003c\/p\u003e\u003cp\u003ePlayer Attributes\u003c\/p\u003e\u003cp\u003ePlayer Activity\u003c\/p\u003e\u003cp\u003eUsing Your Own Server (Hosted Matches) \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 6: The Peer Picker \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eBenefits of the Peer Picker \u003c\/p\u003e\u003cp\u003eReal-World Examples\u003c\/p\u003e\u003cp\u003eWorking with Sessions \u003c\/p\u003e\u003cp\u003ePresenting a Peer Picker \u003c\/p\u003e\u003cp\u003eAdvanced GKSession Interaction \u003c\/p\u003e\u003cp\u003eThe Peer Picker Delegate\u003c\/p\u003e\u003cp\u003eSummary \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 7: Network Design Overview\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eThree Types of Networks \u003c\/p\u003e\u003cp\u003eLess Common Networks \u003c\/p\u003e\u003cp\u003eReliable Data vs. Unreliable Data\u003c\/p\u003e\u003cp\u003eSending Only What Is Needed\u003c\/p\u003e\u003cp\u003ePrediction and Extrapolation\u003c\/p\u003e\u003cp\u003eFormatting Messages \u003c\/p\u003e\u003cp\u003ePreventing Cheating and Preventing Timeout-Related Disconnections\u003c\/p\u003e\u003cp\u003eWhat to Do When All Else Fails \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 8: Exchanging Data  \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eModifying a Single-Player Game\u003c\/p\u003e\u003cp\u003eSetting Up Our Engine for Multiplayer \u003c\/p\u003e\u003cp\u003ePutting Everything Together \u003c\/p\u003e\u003cp\u003eDisconnections \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 9: Turned-Based Gaming with Game Center \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003eA New Sample Project \u003cp\u003e\u003c\/p\u003e\u003cp\u003eGKTurnedBasedMatchmakerViewController \u003c\/p\u003e\u003cp\u003eStarting a New Game\u003c\/p\u003eMaking the First Move \u003cp\u003e\u003c\/p\u003e\u003cp\u003eContinuing a Game in Progress\u003c\/p\u003e\u003cp\u003eEnding a Match \u003c\/p\u003eQuitting and Forfeiting \u003cp\u003e\u003c\/p\u003e\u003cp\u003eProgrammatic Matches\u003c\/p\u003e\u003cp\u003eGKTurnBasedEventHandler \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 10: Voice Chat\u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003e\u003cp\u003eVoice Chat for Game Center\u003c\/p\u003e\u003cp\u003eVoice Chat for Game Kit \u003c\/p\u003e\u003cp\u003ePutting It Together \u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003e\u003cb\u003eChapter 11: In-App Purchase with StoreKit  \u003c\/b\u003e\u003cb\u003e\u003c\/b\u003e\u003c\/p\u003eSetting Up Your App in iTunes Connect \u003cp\u003e\u003c\/p\u003e\u003cp\u003eAdding Products to Your App \u003c\/p\u003e\u003cp\u003ePurchasing a Product\u003c\/p\u003eSubscriptions and Renewals\u003cp\u003e\u003c\/p\u003e\u003cp\u003eTest Accounts and Testing Purchases \u003c\/p\u003e\u003cp\u003eSubmitting a Purchase GUI Screenshot \u003c\/p\u003eDeveloper Approval\u003cp\u003e\u003c\/p\u003e\u003cp\u003eReceipts \u003c\/p\u003e\u003cp\u003eTying Everything Together in UFOs \u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":49409123713367,"sku":"9781484277553","price":999.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484277553.jpg?v=1730505524"},{"product_id":"beginning-devops-on-aws-for-ios-development-9781484280225","title":"Beginning DevOps on AWS for iOS Development","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eApply the principles of DevOps in software developmentautomated builds, automated tests, and continuous deployment and deliveryto iOS application development on Amazon Web Services (AWS) cloud. This book provides detailed walkthroughs and example source code is provided for the concepts discussed so you can put theory into practical application.   You'll start by building a basic iOS application and then dive deep into key AWS Developer tools and services to see how they can be used in iOS application development. Then review the details of the integration of these fully managed AWS services with open-source tools such as Jenkins and Fastlane that allow developers to get the best of both worlds and further help to enhance and increase agility in the development lifecycle of iOS apps.  You'll also investigate the Amazon EC2 Mac instance, which allows you to run XCode in a cloud environment for the first time to leverage the flexibility,elasticity, and scale of AWS. It also allows for se\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eChapter 1: Overview of DevOps and Continuous Deployment\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• What is DevOps\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Principles of DevOps\u003c\/p\u003e\u003cp\u003e• Continuous Integration\u003c\/p\u003e\u003cp\u003e• Continuous Deployment\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 2: Overview of iOS application development\u003c\/p\u003e\u003cp\u003e• iOS development environment\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Building with Xcode\u003c\/p\u003e\u003cp\u003e• Automation with fastlane\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 3: Core Amazon Web Services (AWS) Concepts \u003c\/p\u003e\u003cp\u003e• What is Cloud Computing and AWS\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Introduction to Core AWS Services\u003c\/p\u003e\u003cp\u003e• The value proposition of AWS\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 4: DevOps on AWS\u003c\/p\u003e\u003cp\u003e• Continuous Integration \u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Continuous Delivery\u003c\/p\u003e\u003cp\u003e• Microservices\u003c\/p\u003e\u003cp\u003e• Infrastructure as Code\u003c\/p\u003e\u003cp\u003e• Monitoring and Logging \u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 5: Amazon EC2 Mac Build Server\u003c\/p\u003e\u003cp\u003e• iOS development at scale without EC2 Mac build server\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Deploying EC2 Mac Server\u003c\/p\u003e\u003cp\u003e• Connecting to your EC2 Mac Server\u003c\/p\u003e\u003cp\u003e• Monitoring for EC2 macOS\u003c\/p\u003e\u003cp\u003e• Other Cloud-based Mac build server Offerings\u003c\/p\u003e\u003cp\u003e \u003c\/p\u003e\u003cp\u003eChapter 6: Setup Development tools on the Build server\u003c\/p\u003e\u003cp\u003e• Apple developer Command-line tools\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Setting up Xcode\u003c\/p\u003e\u003cp\u003e• Setting up Jenkins\u003c\/p\u003e\u003cp\u003e• Setting up Fastlane\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003eChapter 7: Source Control with AWS Code Commit\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Git fundamentals\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Creating an AWS CodeCommit repository\u003c\/p\u003e\u003cp\u003e• Approval Rules in AWS CodeCommit\u003c\/p\u003e\u003cp\u003e• Security in AWS CodeCommit\u003c\/p\u003e\u003cp\u003e• Monitoring an AWS CodeCommit Repository\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 8: Automated build with Jenkins\u003c\/p\u003e\u003cp\u003e• Introduction to Jenkins Plugins\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Jenkins git Plugin\u003c\/p\u003e\u003cp\u003e• Integrate an AWS CodeCommit Repository with Jenkins\u003c\/p\u003e\u003cp\u003e• iOS application build on Jenkins\u003c\/p\u003e\u003cp\u003e• Managing build artifacts\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 9: Automated Testing with AWS Device Farm\u003c\/p\u003e\u003cp\u003e• Introduction to AWS Device Farm\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Setting up a Device Farm Project and Test Runs\u003c\/p\u003e\u003cp\u003e• Integrate Device Farm with Jenkins\u003c\/p\u003e\u003cp\u003e• Automating AWS Device Farm\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 10: Automated Deployment\u003c\/p\u003e\u003cp\u003e• Integrate Jenkins and Fastlane for Continuous Integration\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Automate Code Signing\u003c\/p\u003e\u003cp\u003e• Automate Appstore deployments\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 11 - Pipeline Orchestration with AWS CodePipeline\u003c\/p\u003e\u003cp\u003e• Creating a CICD Pipeline with AWS CodePipeline\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Integrating AWS CodeCommit to Pipeline\u003c\/p\u003e\u003cp\u003e• Integrating Jenkins to Pipeline for Building\u003c\/p\u003e\u003cp\u003e• Integrate AWS Device Farm to Pipeline for Testing\u003c\/p\u003e\u003cp\u003e• Adding an automated Deployment stage\u003c\/p\u003e\u003cp\u003e• Monitoring AWS CodePipeline\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eChapter 12 – Multi AWS Environment Pipeline Deployment\u003c\/p\u003e\u003cp\u003e• Why need a Cross-Account Pipeline Deployment\u003cbr\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e• Prerequisites of a Cross-Account Pipeline\u003c\/p\u003e\u003cp\u003e• Creating a Pipeline with AWS CodeCommit in a different account\u003c\/p\u003e\u003cp\u003e• Creating a Pipeline with AWS Device Farm in a different account\u003c\/p\u003e\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\u003cp\u003eAudience: Beginning\u003c\/p\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":49409124303191,"sku":"9781484280225","price":999.99,"currency_code":"GBP","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484280225.jpg?v=1730505526"},{"product_id":"swift-recipes-for-ios-developers-9781484280973","title":"Swift Recipes for iOS Developers","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eBoost your iOS developer career by learning from real-life examples and start writing code for one of the most successful platforms ever. No matter if you''re an experienced developer or just a beginner, you''ll find something new and something useful for your future projects here.    \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\u003cdiv\u003eAll of the recipes in this book are taken from real-life commercial projects that have been approved by Apple and published on the App Store. You won''t write Hello, world! and similar programs. Instead you''ll see how to parse different data formats; run JavaScript code right inside your iOS app; and enhance storyboard editor with several simple extensions. You''ll make beautiful modern-looking dialogs with blurs, shadows and rounded corners using only a few lines of code, and safely convert data after analyzing text strings. Go on to animate your layout and get your app shored up to crash as little as possible    \u003c\/div\u003e\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\u003cdiv\u003eEach recipe offers a code\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eChapter 1. Introduction\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 2. Working with Data\u003c\/p\u003e\n\u003cp\u003e·      Conversion between data types\u003c\/p\u003e\n\u003cp\u003e·      Extracting data from dictionaries\u003c\/p\u003e\n\u003cp\u003e·      Parsing JSON, XML and other formats\u003c\/p\u003e\n\u003cp\u003e·      Serialization and deserialization\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 3. Working with Strings\u003c\/p\u003e\n\u003cp\u003e·      String and NSString\u003c\/p\u003e\n\u003cp\u003e·      Analyzing String content\u003c\/p\u003e\n\u003cp\u003e·      Data verification. Emails and phone numbers\u003c\/p\u003e\n\u003cp\u003e·      Encoding and decoding Base64\u003c\/p\u003e\n\u003cp\u003e·      MD5 and other hashes\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 4. UIKit and Storyboards\u003c\/p\u003e·      Navigation between screens\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e·      Popups and dialogs\u003c\/p\u003e\n\u003cp\u003e·      Maps and navigation\u003c\/p\u003e\n\u003cp\u003e·      Rounded corners, shadows and other effects\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 5. Image Processing\u003c\/p\u003e\n\u003cp\u003e·      Reading and writing images\u003c\/p\u003e·      Downloading and caching images\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e·      Resizing and cropping\u003c\/p\u003e\n\u003cp\u003e·      Preparing and showing profile picture\u003c\/p\u003e\n\u003cp\u003e·      Image masks\u003c\/p\u003e\n\u003cp\u003e·      Effects and filters\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 6. Text Editing\u003c\/p\u003e·      Analyzing user input in real time\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e·      Formatting users input\u003c\/p\u003e\n\u003cp\u003e·      Work with emojis\u003c\/p\u003e\n\u003cp\u003e·      Floating prefix or suffix\u003c\/p\u003e\n\u003cp\u003e·      Keyboard handling\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 7. UI Animations and Effects\u003c\/p\u003e·      Animating views\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e·      Parallax effect\u003c\/p\u003e·      Hero animation\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 8. SwiftUI\u003c\/p\u003e\n\u003cp\u003e·      Inserting UIKit components\u003c\/p\u003e\n\u003cp\u003e·      Applying styles with ViewModifier\u003c\/p\u003e\n\u003cp\u003e·      Creating custom views\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003eAudience: Beginning\u003cbr\u003e\u003c\/p\u003e\n\u003c\/div\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":49409124598103,"sku":"9781484280973","price":41.24,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484280973.jpg?v=1730505526"},{"product_id":"unleash-core-data-9781484282106","title":"Unleash Core Data","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eCreate apps with rich capabilities to receive, process, and intelligently store data that work across multiple devices in the Apple ecosystem. This book will show you how to organize your app''s data and make it work for you and your users! \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\u003cdiv\u003eWith many frameworks, there''s a point in the learning curve where you stop fearing the mountain of knowledge to learn and just enjoy the power to play and develop. For some reason many developers feel that point seems harder to reach with Core Data. And that''s unjustified-Core Data is a great framework that with powerful, optimized tools right out of the box. So it''s time you stopped fearing the journey and took your steps further out into the world of enjoying the power of Core Data.\u003cdiv\u003e\n\u003cbr\u003eWith what you learn, you can build apps to deal with a large amount of data and complex relationships in intelligent and efficient ways. Core Data has many secrets underneath the hood that can power up your persistent store like\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003eChapter 1: Introduction\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•             Importance of Core Data as a persistent store\u003c\/p\u003e\n\u003cp\u003e•             How to read this book\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 2: Core Data Stack and Setup\u003c\/p\u003e\n\u003cp\u003e•             The Core Data Framework\u003c\/p\u003e\n\u003cp\u003e•             Data Model\u003c\/p\u003e\n\u003cp\u003e•             Persistent Store\u003c\/p\u003e\n\u003cp\u003e•             Container\u003c\/p\u003e•             Holding the stack\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 3: Data Model\u003c\/p\u003e\n\u003cp\u003e•             The different types\u003c\/p\u003e\n\u003cp\u003e•             Relationships\u003c\/p\u003e•             Fetched Properties\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•             Parent Entities\u003c\/p\u003e\n\u003cp\u003e•             Deletion\u003c\/p\u003e\n\u003cp\u003e•             Code Generation\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 4: Working with Contexts\u003c\/p\u003e\n\u003cp\u003e•             Contexts\u003c\/p\u003e\n\u003cp\u003e•             Create Objects\u003c\/p\u003e\n\u003cp\u003e•             Delete, Update, and Fetching\u003c\/p\u003e\n\u003cp\u003e•             Sorting\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 5: Advanced Predicates\u003c\/p\u003e\n\u003cp\u003e•             Compound\u003c\/p\u003e\n\u003cp\u003e•             INCLUDE\u003c\/p\u003e\n\u003cp\u003e•             String Queries\u003c\/p\u003e\n\u003cp\u003e•             Sorting\u003c\/p\u003e\n\u003cp\u003e•             Relationships Queries\u003c\/p\u003e\n\u003cp\u003e•             Subquery\u003c\/p\u003e\n\u003cp\u003e•             Regular Expressions\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 6: Implemention\u003c\/p\u003e\n\u003cp\u003e•             Converting to structs\u003c\/p\u003e\n\u003cp\u003e•             UIFetchController\u003c\/p\u003e\n\u003cp\u003e•             Undo\u003c\/p\u003e\n\u003cp\u003e•             Generics and Wrappers\u003c\/p\u003e•             Combine and SwiftUI\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•             Saving files\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 7: Performance\u003c\/p\u003e\n\u003cp\u003e•             Multi Threading\u003c\/p\u003e•             Debugging\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e•             Faulting\u003c\/p\u003e\n\u003cp\u003e•             Fetching Optimisation\u003c\/p\u003e\n\u003cp\u003eo             Limits\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 8: Core Data Underneath\u003c\/p\u003e\n\u003cp\u003e•             Faulting\u003c\/p\u003e\n\u003cp\u003e•             Snapshotting\u003c\/p\u003e\n\u003cp\u003e•             Sqlite File Scheme\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 9: Maintenance\u003c\/p\u003e\n\u003cp\u003e•             Migrations and Versioning\u003c\/p\u003e\n\u003cp\u003eo             Light migration\u003c\/p\u003e\n\u003cp\u003eo             Heavyweight migration\u003c\/p\u003e\n\u003cp\u003e•             Unit Testing\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003eChapter 10: Sharing\u003c\/p\u003e\n\u003cp\u003e•             iCloud Sync\u003c\/p\u003e\n\u003cp\u003e•             Extensions\u003c\/p\u003e\n\u003cp\u003e•             Swift Package\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003eAudience: Advanced\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"APress","offers":[{"title":"Default Title","offer_id":49409124991319,"sku":"9781484282106","price":49.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781484282106.jpg?v=1730505527"},{"product_id":"introducing-ios-8-9781491908617","title":"Introducing iOS 8","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eWant to design and develop iOS apps, but have little or no programming experience? This practical guide will show you how. By eliminating the jargon and simplifying programming into everyday concepts, you'll learn how to use the basic building blocks necessary to build apps for iOS devices.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49409186070871,"sku":"9781491908617","price":25.59,"currency_code":"GBP","in_stock":true}]},{"product_id":"os-x-el-capitan-the-missing-manual-9781491917954","title":"OS X El Capitan The Missing Manual","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eThe new edition of David Pogue's #1 bestselling Mac book shows you how to use key new features such as swiping gestures, Notes, a new Spotlight search system, the Safari pinning feature, and Split View.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49409186988375,"sku":"9781491917954","price":23.79,"currency_code":"GBP","in_stock":true}]},{"product_id":"photos-for-mac-and-ios-the-missing-manual-9781491917992","title":"Photos for Mac and iOS The Missing Manual","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eWith this comprehensive guide, you'll learn how to import, organize, and share your digital memories, as well as how to improve, print, and use your photos in creative projects.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49409188594007,"sku":"9781491917992","price":25.19,"currency_code":"GBP","in_stock":false}]},{"product_id":"practical-artificial-intelligence-with-swift-9781492044819","title":"Practical Artificial Intelligence with Swift","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eCreate and implement AI-based features in your Swift apps for iOS, macOS, tvOS, and watchOS. With this practical book, programmers and developers of all kinds will find a one-stop shop for AI and machine learning with Swift.","brand":"O'Reilly Media","offers":[{"title":"Default Title","offer_id":49409193541975,"sku":"9781492044819","price":35.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781492044819.jpg?v=1730505868"}],"url":"https:\/\/bookcurl.com\/collections\/apple-operating-systems.oembed?page=3","provider":"Book Curl","version":"1.0","type":"link"}