Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Macで開発環境を整える170420

How to set up your Macintosh for developing.
Written in Japanese. Draft quality from around the 6th page.

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

  • Gehören Sie zu den Ersten, denen das gefällt!

Macで開発環境を整える170420

  1. 1. Mac で 開発環境を整える 2017-04-25 TS ▼ この文書の目標: - Mac 初心者がPython3を使える環境を整えることを可能とする事 - 環境設定の全体図をイメージするためのマネージャーも読む物 ▼ この文書は、もともと社内向け文書であり、話す時間は10分だった。 途中まで詳しく書いたが、後半はあまり検証が確実ではない。 また途中から、雑多なメモである傾向が高まってくる。 ▼ この文書の著者は Macintosh を使い始めて7年目。 最初に知りたかったことを思い出しながら書いた側面もある。 1
  2. 2. 1. OS X のバージョンを確かめる。 • 10.11 (別名 El Capitan) 2 アプリやドライバをインストールする 際に何かと、この番号は重要となる。 https://ja.wikipedia.org/wiki/MacOS
  3. 3. 2. Spotlight • Ctrl + Space キー もしくは Command + Space キーで起動する。 • アプリケーションを起動する場合に用いる。 • Spotlight の機能は、OS X 10.4 (Tiger) 以降で導入された、検索機能である。 • 検索結果が表示された時に cmd キー押下で、ファイルの場所なども分かる。 • 電卓のようにも使える。例: 2*3*4 → 24 3
  4. 4. 3. ショートカットキーの確認/設定 • Macのいろいろなショートカットキー (ショートカットともよく呼ぶ)は、 【システム環境設定】の 【キーボード】 で、確認と設定が可能。 • ショートカットの変更も可能だが、慣れるまで は、無闇に変更しない方が良い。 • スクリーンショットの機能は便利なので、 ショートカットを覚えておくと良いかも。 4
  5. 5. 4. Time Machineの設定 • やや頻繁にバックアップを 保存。(1時間ごと、毎週..) • 何かあった時に元に戻すこ とができるので、とても安心。 • 注意点: • ディスクの容量が必要。 • 最初の動作に時間がかかる。 5 Spotlightで起動 Time machine はひとつ余計なディスク が必要のようだ。Time machine 注意 点で検索せわ 念のため、アンチウイルスソフトが起 動しているかどうか、確認をせよ。
  6. 6. ここからは概略のみ 6
  7. 7. 5. Terminal または iTerm2 を使う。 • Pythonなどを使う為に、 コマンドベースでいろ いろなことをするには、 Terminal もしくは iTerm は必須。 • iTerm は便利なので、 インストール推奨。設 定できる機能が豊富で ある。 • どちらも UNIX端末エ ミュレーダである。 7
  8. 8. 6. 開発環境インストールの前準備 下記の順番で、ソフトウェアをMacにインストール。 1. Xcode をインストール。 2. Homebrew もしくは MacPorts のどちらか 上記の Homebrew や MacPorts を同居させると問題 が起こりうる。Homebrew はルートユーザ権限は不 要だが、 MacPortsは必要で、sudoコマンドの使いこ なしが必要。 8
  9. 9. 7. Homebrew の使用例: brew install coreutils gawk gnu-sed # 元々のMacのBSD版UNIXでなく、GNU版を使う為。 # gsed -n 1~10p で 10行毎に1行表示することが可能。 brew install source-highlight # less で色を付けるため # ここに未記載だが、less を最新版にすると、& ショートカットが有効化。 brew install hg # バージョン管理にGitではなくてMercurialを使いたい場合 9
  10. 10. 8. Python3のインストール • 下記のコマンドでバージョンなどを確認。 which -a python{,3} # どこにPythonがあるかを全て調べる。 which -a python python3 # 上と同様。 python --version Python2とPython3の違いは非常に重要。 10
  11. 11. 9. Python3のパッケージ管理ツール • まず、pip, pyenv もしくはpip3 のようなPythonの パッケージ管理システムをインストールする。 • そして、必要なPythonのパッケージを随時インス トール。 • Virtualenv を試すと良いかも。 • Echo $? は使える。 • Pip3 install ipython3 11
  12. 12. 10. Docker • イメージとコンテナの違いを意識せよ。 • 仮想環境 12
  13. 13. 補足情報1. Mac を使い始めた 開発者向け 14ページ 13
  14. 14. 1.インターネット上の参考情報 • Google や Bing などで、計算機の使い方を検索する場 合は、時期に気をつける。5年以上古いものはおそらく 役に立たない。 • AND OR site: inurl: filetype: などの検索演算子を知る べし。 • 「ショートカット一覧 AND Mac」 「修飾キー AND 活用」 でまず検索してみよう。 • 断片的な知識からたどると「知らない事を知らない」こ とがおこる。体系的にたどるために、Wikipedia が活用 できる。 • 長いキャリアを考えると、書籍からの知識の獲得は重 要。 オライリーの本は読めた方が良い。 全部熟読しても良いが、一晩で大事な箇所を情報の 位置づけを把握しながら、理解すると実用的。 14 https://www.oreilly.co.jp/books/9784873115825/ http://www.key-p.com/blog/staff/archives/104784
  15. 15. 2.各種作業上の便利ソフト/サイト • Stickies : 付箋ソフト, 非常に便利。 情報は/Users/abc/Library/StickiesDatabase にある。DropBox と同期可能。 • Google Drive : 長期間確実にいろいろな情報を残したい時に便利。ただし Googleは検閲権を保留しているので、パスワードなど記載はしてはいけない。 • Todoist.com : 様々なToDo を階層状に保管できる。 • Evernote : 100個程度以下の情報をすぐに保管したいときに便利だと思う。 • 1Password : パスワードの管理に便利であるらしい。 社内の情報をクラウドに載せてはいけないという規定がある場合があるので、気 をつけること。 何をインストール/設定したのか、どういう問題/疑問が発生したか、他に何をイン ストールしたかの情報の記録は、非常に重要。 蓄積したメモは、必要なときに迅速に参照できるように、体系化しておくことも重 要。 15
  16. 16. 3. よく使うショートカット 16 Cmd+, : そのアプリケーションの設定 Ctl+A : 行頭に移動 Ctl+E: 行末に移動 Ctl+K: 行末までヤンク Ctl+Y: ヤンクしたものをペースト Cmd + Shift + ”+” : 文字を大きく Cmd + Shift + ”-” : 文字を小さく 【ヒント】 インターネット上で、いろいろなアプリの ショートカット一覧を検索し、適当なページを 印刷して、ひとつひとつ日数を掛けて覚えて いくと、そのアプリの使い方をマスターしやすい。 良い参照かも: https://www.mediaatelier.com/CheatSheet/ 「Mac 修飾キー」 のネット検索はすると良いかも。 Cmd+Z : 直前操作の取り消し Cmd+Shift+Z : 取り消しの取り消し Cmd+C : コピー Cmd+V : ペースト Cmd+D : 複写 Cmd+Q : アプリの終了 Cmd+W : ファイル/ウィンドウを閉じる Cmd+T : 閉じたウィンドウをまた開く Cmd+E : ディスクドライブの取り外し Cmd+I : ファイルやドライブの情報 Cmd+O : ファイルを開く。 Cmd + Shift + H : ホームディレクトリに移動
  17. 17. 4.アプリケーションはどこにあるのか? • Finder は常時起動しているの で、Command + Tab で選択。 • Cmd + Shift + A で、アプリケー ションの一覧を表示。 • Cmd + 1 や Cmd + 2 で表示方 法を変更。 • 他のショートカットを知りたい 場合は、メニューバーを見る。 • Optionキーをさらに押下すると 表示が変わることに注意。 • アプリケーションのフォルダに さらに、ユーティリティがあるこ とに注意。 17 参考: Unixコマンドの使えるターミナルで man hier を実行すると、ディレクトリの 使われ方の一般論が詳細に分かる。
  18. 18. 5. エディタについて (テキストの閲覧と編集) • Sublime Editor, CotEditor, mi, atomなど様々なソフトがある。 • Macに最初から付属している textedit はあまりお薦めではない。機能 が少なすぎるので。 • 無料で利用可能なもので十分。 • 大容量のテキストの閲覧、文字コードの確認、機能の豊富さにはいろ いろな違いがある。日本語対応レベルの違いもある。 • 目的によるが、詳しい人に相談したり、ネットで評判を確かめたり、知ら ないソフトでも少しずつ使って試していくと良い。 • ターミナル上で less, vim などを使うのも良い。less * のようなワイルド カード(*等)を使った書き方で、多数のファイルをとても手軽に閲覧する ことも可能。(ただし、lessのショートカットを大量に覚える必要がある。) 18
  19. 19. 6. ファイルシステムに関して 1. ファイルシステム(フォーマット)で、大文字小文字 を区別するものとしないものがある。要注意。 2. ツリー構造(木構造; Windowsと同じ)。 3. ログインディレクトリは /Users/(アカウント名) 4. アプリケーションは /Applications 5. 絶対パスを知る方法: 1. Finder からファイルのアイコンを Terminal にドラッグ 2. Finderで 右クリック+Optionキー で【パス名をコピー】 19
  20. 20. 7. フリーズなどの不具合発生時: • ノートブックの蓋を閉じて、また空ける。 • 【アプリケーションの強制終了】 を起動するには、 Option + Command + Esc キー • 再起動 : • Command + Control を押しながら、電源ボタン。 • もしくは電源ボタンを4秒以上押下する。 • 起動時に Shiftキーを押すとセーフブート 20
  21. 21. 8.計算資源(CPU,メモリ)など確認法 • アクティビティモニタを 起動。 (Ctrl+Space→monitor) • さらに Command + 2 で CPUの様子が分かる。 • ディスクユーティリティ を起動 (Ctrl+Space→ disk) • ディスクの構成/設定/ 初期化など 21
  22. 22. 9.画像の編集について • Preview を使うのが最も簡便。 • Cmd + Ctrl + Shift + 4 でスクリーンショッ トを得る。 • (Spotlightで) Preview を起動。 • 起動もしくはCtrl+Nで、クリップボード上 の画像が表示される。 • 道具箱のようなアイコンをクリックすると、 画像編集の道具が現れる。 • 編集した画像は png 形式などで保存が 可能。(他には jpeg, tiff など) • 本格的な編集には、GIMP などを使う。多 数の画像をプログラム的に処理するには、 ImageMagickを使う。 22
  23. 23. 10.辞書(英和/和英/仏英/国語/ヒンディー..) • アプリ名: Dictionary 元々Macに入っている。 • Cmd+数字で即座に切り替わる。 • Cmd+Nで何冊でも起動する。 • Cmd+, で多数の辞書から必要なものを選 択可能。 • 最近のOS になる程、辞書の数は増えて いる。 • 多くの別のアプリからでも、Ctrl+Cmd+D で英単語の意味がすぐに参照できる。 • とにかく便利。 23
  24. 24. 11. 日本語入力に関して • キーボードの【英数】と【カナ】で切り替える。 • もしくは、Cmd + Spaceで切り替える。 • システム環境設定のキーボードの設定を見た方が良い。 • 外部キーボード、ウィンドウズ用キーボードを使う時は注意。 • 他社の IME の方がおそらく生産性は上がる。 • Google 日本語入力 IME • ジャストシステム社の ATOK IME = input method editor 24
  25. 25. 12. パスを通す • export PATH=$PATH:(新しく追加したいパス) • echo $PATH | tr “:” “¥n” • BASH なら ~/.bash_profile にパス設定命令を書く • ZSH なら ~/.zshrc にパス設定命令を書く 25
  26. 26. 13. 黒い画面でエラーを知るには • 直前のコマンドが正しく終了したかどうかを知るには、 echo $? を実行。 • 0なら正常終了。 • それ以外は何らかの異常発生 • Ctrl+C が押された場合は多くの場合,130 • Ctrl+Z で一旦停止ができる。fg コマンドで再開できる。 date; fg ; date により、再開時刻と終了時刻を表示出 来て、便利。 • エラーメッセージは、よく読もう。英語メッセージは重要。 • ライブラリ関係のエラーは厄介(影響範囲が大) 要記録。 26
  27. 27. 14.長時間計算させる場合 大量のデータを処理したりする場合に、作業者が離席しても、計算を中断 したくない場合に使う。 ただし、下記は、よく検証していない。下記項目に配慮すれば十分そうで はある。 1. 【システム環境設定】を起動(System Prefrence) 2. 以下をそれぞれ設定 1. 【デスクトップとスクリーンセーバ】 の中の - 【開始までの時間】 と【ホットコーナー】 2. 【セキュリティとプライバシー】の中の 【一般】【スリープ解除/…】 3. 【省エネルギー】 1. 【ネットワークアクセスによるスリープ解除】のチェックを外す。 2. 【ディスプレイを切にするまでの時間】を10分にするなど 3. 【電源アダプタ】 の 【ディスプレイが切のときはコンピュータを自動でスリープ しない】のチェックを入れる。 もしくは、下記を行う。(下記だけで十分かどうかは不明。) 1. ターミナルで caffeinate を起動。 27
  28. 28. 補足情報 2. Python3について 10ページ 28
  29. 29. DockerでPython3を使う 2017-04-14 TS
  30. 30. Python2 を使わない訳 • レガシーとの互換性を保つために Python 3 が敬遠されていた時代は変わりつつある。 • Python2 はマルチバイトの問題がややこしい。
  31. 31. 環境構築/利用の手順
  32. 32. 環境構築 • Macの環境に Python3, Pyenv, pip 等をインストール。 • しかし、途中で Docker を使うことにした。 • 理由: 標準ライブラリの一つ fileinput が動かなかった。
  33. 33. Dockerのインストール 1. Mac に Docker を普通のアプリのようにインス トール。 2. Docker を起動。Macのメニューバーに鯨のアイコ ンが出現する。 3. ターミナル 1. docker images というコマンドを入力。 2. docker pull kaggle/python で約10分でイメージ取得。 4. ファイルの移動はどうする?
  34. 34. Docker のコンテナの起動 • イメージとコンテナは異なる。 → 1個のイメージから多数のコンテナを起動可能。 • docker images ← イメージを確認。例: kaggle/python • docker run -it -p 8888:8888 kaggle/python bash • メインマシンとファイル共有するには –v オプション。 • 足りないソフトは apt-get install gawk などでインストール。
  35. 35. Jupyter-notebook (GUI)の起動 • PythonのGUI版。長いマニュアルも読みやすい。 • jupyter-notebook --no-browser --ip=0.0.0.0 • URLが表示されるので、それをブラウザで起動する。 • ブラウザ上でいろいろ操作。 • Dキーを2回押下すると、入力コマンドラインが消えたり する。
  36. 36. 付け加え
  37. 37. Macのメイン環境で起きていたこと • 解決困難な問題の発生 • 複数のpythonが混在 (python2が複数あった) • pip, pyenv などが意図通りに動作しなくなった。 • 標準ライブラリであるはずの fileinput がインタラクティ ブモードで動くのに、プログラムにしたら動かなかった。 • Homebrew も MacPorts も入れていたことが原因かも。 • Howbrew, MacPorts : MacOS用パッケージ管理システム • pip : Pythonのパッケージ管理システム • Pyenv : Python環境管理システム
  38. 38. 補足 • バージョンの確認方法: • python --version (ハイフンが2個,全て小文字) • python3 --version • python2 --version (もしも、Python 2 を使いたい場合)

×