作成者別アーカイブ: uraku

CodeIgniter 4.2.0 で導入された新しい自動ルーティングについて

CodeIgniter 4.2.0 がリリースされ、それと共に新しい自動ルーティング機能が導入されました。

Version 4.2.0 — CodeIgniter 4.2.0 documentation

CodeIgniter 3.0 ~ 4.1.9 スタイルの自動ルーティングは確かに Symfony や Laravel などと比べるとGETやPOSTなどHTTPメソッドを区別したルーティングは行われておらず、ゆるい分例えばPOSTを想定した処理にGETでアクセスしてCSRF対策を回避できる可能性などが有りました(もっともPOST専用のコントローラメソッドならPOST以外をはじくような処理を今まで書いていたとは思います。書いていますよね?)。

CodeIgniter 4.2.0 で新しく導入された新自動ルーティング機能ではこの辺りを改め、POSTでアクセスするべき処理はPOSTで動く事を明確にするような改修が行われています。

ただ、ここで旧自動ルーティングを利用している場合に、新自動ルーティングに移行した場合と設定ファイルでのルーティング(自動ルーティング機能オフ)に移行した方が良いかのポイントが有ったのでここに残しておきます。

既に設定ファイルを使ってルーティングしている場合

設定ファイルのままで問題有りません。設定ファイルで定義するのが結局最も意図しない動きが起きない(=安全)な実装になります。

大文字小文字を区別するURLを構成している

自動ルーティングを利用する場合クラス名は先頭のみが大文字である事が求められます。大文字が含まれるURLを構成している場合はそこにクラス名をフィットさせられないので、設定ファイルでルーティングしましょう。

_remap でのルーティングを行っている

新自動ルーティングではコントローラーメソッドとURL(URI)の関係を1対1とするために_remapでのルーティング調整が廃止されています。設定ファイルでのルーティングに移行しそちらでカバーしましょう。

同じコントローラメソッド内でHTTPメソッドによる分岐を行っている

設定ファイルでのルーティングに移行しましょう。設定ファイルのルーティングであればGETとPOSTを両方同じコントローラメソッドで受け付けるようなルーティングが可能です。

ここまでどれも該当しない場合

新自動ルーティングを使っても良いですし、設定ファイルに移行してもどちらでもいいと思います。

設定ファイルに移行する場合

旧自動ルーティング・新自動ルーティング・設定ファイルでのルーティングのいずれを利用している場合においても、以下のコマンドを実行することで既存のルーティングを一覧表示する事が出来ます。

php spark routes

ここで出力されたルート一覧をExcelやスプレッドシートに貼り付け、区切り文字を | に設定し列に分割、移行リストとして1つ1つ設定に移植してきましょう。この際、旧自動ルーティングは <クラス名>::__construct や <クラス名>::index も(旧自動ルーティングでは有効な)ルートとして出力してきます。前者を削除し、後者も不要であればリストから削除しましょう。残りが設定ファイルへ移植するべきルーティングです。

設定ファイルへの移行が済んだら自動ルーティングの設定を無効化しましょう。コントローラメソッド内で目的のHTTPメソッド以外をはじくような処理を入れている場合、今後はデッドコードになるので併せて削除してもいいと思います。


トップガン マーヴェリック を観てきた:感想

『トップガン マーヴェリック』を観てきました。初代『トップガン』1986年以来の続編になります。前作はアマプラの字幕版で履修済み。劇場はグランドシネマサンシャインのIMAXレーザー・GTで字幕版を観ています。以下ネタバレ有り。

シナリオ

前作からかなり期間が開いている訳では有りますが、上手くそれを活かした背景とシナリオになっています。まだまだ元気なものの若い衆に混ざるとおっさんとして扱われてしまうマーヴェリックの哀愁感、グースの息子ルースターとの関係、無人ドローンや第5世代戦闘機(※1)が台頭する時代の流れ、アイスマンとの関係性の変化、パイロット現役層の層の広がりなどなど。

かなり期間が開いている中でどうやって続編を作るかは大変だったろうなと思いますが、だいぶ良い形になっていると思います。

※1 USAで言う所のF-22やF-35などの最新世代戦闘機。敵機として扱われる「第5世代戦闘機」は名前を出す事は避けられている物の雰囲気はロシアのSu-57。前作主人公機であるF-14と今作主人公機であるF/A-18(F-18)はどちらも第4世代戦闘機ですが、F-14が既に退役済みの古い機体であるのに対して、F/A-18は様々なアップデートが重ねられながら今も現役で、同じ第4世代機で有りながら現役度は異なっています。

シナリオは前半こそ新キャラと既存キャラ(時の流れでみんな顔が変わって正直パッとは分からない)がわっと出てきて分かりづらい部分は有るものの、基本的には王道シンプル熱さと勢いなので、良い意味で深い考察とかは不要で観られました。

良い所

という訳でここから良かった部分の列挙。

  • 前作を踏襲したオープニング。
    • 盛り上がるよね。
    • 機体は最新。映像も前作より綺麗と色々この時点で進化していたり。
  • 極超音速機のロマン。
    • 極超音速機らしいのっぺりした外観。フロントガラスが無くサイドガラスしか用意されていないのも「それ」っぽいです。
    • 通常動力の軸流圧縮ジェットエンジンからスクラムジェットエンジン(※2)への切り替えが行われるシーケンスをちゃんと見せてくれる。
    • 成層圏レベルの高度から見える通常の航空機では見えない景色の綺麗さ。
  • 基地内をバイクで駆け抜ける描写も前作踏襲していて良い。
  • 前述の上手く時の流れを活かしたシナリオ。
  • 迫力とリアリティにあふれた空戦シーン。
    • 迫力が有るのなんて大体のアクション映画はそうじゃない?と思われるかもしれないが実機を使って撮影された空戦シーンのリアリティと臨場感はかなり凄い。映画館の質でかなり体験が変わってくるので出来るだけグレードの高いスクリーンで見ましょう!
    • 理論上は出来るらしい?(本当か?)F/A-18でのコブラ起動。
    • 強烈なGの中での限界機動とそれによって生じるベイパートレイル(※3)。それにもがくパイロットの臨場感。
  • 超高速で低高度を駆け抜けていくミッションのロマン。
    • エースコンバットシリーズ経験者なら大体やった事有る類のやつ。高度を上げ過ぎるとSAM(※4)に撃ち抜かれるがミスをすると峡谷に激突するぞ!いつものやつ。
    • スターウォーズのデススター攻撃的でも有るよね。この辺はもう色々相互に影響してそう。
    • 間一髪のところでフレアを炊いたり機動でSAMをかわしていく緊迫感も良い。
  • バトルシップのミズーリ的ポジションで登場するF-14。
    • 前置きでチラつかせてから満を持しての登場。
    • やっぱ可変翼って良いよね。
    • 世代差が有る機体での空戦。本当に勝てるんか!?ロマンがあるのでまぁOK。
  • 第5世代戦闘機らしい機動。
    • まぁやられ役なんだけどちゃんと高性能機らしいポストストール機動(※5)が見られるのは高ポイント。
※2 空気をタービンで圧縮して燃焼させるのではなく、吸気口から入ってくる超音速の空気をそのまま燃焼させるエンジンがスクラムジェットエンジン。すでに十分に超高速な状態でないとスクラムジェットエンジンは始動できないという点から空中で起動されます。
※3 戦闘機の翼から生じる雲。
※4 surface to air missile:地対空ミサイル
※5 ざっくり言うと通常の旋回とは異なる急激な動きをする機動。全ての機体で出来る訳ではない。

という感じですねー。とにかくシンプル迫力臨場感映画体験映画なので、出来るだけグレードの高いスクリーンで見ましょう。

例えばエースコンバットシリーズを1作でもクリアした事がある人に間違いなくおすすめです。

Microsoft Flight Simulator をプレイしよう

作中で行われた低空を超高速で駆け抜けるミッションや、ダークスターで極超音速機を目指すミッションがなんと「Microsoft Flight Simulator」のトップガン マーヴェリックコラボで追体験頂けます。

操縦のシビアさ、強烈な期待や人体へのG、様々なスイッチを操作してのスクラムジェット起動など、同じ世界に入り込んだ体験で盛り上がりましょう!


小型AT免許を取得した

昔から自動二輪にはうっすらとした興味があり、ヤマハのトリシティが登場したあたり(2014年~)から具体的に普通自動二輪(小型AT限定)を取ってみようかなぁという興味が大きくなりつつまだまだ寝かせてきていたわけですが、昨年11月からようやく教習所に通い、本日物理的な免許証の表記も変わり小型AT免許取得完了となりました。

契機

なぜこのタイミングなのかというと、単純に先延ばしにしていたのも有りますが、ちょっとずつ取ってもいいかなという材料が積みあがってきていました。

  • 昔から薄く興味はあったが事故るよなぁと思っていた。
  • 前二輪のトリシティの登場やコンビブレーキ/ABS義務化やあおり運転厳罰化で昔よりは気持ち程度安全になった気がした。
  • 都心で暮らす場合において自家用車を購入して維持する可能性はゼロに等しく、都心で暮らしたまま今後何かしら交通手段を購入するなら1人~2人だけ乗れて維持費も安いコミューターだよなと思っていた。
  • 今後のEVシフトや各種デリバリー多様化の時代において小型の乗り物の需要と供給はどんどん大きくなる予感が有った。
  • 50ccは世間一般に言われるデメリット(道路ごとの二段階右折の分かりづらさ・速度制限・通れない道路の多さ・メーカー側の原付二種モデル販売シフト・etc)が多くて乗るなら125ccだよなと思っていた。
  • 最近「全く新規に出来るようになった事」があんまりない気がしていた。

教習

コロナ禍きっかけでこのタイミングで取ろうと思った人も多いようで、教習所の予約はかなり込み合っていました。昨年11月に始まったと言っても実際の教習は今年から始まり3月頭での検定完了となりました。教習内容自体はスタッフの人もとても親切で分かりやすかったですね。

これまでレンタルで借りた50ccのリトルカブだったりジョルノだったりで公道を走った事は有りましたが、ちゃんとした教習で二輪にしっかり乗るのは初めてだったのでなかなか感覚を掴めるまで時間がかかりました。終了検定も1度は落ちましたが2回目で合格できて良かったです。

法改正で小型ATは最短2日で取れるようになりましたが、1日2時限の講習でも結構疲れたのでこれ全部を2日に詰め込むのマジ?辞めといた方がよくない?と個人的には思います。

今後

晴れて125ccまでの二輪AT車に乗れるようになったわけですが、住んでいる物件には自転車の駐輪場すらなく、近場の月極バイク駐輪場も若干距離が有るので今の所バイクの購入予定はないです。現状は「とりあえず乗れるようにはなった」止まり。

原付二種扱いのEVの選択肢が今後もっと増えて個人でも購入可能になったら乗ってみたいですし、ガソリン車についても最近どんどん原付二種扱いのモデルが盛り上がってきているのでどこかでタイミングがあえばレンタルで乗ってみたい所です。

とはいえ今住んでいる街は徒歩範囲内でほぼ済んでしまう街なので物件とは別で駐輪場を借りるほどでもなく、もし本格的に乗りたくなったら引越しからという感じになり中々ハードルが高い。本格的に遠出しようと思ったら結局特急や新幹線や飛行機に乗ってしまうし、近~中距離はバイク駐輪場無さすぎ問題が有ったりで意外と乗らないのかもなぁと思ったりもします。バイク駐輪場無さすぎ問題は今後小型コミューターを本当に流行らせる気が有るなら充電スタンドと合わせて取り組んでほしい……。

どこかに遠出した際にレンタルで乗るのもいいけど、二輪の事故や違反取締はそういう初めて走る道のケースも多いらしいし……。

とまぁ取ったら取ったでその後も「なんか何も変わらない感じ」になりそうですが、まぁ取ってみた事自体は良かったと思います。