ローコード プラットフォームの選び方

序文

中国でのソフトウェア開発の基本的な手順は次のとおりです: まず
オープンソース製品 (git) を探し、類似製品があるかどうかを確認し、類似製品がある場合はそれらを見つけて変更 (またはロゴを直接変更) できない場合は
、直接使用できるものを見つけてから、一緒に「戦う」製品をいくつか見つけるだけです.この場合、通常、関連するフレームワークや類似のオープンソース製品を多数見つけることができます.最終的に技術の選択を行い、見つかったすべてのオープンソース製品を使用します
.ソース フレームワーク、表と裏、ビルディング ブロックのように「ビルドする」ことで、製品構造が完成します。
プロジェクトが迅速に完了した後、顧客やリーダーの要件に応じて、機能とパフォーマンスが調整されます。
おそらく、短納期を必要とする小規模および中規模のプロジェクトでは、これを行うことができます. しかし、多くの大規模なプラットフォームやテクノロジーベースのプロジェクトでもこれが行われていることがわかりました。最近、ローコードのプラットフォームをたくさん見てきましたが、どれもこの方法で作られ、いくつかのプラットフォームのアイコンの位置さえ同じです。
これらのプラットフォームの最大の特徴は「スタッキング機能」であり、「機能受諾や入札書類」のローコードプラットフォームであるが、画面上での操作や使い方が難しく、場合によってはロジックが衝突することもあるコントロール。このようなプラットフォームでは、提供されるテンプレートを使用しても、もう少し複雑なプロジェクトを作成するのは実際には非常に困難です。
これは、Speedy、Netease、および Haojing を試した後の感想です。
本当にIDE系のローコードだと、短期間で良いものを作るのは難しいです。比較すると、iVX (統一された強力な)、Movable Type (Microsoft)、および Wuyuan (php) は、10 年以上前のものより優れています。

製品分析

これらのさまざまなタイプの製品を分析するにはどうすればよいですか? いくつかのポイントをまとめました。皆さんの役に立てば幸いです。

この製品は何ができますか? それは何にできますか?具体的には、どのようなアプリケーション シナリオがサポートされていますか? サポート体制は?

A ウェブサイトまたはそれ自体に、独自のプラットフォームで開発されたページがあるかどうかを確認しますか? 独自のプラットフォームを使用しない場合、ユーザーがそれを使用できることをどのように安心できますか? たとえば、iVX プラットフォームのすべての製品は、iVX 自体を通じて反復的に開発されます。

B アプリがすべて同じに見えるかどうかを確認しますか? 多くのプラットフォームでは、BI、レポートなどの部分的なテンプレート属性は、少なくともアプリケーションの制限または少なくとも弱いフロントエンド機能を示す方法でのみ作成できます。

C は、より複雑なバックグラウンド ロジックを呼び出して、コード以外の方法で実現できるかどうかを確認しますか? または、コードを書かずに行うのが最も難しいことは何ですか? この部分が検証されていないと、後で特定のプロジェクト開発の大きな落とし穴になることは間違いありません。特にローコードプラットフォームは、開発用のコードを導入できるので万能ツールのように見えますが、実はこれはプラットフォームではなくコード自体が全能だからです。優れたローコード プラットフォームがあれば、プラットフォーム自体が非常に強力であるため、コードはほとんど不要 (たとえば、0 コード) であるか、コードの導入は小さな補助機能にすぎません。ただし、プラットフォームが補助的なもので、コード開発が本体である場合、カートは馬の前にあり、ローコード プラットフォームは味気ないように見えます。

チュートリアル、ドキュメント、デモ、テンプレートを読んで、学習リソースが完璧かどうかを確認しますか?

A. 標準化の量と程度にもよります. 開発を開始したばかりの一部のプラットフォームでは、この分野のコンテンツがほとんどないため、自分で学習することは不可能です. または、少なくとも学習リソースに熱心に取り組んでいません.

B 時期を見て、時期が近ければ近いほどいい(一部のプラットフォームは開発期間が長い)。しかし、私がクレイジーナイフを学んでいたとき、実際に2014年頃にある教育ビデオを見ました.これは私に衝撃を与え、プラットフォームがあまりにも長い間更新されていないことを示していました.

アーキテクチャ(アーキテクチャ全体、フロントエンド アーキテクチャ、バックエンド アーキテクチャ)を見る、製品を見る、料金を見る

A アーキテクチャを見てみましょう.まず、全体のアーキテクチャがB/SなのかC/Sなのかを確認してください.B/Sアーキテクチャに焦点を当てることをお勧めします.結局、誰もがC/Sを理解しています.醜いだけでなく,しかし、この製品は遅かれ早かれ廃止されることは事実であり、クラウド コンピューティングの開発の方向性とは一致しておらず、フロントエンド アーキテクチャは React が最適であり、もちろん VUE も問題ありません (React のパフォーマンスは複雑なシングルページ アプリケーションに適しています); バックグラウンドは PHP ではないか、Azure、Excel、SQLServer、Access をバインドするなど、それに関連する Microsoft 製品をバインドするのが最適です。このように、システムの柔軟性はブロックされました。

B 製品を見てください。主に製品のデザイン、インタラクティブな UI、ポップアップ ボックスの数などを見てください。製品の属性、優れた製品は常に最短経路を提供するため、使用コストが非常に低くなります。製品設計が良くなければ、同じことを行うことができ、操作の数を数倍に増やす必要があり、操作が多ければ多いほど学習時間が長くなり、間違いを犯す可能性が何倍にもなります。

C コストを見てください。誰もがこれを見るでしょう。それは皆の購買力に依存します。言うことはありません。1点だけ、充電モデルを見ることで、この製品がグループ向けかどうかを基本的に判断できます。そうでない場合は、試さないでください。

iVX (統合された強力な)

上記の分析に基づいて、iVX を選択します
ここに画像の説明を挿入

3 つの属性

ここに画像の説明を挿入
iVX の言語特性 言語特性
: iVX はほぼ「ビジュアルプログラミング言語」であり、「原子コンポーネント」+「論理配置」によって中間コードを生成し、中間コードは最終的に iVX によって「フロントエンド JS コード」にコンパイルされます。コンパイラと「コードビハインド」。この段階では、バックグラウンド コードは JavaScript (Node または Deno で実行) のみをサポートし、将来的には Java、Python、C# およびその他のコードの生成をサポートする予定です。同時に、iVX はプログラミング言語のオープン性も備えており、iVX は「コードレス プログラミング」を実現できますが、既存のプログラマの大半のニーズを満たすために、iVX は「カスタム関数の組み込み」、「カスタム SQL コード」をサポートしています。および「カスタムCSSコード」。」およびその他のコード挿入機能。

なお、この言語は依然として「表裏一体」であり、すべて中国語である。「前後統合」の言語設計により、プログラマーは iVX を学習した後に使用できる次元が大きくなり、前後の開発言語の不一致に制限されることがなくなり、移行が容易になります。また、「完全な中国語」​​とは、ほとんどのドキュメントと資料が「中国語」で存在することを意味し、「英語があまり得意ではない」膨大な数の中国の開発者に、より多くの可能性とより迅速な学習環境を提供します。

iVX のクラウド属性 (cloud-native)
クラウド属性: iVX は「アプリケーション」と「実行中のリソース」の分離を実現し、DB、関数計算、オブジェクト ストレージ、CDN など) はプログラム自体から分離されています。 iVX 生成プログラムを AWS クラウドに配置すると AWS リソースが使用され、さまざまな同時実行性とコンピューティング機能は AWS の機能に依存しますが、アリババ クラウドに配置する場合は、アリババ クラウド自体の機能に依存するのが合理的です。もちろん、ユーザーが自分のコンピュータ ルームに独自に展開することもできますが、このとき、バックエンドの同時実行能力は、ユーザーのコンピュータ ルームの機器環境に依存します。

iVX のツール属性 ツール
属性 : iVX には独自の IDE (統合開発環境) があり、「二次開発」およびその他の操作、つまり「アプリケーション ライフ サイクル全体」の管理を 1 つのページで直接完了し、開発と操作を最小限に抑えます。と保守プロセスを構築し、製品から「DevOps」を実現します。さらに、エクスポート可能なフロントエンドとバックエンドのコードが直接生成されるため、開発者はプラットフォームに縛られることを心配する必要がありません。

iVXの2つの機能

コード生成機能
コードを書き慣れている一部のプログラマーは、iVX を「コード ジェネレーター」として直接使用できます。フロントエンド コードであろうとバックグラウンド コードであろうと、iVX はコンパイル後にすばやく生成できます。プロセス中、iVX はまず AST 抽象構文ツリーを生成し、次に AST に基づいて対応するコードを生成します。別のアプリケーション (WeChat アプレットなど) の場合は、WeChat アプレットの対応するネイティブ コードにコンパイルされます。

iVX は Javascript のようなコードをエクスポートできますが、開発者がコード自体を直接変更することはお勧めしません。一度変更すると、二次開発のために iVX IDE システムにインポートできなくなるためです。

「チューリング完全」論理機能
iVX は「自己無撞着」「チューリング完全」論理システムのセットを形成し、この論理システムを前後の論理処理で再利用します。これは直線的に拡張できる「トリガーベース」のパネルシステムであり、Mendix の「フローチャート」ベースの論理配置システムよりも優れた点があります。

ここに画像の説明を挿入

iVX はどのようなアプリケーションを開発できますか?

iVX は急速に成長しているコード不要のビジュアル プログラミング言語であり、現在では次のようなほぼすべてのオペレーティング システム アプリケーションの開発を完全にカバーできます。

  • WebApp (Web ブラウザーを介してカプセル化され、さまざまな小さなプログラム、Android/iOS アプリ、Win/Mac/Linux アプリをサポートできます)
  • ネイティブ WeChat アプレット (iVX は WeChat アプレット用に特別に設計されており、関連するすべてのコンポーネントを個別に作成します)
  • ネイティブ WeChat ミニゲーム (iVX は WeChat ミニゲーム専用で、関連するすべてのコンポーネントを個別に作成します)

次の図に示すように、iVX ワークベンチから開発 IDE インターフェイスに入ります。
ここに画像の説明を挿入
各タイプのアプリケーションの基本的な開発モードは同じですが、コンポーネント セットと基本的な構成設定が異なります。そのため、一度アプリケーションを作成すると、アプリケーションの種類を変更することはできませんので、開発前に作成するアプリケーションの種類を決定する必要があります。

webApp/スモール プログラム/ネイティブ アプリケーション
このタイプのアプリケーション (以下、「Web アプリ」と呼びます) は、基本的に Web アプリケーションであり、純粋な Web アプリケーション (つまり、html5 Web ページ) として、または によって提供されるパッケージング サービスを通じて公開できます。さまざまなスモール プログラム (現在、WeChat、Alipay、DingTalk をサポート) とネイティブ アプリケーション (ios、android、windows/mac) にパッケージ化された ivx プラットフォーム。小さなプログラムでもネイティブアプリでも、ivxプラットフォームのパッケージングサービスはwebview(ブラウザ埋め込み)という手法を用いて、作成したページを他のアプリに埋め込みます。同時に、ivx はさまざまなシステム インターフェイス レイヤーを提供します。これにより、地理的位置、デバイス インターフェイス、ファイル インターフェイスなど、アプリケーション内のアプレットまたはネイティブ アプリケーションによって提供されるインターフェイスを呼び出すことができます。

Web アプリを作成するとき、相対配置ステージまたは絶対配置ステージを選択できます:
ここに画像の説明を挿入
そのうち、相対配置ステージ、ステージおよびページは相対配置環境、つまりフロー レイアウトにデフォルト設定されます; 絶対配置ステージ、ステージとページのデフォルトは、各オブジェクトの位置がユーザーによって手動で指定される絶対配置環境です。iH5 プラットフォームに精通している場合は、絶対測位環境を選択でき、そのエクスペリエンスは iH5 プラットフォームとまったく同じです。

絶対位置決めステージであるか相対位置決めステージであるかに関係なく、デフォルトで作成されたときのウィンドウ サイズは、携帯電話のウィンドウのサイズである 375*667 です。ツールバーの右上隅にあるウィンドウ サイズ切り替えボタンを使用して、プロジェクトを PC またはパッドのサイズに調整し、対応するシーンのアプリケーションを作成できます。アプリケーションが公開されると、サポートされている任意のタイプのアプリケーションを選択できます
ここに画像の説明を挿入
。公開するシステムによる:
ここに画像の説明を挿入
WeChat ミニゲーム
WeChat ミニゲームは、ミニプログラム プラットフォームによって新たに開始された特殊なタイプのミニ プログラムです。(ミニプログラムを申請する場合、ミニゲームをアップロードする前に、ゲームとしての種類を申請する必要があります)

ミニゲームは 2D または 3D タイプを選択でき、2D タイプのミニゲーム、その内部は純粋なキャンバス環境、3D タイプのミニゲーム、その内部は 3D の世界です。WeChat ミニゲームのミニゲーム ルートは環境タイプを指定する必要があるため、ネストできない純粋な 2D または純粋な 3D ミニゲームのみを作成できます。

ミニゲームは、WeChat プラットフォームにアップロードするだけでなく、Web アプリケーションとして直接公開し、ブラウザーで開いて配布することもできます。
ここに画像の説明を挿入
WeChat ミニ プログラム (ネイティブ コンポーネント)
WeChat ミニ プログラム (ネイティブ コンポーネント) は、ユニークなタイプの WeChat ミニ プログラムです。このうち、コンポーネントはアプレットが提供するネイティブコンポーネントと、それをベースに拡張されたコンポーネントを使用します。このタイプのアプレットと、アプレットの最初の Web アプリ バージョンには、独自の利点があり、必要に応じて作成する必要があるアプレットのタイプを選択できます。2 つの WeChat ミニ プログラムの違いについては、次のセクションで詳しく説明します。

wechat ミニゲームと同様に、ネイティブ コンポーネントを備えた Wechat アプレットは、アプレット プラットフォームに直接アップロードすることも、Web アプリケーション (H5) として直接公開することもできます。現在、新しいバージョン (v41 バージョン) のアップグレードされたデータ ロジック処理メカニズムにより、 ivx
ここに画像の説明を挿入
エディター このタイプの WeChat アプレットとは一時的に互換性がないため、このタイプのアプレットは古い (v40) バージョンの ivx エディターを引き続き使用します。

おすすめ

転載: blog.csdn.net/weixin_50843918/article/details/130139088