Slide 1

Slide 1 text

Playing around with Xcode 8 @ikesyo ؔ੢ϞόΠϧΞϓϦݚڀձ #16, 2016-07-27 Wed #ؔϞό

Slide 2

Slide 2 text

@ikesyo • ͍͚͠ΐʔʗ஑ా ᠳ • ͸ͯͳ@ژ౎ • https://twitter.com/ikesyo • https://github.com/ikesyo

Slide 3

Slide 3 text

✨ Contributions ✨ • ReactiveCocoa • Carthage (Commandant, ReactiveTask) • Result • Himotoki • APIKit • OHHTTPStubs <- New! ✨

Slide 4

Slide 4 text

Xcode 8

Slide 5

Slide 5 text

Topics • Code Signing • New xcodebuild Actions • Objective-C ! Out of Scope ! • Interface Builder • Editor Extensions • Debugging: Runtime Issues, Memory Debugger, ... • ...

Slide 6

Slide 6 text

Code Signing • Automatic Signing: Teamࢦఆ͕ඞਢʹ • beta 1, beta 2: iOS/tvOS/watchOSͷframework΋code sign͕ඞਢʹͳ͍ͬͯͨ • CODE_SIGNING_REQUIRED=NO, CODE_SIGN_IDENTITY= Ͱճආ • beta 3: frameworkͷcode signing͕ඞਢ͡Όͳ͘ͳͬͨ • Teamࢦఆ͕ͳ͍৔߹͸εΩοϓ͞ΕΔΑ͏ʹͳͬͨ • ࠓ·Ͱ௨ΓɺΞϓϦͷόϯυϧʹίϐʔ͞ΕΔ࣌ʹcode sign͞ΕΔඞཁ͸͋Δ Xcode does not require code signing for iOS frameworks, and will skip signing a framework if a team is not set. Frameworks should be signed when copied into the hosting product (using the Code Sign on Copy flag in a Copy Files build phase). (26892618)

Slide 7

Slide 7 text

New xcodebuild Actions • xcodebuild build-for-testing

Slide 8

Slide 8 text

New xcodebuild Actions • xcodebuild test-without- building

Slide 9

Slide 9 text

New xcodebuild Actions • xcodebuild build-for-testing • xcodebuild test-without-building • CIɺಛʹTravisͳͲͰ xcodebuild test ΍ xcodebuild build test Ͱ γϛϡϨʔλʔىಈ଴ͪͷ··ࣦഊ͢Δέʔε • xcodebuild build-for-testing test-without-building ͱ͢Δͱ վળ͢Δงғؾ ! • [Travis] Use build-for-testing and test-without-building build actions on Xcode 8 by ikesyo · Pull Request #133 · ikesyo/Himotoki

Slide 10

Slide 10 text

Objective-C • Class Properties • __auto_type

Slide 11

Slide 11 text

Objective-C - Class Properties // before @interface FooBar : NSObject + (NSString *)baz; + (void)setBaz(NSString *)baz; + (NSString *)hoge; @end // after @interface FooBar : NSObject @property(class) NSString *baz; @property(class, readonly) NSString *hoge; @end • ετϨʔδ͸ͳ͍ͷͰɺैདྷ௨ΓήολʔɺηολʔΛ࣮૷͢Δ • Swiftͱͷ૬ޓӡ༻ੑͷ޲্

Slide 12

Slide 12 text

Objective-C - __auto_type #define let __auto_type const #define var __auto_type let foo = @"foo"; // NSString * const foo = @"foo"; var bar = @"bar"; // NSString *bar = @"bar"; • C++ͷ auto ͱಉ༷ • C/Objective-CͰར༻Մೳ

Slide 13

Slide 13 text

References • Xcode 8 - What's New - Apple Developer • What’s New in Xcode • Andrew's Blog — Objective-C Class Properties • Joe Groff͞ΜͷπΠʔτ: "If you're an Objective-C developer and feeling left out on new language features: https://t.co/ JIXqMw25dF" • Swifty Objective-C | PSPDFKit SDK - The leading framework for displaying and annotating PDFs on iOS, Android and the Web.

Slide 14

Slide 14 text

!" Happy Xcode 8 life!! "!

Slide 15

Slide 15 text

Thank you❗"