スケジュール
- 2019/9/6(金) 10:50〜
- Track Aレギュラートーク(60分)
- Proposal: ライブラリのインポートとリンクの仕組み完全解説
概要(リンクにまつわる問題)
インポート・リンクの仕組みがよくわかっていない状態だと、エラーと自分の加えた変更が結びつかないので、よくわからないエラーが無限に起こっていると感じます(同じエラーメッセージを引き起こす原因は複数あるため)。
しかし実際はそうではないので、可能性の高い順番で確認していけば問題を解決できます。
そのための基礎として、インポート・リンクの仕組みを理解が必要になります。
モジュールのインポート・リンクがどのように解決されるのか、リンクとはいったい何をしているのかを学ぶことで、システマチックに問題を切り分け、解決できるようになります。
この話を聞いて得られること
基礎的な能力
- ライブラリの形式に関する知識
- インポートとリンクの知識
- インポートとリンクにまつわるトラブル解決の能力
応用
- ライブラリ作成における配布形態の技術判断
- パッケージマネージャの高度な利用
話さないこと
Swiftコンパイラが具体的にバイナリをリンクする実装についてやOSが実行ファイルを読み込む方法、といった極端に低レイヤーのことは話しません。
それはシステムプログラミングの範疇です。
あくまでライブラリの利用者(応用編で少しだけ作成者についても)としてアプリケーションプログラミングの範囲で、ライブラリを利用可能にする基礎的な手順を解説します。
具体的な内容
以下に現在のスライドを少し示します。
例えば、問題解決チャートの設問に「リンクのエラー」か「インポートのエラー」か書かれていますが、この区別がつかない・自信がない人はけっこういるのではないでしょうか?
この話を聞くと、「これはインポートで起こってるエラー」「これはリンクエラー」「問題の切り分けとして〇〇をする」ということがスムーズにできるようになります。