興味本位でやってみた例
MS-CopilotとChatGTPに「オーガニック商品を販売するEコマースサイトのWebページを作って」と同じ質問をして、生成されたhtmlファイルを変換してみた。シンプルすぎてこのままでは使えないけど、それぞれ違ったものを返してきて興味深い。
BCH+の開発で一番引っかかった(今も。。。)のが、私たちが人間であるがゆえの些細なケアレスミス。
同一作者の同じテンプレート内でも、ファイル毎に微妙に違っているものが多々ある。例えば、
<div id="preloader">
<div id="preloader ">
-------------------------------------------
<a href="index.html" class="logo d-flex align-items-center">
<span>Append</span>
</a>
<a href="index.html" class="logo d-flex align-items-center">
<span>Append</span></a>
<a href="index.html" class="logo d-flex align-items-center"><span>Append</span></a>
-------------------------------------------
<script src="assets/vendor/aos/aos.js"></script>
<script src="assets/vendor/aos/aos.js">
</script>
Webブラウザは賢くて、その違いを無視して?きちんと表示してくれるけど、今のBCH+はいかにも機械的で差分として検出してしまう。
できるだけ吸収して同一とみなすようにしてるけど、まだ、引っかかるケースが多々ある。
でも、AIで生成したコードはそういうことが、恐らく極端に少ないはず。
AIでのコード生成ってやっぱり有りなのかなと思うし、うまく使えば明るい未来を感じるわねぇ~。
ってか、bladeテンプレートを直接生成してくれるのも間近だろうから、BCH+もいらないのか???
まぁ、気を取り直して、ここからは結果です!!
[MS-Copilot]
1)全てデフォルトのまま実行する
グループコード:820/822/840の3系統に分かれる。
htmlファイルの中身をみると、大差ないのね。3系統に分ける必要なし。
2)階層レベル:1で実行する
グループコード:8で1つにまとまる。
共通のcssって、フツー外部ファイルにするじゃない。なんで、何にも考えないでchild viewに分離してます。
けど、ここも共通のものはbase layoutに出力するように修正すべきだろうね。。。
<nav>...</nav>に以下の違いがる。
index.html
<nav>
<a href="#home">ホーム</a>
<a href="#products">商品</a>
<a href="#about">私たちについて</a>
<a href="#contact">お問い合わせ</a>
</nav>
他のファイル
<nav>
<a href="index.html">ホーム</a>
<a href="products.html">商品</a>
<a href="about.html">私たちについて</a>
<a href="contact.html">お問い合わせ</a>
</nav>
なんで、共通パーツとしてbase layoutにもsubviewにも分離できない。これ、ページ内リンクじゃないから、
index.htmlの<nav>を他のファイルに合わせるべきだよね。
サンプルなので、修正せずに原型のままにしておきます。
[ChatGPT]
1)全てデフォルトのまま実行する
グループコード:62/64/66/68の4系統に分かれる。
MS-Copilotのものと同様に1つにまとめていい。
2)階層レベル:1で実行する
グループコード:6で1つにまとまる。
headerとfooterをsubviewに分離できる。navbarとsidebarはないから関係ない。