swift
まだ全然実装できていないけど、とても勉強になっているので途中経過をブログに書いてみる。 github.com なぜやっているのか トランプくらい簡単に実装できる・・・そう思っていた時期が(ry 環境 Swift 3.0-dev on Docker swiftdocker/docker-swift この…
昨日の続きを調べて、一応やりたかったことは実現できたのでブログにも書いておく。 sinsoku.hatenablog.com サンプルコード gist のコードの通りだけど、 Generics を使ってクラスの初期化時に Comparable に使う struct を渡せるようにしている。 こうやっ…
Generics 周りの挙動の備忘録。 適当な空のクラスをマーカーとして、メソッドの振る舞いを変えられた。
今日やってた勉強内容。 github.com 動かし方 $ git clone https://github.com/sinsoku/study.git $ cd study/swift $ bin/run swift build -C PlayGround $ bin/run swift test -C PlayGround ソースコード // PlayGround/Sources/PlayGround/SimpleClass.s…
この前作った Swift の環境 で勉強として FizzBuzz を書いてみた。 github.com パッケージの作り方 $ mkdir FizzBuzz $ cd FizzBuzz $ swift package init コード // Sources/app/FizzBuzz.swift class FizzBuzz { let num : Int init(num : Int) { self.num…
docker で勉強する環境を作ってみた。 github.com 準備 リポジトリと README を見てもらえば分かるけど、下記のような bin/run のスクリプトを用意する。 #!/bin/sh if [ -n "$*" ] then docker run -v $(pwd):/app -w /app swiftdocker/swift $* else docke…
Swift のプロトコル拡張の動きが気になったので調べた結果を備忘録として残しておく。 プロトコル拡張で条件を定義 特定プロトコルの場合だけ挙動を変える。 protocol A {} protocol B {} extension A { func say() { print("A") } } extension A where Self…
2日前にマージされていたので、紹介します。 github.com 概要 typealias キーワードは今のところ2種類の型の宣言に使われています: タイプエイリアス (既存の型の別名) 付属型 (プロトコルの一部として使われる型のプレースホルダー) これらの2つの宣言は異…
Swift と英語の勉強の一環として、 apple/swift-evolution の 2.2 を少し読んでみた。 英語苦手なんで、時間がとてもかかるよ・・・。 翻訳したファイル(途中) 外部引数名として(大部分の)キーワードを許容する https://github.com/sinsoku/swift-evolution/…
1/9(土)〜11(月)で開発合宿に参加してました。 mokumoku-onsen.connpass.com 作ったもの Swift の勉強のため、 OAuth 認証の Web API を使う iOSアプリを作りました。 スクリーンショット 最初のページ OAuth 認証のあと コード コードは GitHub に置いてあ…
最近、Swift を勉強していて、ライブラリを使いたくなったので CocoaPods を使ってみました。 最初に解決方法を書いておく 0.39.0 じゃなくて、 1.0.0.beta.2 を使いましょう。 $ gem install cocoapods -v 1.0.0.beta.2 cocoapods のインストール 公式ペー…
年末年始でちょっとSwiftを勉強してみたので、やったことをまとめてみた。 読んだ本 詳細! Swift 2 iPhoneアプリ開発 入門ノート Swift 2 + Xcode 7対応作者: 大重美幸出版社/メーカー: ソーテック社発売日: 2015/11/14メディア: 単行本この商品を含むブログ…