All slide content and descriptions are owned by their creators.
![RxSwiftへの依存を考えてみる // Speaker Deck](https://cdn-ak-scissors.b.st-hatena.com/image/square/feb8067f2cd201459a5c1278718acc31d705b8ec/height=288;version=1;width=512/https%3A%2F%2Fspeakerd.s3.amazonaws.com%2Fpresentations%2F3e8231bddc834b82a7c168ffca493b23%2Fslide_0.jpg)
All slide content and descriptions are owned by their creators.
Some say that building a small language interpreter, especially if a LISP, is one of those things you have to do at least one time in your life as a programmer, an eye opening experience that will give you new insights into how the tools you use everyday work and demystify a few concepts that seem daunting when seen from afar. In this article, we’ll implement a minimal LISP based on the 1978 paper
All slide content and descriptions are owned by their creators.
Even though storyboards have been around iOS5, many developers are reluctant to use them, specially in large projects. Though I prefer using storyboards, I’ve to admit developers despising storyboards aren’t totally wrong. Problem 1: For a larger project, storyboards often become unwieldy and unmanageable. Have look at a crazy one below Crazy StoryboardProblem 2: Storyboards are extremely Slow. As
御機嫌よう、最近Swiftな世界に入門しているガラパゴスのおとめです。 今回は、SwiftからGoogle Cloud Vision APIとMicrsoft Cognitive Computer Vision APIのテキスト検出(OCR)を使ってみようと思います。 なお、この記事はSwift 3.0とXcode 8.2.1を対象にしています。 プロジェクトの作成 まず適当にプロジェクトを作ります。また、今回はAlamfireとSwiftyJSONを使っていますが、これらのライブラリはCocoaPodsでインストール・管理しました(インストール方法などは省略します)。 ではサクッとViewを作ってしまいます。今回はカメラロールから選んだ画像を上に、検出したテキストを下に表示したいと思います。 カメラロールを表示するボタンは何でもいいのですが、ここではNavigation Barにおいてみ
In Swift Talk episode 31, Chris and Florian present a solution for mutating nested, heterogeneous dictionaries of type [String: Any] in Swift. It’s an interesting discussion, I encourage you to watch it or read the excellent transcript. I helped a little in the preparation of the episode and while experimenting with this problem developed something that ultimately didn’t make it into the video, so
最近Segueをいかに安全に使って画面遷移するかということを考えていたけど、#swtwsを見ていてそもそもSegueを使わない/嫌いという人が結構いるんだなと思ったのでSegueを使わないで楽に安全に画面遷移する方法を考えてみたら意外といい感じになった。 Segueの危うい所 コード内ではSegueのidentifierを単なる文字列として扱う所 performSegue(withIdentifier: "toDetailVC", sender: nil) だからSegueの名前が変わった時に直し忘れていてもコンパイル時にチェックできない。 遷移先のViewControllerをいじるのはいわゆるprepareForSegueメソッドの中なので、複数の遷移に関する処理が一つのメソッドにまとめられてしまう所 override func prepare(for segue: UIStorybo
iOSアプリの開発において共通処理をBaseViewController(仮)のような親クラスに定義して、 各画面はこの親クラスを継承するといった実装がわりとあるかなと思います。 このような実装の場合、BaseViewControllerが肥大化して、見通しの悪い設計になりがちです。 また、独自フレームワークのような実装になってしまう傾向があり、 チーム開発においては、メンバーの学習コストが上がるなどのデメリットがあります。 その一方、各viewControllerに共通で入れたい処理というのはあるので、 そういった場合は、Protocol ExtensionsのWhere句を利用してTraitを実現するといいなと考えています。 例えば、UIActivityViewControllerを使って、データを共有する処理を共通化する場合 BaseViewControllerを利用した実装は下記の
型プロパティ(Type Properties)です。これは、型自体に付随する特殊なプロパティです。このプロパティは実体が1つだけですので、ある特定の型の中で共通の値を持ちたい場合に便利です。C言語で言うと、静的変数(static varia型プロパティ(Type Properties)って何? インスタンスプロパティと型プロパティの違い これまで紹介した 格納プロパティ(stored properties) と 計算プロパティ(computed properties) は、 インスタンスプロパティ(instance properties) と呼ばれています。これはその名前の通り、 です。インスタンスプロパティの値は、インスタンスに付随しますので、(基本的には)新しいインスタンスが生成される度に複製されます。したがって、異なるインスタンスが2つあった場合、それぞれ別々のインスタンスプロパティ
(Swift3.0対応)ContainerViewとStoryboardをフル活用して複雑なUIを作るサンプルをSwift3.0へ書き直し対応した際のまとめiOSSwiftSwift2.2Swift3.0Xcode8 1. はじめに 先日下記のようにContainerViewとStoryboardを活用して、複雑なUIを作成するためのTIPSを投稿しました。おかげさまで結構ストックを頂くことができて本当に嬉しく思うと同時にこれほどの反響を頂き感謝しております。 以前の記事:SwiftでContainerViewとStoryboardをフル活用して複雑なUIを実現する際の実装ポイントまとめ ただ上記の記事を書いた次の日にXCode(Ver8.0)がアップデートされたので、Swift2.3とSwift3.0にしてConverterで変換を行ったところ、Swift2.3はほぼそのままイケる感じ
Swift 3 で NotificationCenter(旧 NSNotificationCenter ) がせっかく改良されたのに、そのメリットが活かされないようなコード例をよく見かけるので、正しい使い方をまとめます。 以下、主にSwift 2時代のコードを3でどうベターに書けるようになったのかという視点メインでの記述となっています。 次の class を用意して、それをもとに説明していきます(struct は自身を登録できないので class で説明)。 class NotificationObserver { func addObserver() { // A: ここに NotificationCenter 通知登録処理を書く } func removeObserver() { // B: ここに NotificationCenter 通知解除処理を書く } /** C: 今回、通知
今年の WWDC を訪れたときに、Swift Lab で Sean Callanan さんが Swift の小さな挙動を探るのに SIL を活用している姿を見せてくれて、それ以来、何かのときに自分も真似して SIL を眺めてみる機会が増えてきました。 SIL というのは Swift Intermediate Language の略、すなわち Swift中間言語 です。 それからというもの Swift の不可思議動作に出逢うたびに SIL を眺めてみてたんですけど、なんとなく読めるだけでも想像以上に助けになってくれました。それでもやっぱり読めないところも多かったりして、もしかしてもっと読めるようになれば SIL がいろんなことを教えてくれるかもしれない。 そう思ったのが、今回の記事を書いてみようと思ったきっかけでした。 🎄 目標のところまで調べきれず そこで、右も左も分からない Swift
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く