Skip to content

Instantly share code, notes, and snippets.

@touyou
Created March 4, 2017 03:14
Show Gist options
  • Save touyou/28d5a973482a0bb67675e61602d551d9 to your computer and use it in GitHub Desktop.
Save touyou/28d5a973482a0bb67675e61602d551d9 to your computer and use it in GitHub Desktop.
try! Swift2017 リンク一覧(非公式個人用メモ)

発表を聞きながらまとめたこと

try! Swift レポート一日目(スクール前まで)

開始前

  • Slackに流れてきた時間より少し遅れて到着。ついたらいのっちえぐっちしばさんがすでにTシャツ着てて(他の人全然着てない中)さすがメンターってなったw
  • ステッカー大量にもらって貼りきれないなって思う
  • Wi-Fiムリ、Slackつながらない

Machine Learning

Swift on Android

  • 超たのしみなやつ
  • Cross-Platform
    • SDL
    • CMake
    • OpenSceneGraph
    • LuaCocoa
    • Corona SDK
    • Platino
  • Cによってあらゆるものに通じる
  • それぞれのプラットフォームでの階層
    • swiftCore→Swift C library(Darwin, GlibC, Bionic)→libdispatch, Foundation→UIKit,Core Audio
    • swiftCore→Swift C library(Bionic)→AndroidSDK,OpenSL ES
  • Android NDK & Swift
  • Bionic!!
@_cdecl("MyMain")
public func MyMain() {
  let four = 2 + 2
}

SwiftのPointy Bits

  • Safe
    • Optionalについて
let average = ages.reduce(0, +) / Double(ages.count)
  • Swiftの安全はなんのための安全?
  • クラッシュして予測不可能の状況を防ぐ
  • Swiftではメモリに直接読み書きするものにはUnsafeとついている
UnsafePointer<T>  // 型あり、変えられない
UnsafeRawPointer  // 型なし、変えられない
UnsafeMutablePointer<T>  // 型あり、変えられる
UnsafeMutableRawPointer  // 型なし、変えられる
var age = 5
withUnsafeBytes(of: &age) { ageBytes in
  ageBytes.count  // 8
  ageBytes.first  // Optional(208)
}
SKSearchFindMatches
reserveCapacity
UnsafeMutablePointer<T>.allocate(capacity: num)
defer { hoge.deallocate(capacity: num) }

func bubbleSort<T: Comparable>(_ array: inout [T]) {
  guard !array.isEmpty else { return }
  array.withUnsafeMutableBufferPointer { buffer in
    for n in 1 ..< buffer.count {
      for i in 1 ... (buffer.count-n) {
        if buffer[i - 1] & buffer[i] {
        }
      }
    }
  }
}

Swift 3D Touch

  • AppStoreで3Dタッチは特集される
  • Caribou App
  • static quick action
  • dynamic quick action
  • widget
  • Peek & Pop
  • UIViewControllerPreviewing
  • UILongPressGestureRecognizer
  • めっちゃ通訳者がつかれてるwがんばって〜www
  • UIPreviewInteraction
  • @meghafon

Pixels

  • perfegg
  • こういう話から学ぶべきこと見つけるの苦手や
  • steps
  • @RIKEKOBLAUCH
  1. 課題に注力する
  2. 技術ではなく人を動かすのが大変
  3. コネを使え

お昼休憩

  • 弁当が豪華
  • これに勝てる気がしないから以降のレポートは感想だけ。

毎日リアクティブ

  • @vasarhelyia
  • また眠くなってきた
  • あとでコード見返したい

Unsafe Swiftの安全性

  • raywenderlich.com
  • Hashble
  • めっちゃプレゼンうまいけどはやくて通訳大変そう

クックパットのテスト

  • エリクサーだと...
  • Appium
  • かなり有用な話なんだろうけどさっぱりわからない

try! Swift二日目感想

開始前

  • 眠い、さすがに今日はみんなどこにいるのかわかってない

テストについて

  • テストする意義を理解するのは難しいけどテストできるコードを書くべきという格言
  • こういうところで副作用うんぬんがでてくるのかな...でも確かにテストとかで副作用って地味に邪魔そう
  • 今解説が難しいなって思ってる概念って全部テストができるようになればもっとわかりやすくなるんじゃないか...?
  • メソッドの入力と出力が複雑になることはself documentationになってよい
  • github.com/kickstarter/ios-oss
  • @mbrandonw

SequenceとCollection

  • @khaniou
  • CでのポインタでつくるLinked ListがSwiftではProtocolつかって実現されるのか、なるほどね
  • indirect知らんかった
  • enumでLinkedListの要素あるか最後かをみわけるってのなるほどな
  • こういう発表が一番勉強になる(テストの話とかなかなか実感わかないし汗)
  • サンプルコード、プリーズw

Swift Outside the Box

  • ようやく日本語だよーw
  • @novi
  • SwiftPackageManagerでCコンパイルできるのか
  • libcurl, libxml2, mysqlconnector, nkf(Network Kanji Filter)
  • grpc/grpc-swift, apple/swift-protobuf, IBM-Swift/BlueCryptor
  • ARM: iachievedit/package-swift
  • linux/i2c-dev.h
  • novi/i2c-swift-example
  • CのライブラリをSwiftyにラップするか...やってみたいな

VR LT

  • @artiebe
  • 背が高すぎてマイクが音声なかなか拾えないってww
  • Alibaba VR shopping
  • 日本語ネイティブじゃないのに日本語で発表するところに日本愛を感じる

App Search

  • zalando
  • CoreSpotlightだと...?知らんかったぞ。。。
  • NSUserActivity

StartupでのSwift

  • @KUDEKI
  • Parseだー

昼食

  • 大人気鶏めし弁当、本当においしかった
  • まさかのLINEコーヒー終了w

型とか

  • APIデザインんについて?
  • 型によって意味をつたえ、オプショナルによって欠けるかもしれないことを伝え、新たな型を定義することでなぜ欠けるかを伝える
  • Ben-G/Validated
  • Delegateが自然と説明されている、すごい。けどメンバーに言ってもまだ難しそうだけど汗
  • 今日の話なんか面白いの多い気のせい?
  • これもコード欲しい
  • @_siekowski
  • Twitterが賞賛と疑問で荒れた

App Transport Security

  • niwatakoさん、自己紹介おもしろかったw
  • 発表めっちゃうまい

Color

  • 色の技術的な側面から、色んな人に役立ちそうな話
  • .clrファイルを使うといいらしい
  • 色を更新することを考えると確かにInterface Builderで色つけるの頭わるいな、確かに。色ファイルをつくるのが正しい。
  • extensionの中に構造体をつくってstatic let
  • つくったものをclass varでプロパティを返すようにする
  • Zeplin、つかってみよ
  • ColorUpdatableプロトコル...?

サーバーサイド

  • ns*.com
  • Vapor
  • swiftdocker/docker-swift
  • sssaale.herokuapp.com
  • LTでライブコーディングすごいな
  • Kitura-Markdown

Mock Object

  • モックオブジェクト?
  • フェイクオブジェクト
  • 料理で例えたコードの中にラーメンの絵文字とResult使っているのなんかギャップ感
  • てかこの人日本語の発音も英語の発音も両方完璧ですごい
  • XCTest、呼び出されたかは何回呼び出されたかでアサーションする
  • 二回呼び出されてるみたいなのよくあるからテストの意義が分かってきた気がする笑
  • やくだつやつだったのに途中で寝ちゃった

意思決定

  • 通訳の人的にはカルタゴらしい
  • 朝ごはんは確かに考えたくないからいつもおんなじの食べてるな...
  • ApplicationとComponentとUI
  • ペアプログラミング、いいね

Shuichiさん!!

  • ディープラーニング
  • iOSサンプラーから
  • MPSCNN
  • めっちゃ緊張してた。なんでやねん。もっとアウェイなところでも発表してるやん堤さん笑

fastlane

  • オープンソースの保守大変だな
  • そんなことより水野賞バンザイ!
  • この機会だから申請だした!

エラーについて

  • 英語と日本語両方スライドに書いててめっちゃ親切

giginet

  • watchOS3でのゲーム
  • ファミコンエミュレータアップルウォッチで動かすの、世界一いらないライフハック笑
  • やってることが面白すぎる
  • いや天才やw

TachibanaKaoru

  • トラブルの後間違えて日本語で話し始めてしまう
  • try! Swiftの締めがボルダリングの話てwwwwwwwwwwwwwww
  • ちゃんとSwiftにつながって、しかも最後の最後でSwiftいいよね的な話になって感動
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment