Swift3 処理時間の計測

1
2
3
4
let start = Date()
// 処理
let elapsed = Date().timeIntervalSince(start)
print(elapsed)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
class Benchmark {

    // 開始時刻を保存する変数
    var startTime: Date
    var key: String

    // 処理開始
    init(_ key: String) {
        self.startTime = Date()
        self.key = key
    }

    // 処理終了
    func finish() {
        let elapsed = Date().timeIntervalSince(self.startTime) as Double
        let formatedElapsed = String(format: "%.3f", elapsed)
        print("Benchmark: \(key), Elasped time: \(formatedElapsed)(s)")
    }

    // 処理をブロックで受け取る
    class func measure(key: String, block: () -> ()) {
        let benchmark = Benchmark(key)
        block()
        benchmark.finish()
    }
}

Swiftで重い処理の処理時間を測定する


macOS10.12 SierraにアップデートしたらうちのJenkins執事ちゃんがストライキを起こしてしまったメモ

Macをアップデートしたらうちの大事な執事ちゃんがストライキを起こしたのでなだめる方法をめもめも。
正直原因が多岐に渡っていたので、実は必要なかった設定とかがあるかもしれない…

余計な処理とか推奨されない対応してるとかあったら教えてください偉い人Σ・ω・`

XcodeBuilderを利用させるために四苦八苦したメモです。 brewとrubyは既にmacOS10.12に対応させるためごにょごにょしてあります。

Read on →

文字組をコントロールするフォントとライブラリ

文章中におけるかっこ 【】 などの微妙な隙間を調整するための2つの手段。
Webサイト等だといろいろ気になるところなので…このサイトにも使ってみようかな。
気になったのでメモ。

フォント

Yaku Han JP

フォント自体を調整して利用する。
サイトには比較もあってわかりやすい。

ライブラリ

Mojik

ウェブにおける和文の文字組みをコントロールするためのJavaScriptライブラリ

こちらはJSライブラリ。
フォントを指定のものに変更するのではなく、 マッチする要素から上記に該当する箇所を検出し、それぞれマークアップが挿入される とのことなので使い勝手は良さそうです。


uibuttonのtextサイズ自動調整

UIButtonのテキストのフォントサイズを自動調整するスニペット
忘れて調べ直すことになったのでメモ

1
2
3
button.titleLabel.numberOfLines = 1;
button.titleLabel.adjustsFontSizeToFitWidth = YES;
button.titleLabel.lineBreakMode = NSLineBreakByClipping;

iOS アプリ譲渡 App Transfer

アプリ譲渡作業備忘録

前準備

参考記事


1つの端末で2つのGithubアカウントを利用する

毎回手順を忘れるのでメモしておくことにした

SSH Key問題

Githubだと別のアカウントで同じSSH Keyを利用できないので、1つの端末で別のgithubアカウントを同時に利用しようと思うとちょっと工夫が必要な感じ。

アカウント別のSSH Keyを作成する

普通に・ω・

1
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

ファイル名はデフォルトのままではなくて、そのアカウントとわかる形の名前にしておくのがいい。

.ssh/config設定

configに接続情報を記載する。
Host名をgithub.comじゃなくてそのアカウント用と分かるような名前をつけてあげる。
HostNameはgithub.comのまま。
IdentityFileで作成したkeyへのパスを指定する。

1
2
3
4
5
6
7
Host github-another-user
  User git
  Port 22
  HostName github.com
  IdentityFile ~/.ssh/another_rsa
  TCPKeepAlive yes
  IdentitiesOnly yes

接続する

通常の git@github.com:PGMY/ProjectName.git で接続するんじゃなくて、configで指定したhost名を書き換えて接続する。

1
git@github-another-user:PGMY/ProjectName.git

これでおけΣd・ω・


Push notification snippet

ただのめもだよー。

1
2
3
4
5
6
7
8
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
{
    [[UIApplication sharedApplication] registerUserNotificationSettings:
     [UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil]];
    [[UIApplication sharedApplication] registerForRemoteNotifications];
} else {
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIUserNotificationTypeBadge |UIUserNotificationTypeSound | UIUserNotificationTypeAlert)];
}

認証まわりがまとまったライブラリもある。 「PermissionScope」便利だなー。



gcc-warning-options

gccの警告オプションを弄ぶ機会があったので調べてたら・・・
きっちりしっかりまとまっているところがありました本当にありがとうございます!!!

ということでただのブックマークメモですΣ><

Read on →

Xcodeをアップデートしたらプラグインが動かなくなったのを解決したメモ

まー・・・・・毎回忘れる忘れる。
特にBeta版のXcodeとか古いXcodeとか入れているとよくなるんですが、Xcodeをアップデートしたらプラグインが何度インストールしても使えなくなった!!ってことがよくあるわけです。
とっても丁寧に解決方法を記載していただいている方がいらっしゃいましたありがとうございます>△<!!

もはや管理しきれないブックマークに追加しても何の意味もなさない今日この頃(整理しろ・・・orz)
ブログに書いておくのが手っ取り早いじゃーん!ってここに記載します。

Read on →