お帰りなさい｡
ちょっと楽しいエクササイズをしましょう｡
ゲーム会社に採用され､ この魔法使いのゲームを作ることになったんだ｡
そしてこの魔法使いゲームは､ ユーザーのプロフィールにis magicianとあり､ とりあえずこれをfalseに設定することにします｡
もございます｡
専門家
そして､ このユーザーがこのゲームの専門家であるかどうか｡
とりあえずtrueにしておきます｡
そして､ その後に｡
うーん｡
そうしよう｡
ここでやってみましょう｡
両方かどうかチェックしてほしい｡
マジシャン｡
そしてエキスパート｡
そして､ もしそれが本当なら､ プリントしてほしいのです｡
あなたはマジックの達人です｡
それと､ 確認してほしいことがあります｡
もしや｡
マジシャン｡
しかし､ 専門家ではない｡
そんな時はプリントだけにしたい｡
少なくとも､ あなたはそこに到達しています｡
そして最後に､ もしあなたがマジシャンでないなら､ というチェックをしましょう｡
と言いたい｡
まあ､ 魔力が必要なんだけどね｡
では､ これまで学んできた論理演算子を使って､ この条件付きロジックを作ってみてください｡
よかったら動画を一時停止して､ ご自身でリップルで試してみてください｡
そうでなければ､ このまま答え合わせをするつもりです｡
しかし､ これまでのビデオや練習問題をこなしていれば､ かなり簡単に解けるようになるはずです｡
では､ まず1つ目の「あなたはマジックの達人です」というところから始めましょう｡
だから､ もしということになる｡
エキスパートであり､ マジシャンである｡
印刷しようと思っています｡
あなたはマジックの名手だから､ それを真似してプリントと言うんです｡
あなたはマジックの達人です｡
ここでは､ あまりクレイジーなものはありません｡
そして次は､ こう言うんだ｡
Ifか､ なんならl ifとも言える｡
そしてまた､ これはあなたが何を好むかを決めることができるものです｡
私は通常､ この場合､ 最初のものと同じコンセプトの一部であれば､ l ifを使うのが好きです｡
ええ､ まだどのようなユーザーなのかを解明しているところです｡
だから､ ライブを使うし､ マジシャンかどうか確認したいときはLと言うんだ｡
つまり､ それがマジシャンなのです｡
だから､ それが本当かどうか確認するんです｡
でも､ 確認したいこともあります｡
もしや｡
まあ､ 専門家ではないんですけどね｡
さて､ どうすればいいのでしょうか｡
つまり､ ショートサーキットを使って､ 専門家だと言うことができるのです｡
そして､ これが嘘であったとしても
マジシャンとして､ この部分をショートさせてプリントすることで､ 少なくともそこに到達することができるので､ ここで真価を発揮します｡
なぜなら､ 最初のifブロックでは､ これが真になるとすぐにLFを完全に無視するようにチェックをしているからです｡
だから､ それができたんです｡
でも､ これは本当に考えないといけないので､ ちょっと読みにくいですね｡
もし私がコードに戻ったり､ 他の人が私のコードを見たりしたら､ 「magicianであるかどうかはチェックしているが､ expertではない」とコメントしない限り､
はっきりしないのです｡
これでは絶対に走らないからです｡
マジコンが偽者なら､ それをチェックしているのでしょう｡
言ってもわからないと思いますが｡
だから､ 私はこのようなものを使うのが好きです｡
使ったり使わなかったり｡
そして､ その方が読みやすいでしょう？
それはit's itでもっと意味がある｡
おい､ この人が専門家でマジシャンなら､ これをやれよ｡
そうでなければ､ もしこの人がマジシャンで専門家でないなら､ これを印刷してください｡
なかなかいい感じに読めていますね｡
そして､ はい､ あなたはこれを行うことができますので､ 単にチェックと反転としてではなく､ ブール式が何であれ､ 覚えておいてください｡
つまり､ これはまだブール値として評価され､ チェックすることができるのです｡
わかりました｡
最後の1枚を完成させよう｡
魔法使いでないなら､ 魔法の力が必要だ｡
では､ ここでどのように確認するのか｡
まあ､ もう一回L ifしてnot isと言えばいいんですけどね｡
マジシャン｡
そして､ このように実行して､ プリントして､ ここだけコピーしますと言うと､ 魔法の力が必要です｡
そして､ コードのブロックを見ることができるように､ とりあえずコメントを削除してみましょう｡
そして､ プログラムをテストするのです｡
きちんとコーディングできているといいのですが｡
バグがないことを祈ります｡
でも､ 見てみましょう｡
これを実行すると
魔法の力が必要です｡
それはなぜでしょうか？
まあね｡
マジシャンが偽者なら､ どれも通用しない｡
これをtrueに変更して実行をクリックするとどうなりますか？
わかりました｡
私は､ マジシャンであると同時に専門家でもあるので､ マスターマジシャンです｡
これをfalseにして､ 「実行」をクリックするとどうなりますか？
なあに､ 少なくともあなたはそこに到達している｡
私はマジシャンですが､ まだ専門家ではありません｡
私はまだ｡
まだまだゲーム性を高める必要がありますね｡
さて､ 私とは違う答えが返ってきたかもしれませんし､ 正しいやり方はたくさんあります｡
L文でも良かったのでは？
条件付きロジックは､ 自分だけでなく､ コードを読む他の人にとっても意味のあるコードを書くためのものです｡
このアイデアは､ 極端に賢くなったり､ 本当に短絡を心配するものではありません｡
しかし､ マシンは非常にパワフルなので､ ほんの少し最適化したところで､ 読みやすさが損なわれるだけで､
その価値はないのが普通です｡
だから､ コードが英語のように読めるようにしたいのです｡
そして､ これは率直に言って､ 多くの初心者プログラマーが理解に苦しむテーマです｡ できるだけ賢く､
できるだけ短い行数のコードを書こうとして､ その代わりに読みやすさを重視したいのに｡
なぜなら､ 理解しやすいコードは良い開発者の証だからです｡
そして､ これを見て､ ああ､ これはかなり簡単なことなんだな､ と思っていただけたら幸いです｡
これだけなら納得だが､ これだけではダメだ｡
もしかしたら､ 私の考える「よく読める」は､ あなたと違うかもしれません｡
私たち一人ひとりが､ 自分のコードをシンプルで素敵なものにするためにベストを尽くすということであり､ プログラミングに唯一の正解はありません｡
問題解決の方法はいろいろありますが､ 大切なのは､ 読みやすいようにシンプルに解決することです｡
楽しんできてください！次回作でお会いしましょう｡