デニスがリストした利点をコピーして貼り付けます。
- 最高品質のボックス化CMSコード。 開発者にとって、このCMSはメイン製品です。 その開発、最適化、テストに費やされた工数は、どのスタジオよりも大幅に多くなりました。 Boxed CMSのパフォーマンスは、作成された数百および数千のサイトで実証されています。 サイトの簡単な拡張性。 必要なモジュールのほとんどはすでに作成されています。 オンラインストアが必要です-接続、構成、作業。 フォーラムまたはフィードバックセクションが必要です-接続、構成、作業。 開発者向けのAPI。 利用可能な場合、有能なプログラマーは必要な機能を簡単に増やすことができます。 ドキュメントを開きます。 独自のモジュールを作成するためのユーザードキュメント、開発者ドキュメント、APIドキュメントがあります。 ほとんどのスタジオCMSでは、これはそうではありませんが、トップのWebスタジオのように、かなり高い料金がかかります。 常に問題の解決に役立つ技術サポート 。 開発者の大規模なコミュニティ。 箱入りCMSでサイトを完成させるスペシャリストを見つけることは、他の誰かの、そして既に述べたように、文書化されていないエンジンを掘り下げたいと思うよりもはるかに簡単で迅速です。 最初から書くのは本当に簡単です。 ほんの数週間前、私たち( kudzev 、 Warlock 、そして私も少し)が、特定のニーズを持つ特定のプロジェクトに実装するために、2つのCMSの調査を終了したことがありました。 長い間、スクリーニングの結果、最も騒がしい2つの「ボックス」が実験的であるUMIとBitrixになったため、理由を説明しません。
この研究に関する大部分の反論は、デニスの議論に反論します。研究テーマ
研究のために、UMI.CMSと1C-Bitrixの2つのCMSが選択されました。 研究は2週間にわたって行われました。 情報源は次のとおりです。- システムのソースコード、システムへのドキュメント、テクニカルサポートフォーラム、システムの経験があるサードパーティの開発者との協議。
- システムのアーキテクチャ、データベースを使用する原則、マルチサイト、権利のシステム、コードの記述の品質、モジュール「モジュール」の開発時間、ベストプラクティスのサポート。
結果
- CMSは、最新のテクノロジーPHP5、MySQL5、XSLT上に構築されています。 システム自体は、コードサイズと理解度の両方の点で軽量であり、システムアーキテクチャはモジュール方式で構築されています。 コアおよび外部モジュールを実装する一連のクラスがあります。 カーネルは、ファイルとデータベースを操作するためのかなり豊富なツールを提供します。 モジュールは任意の機能を使用できます。 モジュールの接続は簡単で手頃な価格です。 カーネルのドキュメントは良好で、モジュール開発用のSDKがあり、データベースの操作はシステム内オブジェクトの使用に基づいています。 データベース構造は、ツリー形式の階層です。 データベースに直接アクセスすることはできません。 テーブル構造は、ドキュメントに記載されていません。 データはデータ型としてテーブルに保存されます。 データ型は継承およびネストでき、マルチサイトはURL解析に基づいています。 マルチサイトは、流通ドメインを保持した単一のエントリポイントに基づいて論理的に実装され、モジュールレベルの権利システムです。 業務レベルでの法律の行使は実施されていません。 しかし、仮想的に実装することは可能ですが、コードの記述の質は良好です。 コードは透過的に、一元的に書かれています。 コメントは理解しにくい場所にのみ存在し、モジュール「モジュール」の開発時間-2日間。 モジュールは、意図した機能を約70%実装します。ベストプラクティス:完全なOOPサポート(PHP5が許可する限り)、集中型エラー処理、XSLTに基づくテンプレートエンジン、カーネルクラスに基づくORM、データ型に基づくVO、モジュールへのコントロール転送を伴うFrontController実装。
- 豊かな歴史を持つ有名なシステム。 標準テクノロジーPHP4、MySQL4を使用します。 システムは非常に冗長で扱いにくく、理解するのが難しく、システムのアーキテクチャはモジュール方式で構築されています。 カーネルといくつかのプラグインがあります。 モジュールの接続は重要なタスクであり、多数の構成ファイルに関連付けられています。 サイトの構造は物理的であり、データベース内に重複するフォルダーとファイルが作成されます。 コアドキュメントは優れています。 独自のモジュールをゼロから作成することは基本的に不可能です。 カーネルはデータベースにアクセスする手段を提供しますが、ファイルを操作する手段は初歩的なレベルで提示され、データベースの操作はシステムインターフェイスを介して行うことも、直接行うこともできます。 テーブルの構造は部分的に示されています。 データベース内のすべてのデータにはメタ情報があり、冗長性とシステムの過負荷が伴います。 データをインフォブロックとして保存するメカニズムがあります。 インフォブロックは、カテゴリと要素の形式でのみ使用できます。 また、カテゴリと要素はネストまたは複雑なタイプにすることはできませんマルチサイトはWebサーバーとファイルの物理的な複製のレベルで実装されます。 モジュールと基本アクションのレベルで区別を編成することは可能ですが、コード記述の品質は低くなります。 これの主な理由は、システムの明らかに貧弱な組織です。 コードはさまざまなファイルに散在しており、完全な図を組み立てることは非常に困難です。「モジュール」モジュールの開発時間は2日間で、モジュールは意図した機能の50%完了です。 モジュールの管理ゾーンを修正することは、モジュールの開発における最も難しいタスクですベストプラクティス:OOPの部分的な貧弱なサポート、404でのエラー処理のみ、ランタイムエラーはユーザーに表示され、テンプレートエンジンはありません(これはひどいです)、ORMはありません、配列による擬似VO Front-ApplicationControllerはありません-エントリポイントが多数あります(PHPの最初のサイトの原則はincludeを使用)。
おわりに
どちらのCMSも、目的の機能を実装するのに適していません。 しかし、やり直しやすいものの観点から考えると、これはUMI.CMSです。 このCMSはより近代的で、ほとんどの優れたプラクティスを使用しており、習得や修正が非常に簡単です。 開発者の観点から見ると、Bitrixは古くてかさばる冗長なシステムであり、優れたマーケティングのためにのみ存在しています。 どちらのシステムも元々は改良されていなかったため、現在は改良に焦点を当てており、クローズドシステムと呼ばれています。 両方のシステムは、MVC Webアプリケーション(Model-Controller-View)を構築する基本原則の1つを実装していません-本質は、ビジネスロジック、イベント処理、およびプレゼンテーションの分離にあり、これにより、開発および改良時間が数倍に増加します。スタジオCMSの方が優れているわけではありません。 問題は、製品の利点について結論を出すためには、あなた自身の憶測や商業的な流れではなく、特定の例で動作する必要があるということです。
正直な研究でした。 結論はあなただけです。
更新する
コメントでは、何らかの理由で、彼らはこれがUMIのPRMであると決定しました:(しかし、これはそれについてではありません。ポイントは、プロジェクトがあり、既製のソリューションの能力の下に引っ張られるプロジェクトではなく、このプロジェクトのためのソリューションが求められるべきであるということです
- 豊かな歴史を持つ有名なシステム。 標準テクノロジーPHP4、MySQL4を使用します。 システムは非常に冗長で扱いにくく、理解するのが難しく、システムのアーキテクチャはモジュール方式で構築されています。 カーネルといくつかのプラグインがあります。 モジュールの接続は重要なタスクであり、多数の構成ファイルに関連付けられています。 サイトの構造は物理的であり、データベース内に重複するフォルダーとファイルが作成されます。 コアドキュメントは優れています。 独自のモジュールをゼロから作成することは基本的に不可能です。 カーネルはデータベースにアクセスする手段を提供しますが、ファイルを操作する手段は初歩的なレベルで提示され、データベースの操作はシステムインターフェイスを介して行うことも、直接行うこともできます。 テーブルの構造は部分的に示されています。 データベース内のすべてのデータにはメタ情報があり、冗長性とシステムの過負荷が伴います。 データをインフォブロックとして保存するメカニズムがあります。 インフォブロックは、カテゴリと要素の形式でのみ使用できます。 また、カテゴリと要素はネストまたは複雑なタイプにすることはできませんマルチサイトはWebサーバーとファイルの物理的な複製のレベルで実装されます。 モジュールと基本アクションのレベルで区別を編成することは可能ですが、コード記述の品質は低くなります。 これの主な理由は、システムの明らかに貧弱な組織です。 コードはさまざまなファイルに散在しており、完全な図を組み立てることは非常に困難です。「モジュール」モジュールの開発時間は2日間で、モジュールは意図した機能の50%完了です。 モジュールの管理ゾーンを修正することは、モジュールの開発における最も難しいタスクですベストプラクティス:OOPの部分的な貧弱なサポート、404でのエラー処理のみ、ランタイムエラーはユーザーに表示され、テンプレートエンジンはありません(これはひどいです)、ORMはありません、配列による擬似VO Front-ApplicationControllerはありません-エントリポイントが多数あります(PHPの最初のサイトの原則はincludeを使用)。
- CMSは、最新のテクノロジーPHP5、MySQL5、XSLT上に構築されています。 システム自体は、コードサイズと理解度の両方の点で軽量であり、システムアーキテクチャはモジュール方式で構築されています。 コアおよび外部モジュールを実装する一連のクラスがあります。 カーネルは、ファイルとデータベースを操作するためのかなり豊富なツールを提供します。 モジュールは任意の機能を使用できます。 モジュールの接続は簡単で手頃な価格です。 カーネルのドキュメントは良好で、モジュール開発用のSDKがあり、データベースの操作はシステム内オブジェクトの使用に基づいています。 データベース構造は、ツリー形式の階層です。 データベースに直接アクセスすることはできません。 テーブル構造は、ドキュメントに記載されていません。 データはデータ型としてテーブルに保存されます。 データ型は継承およびネストでき、マルチサイトはURL解析に基づいています。 マルチサイトは、流通ドメインを保持した単一のエントリポイントに基づいて論理的に実装され、モジュールレベルの権利システムです。 業務レベルでの法律の行使は実施されていません。 しかし、仮想的に実装することは可能ですが、コードの記述の質は良好です。 コードは透過的に、一元的に書かれています。 コメントは理解しにくい場所にのみ存在し、モジュール「モジュール」の開発時間-2日間。 モジュールは、意図した機能を約70%実装します。ベストプラクティス:完全なOOPサポート(PHP5が許可する限り)、集中型エラー処理、XSLTに基づくテンプレートエンジン、カーネルクラスに基づくORM、データ型に基づくVO、モジュールへのコントロール転送を伴うFrontController実装。
- システムのアーキテクチャ、データベースを使用する原則、マルチサイト、権利のシステム、コードの記述の品質、モジュール「モジュール」の開発時間、ベストプラクティスのサポート。
- システムのソースコード、システムへのドキュメント、テクニカルサポートフォーラム、システムの経験があるサードパーティの開発者との協議。