8
フレームワークは抽象化しすぎていますか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 5年前に閉鎖されました。 私は1年弱のプログラミングを行っており、企業/組織向けのシステムアプリケーション、Webアプリ、およびスクリプトの記述経験があります。ただし、Django、Rails、Zendなどのフレームワークを使用することは、私が実際にやったことがありません。 Djangoフレームワークを見ると、フレームワークでどれだけ抽象化されているかに少しイライラしています。私はDRYと最小限のコードの中核的な目標を理解していますが、さまざまなモジュールへの過度の依存とコア機能の重い抽象化の一部は次のように感じます。 モジュール/フレームワークの絶えず変化する性質のため、プログラムの日付を非常に速くします。 多数のフレームワークとモジュールが利用可能であり、すべての特異性があるため、コードを理解しにくくします。 すべてのドキュメントを読んでいない限り、コードを論理的にしません。つまり、リストの内包表記と条件付きロジックを読んでプログラムの動作を理解することができますが、任意の文字列と辞書を渡す必要がある関数を見ると、すでに第一人者でない限り、物事を理解するのは少し難しくなります指定されたモジュール。そして: フレームワークを切り替えるのが難しく、面倒です。言語の切り替えはすでに課題ですが、その中核となる機能/哲学を十分に理解している場合は管理しやすくなります。フレームワーク間の切り替えは、暗記の問題であるように思われます。これは、いくつかの点で、これらのフレームワークが排除するように設計された非常に非効率性を助長するようです。 MySQLクエリのような単純なものの上に50層の抽象化を実際に配置する必要がありますか?準備されたステートメント/入力テストは処理されますが、普遍的に理解可能なSQLクエリは依然として関数の一部であるPHPのPDOインターフェイスのようなものを使用しないのはなぜですか? これらの抽象化は本当に便利ですか?機能が肥大化することで無駄になり、フレームワークを使用せずに作成された同様のアプリケーションと比較して、アプリケーションが難しくなりませんか?