Swiftレター #12

2016/12/18

mono 
Swift・iOSコラム
18 min readDec 18, 2016

--

ブラウザで見るとURL展開されて見やすいのでオススメです👀

Swift

From 0 to Github’s #1 Trending Swift Developer in Less than 2 Years

開発者歴2年にして、 SwifterSwift という Swift の便利な拡張ライブラリ集 で GitHub トレンド1位を獲得した、という話です。かなりのボリュームのライブラリで、僕も使おうか迷いつつ、Swift は素でもかなり書き心地良いのでまだ無しで良いかな気分です(UIKit・Foundation 周りは扱い面倒なことも多いですが)。Udacity のコースなどで学習したりしたそうです。

Swift 3 開発最前線 — WEB+DB PRESS Vol.96

12月23日発売のWEB+DB PRESS Vol.96に @ikesyo さんによる 30 ページ弱の特集が載っています。

目次です:

  1. Swift 3 入門
  2. Swift Package Manager 入門
  3. Xcode 8 の新機能
  4. iOS 10 の新機能
  5. Swift 3 への移行

iOS系の大きな特集は、僕の書いた iOSアプリ開発最前線 — WEB+DB PRESS Vol.91 以来ですかね🤔

執筆者特典として事前献本されてもう読んだのですが、特に第2章の SwiftPM がすごくまとまっていて良かったです👀

サーバーサイド Swift

Working with SQL in Swift using Swift-Kuery

Swift-Kuery という、 RDB のクエリを Swift で書けるようにしたライブラリの紹介記事です。ORM ではなく、クエリの生成と発行を Swift で行える薄めのライブラリで、対応DBは今のところ PostgreSQLSQLite のみのようです。

SWIFT FOR BEANS — JAVA DEVELOPERS VIEW ON SWIFT

Java 開発者目線から見た、サーバーサイド Swift の記事です。パフォーマンス速度は同等ながら、メモリ使用量は Swift が遙かに少なく済むことが利点として上げられています。

NSRegularExpression — Swift regular expression editor

VaporHeroku で構築された Swift製 の正規表現エディターサイトです。 https://github.com/wojteklu/nsregularexpression.com にてソースコードも公開されています。

iOS

NSRegular​Expression

正規表現ライブラリなどもありますが、この記事では NSRegular​Expression をベタに使ったり String の range(of:options:range:locale:) メソッドなどの活用など、色々なコード例が載っています。Swift の String と Objective-C の NSRange とを組み合わせて扱う場合、 utf16 ビューを用いることなどにも触れられています( NSString は UTF-16 で表現されているので)。

IGListKit Tutorial: Better UICollectionViews

以前も紹介した、Instagram の UI を実装する際の知見から生まれた IGListKit を利用して組んだサンプルアプリの解説記事です。12月10日に 2.0.0 がリリースされていますね👀

How to improve your iOS open source library

OSS を公開する際に、やるべき作業が難易度付きでリストアップされています。

ライブラリ

SwiftRichString

以前 SwiftyAttributes を紹介しましたが、同様に、NSAttributedString の扱いを楽にしてくれるライブラリです。

Attributed String in Swift: the right way で作者自ら紹介しているのを見て、知りました。

Sourcery

Stencil という Swift のテンプレート言語( Kitura の テンプレートエンジンとしても採用されています )と元となる Swift ソースファイルを組み合わせて、所望の Swift ファイルの自動生成を可能とするライブラリです。

リリース

Xcode 8.2

Xcode 8.2 beta 2 のまま 1ヶ月くらい更新無かったですが、ようやく正式版がリリースされました。Swift も 3.0.2 に上がっていますが、目立つ変更はありません。また、Swift 3.0.1 でビルドしたライブラリもそのまま使えて少しびっくりしました(3.0 → 3.0.1 の時はリビルド必要でした)。

iOS 10.2

iOS 10.2が正式リリースされました。目立つのはこのあたりでしょうか。

  • 絵文字の追加とデザイン改善
  • カメラやスクショの音が小さくなったり無音になったり
  • 音楽アプリのシャッフル・リピートボタンが少し分かりやすく
  • TV App (米国のみ)

macOS 10.12.2

Apple File System (APFS) のベータ版使えるようになったようです。次のようなコマンドで試せます(コマンド実行後確認されるのでとりあえず実行しても問題無いです)。

ちょうど、第18回 APFSとSwift3:書いて覚えるSwift入門|gihyo.jp という再掲記事も先週あがってました。

18ヵ月後,すべてのAppleデバイスのデフォルトファイルシステムをAPFSに移行する。既存デバイスはそのままアップグレードする

とのことで、今後が気になりますね🤔

Apple系ベータ版

fastlane 2.0

fastlane は複数の関連 gem から構成されていましたが、それが1つの fastlane gem に統合されました(もちろん外部 gem 依存はありますが)。

僕は 1.111.0 から 2.0.5 に上げましたが、とりあえず問題無くそのまま動いています。

fastlane は元々、gem だけでなくリポジトリも複数に分かれていて、それが統合された経緯もあります。キレイに分割していたものが、結局開発の効率を求めると1つにまとめた方が良かった、となった感じで興味深いです( ´・‿・`)

ちなみに、例えば https://github.com/fastlane/deliver にアクセスすると https://github.com/fastlane-old/deliver にリダイレクトされたりします(現状不使用だが、過去の記録のために残している模様)。

Kickstarterアプリがオープンソース公開

Playground をかなり活用しているようです👀

Gomix

Slack bot をWeb上で簡単に作れるサービスがリリースされました。Trello ・Stack Overflowを生み出した Fog Creek が今力入れて開発しているプロダクトのようです

Apple関係のニュース

AirPods 予約受付開始

10月発売予定から延期されていましたが、12月13日の23時頃にいきなり予約受付開始しました。現在6週間待ちですが、最速組は明日19日に届くようです👀

サポートページも公開されました。

AppStore の冬休み

12月23〜27日(太平洋標準時なので日本だと大体24〜28日)にアプリの申請など出来なくなるので、注意です。22日申請でギリギリ間に合うか?レベルですかね。

今のレビュー所要時間は2日くらいですが、駆け込み需要でもう少し伸びるかもしれません(少し前まで感謝祭の影響?で4日程度までレビュー時間が伸びてたりもしました)。

アップルストアでプログラミングに入門 — Hour of Codeワークショップと普及への課題

12月11日にアップルストアにて開催された、プログラミングワークショップのレポート記事です。

Code.orgのウェブサイトにあるプログラミング導入の教材を、iPadを使って学ぶスタイルで行われた。

てっきりiPad Swift Playgrounds など利用すると思っていましたが、この記述でもCode.org の教材と書いてあって、掲載写真見ても Playgrounds は使ってないですね(´・ω・`)

Android Pay が日本でもスタート

10月25日に日本でもスタートした Apple Pay に続いて、Android Pay も日本でスタートしました。ただ、楽天 Edy のみの対応と若干残念な感じとなっています。Android はすでにおサイフケータイ機能使えたりするのもあって、現時点ではインパクト小さめですね。

筆者の小話

Swift 3 本ポチりました☝️

今朝、詳細!Swift 3 iPhoneアプリ開発 入門ノートのKindle版が1,037円と安いので、ポチってみました。12月20日配信なので、まだ読めてないですが、レビュー見る限り良さそうです。

僕はSwiftに関しては市販の本はまったく読んでいなくて、公式リファレンス本頼りでしたが、たまにSwiftのオススメの本聞かれることあるので、そういう時に勧める用としても良さそうです。

AirPods の予約乗り遅れました🤕

かなり楽しみに待っていたのに、気付くのが翌朝だったため1月15日組となってしまいました、つらいです(´・︵・`) 19か20日にApple Storeで販売されるかも?という話なので、がんばって並ぶかもしれません( ´・‿・`)

バックナンバーはこちらから一覧出来ます。

↓アカウントやSwift・iOSコラムPublicationフォローしていただけるとありがたいです🙇 PublicationフォローしていただけるとこのSwiftレターのメール通知も届くようになります( ´・‿・`)

--

--