Perl Beginners #6 に参加して参りました
いつの話だ!!! *1
今回はJPA 代表の牧さん (@lestrrat) が特別講師 *2 として来られていました。
Q&A セッションとして、1時間牧さんに自由に質問して牧さんがそれに答える、というスタイルで進めていました。
以下まとめ
牧さん (Q&A セッション)
- コードのコメントは英語で書くのか、日本語で書くのか
- GitHub とかにアップするコードは英語
- 仕事で書くコードの時は、日本語で書いたりもする
- 結局、その「ソースを読む対象」による
- CPAN モジュールのひな形を作るモジュールは何を使っているのか
- 何も使わない
- XS の時はオレオレひな形を使う
- ライブコーディングで実証
- "makamaka" を"nakanaka" に書き換えるモジュール
- マジで何一つ使っていなかった!!!
- XS は本当に面倒臭い
- XS モジュールを書きたいんだが、何か良い教材は無いか
- 「モダンPerl 入門」
- ↑牧さん謹製
- 印税が入るので買って欲しい
- 電子版の方が印税率が高いので、むしろそっちを買って欲しい
- テストファイルのプレフィックスの数字は付けないとDis られるのか
- 全然大丈夫
- 重いテストのプレフィックスを大きい数字にしておけば色々便利かも
- 「やってはいけないこと」とかはあるのか
- なぜ定数を畳み込まないのか
- プロトタイプは使わない方が良い
- 「Test::More なんかで使われているが?」
- プロトタイプを使うと、プロトタイプ的に関数等を呼べるので便利な場合がある。
- (&) 以外のプロトタイプは基本的に使わない方が良い
- コード中でプロトタイプが使われている場合はなにか怪しいと思った方が良い
- 「Test::More なんかで使われているが?」
- require の使い道について
- require は単純にPerl が記述されているファイルを読んできて、その戻り値をゲットしてくる
- require は実行するたびに毎回評価される
- require が有効なケース
- 遅延評価をしたい場合
- 外部データを突っ込みたい場合
- モジュールが存在するかしないかを確かめたい場合は、eval で囲んでrequire するとエラーメッセージを取って来れて良い
- eval とdo の違い
- 外部データをプログラムに与える時のベスト・プラクティスは
- require を使うと良い。外部データの中身にコードを書けるから便利
- 定数とかを持たせたい場合ば、constant みたいなファイルを作って管理する
- なにが出来たら「脱初級者」と言えるのか
- STF
以下LT
@sasakure_kei さん
- 配列で遊んでみた
- 配列をprint するとjoin されて表示される
- $, と$" の違いについて
- $, はprint のオプション
- $" は文字列のオプション
- Acme::Replica の紹介