Dive into Swift Ecosystem

7ddcca09c00a2744b983974225447d19?s=47 Sho Ikeda
March 02, 2016

Dive into Swift Ecosystem

Swift became a very popular programming language in this two years and is now open sourced. Its ecosystem should be growing day by day and there are already some services those support Swift or many developer tools themselves are written in Swift. I will introduce the services and tools, and encourage you to use, participate in or contribute to them. It's a great chance to do so! :-)

http://www.tryswiftconf.com/

7ddcca09c00a2744b983974225447d19?s=128

Sho Ikeda

March 02, 2016
Tweet

Transcript

  1. Dive into Swift Ecosystem SwiftͷΤίγεςϜʹඈͼࠐΉ @ikesyo (Syo Ikeda) #tryswiftconf

  2. @ikesyo • Syo Ikeda • ஑ాᠳʗ͍͚͠ΐʔ • Living in Kyoto,

    Japan • Working at Hatena Co., Ltd.
  3. I'm a developer of ... • Hatena Bookmark for iOS

    • Popular social bookmark service in Japan, which have over 250 million bookmarks.
  4. None
  5. None
  6. I'm a author/contributor of ... • Himotoki: A type-safe JSON

    decoding library written in Swift • ReactiveCocoa: A framework inspired by Functional Reactive Programming • since January 2014 • Carthage: A simple, decentralized dependency manager for Cocoa (using ReactiveCocoa) • since June 2015 • also maintain the deps: Commandant, ReactiveTask
  7. None
  8. None
  9. !"#

  10. None
  11. Topics • Open source Swift • Swift-related Services • Swift-related

    Dev Tools • Contribute to the services and tools
  12. Open source Swift

  13. Open source Swift • Swift.org • https:/ /github.com/apple • apple/swift:

    around 1,500 pull requests! • apple/swift-evolution • Accepted community based proposals: SE-0007, SE-0008, SE-0011, SE-0015, SE-0028, SE-0031, SE-0034
  14. Open source Swift Related Presentation • Jesse Squires • Contributing

    to open source Swift ΦʔϓϯιʔεSwift΁ͷߩݙ • Friday, March 4th, 05:00PM - 05:25PM
  15. Swift-related Services

  16. Swift-related Services • Online Code Editor • IBM Swift Sandbox

    • paiza.IO
  17. Swift-related Services • Heroku with Buildpacks • Swift now runs

    on Linux! • kylef/heroku-buildpack-swift • neonichu/swift-buildpack
  18. Swift-related Services • Swift@IBM • The Cloud Foundry Buildpack for

    Swift on Bluemix • OpenWhisk • Introducing the Swift Package Catalog
  19. Swift-related Services • Online Docs • SwiftDoc.org (GitHub) • CocoaDocs

    (GitHub): Based on appledoc and jazzy
  20. Swift-related Services • Continous Integration • Travis CI • CircleCI

    • Bitrise • Greenhouse CI
  21. Swift-related Services • Codecov: Code Coverage • codecov/example-swift • HoundCI

    (GitHub): Linting backed by SwiftLint • Finally Swift support is out of beta, reviewed by default # .hound.yml swift: config_file: .swiftlint.yml
  22. Swift-related Services • There are many services for Swift already.

    • They are made of open source developer tools. • Many of them are also open sourced. !"
  23. None
  24. Swift-related Dev Tools

  25. Swift-related Dev Tools Package Management • Carthage • CarthageCache: “Cache

    Carthage/Build folder in Amazon S3” • Cartwheel: “A GUI for CarthageKit” • CarthageLicenseScript: “Download Licenses for Carthage”
  26. Swift-related Dev Tools Package Management • CocoaPods (GitHub) • Framwork

    and Swift Support since 0.36
  27. Swift-related Dev Tools Package Management • Swift Package Manager •

    A part of Swift open source projects • Will be shipped with Swift 3 in Late 2016 • Many developers are beginning to support SPM
  28. Swift-related Dev Tools Swift and Xcode • SourceKitten: Swift AST

    parser and more interacting with sourcekitd.framework • SwiftLint: Linter for Swift code, based on SourceKitten • jazzy: Documentation Generator, based on SourceKitten • SourceKittenDaemon: “Swift Auto Completions for any Text Editor”
  29. Swift-related Dev Tools Swift and Xcode • Buildasaur: “Automatic testing

    of your Pull Requests on GitHub and BitBucket using Xcode Server” • XcodeServerSDK: “Use Xcode Server's API with native Swift objects”
  30. Swift-related Dev Tools Resource Code Generation • SwiftGen: “A collection

    of Swift tools to generate Swift code” • R.swift: “Get strong typed, autocompleted resources like images, fonts and segues in Swift projects” • clg: “Supports generate clr file or code from ASE file a.k.a. "Adobe Swatch Exchange" etc.”
  31. Swift-related Dev Tools Testing • Quick: BDD framework for Swift

    and Objective-C. Also works with SPM, Linux, swift-corelibs-xctest. • Spectre: BDD framework and test runner for Swift projects and playgrounds. Compatible with both OS X and Linux.
  32. Contribute to the services and tools

  33. Contribute to the services and tools Use it • Developers

    would be happy if they get more users Star it • Let's add GitHub star to the repository • Approval is great! ⭐⭐⭐
  34. None
  35. Contribute to the services and tools Share it with your

    follower, friends, colleagues • By Hatena Bookmark, Twitter, Facebook, Google+, Tumblr, Reddit, Digg, ... • The developer may see your comment !, and that may make him/her happy "
  36. Contribute to the services and tools File an issue That

    would be really helpful ! • Questions • Feature requests • Bug reports with the following: • steps to reproduce • problematic code of yours • screen captures • logs (if there are) • ...
  37. Contribute to the services and tools Answer questions of others

    If you have enough knowledge to the area, it's a nice contribution ✋ • Issue Tracker (GitHub, JIRA, ...) • Stack Overflow • SNS • ...
  38. Contribute to the services and tools Submit a pull request

    It's a final step you would enter ! It's really welcome to have a new contributor to its codebase • Fix typo • Improve documentations • Translate documentations into your language • Fix bugs • Add features • ...
  39. Conclusion

  40. Swift consists of such great contributions from various communities around

    the world !
  41. Let's join the ecosystem and the communities

  42. It's a great chance to do so!

  43. Have nice days of try! Swift ✨

  44. Thank you ͋Γ͕ͱ͏͍͟͝·ͨ͠ !