がるの健忘録 このページをアンテナに追加 RSSフィード

2016-05-04

[][][]他言語やる時のラーニングパターン フレームワーク

新しいフレームワーク触るときの手出しの仕方のパターンを合わせて。


URLルーティング設定の確認と、場合によっては破り方

まぁ大体「書かなくてもデフォルトで動く」ケースが多いのですが(その場合は「まずHello World」へ)。

「明示的な記述が必要な場合」は、まず、1Page分でもよいので、調べて記述しておきましょう。

あと「特別なルール(このURLならこっちの処理にしたい、など)」は、調査コストとの兼ね合いになります…が、ヒネたものでなければある程度フォローされている可能性が高いので、適宜調査して実験して、実装しましょう*1


まずHello World

もっぱら「空っぽの処理無し」+「テンプレートファイルの位置と書式」の確認。

あとは「そもそもそのフレームワークインストールがうまくいってるか?」の確認も込み。


設定ファイルの把握

以降随時チェックにはなると思うのですが(で、大抵の場合、デフォルトで動いたりもするのですが)。

とりあえず

デバッグモードの on/off

DB設定周り

・時刻、言語(文字コード)周りの設定

テンプレートエンジン周りの設定

あたりは最低限確認をしておくとよいです。


用語の確認

特に昨今の場合、MVCないしそれに近しいお名前はちょいちょいと見受けられる…のですが、特にCとM(中でもM)の意味が、言語によってフレームワークによって、下手すると本気で「別物ぢゃん!!」レベルで違うので。

新しいところに言ったら、一旦心の中のお茶碗を空っぽにして、「その言語/フレームワークにおけるこの用語の意味」を、知っている単語ほど、再確認しておきましょう。


テンプレート変数を渡す

大体「単値」「配列(正確にはhash配列配列) )」「if文の書式」の3つが別れば大体いけます。

あと、テンプレートに渡す変数デフォルトで「HTMLエスケープされているかされていないか」の確認。

万が一「されていないがデフォルト」の場合、テンプレートエンジンなりviewクラスなりをラッピングして「デフォルトエスケープ」に倒せるように全力を尽くしましょう!!

デフォルトエスケープの場合、とりあえず「エスケープさせない設定」の方法を調べておきましょう。


DBハンドルの取得

大体の場合「どっかに設定するとどこかでとれる」と思われるので、その「どっか」を把握しましょう。


テーブル名、カラム名、その他制約の確認

特にORマッパー系を使うものの場合、テーブル名やカラム名に一定の制約やルールがあるものがあるので。

その辺は把握しておきましょう。

「そのルールの破り方」は、必要そうなら合わせて調査。ただ「ルールを破るコストが高い」可能性も結構あるので、「ルールに合うように仕様変更が可能」であれば、仕様変更しちゃったほうが、コスト安かもしれないですが。


単純なCRUDの作成

もうちょっと端的には「SQLの発行の仕方(またはORマッパーの使い方)」と、特にSQLを自力発行する場合は「プリペアドステートメント機構の使い方」のあたりをしっかりと把握しましょう。

「複数のやり方がある」可能性が高いので、とりあえず「今回想定しているやり方」だけ押さえておく、でもよいと思いますし、「フレームワークの推奨のやり方」を合わせて押さえておく、というのもよりよいかと思います。


Cookieの設定の仕方とセッション保持のやり方とセッションデータの持ち回りかた

とりあえずセッションは、些か狭義に「サーバ側で情報が保持できる仕組み」と定義しておきます。

クライアントサイドに情報を持ってもらう方法としてのCookie」と「サーバサイドで情報を持たせるためのセッション」の、それぞれの書式を把握しましょう。


「管理画面」の作り方

業務系前提ですが、大抵「frontと管理画面」を作る事になると思うので。

一旦「そのフレームワークにおける、ポピュラーな管理画面の作り方」を把握しておきましょう。

いや「別プロジェクトで全部作る」でもよいのですが、frontと管理画面で「同じクラスとか関数とか設定値とか使いたい」シーンも多いので、それを「全部copyでやる」と些かしんどいのではないかなぁ、と思うので、その辺込みで「ちゃんとしてる」方法を見つけるとよいと思います。


「環境別」設定ファイルの作り方

開発、ステージング、本番で設定ファイルの「一部」が異なる(「一部」は一緒)だと思うので。

可能であれば「環境別のconfigと環境共通のconfig(場合によっては含む定数)」と、それらを「いかに環境別に振り分けるか」の手段を想定しておきましょう。

大体は「環境変数の値でif文でスイッチ」とか多いのですが、おいちゃんは「シンボリックリンクで振り分け」とかやるほうがよりお好みなので、まぁ適宜。



この辺までくると多分「普通のものなら」なんとか書けると思うので。

書けるようになってから「コントローラーのダイエット」とか「ちょっとこまっしゃくれたコード」とか「テクニカルなテクニシャン」とか、考えていくようにしましょう。


以上、もっそおおざっぱですが。

*1:ヒネたものの場合、調査コストと相談しましょう

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/gallu/20160504/p2