Slide 1

Slide 1 text

Tools for the iOS Developer by Mark Wilkinson Cowtown Code Camp

Slide 2

Slide 2 text

Mark Wilkinson [email protected] About Me • EE grad from UH • former Head of the Houston C# User Group. • formerly .NET developer, now full-time iOS Developer at ChaiOne.

Slide 3

Slide 3 text

Mark Wilkinson [email protected] My Apps

Slide 4

Slide 4 text

Mark Wilkinson [email protected] While a .NET dev in 2011, read this: Getting Started

Slide 5

Slide 5 text

Mark Wilkinson [email protected] then bought this: Getting Started

Slide 6

Slide 6 text

Mark Wilkinson [email protected] Then bought a bunch of these: Getting Started

Slide 7

Slide 7 text

Mark Wilkinson [email protected] Realized I loved the Mac

Slide 8

Slide 8 text

Mark Wilkinson [email protected] Really my first unpublished app attempt:

Slide 9

Slide 9 text

Mark Wilkinson [email protected] Finally made my way out of .NET and into ChaiOne

Slide 10

Slide 10 text

Mark Wilkinson [email protected] Tools, Tips and Tricks

Slide 11

Slide 11 text

Mark Wilkinson [email protected] Tools, Tips and Tricks Know thy commands…

Slide 12

Slide 12 text

Mark Wilkinson [email protected] Tools, Tips and Tricks

Slide 13

Slide 13 text

Mark Wilkinson [email protected] Tools, Tips and Tricks

Slide 14

Slide 14 text

Mark Wilkinson [email protected] Tools, Tips and Tricks

Slide 15

Slide 15 text

Mark Wilkinson [email protected] Tools, Tips and Tricks http://stackoverflow.com/questions/146297/hidden-features-of-xcode

Slide 16

Slide 16 text

Mark Wilkinson [email protected] Tools, Tips and Tricks Alcatraz Package Manager curl -fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh | sh

Slide 17

Slide 17 text

Mark Wilkinson [email protected] Tools, Tips and Tricks SCXcodeMiniMap plugin

Slide 18

Slide 18 text

Mark Wilkinson [email protected] Tools, Tips and Tricks ColorSense plugin

Slide 19

Slide 19 text

Mark Wilkinson [email protected] Tools, Tips and Tricks

Slide 20

Slide 20 text

Mark Wilkinson [email protected] Tools, Tips and Tricks KSImageNamed plugin

Slide 21

Slide 21 text

Mark Wilkinson [email protected] Tools, Tips and Tricks XVim plugin https://github.com/JugglerShu/XVim

Slide 22

Slide 22 text

Mark Wilkinson [email protected] Tools, Tips and Tricks Code Pilot

Slide 23

Slide 23 text

Mark Wilkinson [email protected] Tools, Tips and Tricks StringSense plugin

Slide 24

Slide 24 text

Mark Wilkinson [email protected] Tools, Tips and Tricks Increment the build number http://stackoverflow.com/questions/9855955/xcode-increment-build-number-only-during-archive

Slide 25

Slide 25 text

Mark Wilkinson [email protected] Tools, Tips and Tricks Blocks got you down?

Slide 26

Slide 26 text

Mark Wilkinson [email protected] Xcode shortcuts Tools, Tips and Tricks - Cmd+shft+F opens search navigator - Ctrl+6 go to any method - Shft+Command+O - go to any file - option+click shows pop-up info on the type - option+cmd+click goes to the definition in the other pain of a split screen setup - Ctrl+4 navigate the file tree in the project - Cmd+1 show the file navigator - Cmd+] or [ to indent - Cmd + . stops running app - Cmd+alt+enter bring up assistant editor - alt+enter while in file searcher brings up what you choose on the right pane of assistant editor - Cmd+enter closes assistant editor - TODO and FIXME comments show up in the ctrl+6 list - cmd+shft+[ ] to go between tabs - highlight something you want to find then do cmd+E then cmd+G to cycle through the finds - Ctrl+space bring intellisense back up - Cmd+shft+J select file you're currently viewing in the navigator window (like reshaper alt+shft+L) - alt+-> or <- will let you jump through the line of code by parts/words - cmd+ctrl+E change a variable name at all places in the scope - Hold down ⇧ + ⌥ whilst doing an open file action will open move focus window.

Slide 27

Slide 27 text

Mark Wilkinson [email protected] Tools, Tips and Tricks

Slide 28

Slide 28 text

Mark Wilkinson [email protected] Tools, Tips and Tricks Unit Testing Expecta! https://github.com/specta/expecta http://ocmock.org/

Slide 29

Slide 29 text

Mark Wilkinson [email protected] Package Management Tools, Tips and Tricks

Slide 30

Slide 30 text

Mark Wilkinson [email protected] Xcode alternative? Apps

Slide 31

Slide 31 text

Mark Wilkinson [email protected] Apps Better docs https://github.com/omz/Dash-Plugin-for-Xcode

Slide 32

Slide 32 text

Mark Wilkinson [email protected] Apps Cheat Sheet

Slide 33

Slide 33 text

Mark Wilkinson [email protected] Apps Crop that status bar Status Barred App https://itunes.apple.com/us/app/status-barred/id413853485?mt=12

Slide 34

Slide 34 text

Mark Wilkinson [email protected] Apps Http client

Slide 35

Slide 35 text

Mark Wilkinson [email protected] Paw Apps The missing HTTP and REST API tester for Mac

Slide 36

Slide 36 text

Mark Wilkinson [email protected] QuickRadar Apps

Slide 37

Slide 37 text

Mark Wilkinson [email protected] Apps

Slide 38

Slide 38 text

Mark Wilkinson [email protected] You’re using git right… Apps Source Tree

Slide 39

Slide 39 text

Mark Wilkinson [email protected] GitX Apps

Slide 40

Slide 40 text

Mark Wilkinson [email protected] Mou the markup App Apps

Slide 41

Slide 41 text

Mark Wilkinson [email protected] Chocolate Apps

Slide 42

Slide 42 text

Mark Wilkinson [email protected] LaunchBar Apps

Slide 43

Slide 43 text

Mark Wilkinson [email protected] Reflector Apps

Slide 44

Slide 44 text

Mark Wilkinson [email protected] Own the Night. Apps

Slide 45

Slide 45 text

Mark Wilkinson [email protected] Timeout app Apps

Slide 46

Slide 46 text

Mark Wilkinson [email protected] Focus Booster app Apps

Slide 47

Slide 47 text

Mark Wilkinson [email protected] Go to the coffee shop Apps

Slide 48

Slide 48 text

Mark Wilkinson [email protected] NSScreencast Resources

Slide 49

Slide 49 text

Mark Wilkinson [email protected] Giant elephant in the room now… Future

Slide 50

Slide 50 text

Mark Wilkinson [email protected] Future

Slide 51

Slide 51 text

Mark Wilkinson [email protected] Swift • Type safe language • Type inference, var • No longer need semicolons • Can use Obj-C and Swift in the same project. • By default instances can be nil, you have to explicitly set. • More functional language than Obj-C • Generics Section Name