If you’re looking for a comprehensive guide to design patterns, our new course is ideal for you. In Swift Design Patterns, you’ll get 24 detailed videos totalling 3.5 hours of viewing time, in which you’ll learn some common design patterns that you can use over and over in many different languages.
In my previous post in this series, I wrote about the Model-View-Controller pattern and some of its imperfections. Despite the clear benefits MVC brings to software development, it tends to fall short in large or complex Cocoa applications.
Go couldn’t load code dynamically prior to Go 1.8. I’m a big proponent of plugin-based systems, which in many cases require loading plugins dynamically. I even considered at some point writing a plugin package based on C integration.
We’ve already covered a lot of ground in our Android Architecture Components series. We started out talking about the idea behind the new architecture and looking at the key components presented at Google I/O.
Kotlin is a modern programming language that compiles to Java bytecode. It is free and open source, and promises to make coding for Android even more fun.
If you want to learn about a rising web framework, you should check out Phoenix, a new framework for the Elixir language. With a server-side MVC pattern, it’s similar to other web frameworks like Ruby on Rails or the Python framework Django, but it also contains powerful new ideas to make web development easier and more effective.
MVC stands for Model-View-Controller, and it’s a widespread architectural pattern for software development. It’s the de facto design pattern for Cocoa development, and it has been for many, many years. Most of us can’t imagine building applications without it. Both UIKit (iOS) and AppKit (macOS) make frequent use of MVC. It almost seems as if we don’t have another option to build applications for iOS, tvOS, macOS, and watchOS.
Go programs that run multiple concurrent computations in goroutines need to manage their lifetime. Runaway goroutines can get into infinite loops, deadlock other waiting goroutines, or just take too long. Ideally, you should be able to cancel goroutines or have them time out after a fashion.
Coding an iOS app is hard work, so it makes sense that devs want to cut corners and find ways to get their app online as quickly as possible. But a successful app will be around for a long time—that means years of bug fixing, feature enhancements, and working with other coders.
In this tutorial you’ll go through a whirlwind tour of the asynchronous I/O facilities introduced in Python 3.4 and improved further in Python 3.5 and 3.6.