寄付窓口はこちら

try!, Swift の検索結果:

次へつなごう— Extending a hand to the next generation of Apple developers | try! Swift Tokyo 2019 2-16

コーディングを学ぶには絶好のタイミング!技術は日進月歩、進化を遂げています。Apple Platformでの開発はSwiftやSwift playgroundにおける進歩によって、より簡単に取り組めるようになりました。しかし、この業界では、ソフトウェアエンジニアになろうとしている人と、エンジニアリングの役割を果たそうとしているテック企業の採用要求にはまだギャップが存在します。このトークでは、ソフトウェアエンジニアの人口統計からよく見落とされがちなポイントに焦点を当てます。これ…

Core Dataを守るために | try! Swift Tokyo 2019 2-15

この数年、Core Dataはローカルでの永続化において、Realmのような他のサービスを好む開発者の間ではかなりひどい評判です。このトークでは、Core Dataを使うことはそんなに悪いことではないと考える理由を説明します。Core Dataでうまくいかないところや、その落とし穴を回避する例をお見せします。また、Core Dataのアプリへの設定についても簡単に説明します。終わりには、みなさんはCore Dataをアプリに安全に統合するのに役立つ簡単なルールを用意することに…

Swiftコンパイラにコントリビュートする | try! Swift Tokyo 2019 2-14

…ニティといえといえばtry! Swift 素晴らしいトーク、ワークショップが待っています。 渡しの場合はtry! Swiftからコントリビューションが手動されています Open Source Swiftについて見ていく 多くのフェーズが走っているが一つずつ学んでいける どうパーサーがきのうしているか SIL 昨年はじめてお話させていただきました。 私の話からは創造いただけるかもしれないが道最適化されるかをはなした パイプラインの殆どがカバーできる、インプットはこれで十分 ワー…

アセンブリ、君ならできる! | try! Swift Tokyo 2019 2-13

みなさんにはアプリのデバッグで、結局アセンブリという自分には理解不能な壁を見るだけになった経験があったでしょう。もしくは、なぜUIKitがこのような挙動を示すのかを理解するために、UIKitのメソッドのソードコードをみたくなったこともあるかもしれません。このトークでは、我々のような普通の開発者でもアセンブリを深く学ぶことによって、バグを見つけ出したり、システムフレームワークのリバースエンジニアリングを行ったり、自身のコードをより深く理解することができることをお見せします。 5…

賢者のString | try! Swift Tokyo 2019 2-12

SwiftのString型は、正確さ、パフォーマンス、そして使いやすさの絶妙なバランスを目標にしています。 このトークではString型の背景にある哲学や、私たちがコミュニティとしていかにStringを使ったプログラミングの楽しさと手軽さを追求できるかについてお話しします。 Apple Swift Standard Libraryチームで働いています。 こちらはジッパー お手伝いしてもらいます 数年前私自身重要な質問を自問自答していました Stringとはなにか、どのように使…

All about linking libraries | try! Swift Tokyo 2019 2-11

iOSアプリを開発する際、ライブラリやフレームワークを使わないということはほとんどありません。 OSが提供するUIKitやSwift標準ライブラリを使いますし、サードバーティの便利なライブラリを使用することもあります。 そして、誰もが1度はリンクエラーや重複したシンボル、パッケージマネージャが出力するエラーメッセージに悩んだことがあることでしょう。 リンクエラーの解決が難しいのは、問題の原因がプロジェクト設定、ライブラリの種類・配布方法、実行先(デバイスやシミュレータ)の環境…

SwiftCheckで始めるProperty-based Testing | try! Swift Tokyo 2019 2-10

…日本語で喋ります。 try! Swift前日に英語のワークショップをやったのでせめてここまでは英語で。 プライベートではペンギン村コミュニティでサービス開発しています Property-based testの説明から 性質をテストする、ランダムな値でテストする。なんのこと? XC Testと比較する Example based test 明確な入力と期待値を設定 例えば配列の反転処理。 入力値として与えられた配列を全体反転したものを返す。 どれだけの入力パターンを試せば良いの…

iOS端末を利用した心理学研究の背景と展望 | try! Swift Tokyo 2019 2-9

これまでの心理学研究では、パーソナルコンピュータを利用したものや、物理的なレバーを用いた実験が行なわれてきました。 しかし、今日ではそのあり方が変貌しつつあります。その内容は、ヒトやヒト以外の動物においても、タッチスクリーンを用いた実験が増えているという事実です。 その歴史的背景と、登壇者が現在研究機関と協力して開発・実施している Swift 製の iPad アプリを紹介しつつ、これからの科学研究におけるソフトウェア技術の必要性とその役割を論じます。 心理学とは何かを最初にお…

Swiftにおける音の成形 | try! Swift Tokyo 2019 2-8

シンセサイザーを使ったサウンドデザインは目も当てられないほど複雑というのが一般的ですが、Swiftではそんなことにはなりません。このトークでは、音の合成、デザインの基本、そして基本的な音を、どうやって最高のものに変えることができるかに焦点を当てます。 まず最初に簡単にお話しますね?音を出します。ボリュームを間違ったらごめんなさい。 だいたいリバースエンジニアリングをしています。オーディオに興味があります。 アプリケーションのバリデーションをしています。 オーディオがどのように…

モバイルのデザインシステムを構築する | try! Swift Tokyo 2019 2-7

モバイルデザインシステムをゼロから構築する方法を学びます。デザインシステムとは何か、チームにどう役立つのか、開発のスピードアップにどのように役立つか、そして成功するためにはじめにフォーカスすべき3〜5つのことを学びます。 ちょっと声がかれていますが昨夜カラオケで楽しみすぎました。 ようこそモバイルデザインシステムの話へ。 実は財務のマネジメントアプリを作っています 今日そこで得た知見を共有したいと思います。 デザインシステムって? 新しい分野だと思います。同アプリケーションを…

Swift type metadata | try! Swift Tokyo 2019 2-6

Swiftには実行時に型情報を保持するためのType metadataという仕組みがあります。 我々が頻繁に直接使うことはありませんが、Swiftのランタイムの動作を理解するための重要な要素です。 このトークでは Type metadata やその実装について紹介します。 こんにちは、家庭の医学くんという名前なのでそのように読んでください。メルカリでインターンをしています、おととい高校を卒業しました。 メタデータはSwiftを理解するのに重要です runtimeには実は動的な…

SwiftSyntax で便利を実現する基礎 | try! Swift Tokyo 2019 2-5

SwiftSyntax を使うと、Swift のコード生成や書き換え、静的検査などを実現できます。しかし、SwiftSyntax の使い方はほとんど知られていません。この方法をダイジェストで紹介します。 2つの機能 まず読み書きしやすいデータにする部分 よくあるif分。条件と複文の2つから構成されている 条件にはオプション束縛条件が含まれている。 オプション束縛条件はさらに分解できる。 コードを分解して下へたどりました。木構造です。 コードを木構造で扱えるようにしたものが構文…

Swift Hardware Hacking | try! Swift Tokyo 2019 2-4

このトークでは、Swiftを使ったハードウェアのハックの方法をお話します。猫の貯金箱(上にコインを置くと、猫がそれを貯金箱の中に引き込むもの)の機能を、マイクロコントローラーや様々なセンサーをつかって拡張する様子をお見せします。 内容は ・お金が預けられた際にカウントする。 ・預金総額/総合収支を音声でお知らせする。 ・Bluetooth LEで電話と接続し、デバイス間で情報を送る。 です。このトークの目的は、どのようにSwiftでハードウェアを扱うことを始めるか理解すること…

Swiftでソーシャルネットワークをつくろう | try! Swift Tokyo 2019 2-3

「本当にプロダクトに使用できる状態なの?」 サーバーサイドSwiftは、ここ数年で大きな発展を遂げました。Ian PartridgeとDavid Okunが、フルスタックSwiftが、いかにあなたの次のプロジェクトで実用的かお見せします。合わせて、クラウド環境で稼働させる際に活用できるオープン標準についてもご紹介します。 Swiftについて話すことに時間を使うより、Swiftを書くことにもっと時間を使いましょう! Ianです。Kituraフレームワークに取り組んでいます。Da…

ポートレートモードを自作しよう | try! Swift Tokyo 2019 2-2

最近のiPhoneはデュアルカメラやTrueDepthカメラの搭載により、深度情報を利用して背景をぼかし、被写体を際立たせた美しい写真を撮影することができます。 このトークでは、「深度情報を持たない」画像から背景と被写体を分離してぼかすポートレートモードを、Swiftでゴリゴリ自作して、美しい写真を仕上げていく過程をお話しします。 はじめまして DeNAでマンガボックスのエンジニアをしています。はじめて英語でやります。がんばります ポートレートモードは被写体を際立たせた美しい…

魔法の法則 | try! Swift Tokyo 2019 2-1

SFとファンタジー小説にインスパイアされたルールに従って、知的で没入型の体験を開発することを学びます。ソフトウェアと同様に、複雑で魅力的な魔法のシステムもガイドラインを使用して具体的なユーザー体験を構築します。この講演では、架空の世界構築をサポートするいくつかの思索的な法則を探り、これらの教訓を日々のアプリとコード開発に組み込んで同じ結果を生み出す方法を説明します。 魔法について話すにあたってこの人を紹介したいと思います。ブランドン・サンダースン 時の車輪という本が有名。著者…

try Prototype! | try! Swift Tokyo 2019 1-16

なぜ私たちはコードを書くのでしょう?私は疑問に思っていました。コードはどれくらいの期間存続すると想定されていて、どれだけ使い捨てられるのでしょう?最終目標がユーザーに優れた便利な機能を提供することである場合、堅牢なコードに到達するために使い捨てるコードを書く価値はあるのでしょうか?私たちは優れたプログラマーとして、技術に磨きをかけますが、ただ正しくものを構築するのではなく、正しいものを構築するためにこれらすべての知識をどのように活用できるかを見てみましょう。 2016年にはじ…

Siri ShortcutsとNSUserActivityによるエンゲージメント推進 | try! Swift Tokyo 2019 1-15

NSUserActivityは、開発者がデバイス上でのアプリの可視性を高めることができるとても強力なツールです。 Siri Shortcutsの導入により、アプリの機能とのエンゲージメントがこれまで以上に簡単になりました。 SiriKitの自動音声起動機能を追加して、ユーザーのアプリ体験をさらに楽しくする方法を探ります。 NSUserActivityの話です。 このタイトルをみて分かると思いますが Siriって素晴らしいテクノロジーか 反復操作に簡単にアクセスできるようにする…

MachObfuscator | try! Swift Tokyo 2019 1-14

iOSアプリの難読化に対するまったく新しいアプローチを紹介します。 MachObfuscatorはSwiftで書かれたオープンソースのバイナリ難読化ツールです。 iOSデベロッパー 皆さんのアプリがいかにリバースエンジニアリングしやすく、そしてどうすればしにくくできるか。 公安9課向けアプリをサンプルにやりましょう このデータを理解するために、ドキュメンテーションの中でこれにあったConstantを見る必要があります。 Swiftでどうこのrawデータを解釈すれば良いか コン…

SwiftのアプリでCやC++、Objective-Cのフレームワークを使おう | try! Swift Tokyo 2019 1-13

Swiftは強力で、また、比較的新しい言語です。世の中にはC言語や、C++、Objective-Cで書かれたオープンソースライブラリが多くあります。ユニークなアプリを作るチャンスを3倍にするために、これを利用する手はないのでしょうか? あります! このトークでは、C、C++、Objective-Cの関係性を説明するための基本をなぞり、SwiftのプロジェクトにDependencyを追加する方法をデモします。 [ Spotifyというかなり大きなコードを扱っています。その中には…

Swift Server Update | try! Swift Tokyo 2019 1-12

The Swift Server Work Group (SSWG) の目的は、Swiftでのサーバーアプリケーション開発の安定した健全なエコシステムを作ることです。 現在フォーカスしているのは、コミュニティが信頼できる高品質で十分にメンテナンスされたライブラリやツールの開発を促進することです。 このトークでは、2018年9月にSSWGが発表されて以降の最近の開発を振り返ります。 オープンになっていなかったプロセスや参加する方法、コミュニティとチームが行なっているプロジェクト…

Introducing SourceKit-LSP | try! Swift Tokyo 2019 1-11

Launguage Server Protocol(LSP)は近頃注目を集めており、様々なプログラミング言語のLanguage Serverが開発されています。 Swiftも例外ではなく、2018年にはSourceKit-LSPが発表され、現在も開発が続いています。 このトークではLSPについての概要と、SourceKit-LSPを使った将来の開発環境についてお話したいと思います。 フォトブックアプリを作っています ランゲージサーバープロトコルとは 補完などには各プログラミン…

ARKitのアプリを作ろう | try! Swift Tokyo 2019 1-10

ARKitはARをアプリに組み込んでより魅力的で楽しいものにする方法を示しました。もしあなたのアプリにARKitを使うことを考えているならこの話はあなたのためのものです。このトークではアプリのパフォーマンス確保や仮想オブジェクトの配置、平面の操作など、ARKitアプリを作る上で私が経験したチャレンジをお話します。ARKitを最大限活用し、ARアプリのパフォーマンスを維持し、洗練されたエンドユーザーエクスペリエンスを実現する方法を学びましょう。 ARきっと使ったことがある人 去…

PixarのようなグラフィックをSwiftで実現する | try! Swift Tokyo 2019 1-9

このトークでは、簡単な光線追跡をSwiftを使ってゼロから作る際に直面する障害についてお話します。光線追跡法は、アニメーションフィルム産業を席巻する、Pixarのあの悪名高いRendermanの3Dレンダリング技術の基礎となっています。これは、光線の物理モデルと、オブジェクトと表面の相互作用によるものです。 昨今では、NVIDIAのRTXのような、より強力で特化したハードウェアによって、リアルタイムでの光線追跡の分野には新たな関心が寄せられています。 著名なプログラマーである…

テストケースでMemory Leakを発見する | try! Swift Tokyo 2019 1-8

SwiftはARCでメモリを管理しています。従って下手な書き方をすればメモリリークがいとも簡単に発生します。 どのようにメモリリークを防ぎますか?コーディング規約、コードレビュー、最後の砦のQA… 勿論、我々は怠惰なので、努力や根性よりも、自動的に動作するものを好みます。第四の方法として、Mirrorを使ったテストケースの実装を紹介します。 最近のタスクはコードを書くなくなってリファクタリングやコードレビュー、ペアプロ、プロデューサーとのコミュニケーションなど。 スマブラとス…

Keypath入門 | try! Swift Tokyo 2019 1-7

KeypathはSwift 4で追加された機能です。素晴らしい機能を持っていますが、時折使い所を見つけるのが難しく感じます。しかし、Keypathを理解して正しく使えた時、ジェネリクスやプロトコルによるさらなる抽象化を実装できます。ただし、これを行えるようにするには、Keypathのパターンをいつ適用するかの直感的な理解が役に立ちます。このトークでは、まず、存在するさまざまな種類のKeypathについて説明し、次に実際の例を通して、それらが自分のプロジェクトでどのように活用で…

protocol/extensionにジェネリクスを入れたい | try! Swift Tokyo 2019 1-6

[https://twitter.com/yyu:embed] protocolはassociatedtypeといった、いわゆる存在型しか扱うことができない。あるprotocolに対してextensionで機能を与えるとき、associatedtypeには必ずなんらかの具体的な型を入れることが求められる。protocol/extensionは型に基づいて関数を探すような動きをするため、どこかでは具体的な型が必要となるが、たとえば任意の型AについてList[A]を最終的に利用す…

限定的なimportの明示とその効果 | try! Swift Tokyo 2019 1-5

普段なんとなく書いているimportですがサブモジュールや特定の要素を明示的に指定することができます。このセッションではこれらのimportの仕様を振り返り、またバイナリサイズやパフォーマンスに与える影響を考えていきます。 今回ははじめての英語でのプレゼンテーションです Importについて 何気なく書いていますがいくつかのオプションをご存知ですか それぞれ説明します Attributeは書いてもいいし書かなくても良い Testableを使うとInternalにもアクセスでき…

Swift Light | try! Swift Tokyo 2019 1-4

Glowforgeの3Dレーザープリンターは木、革、アクリルなどから美しい製品を作り出します。Coregraphicsと他のiOS APIを利用することで、アプリのユーザーはGlowforgeに送ることができるベクターグラフィックを作成したり、操作したりすることができます。このトークではこれらの機能をSwiftを用いてどのように構築したか、そしてSwiftを用いることで私達のソリューションがどのようにより堅牢でエレガントで安全になったかを説明します。 ビルドをするとき、レーザ…

アクセシビリティのためのカラーコントラスト | try! Swift Tokyo 2019 1-3

テキストのコントラストはどれだけあれば十分でしょうか?グレースケールの色をいじり回すのではなく、式を使用して相対的な明るさを評価し、より多くのユーザーがコンテンツを体験できるようにします。方程式の背後にある科学の概要、およびいくつかのエッジケースを探求してみます。 今日の話は アクセシビリティに向けた色のコントラスト iPhone、ラップトップを前提においた話です。QRコードからPDFがダウンロードできます。 QRコード出しましたのですこしQRコードについて。 日本で発明され…