迅速なアプリケーション開発(RAD)プラットフォーム - 20年の進化

 

       過去数年間、現代のソフトウェア開発環境の全体は大きな変化を遂げています。私にとっては個人的に、宇宙の加速膨張のこの変更はほとんど。二千年が到着したときは、産業の発展はないので、高速、徐々に前方に見えます。今、技術開発の複雑さと多様性は、すでに超音速を記述するために使用することができ、より速く、より速く、新しいプログラミング言語、開発ツール、開発方法論、そして上のようにあります。

 

       同様のためのユーバー、フェイスブック、グーグル、企業が技術をより包括的でより複雑になっ作り、より多くのグローバルソリューションに対する需要を構築する必要がありますので。この超複雑さは、賃金にグローバルシステム巨大な価格を構築することができます。しかし、典型的なビジネスオートメーションシステムの比較的単純な構造のために、我々はまた、同じコストを支払う必要がありますか?

 

アプリケーションのビジネス -自動化された肥沃な土地

       2000年代初頭には、「エネルギーオートメーションオートメーションの」モットーインセンティブの下、業務の自動化が大幅に開発されました。この結果は、ビジネスアプリケーション(LOBアプリケーション)の自動化と呼ばれています。これは究極の目標は、重要なアプリケーション(主にカスタム開発)のビジネス、より効率的な運用を行うことで、それらを記述非常に一般的な用語です。

 

       通常、 LOBアプリケーションは、次の特性があります。

          リットルの  特定の領域 -特定のサービスの分野ではなく、大衆市場での専門家のための

          L個の  データセンターは、 -リレーショナルデータベースに高度に依存し、リレーショナルデータベースは、アプリケーションキーのコアであります

          L  トランザクション(のための OLTP) -システムの代わりに一貫性と可用性のレベル(高コンシステンシー、高可用性)、各トランザクションはACIDを満たしていると仮定

          L  包括的なビジネスロジックカスタムビジネスロジックの多数を含み、アルゴリズムをデータ処理-

          L  リッチ UI -官能インターフェース数百は、比較的標準コントロール(テキストボックス、チェックボックス、ボタン、テーブル、等)を使用して、あります

 

       機能 LOBシステムといくつかの一般的な要件:

          lは  のような標準的な認証メカニズム、サポート SAMLおよびLDAPを

          L役割ベースのアクセス制御

          Lデータベース行レベルのセキュリティコントロール

          Lの変更ログデータ(監査)

          リットルの  システム間の相互運用性は -サードパーティのAPIを呼び出すと統合するためのAPIを提供することができます

          リットルの  業界標準をサポートトラフィックフロー管理エンジン BPMNを

          リットルの  報告と BI機能

          リットルの  電子メール(として一般的に使用されるサービスの統合 SMTPやIMAP)、ファイルストレージ(アマゾンS3、WebDAVの)、検索エンジンなど

          リットルのスケーラビリティ、ビジネスが成長するにつれ、溶液をアップグレードすることができます

 

       以下のために需要が高い「迅速なアプリケーション開発ツール、」市場、いわゆるLOBアプリケーションのフォームは、最終的にすばやく開発、より効率的でLOBアプリケーションを作る方法を焦点に発展しました。

 

進化迅速なアプリケーション開発プラットフォーム

       90年代半ばには、ビジネスの自動化のための需要が飛躍的に成長し始めました。そのため、多くの RADプラットフォームは、されて入ってきたLOBアプリケーションを開発するための高速パスを提供します。RADプラットフォームは、非常に短い時間で基本的なLOBアプリケーションを作成することができ、効率的なので、ほとんど誰と組み合わせる言語および開発ツールをプログラミングを学ぶために簡単になります。自動化された繁栄はもちろんのOracle Formsの、FoxProの、Borland Delphiの(そしてリーダー)は、Microsoft Accessの分離することはできません。だから、2000年代にRADプラットフォームに基づく最初の十年の終わりには、LOBシステムの数を開発しているとき。

 

       その後、時間を欠場するRADプラットフォームは、ネットワーク時代に来ています。Webユーザー・インターフェースが不可欠需要、また必要なスケーラビリティ、可用性、およびその他の関連ニーズです。これらの要因は、彼らがいずれかのこれらの要件のいずれか遅すぎる進化を満たすことができないので、現実には、開発のペースを保持していない、Delphiおよび他のRADツールは、もはや人気がありませんします。停滞の数年後、レガシーアプリケーションの数百人は、彼らが技術サポートを提供し続けることは困難になります。でも、「RAD」という言葉自体は軽蔑的な用語となっている、もはや手段「使いやすい」と「幸せの開発」のではなく、日付のうち、ノー将来の事。この状態は、この領域を近代化するために緊急の必要性を示しています。

 

       主流の企業の技術スタックへの移行は、驚きの価格を必要とするようです。以下のための同じ機能のDelphiの開発者は一日がかかりますが、Web開発者のための週間かかります-狂気!明らかに、アプリケーションを構築するための新技術は、すべてが正しいと再定義が、(そのような機能上述したものなど)、一般的なLOBアプリケーションのために、それは重複オーバーヘッドの多くを生成します。この不均衡は、ソフトウェア開発ツールの市場を示し、未発見のギャップがある、ギャップは現在、RADプラットフォームの新世代によって占有されています。新世代は、現代のRAD市場の最も直接的な子孫は、伝統的な製品の代表ではなく、開発を組み合わせた過去の主流のベストプラクティスと技術を傷つけた手段は、前任者の灰の中から出てきました。

 

基本原理RADプラットフォーム

       まず、私たちはどのようなハイライト RADプラットフォームの主要な原則。言い換えれば、私たちは、なぜこれらのプラットフォームは、より効率的でしょう、従来の開発技術スタックに比べて見えます。

 

アーキテクチャと高レベル API

       現代のように、これらの技術の間に根本的な複雑さを解決するよう、主流の技術の統合開発のためのフルスタックフレームワークの高レベルの抽象化を使用して、RADプラットフォーム。固体基盤を構築するための統一されたフレームワークの定義を使用するために、この高レベルのフレームワークのすべての使用。すべての境界と制限アプリケーションがこのアーキテクチャから派生しているので、アーキテクチャは、理解することが非常に重要です。たとえば、アプリケーションのスケーラビリティか?モジュラーかどうか?どのようなデータを保存することができますか?環境のどのような種類で展開することはできますか?どのように下位互換性を保ちますか?他の多くの質問があります......

 

       ハイレベルな提供することにより、見返りに制限の導入は、そのような事前に定義されたアーキテクチャとして、彼らは近いAPIのビジネスにしているので、LOBアプリケーションの開発を加速するためにAPIを。彼らはビジネスの問題を解決する上で、より集中できるように簡単な言葉では、フレームワークは、基礎となる技術から開発者を抽象化します。

 

       近代的に抽象化の高度レベルを使用するこの方法は大規模な使用のRADフレームワーク。有名選手の五:ルビーオンレールGrailsのジャンゴキューバプラットフォームZend Frameworkの

 

ユニバーサル基本的な機能

       上述したように、 RADプラットフォームは主にLOBアプリケーションを開発するために使用されます。このタイプのアプリケーションは、ユーザ認証、データのアクセス制限、監査、ファイルストレージ、全文検索、ビジネスプロセス管理などのいくつかの一般的な要件があります。RADプラットフォームは、再利用可能なボックス機能や拡張を提供することにより、このニーズを満たすために。

 

       現代では、このアプローチは広く使われているRADプラットフォーム。キューバプラットフォームが提供するよう拡張された市場を、Ruby on Railsが提供宝石使用してGrailsのをプラグインで Djangoの使用のパッケージを

 

開発ツール

       開発ツールは、最も重要な部分である、それだけでも、スムーズな学習曲線、エントリへの低障壁を提供し、効率的な発展を確保することはできません、もちろん、快適な開発経験があります。これらのツールは、事前に定義されたアーキテクチャのプラットフォーム上でのみ焦点を当てるので、これは、実現可能であることが証明された:プログラミング言語、ライブラリ、および基礎となるフレームワークとアプリケーションの構造は(パッケージ、アドオン、モジュール)を使用してように。

 

       使用されるアーキテクチャの広範かつ深い理解に基づいて、 RADツールは、開発者のための究極の利便性を提供することができます。彼らは最後もたらした利便性であるかの一般的な理解のために、我々は、最も一般的な機能を見てみましょう。

          lの  直感的なビジュアルエディタ -新しいプロジェクト、プロジェクト構成、フィールドモデル、UIの開発を開始する......

          リットル  強力なコード生成 -最も一般的に使用される自動化足場コードとテンプレートコードの断片

          L  スマートヒント -間違った要素の使用を避けるには、自動的に修理するコードが含まれています

          L  アドバンスドナビゲーション -アプリケーション部及び配置切替部

          リットルの  アップグレードプロセスのバージョンは、ウィザードです -ヘルプ移行するためのプラットフォームの最新バージョンに

          リットル  配布の準備ができて -ソリューションは、導入が容易です

 

       ここでは最も鮮やかな例はあるべきであるのエンバカデロ(旧Borland Delphiの)RAD Studioの別の例はされ JHipster RADファミリーの非定型的なメンバーは-コマンドラインツール(CLI)を提供し、さまざまな構成オプション利用できるので、プロジェクトはJavaプロジェクトの初期化、ブートに焦点を当てています。キューバRADプラットフォームが提供する2つのツール:キューバメーカーとCLIキューバ、前者は強力なフル機能で軽量なコマンドラインツールの後、IDE。

 

低ソース開発プラットフォーム

       あなたは、現代の懸念がある場合 RAD市場とその発展、あなたが聞いたり、いわゆる低スローガンソース開発プラットフォームについて多くのことを学びましたしなければならない(LCDP)があります。スローガンは、低ソース・プラットフォームの概念を表現している。近い将来には、プロの開発者を必要としません。唯一の企業幹部を雇う必要がプロのソフトウェア開発者を雇う必要はありません。これは私が前のセクションで説明した低ソースプラットフォームのいずれかの理由を持っていないものです。競合他社の開発者になるためのツール-これらのプラットフォームは非常に興味深い現象が生じているためしかし、我々はLCDPを無視することは不可能RAD、について話している場合。

 

       安く、より速く、より高品質:企業幹部に販売する前に、彼らは主要な商業価値を強調する。はい、あなたは、毎年数十万ドルの有料ライセンス料を必要としているが、ないプロの開発者(非常に高価で迅速な心)から、最終的にあなたが所望の利益を得るでしょう、地元の施設のメンテナンスを実行する必要はありません 彼らはただを通じて基本的なビジネス・アプリケーションを作成するために、セールスマネージャーをクリックし、デモでは、驚きで非技術スタッフを発揮ビジネスの人々 (すなわち、非プロの開発者)は自動化することができるようになるという印象を与える......ビジネスニーズを(デジタル化)。

 

       技術的な観点からは、 LCDPの使用RADと同じ原理:事前に定義されたアーキテクチャとハイレベルなAPI、典型的な特徴や開発ツールを使用する準備ができて。ここでの大きな違いは、このようなプラットフォームの範囲です。エンタープライズクラスのソフトウェアを作成するために、非専門家のためには、LCDPサプライヤーの開発プロセスは、他の多くの機能を犠牲にして唯一のフロー・チャートを描画する必要があるが、このように削減されます。身近共同開発プロセス、ソースコード管理、カスタマイズ、スケーラビリティ、相互運用性、互換性、パフォーマンス、...自動テスト。その結果、非常に基本的なビジネスシステムを構築するためにのみ適しLCDP。

 

 

 

       さて、Mendix Outsystems  およびその他の LCDPベンダーは、より良い関係を構築しようとプロの開発者。しかし、正当な理由のためにほとんどのプロの開発者として、まだ長い道のりであると真剣に低いコードを考慮していないようです。

 

結論

       いくつかは言うだろう、「迅速なアプリケーション開発プラットフォームは、」あまりにも古い、時代遅れの技術を鳴らし、 -私は今、言葉には強い負の意味合いを持って、同意するものとします。Enterprise Application Platformの低コード(LCAP)と効率的なエンタープライズ・アプリケーション・プラットフォーム(HPAP):新鮮な再RADの技術を持っているために、ガートナー(Gartner社、世界で最も権威のIT調査・コンサルティング会社)は、新しい用語を提案しました。しかし、綿密な調査の後、我々はまだ同じ原理を使用している見ることができます。アプリケーションの同じタイプの開発を加速するために、当然のことながら、また同様の制限があります。幸せな人生を生きて、新しい名前で許さ「証人保護プログラム」RAD技術的な実装、上のように見えます。

 

       現代のほとんどのRADフレームワーク、多くの製品で、市場でのツールやプラットフォームは、すぐにWebアプリケーションを開発することができます。これらの製品は、2つのタイプに分けることができますプロの開発者のために、伝統的な開発モデルを追従し、他は非プロの開発者、低コード技術のパイオニアです。第1の速度は、開発者が定型的なコードベースと共通の関数を書く回避することを可能にするAPIとコード生成機能のより高いレベルを提供することにより、ソフトウェアの開発を改善するために主にあります。第二は、強力なランタイム環境および可視化ツール、ビジネスの人々は、それを愛するを提供していなくても速い開発スピードなぜなら、これらの製品は、いくつかのビジネス機能を実現することができますコーディングを必要とせずに描画することによって提供するため、容量。

 

       選択する方法についての RADツールを、誰もが大幅にプロジェクトと非機能要件の機能に応じて、決定的なアドバイスやいくつかの定量化可能な方法を与えることはできません。しかし、私は、製品の価格とライセンス契約へのあなたの注意を引くしたいと思います。年間数十万ドルに価格がゼロと異なる場合があり-一部の製品では、あなたは大きな金額を支払うことをしなければなりません。低ソース・プラットフォームを使用する場合は特に、あなたの法案は、多くの場合、6桁に到達します。ベンダー・ロックインによる、さらに悪いことに、あなたは可能性が低い他のサプライヤーへのスイッチにしています。

 

おすすめ

転載: www.cnblogs.com/cubacn/p/cuba_plateform.html