私はかなり長い間 Web に取り組んできましたが、「ベスト プラクティス」が進化するのを見てきました。私は今、HTML (コンテンツ)、Javascript (動作)、および CSS (UI) を分離することが最善の方法であるとかなり確信しています。
数か月前、私は knockout.js を使い始めました。私が従った MVC トレーニングの章がノックアウトについてであり、その概念が私を誘惑したため、backbone や angular のような他の同様のフレームワークの中からそれを選択しました。次に、Web で簡単に比較したところ、私のニーズに合わせて、また最初から悪い選択ではないように見えました。
しかし、ここに私の問題があります。プロジェクトで数週間の開発を行った後、HTML コードを見ると、かなり多くのノックアウトバインディングが含まれており、昔のことをよく考えさせられます。少なくとも私は、onclick
属性などを介してインライン JavaScript イベント処理を配置していました。
したがって、これらの 2 つの質問は、SO に 100% 適しているかどうかはわかりませんが、質問するためのより良い StackExchange サイトが見つかりません。
ノックアウト (または基本的にすべて同じパターンで動作するように見える他のフレームワーク) を使用することは、「分離ルール」に反していますか? それとも、このルールからの許容可能な小さなステップアウトですか? または、「data-」属性を使用しているため、完全に受け入れられますか?
これがどういうわけか悪い習慣になる場合、たとえばjQueryを使用してコントロールを選択し、それらにバインディングを適用して、別のjavascriptファイルを介してすべてのバインディングを行う可能性はありますか? ノックアウトで無理なら他のフレームワークで?認めざるを得ないのは、私が選択を行った時点では、この種の影響については考えていませんでした...
これを別の SE サイトに移動する必要がある場合は、ありがとうございます。申し訳ありません。