Cocoacasts Bundle Plus
Cocoacasts Bundle Plus
$117.00
Regular Price
$79.00
Bundle Price

Cocoacasts Bundle Plus

Mastering Core Data With Swift
Mastering MVVM With Swift
The Missing Manual for Swift Development

About the Bundle

This bundle includes:

  • Mastering MVVM With Swift
  • Mastering Core Data With Swift
  • The Missing Manual for Swift Development
  • Share this bundle

About the Books

Mastering Core Data With Swift

Mastering Core Data With Swift

  • 276

    Pages

  • 100%

    Complete

  • PDF

  • EPUB

  • MOBI

  • APP

The first time I came into contact with Core Data was more than ten years ago. I was immediately overwhelmed by the terminology, the complex setup, and the many rules I had to stick to.

Does this sound familiar? I wondered if it was worth the hassle? And why did experienced developers swear by Core Data? How was I going to master Core Data and integrate it into an application without running into mysterious crashes?

The Solution Was Surprisingly Simple

Whenever I teach developers Core Data, I emphasize how important it is to focus on the fundamentals first. The vast majority of issues developers run into are caused by a lack of knowledge about the ins and outs of the framework. Core Data isn’t difficult if you understand how the framework works.

A Proven Roadmap to Master Core Data

Over the years, I’ve taught thousands of developers how to use Core Data. This has taught me what the common pitfalls are developers run into. In Mastering Core Data With Swift, I show you the pitfalls you need to avoid.

The video course follows a proven roadmap that starts with the fundamentals of the framework. We cover some theory, but, more importantly, you immediately apply what you learn to build a real application. Practice makes perfect. Right? This very much applies to any programming subject.

Ready for Xcode 9 and Swift 4

In Mastering Core Data With Swift, you learn everything you need to know to integrate Core Data in a new or an existing Swift project. We focus on the key players of the framework and build an application that takes advantage of the core features of the framework.

We use the latest and greatest to build an application. Xcode 8 & 9 have many improvements that make working with Core Data fantastic. And the intuitive syntax of Swift adds the cherry on the cake. It's never been easier to get started with Core Data.

Building a Real Application

We start the course with an exploration of the heart of every Core Data application, the Core Data stack. We then take a closer look at the data model of a Core Data application. You learn about entities, attributes, and relationships. These are the ingredients of every Core Data application.

During the course, we build an application that manages notes. We start from scratch, build a Core Data stack, create a data model, and add several features, such as categories and tags. Every feature teaches you a new concept of the Core Data framework.

… And Beyond the Basics

We don’t skip the more advanced features of the framework. We discuss data model migrations, working with multiple managed object contexts, and using Core Data in a multithreaded environment.

While some of these topics may seem advanced, they are essential for building a robust, scalable Core Data application. This is a common mistake developers new to Core Data make.

What Other Are Saying

A big thank you. This has been the single most effective course I've taken about iOS. I put it into practice right away and our App Store app, and its testing, has benefited greatly. - Jake Young (Chief Information Officer)
Mastering MVVM With Swift

Mastering MVVM With Swift

  • 187

    Readers

  • PDF

  • EPUB

  • MOBI

  • APP

Massive View Controller Syndrome

Firing up Xcode and starting a new project is a great feeling. The first few days or weeks don’t feel like work. Everything goes according to plan.

But as the code base of your project grows, it becomes harder and harder to manage the project. The view controllers of your project start to put on weight … a lot of weight. They become more than view controllers. They take on responsibilities they didn’t sign up for. Don’t they?

Yet you’ve done everything right. You’ve stuck to the rules of the Model-View-Controller pattern. Why have you coded yourself in a corner? And why is it frustrating or downright scary to add features or refactor existing functionality?

It’s Time to Cure MVC

If your project is suffering from Massive View Controller syndrome, then the Model-View-ViewModel pattern is the cure to your problem. The Model-View-ViewModel pattern has been around for many, many years, but it only recently gained traction in the Cocoa community.

MVVM extends MVC by resolving common issues. The result is a robust application architecture with lean view controllers, improved testability, and a better separation of concerns. How does that sound?

Take Control of Your Project With MVVM

In Mastering MVVM With Swift, we refactor an existing application built with MVC to use MVVM instead. The results are dramatic and the MVVM pattern is surprisingly easy to adopt in your own projects.

You learn the differences between Model-View-Controller and Model-View-ViewModel, highlighting the benefits Model-View-ViewModel has over Model-View-Controller.

After a short introduction, we take an application built with Model-View-Controller and refactor it to use Model-View-ViewModel instead. Along the way, you learn about the anatomy of view models, how to create them, and how to test them.

Last but not least, we add protocols and protocol-oriented programming to the mix to further simplify the view controllers in the project.

At the end of this course, you have the knowledge and, more importantly, the hands-on experience to apply Model-View-ViewModel in your own projects.

Ready for Xcode 9 and Swift 4

In Mastering MVVM With Swift, you learn everything you need to know to integrate MVVM in a new or an existing Swift project. We focus on the key aspects of the pattern and refactor an application that takes advantage of the core features of MVVM. We use the latest and greatest to build an application, which means we use Xcode 9 and Swift 4.

Battling Massive View Controller Syndrome

Are the view controllers of your projects suffering from Massive View Controller syndrome? You’ve carefully crafted the architecture of your application using the Model-View-Controller pattern and, yet, the view controllers of your project are ready to burst and they’re impossible to test.

Adding a feature forces you to wade through hundreds of lines of code. You hope you don’t break anything while you carefully add a few lines of code. Don’t get me wrong. Your code isn’t bad. But there’s just so much of it. You’ve applied the Model-View-Controller pattern like you were told to and you still end up with an architecture you aren’t quite happy with. Does this sound familiar?

It’s Not You. It’s MVC.

Because Apple’s frameworks are impregnated with the Model-View-Controller pattern we think it’s the right or only tool for the job. Don’t make the same mistake. There’s nothing wrong with the Model-View-Controller pattern, but there are better alternatives, especially if you’re using Swift.

Put Your View Controllers On a Diet

It’s time to put the view controllers of your project on a diet. I’m sure you’ve heard about the Model-View-ViewModel pattern. It’s the new cool kid in town. But the thing is that it isn’t a kid. MVVM has been around for many, many years and has earned its stripes. It’s a proven strategy for robust, scalable applications.

Where Should This Code Go?

I bet you’ve asked yourself many times “Where should I put this piece of code?” Every developer asks himself/herself this question, multiple times a day. If you’re still using MVC, then chances are that the answer is “the view controller”. Stop. Give MVVM a shot. You can thank me later.

MVVM is a perfect fit for Cocoa applications powered by Swift. The view model unburdens the view controller from the ungrateful task of data manipulation and transformation. The result is a focused, testable view model and a skinny, lightweight view controller.

Damian Esteban
Jake Young

2 reader testimonials

The Missing Manual for Swift Development

The Missing Manual for Swift Development

  • 162

    Readers

  • 100%

    Complete

  • PDF

  • EPUB

  • MOBI

  • APP

Writing a few lines of Swift is surprisingly easy. Once you start to dig deeper, though, you discover that building an application for Apple's platforms is more challenging than it seems. This book outlines the challenges you face along your journey and how to overcome them.

Some of the more obvious topics I cover in the book include dependency management, source control, code reviews, continuous integration, style guides, working in a team, tooling, project organization and documentation, and release strategies.

The topics I found most interesting to write about, however, are more meta, such as when to break rules, freelancing and subcontracting, staying productive as a developer, shipping projects, leaving your comfort zone, and dealing with challenging problems.

The book is filled with useful information that I've picked up over the years, sometimes from other developers and sometimes by learning the hard way. This book doesn't include code snippets or sample projects. The goal of the book is to provide insights and answers to questions that are often overlooked or ignored.

Who is this book for? This book is for every type of developer, but it primarily focuses on Swift and Cocoa development. If you're developing for Apple's platforms, then you'll find a lot of useful information in this book, regardless of your experience.

About the Author

Bart Jacobs
Bart Jacobs

My name is Bart Jacobs and I run a mobile development company, Code Foundry. I’ve been programming for more than fifteen years, focusing on Cocoa development soon after the introduction of the iPhone in 2007.

Over the years, I’ve taught thousands of people about Swift and Cocoa development. Through my experience teaching, I’ve discovered and learned about the main problems people struggle with.

I created Cocoacasts to offer a roadmap for anyone interested in learning Swift and Cocoa development. Through Cocoacasts, I provide a clear path to learn the tools, the language, and the frameworks you need to master Swift and Cocoa development.

I currently work as a freelance developer and teach people about Swift and Cocoa development. While I primarily focus on developing software for Apple’s platforms, I consider myself a full stack developer with a love and interest for Swift and Ruby development.

You can find me on TwitterFollow me and say hi. You can also follow Cocoacasts on Twitter if you’re interested in what I teach on Cocoacasts.

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms

Write and Publish on Leanpub

Authors and publishers use Leanpub to publish amazing in-progress and completed ebooks, just like this one. You can use Leanpub to write, publish and sell your book as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub