-
[Swift] AnyGeneratorの今後
Tuesday, March 22, 2016
仕事を終えて家でぼちぼちXcode7.3で作ったライブラリのプロジェクト開いてうんうん唸っています。どうも。 今日はとりあえず、人の目に多く触れそうなものから修正しました。 enumの列挙子を配列で取得するのをprotocolで 今回修正した内容は、 typealiasをassociatedtypeに変更 anyGenerator() 関数を AnyGenerator のイニシャライザに変更 EnumerateSequence のイニシャライザを AnySequence.enumerate() に変更 です。 Swift2.1.1からSwift2.2になることで、Warningがでたりするので、ぼちぼち変更していく感じです。 少し、 AnyGenerator 、 EnumerateSequence に関して掘り下げて見ていきます。 …
-
文字列を指定した長さずつ分割する
Tuesday, March 22, 2016
夜中にAppleの新製品とかiOSとかSwiftとか色々発表されたみたいですね! 個人的にはSwift2.2正式版がでたのが嬉しいです。ライブラリとかちょこちょこ対応させる作業が必要ですが…笑 swift2 で 固定長分割 を見て、自分なりに実装してみようということでチャレンジしてみました。 (この記事にコメントしたのと同じものです。) …
-
APIKitで定義したRequestからNSURLRequestを生成して使う
Monday, March 21, 2016
たまにはPCから離れて生活するのも有りだなと思って、金曜の夜から今日の昼までほとんどPCを開かずに過ごしました。 その間にFeedlyで記事がたまりに溜まっていましたが、毎日数時間毎にFeedlyに張り付いて確認するよりは気持ち的には楽でした。笑 今日は、 APIKit で定義したRequestのURLをビルドして用いる方法のメモを残していきます。 …
-
clocコマンドでプロジェクト内のファイル数や行数を言語毎に見る
Thursday, March 17, 2016
ふとしたときに自分がプロジェクトでどれくらいのファイルを作成してどれくらいのコードを書いたか調べたくなる時があります。 そんなときは、cloc を使うと簡単に調べることができます。 …
-
SwiftのArrayをスライスする
Wednesday, March 16, 2016
最近気づいたのと、あまり日本語での情報?が見当たらなかったので、 SwiftでのArrayのスライスについてまとめてみます。 +でそれを使ったStringのExtensionも。 …
-
RxSwiftで実行するSchedulerの作り方とお行儀良く扱うためのメモ
Tuesday, March 15, 2016
RxSwiftでは、処理をどのスレッドで実行するか指定するSchedulerが用意されていて、 このSchedulerをセットすることで、それぞれの処理に対して実行するスレッドを指定できます。 その時のSchedulerの作り方と、Schedulerを使う時にお行儀よく扱うための備忘録兼ねたメモです。 (本当にメモ程度に書いてるので所々表現おかしかったりするかもです。ゴメンナサイ…) …
-
Swiftの文字列の置換にFunctional in Swiftの手法を取り入れてみる
Monday, March 14, 2016
また雨が降って急激に冷え込んできましたね。。月曜日からこれだと体がもたない… 最近、「Functional in Swift」を買うか買わないか迷ってて購入画面を行ったり来たりしています。 寧ろ「Advanced Swift」の方が欲しかったり。。 それで、「Functional in Swift」で、(おそらくCIFilterの)処理をFunctionalに書いているコードが、購入ページでちらっと見えたので、 練習がてら、違うAPIを例に関数型プログラミングっぽく書く練習をしました。 長く読みたくない人のために、先にGistを貼っておきます。 Gist …
-
SNSShareをv1.0.0にアップデートしました
Friday, March 11, 2016
最近はちょこちょこと前に作ったライブラリの改修をしたり、TravisCIやHoundCIを導入したりしています。 それでずっとやろうと思って後回しにしていたライブラリの改修をして、無事、アップデートしました。 SNSShare …
-
UIScrollViewで常にBouncesを有効にする
Friday, March 11, 2016
小ネタを。 通常、UIScrollView(UITableView,UICollectionView)は、 frame.size < contentSize になる時に、縦もしくは横方向にスクロールができるようになり、bouncesプロパティが有効だと端に来た時にバウンスするようになります。 しかし、frame.size > contentSize の時は、バウンスしません。 ですが、あるプロパティにtrueをセットすると、 contentSize が frame.size より小さくてもバウンスするようになります。 …
-
file_pathの扱いを楽にするFilePathConvertibleを作った
Wednesday, March 9, 2016
最近 try! RxSwiftしてとことんクラッシュしています。どうもです。 そろそろ、ストアに出すかどうかは一旦置いといて、真面目に自作アプリを作ろうと決心し、 使いたかったライブラリを使ってテストプロジェクトで遊び、何のライブラリを使うか決めて動き出しました。 その中で、EZSwiftExtensionsみたいに、ある程度使いやすい単位でまとめたextensionとかをまとめたライブラリを作ろうということで、SUSwiftSugarの整備をしています。 その時に、file_path を扱う時に、StringでもNSURLでも許容できるものをと思って、FilePathConvertibleを作ってみました。 …