Swift
Swift 3 マイグレーション
技術部モバイル基盤グループの ヴァンサン です。 西山が 以前紹介したように 、クックパッドでは 2014 年から Swift を使っています。長い間、海外向けのアプリや みんなのお弁当 だけに使われていましたが、去年の5月から、 クッ…techlife.cookpad.com
Swift 3正式リリースから半年近く経ったタイミングですが、プロジェクト規模やチームメンバー数によってはこれくらい大変だったりしますよね。iOS 8 特有の問題については初めて聞いて、にわかには信じがたいレベルのバグだなと思いました🤔 Stackoverflowとかでも報告見つけられなかったのですが、どうなのですかね🤔
(検証しようか迷いつつ、個人的にはiOS 8切ってしまって手間なのでスキップ)
石川さんから『Swift 実践入門』を頂いたので、見所などを綴ってみました。
石川洋資さんから、彼と西山勇世さんと共著の Swift 入門書を頂いたので、その見所などを綴ってみました。基本と実践が良いバランスで織り交ぜられていて、言語仕様だけに止まらない内容が印象的、充実感を味わえる読みやすい本な印象でした。ez-net.jp
2月7日に発売のSwift実践入門 について、 熊谷 友宏 さんが早速詳細な書評を書かれていました。Swift は公式の The Swift Programming Language がよく出来ていますが、それと同じように詳しい内容を日本語で書かれていて、さらにプラスαの内容もあってSwiftを詳しく学べる良い本だと思います。
僕も@_ishkawa さんからいただけたので、感想書きたいなと思いつつ、まだ読み途中です🤕
Swift Evolution
SE-0149: Package Manager Support for Top of Tree development・SE-0150: Package Manager Support for branchesがAcceptedに
先週In ReviewとなったSwiftPM関連の2つのProposalがAcceptedになりました。
Rust creator Graydon Hoare is now at Apple working on Swift
Hacker Newsにて、[swift-dev] Using git-clang-format in the Swift compiler code base. など見てRust作者の @graydon さんがAppleでSwift開発をしている、ということが話題になっていました。そういえば、Faster Mix-and-Match Builds with Precompiled Bridging Headersもこの方が書かれていましたね。
[swift-evolution] [Discussion] mailing list alternative
これまでも何度か、議論をメーリングリストやり取りする現状に対して他の方法にしたいという話が挙がっていたようですが、また話題になりました。SwiftのプロジェクトリードのTed Kremenekさん(Chris Lattnerさんから引き継がれた)は前向きで、移行するとしたら Discourse というサービスが良いのではということです。
そういえばちょうど先週、The .NET Language Strategy | .NET Blog では逆にGitHub Issueからメーリングリストに変えるということが告知されて議論になってたりしました。
ツール
Guaka
Guaka - The smartest and most beautiful (POSIX compliant) Command line framework for Swift 🤖github.com
Smart and beautiful POSIX compliant CLI framework for Swift.getguaka.com
コマンドラインツール作成用のライブラリです。すでに以下などありましたが、丁寧な作りで後発ながら定番になりそうな印象です👀
IBAnalyzer
IBAnalyzer - Find common xib and storyboard-related problems without running your app or writing unit tests.github.com
Storyboard・Xibファイルの接続(@IBOutlet・@IBActionなど)の欠損・不使用などを指摘してくれるツールです。実行時エラーを未然に防いでくれて良さそうです。まだ出来たばかりでこなれていないところありましたが、こなれてきたらBuild Phasesに加えても良いかもと思いました。
iOS
The Yin and Yang of Unit Testing in iOS
TL;DR - Sometimes it's more suitable to test the interface and other times the implementation of a system…www.marisibrothers.com
ブラックボックステスト・ホワイトボックステストの例をサンプルコード交えて説明されています。少し混ざったものをグレーボックスと表現されています。そういえば、僕は最近は書くとしても入出力がはっきりしたブラックボックステストしか書いてないくらいかなと思いました(実装もなるべくブラックボックステストしやすいように意識)。
Chromium for iOS がオープンソース化
Historically, the code for Chrome for iOS was kept separate from the rest of the Chromium project due to the additional…blog.chromium.org
There are instructions for other platforms linked from the get the code page. Are you a Google employee? See go…chromium.googlesource.com
Chromium for iOSのソースが公開されました。
[iOS] Chromium for iOS がオープンソース化されたのでビルドしてみた によると、ビルドするまで数時間コースらしいです👀
iOS 10.3 beta 32-bit alert suggests Apple may drop legacy app support in iOS 11
Apple appears to be planning to drop support for 32-bit apps in an upcoming version of iOS. The alert dialog presented…9to5mac.com
iOS 10.3 betaで32bitアプリを起動すると、今後のiOS(iOS 11)から使えなくなるという警告が表示されるようです。僕もiOS 10.3 betaにあげてしまいましたが、まだその警告見たこと無いくらい、32bitアプリはレアで今普通に開発している分には大抵問題無いと思いますが、昔作ったまま放置しているアプリはこのタイミングで使えない状態になってしまうとかありそうですね。
リリース
watchOS 3.2 beta (14V5205d)
先月諸々のベータ版がリリースされましたが、一足遅れてwatchOS 3.2もリリースされました。
主に次の2つがメインだと思います
- シアターモード(映画館などで画面の点灯を抑制するモード)
- SiriKit対応
その他
Scaling open source communities
Not too long ago I started an open source project called fastlane. Just a month after publishing, it had 1000+ stars on…krausefx.com
fastlane作者の Felix Krause さんによる、オープンソースプロジェクトをスケールさせる手順についての記事です。fastlaneという素晴らしいプロダクトを根気よくここまで育て上げていただいていることに感謝です🙏 iOSアプリ開発ではCI環境整えるのがかなり辛かったですが、fastlaneによって僕を含めてとても多くの人が救われていると思います。
Parse終了
Parse Shutdownというサービスによると、実際には2017/01/30 17:12 PSTに完全に終了されたようです🙏当初は1月28日終了と告知されていましたが、30日に延びたようです。
Parseの共同創立者Kevin Lacker氏は、今月でParseが終了すると最後のリマインダを発信した。開発者は保存したいデータがあれば早急にエクスポートするよう迫られている。www.infoq.com
サービスは終了するものの、Parse Serverを自分でホストすれば大体同じように使え、その事例など載っている ありがとう、さようなら Parse.com。ノハナがParse.comと共に過ごした4年間の話。 という記事が面白かったです。
ノハナで主にサーバーサイドを担当しているエンジニアの武市 (@tacke_jp) です。 Parse.comが1年後にサービスを終了することを アナウンス したのが2016年の1月28日 ...blog.nohana.co.jp
Parseサービスは終わりましたが、mBaaS系だと次のはどれもある程度信頼して使えるかなという感触です(適材適所ですが個人的にはFirebase推し)。
筆者の小話
最近Firebaseとその周辺よく弄ってます
前々から興味はありつつきちんと弄っていなかったFirebaseですが、Fabric買収をきっかけに詳しく見てみたらかなり良い感じで積極導入中です( ´・‿・`)
特に良いなと思ったのがこのあたりです:
- Firebase Dynamic Links でUniversal Links対応やインストール時のデータ引き渡しなどが簡単にできる
- Firebase Analytics がBigQuery・Google Analyticsとも連携できる
- Firebase Notifications で1,000端末への通知を1リクエストで発行可能
Firebase Analyticsは、アナリティクス 日本版 公式ブログ: Google データスタジオを皆様に無料でご提供を開始というニュースもあり、とりあえずログ系はBigQueryに突っ込んでおけば良いかな気分です( ´・‿・`)
Fabricはそれはそれで気が利いてて良いので、併用していくつもりですが。また、リアルタイムデータベースなどは一筋縄では導入出来なさそうに感じて様子見中です( ´・‿・`)
PSVRにハマリ中😎
奥さんがPSVRを調達してきてくれたので、PSVRで遊んでます( ´・‿・`)バイオ7・Until Dawn: Rush of Bloodあたりが秀逸で、サマーレッスンやその他無料コンテンツなどもどれもそれなりに楽しいです( ´・‿・`)
非VR対応ゲーム・映画なども大画面で楽しめて、色々すごく楽しめてます( ´・‿・`)
バックナンバーはこちらから一覧出来ます。
↓アカウントやSwift・iOSコラムPublicationフォローしていただけるとありがたいです🙇 PublicationフォローしていただけるとこのSwiftレターのメール通知も届くようになります( ´・‿・`)