SwiftyNote

主にSwiftな技術ブログ

CocoapodsでSwift4対応ライブラリの作成手順

Cocoapodsでライブラリを作成するときにデフォルトではSwift3のバージョンで作成されてしまうので、iOS11やXCode9(Swift4)の機能を使ったライブラリを作成したいときの手順を書き残しておきたいと思います。(ローカルの手順なのライブラリのリポジトリは事前…

【iOS】アプリ起動時間の最適化及び計測方法

アプリが立ち上がり使用できるようになるまでの時間をどのようにすれば最適化できるかというセッションでWWDC2016でAppleがOptimizing App Startup Timeという動画がでている。聞いた限りここで紹介されている内容は2017年現在でも変わらず有効なように聞こ…

【魔方陣】読ませる気のないアルゴリズムシリーズ【第三弾】

まずはじめに魔方陣は魔法とはなんら関係ないということを知った。 さて本題にいこう。 魔方陣とは n×n 個の正方形の方陣に数字を配置し、縦・横・対角線のいずれの列についても、その列の数字の合計が同じになるもののことである。 行や列単位での交換もで…

【自己組織化写像:SOM】読ませる気のないアルゴリズムシリーズ【第二弾】

自己組織化写像とは 自律的に秩序を持つ構造を作り出す現象 ニューラルネットワークの一種で、教師なし学習が行える。応用としてNNはもちろん、クラスタリング手法としても用いられる。 色彩の分類に応用した例 http://www.sist.ac.jp/~kanakubo/research/ne…

【ガウス素数】読ませる気のないアルゴリズムシリーズ【第一弾】

自分の中では一番得意な言語であるC/C++言語。業務ではSwiftの内部実装を見る以外に使うことはないので日に日に忘れていってしまいそうである。なのでC++を思い出しつつ、なにかテーマを探し記事としてまとめることで実装力とアルゴリズム力を維持するための…

【Swift3】enumでJSONデコーダを作ってみる

JSONデコーダをenumで作成したらどうなるかふと思ったので作ってみることに。 最少限度の実装でまずはできるか試して、今度検証したりするとき用のメモ程度に。 個人的にはindirectでJSONの階層構造を表現することでちょっとだけ高速になるかもしれないと考…

UITextViewでハッシュタグとメンションを色を変えて表示とタップ検知をする

UITextViewで複数のハイライトを表現したい 最近の実装でSNSなどの普及でか#swiftなどのハッシュタグに加えて@rinovなど個別にハイライトして、タップしたときの挙動も柔軟に指定したい時がありました。 基本的には標準のNS***AttributeNameなどで該当の単語…