読者です 読者をやめる 読者になる 読者になる

食後のSwift ~琵琶湖からコンバンハ~

swiftやオキュラスについて書こうと思っていたブログ。

12月に読んだ本まとめ

感想

ども、お茶漬けです。

2017年に入り1週間が経とうとしています。

9日まで冬休みの僕も、そろそろこのダラダラ生活から抜け出さないとなと思っており。まずは、先月読んだ本を振り返ってみようかなと思います。


なぜ、あなたの仕事は終わらないのか 中島聡

マイクロソフトエンジニアの中島聡さんが、自身の経験談を交えながら、実際に本人が取り組んでいる時間術、その名もロケットスタート時間術について書かれてあります。

・どんなに頑張って100%のものを作っても、振り返ると90%,80%のものに見える
・全ての仕事は必ずやり直しになる
・やりたいことをやるためには、やりたくないことを速攻で終わらせるしかない
・考えてから手を動かすではなく、手を動かしながら考える
・仕事において重要なのは、楽しいかどうかその一点

以上のような考え方の元、中島さんはロケットスタート時間術で仕事に向き合うことを進めています。

ロケットスタート時間術とは

ロケットスタート時間術とは、ズバリ2割の時間で仕事の8割を終わらせることです。

まず、納期内に仕事を終わらせるためには、余裕を持って取り組むことが必要です。なぜなら、初期の段階で立てた予定通りにことが進むなんてことはまずない。必ず、予期せぬトラブルは起こるものだからです。
そのために、最初に2割の時間で、何が何でも仕事の8割を終わらせ、余裕を持ちます。そして、残りの8割の時間で、2割を終わらせ、さらにブラッシュアップしていきます。
しかし、

ロケットスタート時間術の本質は余裕を持つことであり、高速で次々と仕事を終わらせることではない

と中島さんは仰っています。
伝えたいことは、仕事を終わらせることではなく、人生を楽しむこと。なのです。

なぜ、あなたの仕事は終わらないのか スピードは最強の武器である

なぜ、あなたの仕事は終わらないのか スピードは最強の武器である

続きを読む

あけましておめでとうございまっす!!!

あけましておめでとうございます!
2017年もよろしくお願いいたします。

2016年11月に自分のメモがわりに始めたこのブログも、わずかではありますが見てくれている人がいる、というのが予想以上に嬉しく。楽しく続けることができております。
今年もよろしくお願いいたします!!

初めて予約投稿使ってみたけど、このタイミングで予約投稿する人多そうだな〜

Swiftのエラー処理

swift

Swiftのエラー処理の書き方について調べたので、まとめておこうと思います。


エラーを定義

Errorプロトコルを継承した列挙型でエラーを定義します。
Errorプロトコルの中身は空になっています。

enum myError: Error{
    case stringError
    case unexpectedError
}
続きを読む

Swiftでdefer文を使う

swift

Swift2.0から追加されたdefer文。スコープを抜ける際に処理をするものですが、Swift3.0で試してみました。

func myFunc(){
    defer {
        print("defer")
    }
    print("hoge")
}
myFunc()


実行結果は以下のようになります。

hoge
defer



関数以外のスコープで使ってみる
func myFunc2(){
    for i in 0..<3 {
        defer {
            print("defer \(i)")
        }
        print("fuga \(i)")
    }
}
myFunc2()


実行結果

fuga 0
defer 0
fuga 1
defer 1
fuga 2
defer 2



defer文を複数書いてみる
func myFunc3(){
    defer {
        print("hogera")
    }
    defer {
        print("piyo")
    }
    defer {
        print("fuga")
    }
    print("hoge")
}
myFunc3()


実行結果

hoge
fuga
piyo
hogera


使い所

自分の場合は、Swift Perfect のサンプルを触っている時にdefer文を目にしたのですが、そこでは、DBに接続し目的の処理を行った後、defer文内にDBとの接続を切る処理を書く。というように使われていました。
他にも、guard文での必要条件にあっていない場合にdefer文の処理を実行させる。といったような使い方ができるのではないでしょうか。

Swiftで正規表現を使って文字列の操作を行う

swift

Swiftで正規表現を使いたかったんだけど、調べて行くうちに、Swiftで正規表現ってなかなか面等らしく、どーしようかなと思っていると。
とても便利なStringExtensionを書いている方がいらっしゃたので、使わせていただきました。

Swift 3.0での基本的な正規表現を行うextension - Qiita

続きを読む

【2016年】 個人的おすすめアニメランキング!TOP10!!

アニメ

ども!お茶漬けです!!

今年も残すところあと3日!!

ということで2016年のアニメを振り返ってみました。あんまり数が多くなってもあれなので、個人的に本当に面白かった10作品をランキング形式で紹介していきます!

年末年始に見てみてはいかがでしょうか?

それではどうぞ!!


10位 甲鉄城のカバネリ

f:id:biwako_no_otyazuke:20161228181223p:plain

世界中に産業革命の波が押し寄せ、近世から近代に移り変わろうとした頃、突如として不死の怪物が現れた。鋼鉄の皮膜で覆われた心臓を撃ち抜かれない限り滅びず、それに噛まれた者も一度死んだ後に蘇り人を襲うという。後にカバネと呼ばれる事になるそれらは爆発的に増殖し、全世界を覆い尽くしていった。

4月から全12話で放送された春のノイタミナ枠。
江戸後期~明治初期の日本を舞台にした、日本版ゾンビアニメ。

ストーリーは好き嫌いが分かれそうではあるが、「死んでも生きろ」のキャッチコピーからも伝わるように、キャラクターそれぞれが自分の過去と向き合いながら絶望しながらも、それでも生きようとする、熱量の高いアニメ。

OPをegoistが歌っているあたりもgood

続きを読む

【Xcode】 UIButton に下線を引くには

Xcode swift

よくアプリなどで、「パスワードをお忘れの方はこちら」みたいに下線が引かれていると思いますが、あれをXcode で実現する方法を紹介します。

UIButton を選択状態で、ユーティリティエリアからTitle をPlain からAttributed に変更します。

f:id:biwako_no_otyazuke:20161227121654p:plain

続きを読む