私はこのページを非常に興味深く読んだ。私たちの開発チームは約2年間Apexを使用していますが、私たちの経験を要約したいと思います。
基本的なCRUDアプリケーションを構築するために、Apexは本当に優れています。実際、自分で試してみることをお勧めします。最初の小さな問題に直面しましたが、3.2リリースで解決されたようです。
いいもの
- 単純なアプリケーションに最適です。アプリが複雑になる場合は、別の解決策を検討してください。
- 組み込みのテンプレートは、アプリが非常にプロフェッショナルに見えることを意味します(ただし、これについて議論する人もいます)。
- たくさんの熱心な人々があなたを助けてくれる、良いサポートフォーラムとコミュニティ。
- いくつかの優れた組み込みコントロール。グラフとレポートが大好きです(ただし、以下を参照してください)。
悪い人
デバッガーはひどいです。Visual Studio(および古いバージョンのMicrosoft Access)を使用したことがある場合は、デバッガーに夢中になるでしょう。ブレークポイントはありません。デバッグメッセージが大きなリストの画面に表示され、デバッグメッセージを手動で画面に出力する必要があります。最悪。サポートに何時間も失われた原因。
アプリケーションが複雑になるか、豊富な機能が必要になるとすぐに、JavascriptとHTML / CSSハックに頼る必要があります。これにより、デバッグとサポートがさらに複雑になります(ただし、FirebugやVisual Studioなどのツールを使用してこれを支援できます)。
原因不明のセッション状態のバグが発生し、スタイルシートが説明なしにアプリケーションから「切り離される」ようになりました。たとえば、いくつかの問題があります。
使い慣れていないアプリのサポートは、優れたデバッガーがないとページロジックフローをたどることが難しい場合があるため、難しい場合があります。そして、私は「まあ、アプリはもっとうまくコーディングされるべきだ」という株の反応を買わない。なぜなら、現実の世界ではそうではないからです。特に請負業者を使用している場合はそうです。
レポートは見栄えがしますが、印刷したりPDFにエクスポートしたりできない場合はあまり良くありません。もちろん、レポートサーバーをシェルアウトすることもできますが、最終的には別のソリューションを使用しました。
全体
単純なCRUDアプリには必ずApexを使用してください。軽度以上の複雑さについては、.NetまたはJavaを選択してください。Apexに関するWikiの記事は非常に歪んでいるため、私は気づきません。「デバッグが難しい」(私の意見では最大の失敗)が記事からどのように消去されているかに注意してください。
同様に非常に警戒すべきことは、AccessデータベースをApexに直接変換できるというばかげた主張です。はい、Access DBが非常に単純な場合は、機能します。私たちが見つけたように、適度に複雑なものはすべて忘れてください。
Web向けのアプリには絶対に使用せず、内部にのみ使用します。.Netのように、当たり前のことをするのは非常に困難です。AskTomのようなサイトがあることは知っていますが、これらは必ずしも複雑ではありません。次のFacebookが表示されますか?私はそうではないと思います-これを読んでいる誰かがそれにひびを入れると確信していますが。
Apexは以前のコメントに要約されています。マネージャーはデモを見て、すぐに賛同し、開発時間を短縮する特効薬を見つけたと確信しました。マネージャーから電話があり、Apexで1週間に40個のテーブルを作成するdbアプリが必要だと言われました。これは、神話がどこまで進んだかということです。現実は多少異なります。はい、いくつかのことはより速く、実質的に速くなりますが、デバッグ、サポート、およびカスタマイズなどの他の領域で時間を失うことになります。
もちろん、あなたは自分で決めるのが最善です。それをインストールして、試してみてください、あなたはそれを好きかもしれません。しかし、現実的なアプリケーションをうまくやり遂げるまでは、開発時間の短さの主張に惑わされないでください。