(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| Project | # of Top 100 Free Apps (US) | |
|---|---|---|
| facebook-ios-sdk | 67 | |
| Bolts-iOS | 48 | |
| AFNetworking | 39 | |
| Google-Mobile-Ads-SDK | 38 | |
| Reachability (Apple) | 38 | |
| Crashlytics | 37 | |
| Flurry-iOS-SDK | 31 | |
| CocoaPods | 30 | |
| GoogleConversionTracking | 29 |
| #import <UIKit/UIKit.h> | |
| #import <SceneKit/SceneKit.h> | |
| #import <OpenGLES/ES2/gl.h> | |
| #import <OpenGLES/ES2/glext.h> | |
| @interface View : UIView | |
| @property (strong, nonatomic) SCNScene *scene; | |
| - (void)renderFrame; |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| http://devstreaming.apple.com/videos/wwdc/2014/403xxksrj0qs8c0/403/403_hd_intermediate_swift.mov?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/403xxksrj0qs8c0/403/403_sd_intermediate_swift.mov?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/403xxksrj0qs8c0/403/403_intermediate_swift.pdf?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/419xxli6f60a6bs/419/419_hd_advanced_graphics_and_animation_performance.mov?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/419xxli6f60a6bs/419/419_sd_advanced_graphics_and_animation_performance.mov?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/419xxli6f60a6bs/419/419_advanced_graphics_and_animation_performance.pdf?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/101xx36lr6smzjo/101/101_hd.mov?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/101xx36lr6smzjo/101/101_sd.mov?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2014/236xxwk3fv82sx2/236/236_hd_building_interruptible_and_responsive_interactions.mov?dl=1 | |
| http://devstreaming.apple.com/videos/wwdc/2 |
| #import <UIKit/UIKit.h> | |
| @interface UIImage (BezierPath) | |
| + (UIImage *)imageWithBezierPathFill:(UIBezierPath *)bezierPath; | |
| + (UIImage *)imageWithBezierPathStroke:(UIBezierPath *)bezierPath; | |
| @end |
| #ifndef NS_DESIGNATED_INITIALIZER | |
| #if __has_attribute(objc_designated_initializer) | |
| #define NS_DESIGNATED_INITIALIZER __attribute((objc_designated_initializer)) | |
| #else | |
| #define NS_DESIGNATED_INITIALIZER | |
| #endif | |
| #endif |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <Bucket | |
| type = "2" | |
| version = "2.0"> | |
| <Breakpoints> | |
| <BreakpointProxy | |
| BreakpointExtensionID = "Xcode.Breakpoint.SymbolicBreakpoint"> | |
| <BreakpointContent | |
| shouldBeEnabled = "Yes" | |
| ignoreCount = "0" |
| #!/bin/sh | |
| for dir in $(ls -d */) | |
| do | |
| if [ -d "$dir"/.git ]; then | |
| echo "$dir" && cd "$dir" && git pull && cd .. | |
| fi | |
| done |
| #!/bin/sh | |
| # | |
| # Adam Sharp | |
| # Aug 21, 2013 | |
| # | |
| # Usage: Add it to your PATH and `git remove-submodule path/to/submodule`. | |
| # | |
| # Does the inverse of `git submodule add`: | |
| # 1) `deinit` the submodule | |
| # 2) Remove the submodule from the index and working directory |