2021/4/15

サークルの活動でWebシステムを作っている。

Vueというものをいきなり勉強し始めたのでバックとの兼ね合いが分からない。データからHTML生成みたいな処理を今までバックで全部やってたから、どの辺からバックにしてどの辺からフロントにすれば良いかの区別が多分ついていない。

あとは、HTMLではなくJSONを渡すという行為に若干のハードルを感じている。多分一度やっちゃえばなんでもないと思うのだけど。別に渡す処理の実装自体はPHPならそういう道具がいくらでもあるから何の障害も無くて、API設計をどういう基準でやればいいのだろうという不安が大きい。

そもそもフロントとバックで完全に分けてバックからJSONだけを返すのか?それともHTMLで作られたページを返してその中にJSONとかも埋め込むのか?という2つの選択肢があって、そこが統一されていないと大変な気持ち悪さを感じる。出来れば前者でやってみたいが、既存のコードとの兼ね合いがあるのと、前述の通りそもそもフロントとバックの分け方の基準が頭にまだないので二の足を踏んでいる。

色々なページがあって、その中のどれを表示させるか?みたいな遷移をフロントでやらせようとすると、全ページの情報を予めフロントに渡すことになってしまう。コントロールパネル類のように有限な数のページしかないならば正しいが、任意にページが増え得るサイトでそうするのは多分おかしい。とすると個別のページの内容をバックに持たせたくなる。でもそうするとバックが結局レンダリング系の仕事をする必要が出てくる。

各ページがコードじゃなくてデータ次第で表現できる差異なら話は早いのだけど、そうも行かない可能性がある。でもそうやってページごとに例外的なコードを書く必要があるんだったらそんなのシステムって呼べるんですか?

例外的なコードを書く必要がある仕様は一切受け付け―ん!ということにしちゃってもいいけど。


洞窟物語がやりたくなったので洞窟物語をやった。

Categories: