All Projects → udacity → Ios Nd Gcd

udacity / Ios Nd Gcd

Licence: mit
Resources for Udacity's Grand Central Dispatch course.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Ios Nd Gcd

Asynchronous
Implementation-agnostic asynchronous code
Stars: ✭ 13 (-71.74%)
Mutual labels:  asynchronous
Tokio File Unix
Asynchronous support for epollable files via Tokio on Unix-like platforms
Stars: ✭ 29 (-36.96%)
Mutual labels:  asynchronous
Handle Path Oz
Android Library to handle multiple Uri's(paths) received through Intents.
Stars: ✭ 36 (-21.74%)
Mutual labels:  asynchronous
Request.swift
A tiny HTTP client written in swift. URLSession alternative
Stars: ✭ 14 (-69.57%)
Mutual labels:  asynchronous
Franticapparatus
Type and memory safe promises for Swift, supports cancellation
Stars: ✭ 27 (-41.3%)
Mutual labels:  asynchronous
Csp
Communicating Sequential Processes in JavaScript
Stars: ✭ 33 (-28.26%)
Mutual labels:  asynchronous
Parallel Ssh
Asynchronous parallel SSH client library.
Stars: ✭ 864 (+1778.26%)
Mutual labels:  asynchronous
Async Deeprl
Playing Atari games with TensorFlow implementation of Asynchronous Deep Q-Learning
Stars: ✭ 44 (-4.35%)
Mutual labels:  asynchronous
Python Adguardhome
Asynchronous Python client for the AdGuard Home API
Stars: ✭ 29 (-36.96%)
Mutual labels:  asynchronous
Dkregistry Rs
A pure-Rust asynchronous library for Docker Registry API v2
Stars: ✭ 35 (-23.91%)
Mutual labels:  asynchronous
Netty Websocket Spring Boot Starter
🚀 lightweight high-performance WebSocket framework ( 轻量级、高性能的WebSocket框架)
Stars: ✭ 885 (+1823.91%)
Mutual labels:  asynchronous
Tk Listen
A library that allows to listen network sockets with proper resource limits and error handling
Stars: ✭ 27 (-41.3%)
Mutual labels:  asynchronous
Tarant
Reactive, actor based framework that can be used in client and server side.
Stars: ✭ 33 (-28.26%)
Mutual labels:  asynchronous
Read Multiple Files
Read multiple files Observable way
Stars: ✭ 13 (-71.74%)
Mutual labels:  asynchronous
Partial.lenses.validation
Partial Lenses Validation is a JavaScript library for validating and transforming data
Stars: ✭ 39 (-15.22%)
Mutual labels:  asynchronous
Shrine Transloadit
Transloadit integration for Shrine
Stars: ✭ 12 (-73.91%)
Mutual labels:  asynchronous
Queuer
Queuer is a queue manager, built on top of OperationQueue and Dispatch (aka GCD).
Stars: ✭ 964 (+1995.65%)
Mutual labels:  asynchronous
Tackle
💯 percent reliable microservice communication
Stars: ✭ 44 (-4.35%)
Mutual labels:  asynchronous
Mecks unit
A simple Elixir package to elegantly mock module functions within (asynchronous) ExUnit tests using Erlang's :meck library
Stars: ✭ 43 (-6.52%)
Mutual labels:  asynchronous
Jdonframework
Domain-Driven-Design Pub/Sub Domain-Events framework
Stars: ✭ 978 (+2026.09%)
Mutual labels:  asynchronous
iOS Developer Nanodegree logo

Grand Central Dispatch

Platform iOS

This repository contains resources for Udacity's Grand Central Dispatch course.

Overview

There are two parts to this repo: (1) the playgrounds about closures and (2) the FatImages projects. The FatImages projects are separated into the following steps:

Step 1

Add basic scaffolding with stub implementation of the three main methods:

    // This method downloads a huge image, blocking the main queue and
    // the UI.
    // This si for instructional purposes only, never do this.
    @IBAction func synchronousDownload(sender: UIBarButtonItem) {
    }
    
    // This method avoids blocking by creating a new queue that runs
    // in the background, without blocking the UI.
    @IBAction func simpleAsynchronousDownload(sender: UIBarButtonItem) {
    }
    
    // This code downloads the huge image in a global queue and uses a completion
    // closure.
    @IBAction func asynchronousDownload(sender: UIBarButtonItem) {
    }

Step 2

Add synchronous example, line by line.

Step 2.1

Same as aboved, but compacted into a neat and safe if-let construct.

Step 3

Add simple asynchronous method.

Step 4

Add asynchronous code running the completion closure in the background. Eventually this will crash. Explain why completion handlers should go in the main queue.

Step 4.1

Add asyncronous code that runs the completion block in the main queue. Now we're good.

Step 5

Provide user feedback with an activity indicator. It works everywhere except the synchronous method. Why? Enter the runloop and how to delay a task with GCD.

Step 5.1

Fix the synchronous method with dispatch_after()

Setup

Generally speaking, the projects can run without any additional setup. However, consult the Grand Central Dispatch course for more information.

Maintainers

@OwenLaRosa

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].