9月4日。 2020 – 7 min read

2012年の開始以来、その活動は続いています。 Bubbleは、そのローコードプラットフォームを進化させ、機能を洗練させることをやめませんでした。これは、主にチームがコミュニティから集めた多くのフィードバックによるものです。

現在、Bubble は大規模で複雑なソフトウェア プロジェクトをサポートするフル スタック プラットフォームです。

Bubble の代理店として、私たちはしばしばプラットフォームの機能に関する質問を受けます。 Bubble 上に構築できるアプリケーションの典型的な例としては、ソーシャル ネットワーク、SaaS (Software as a Service) 製品、またはマーケットプレイスなどがあります。

Bubble エディタは、経験豊富な開発者が複雑なデザインや応答性の要件を持つピクセル単位の完璧な製品を実現できる幅広い柔軟性を提供します。

✔Progressive Web Apps (PWA) の構築

前回の Medium 記事でご紹介したように、当社のチームはインストール型の Web アプリケーション(PWA)を Bubble プラットフォームで構築しました。 基本的に、これは Uber アプリの最小限のクローンであり、100% ノーコード + コード混合で数日でデプロイされました。

Progressive Web Apps (PWA) は、Web を通してネイティブ アプリ機能をもたらし、多くの利点を持っています:

  • PWA は簡単にインストールでき (Android デバイスでは 1 クリック)、他のアプリケーションと同様にホーム画面からアクセスできます。 これは、Android と iOS の両方に対応するネイティブ モバイル アプリケーションの開発コストを削減したい新興企業や企業にとって、非常に有益なことです。 さらに、Apple Developer Program のメンバーシップも必要ありません。
  • PWA では、手動でのアプリの更新やメンテナンスは過去のものとなりました。 アプリケーションは Web ブラウザーによって提供されるので、アプリ ストアを通じて手動でアプリケーションを更新したり、アプリケーションを自動的に更新する設定を有効にしたりする必要はありません。 PWAは、ユーザーがシームレスにホーム画面に追加することができ、アプリケーションのサイズが最小であるため、ユーザーがPWAの使用を開始/継続するための待ち時間が発生しない。
  • PWA は SEO に最適で、アプリケーション ストアからの独立性を高めます (禁止リスク、アプリ内決済の高い手数料…)。

正直言って、プロジェクトで深いネイティブ機能 (現在の Web ブラウザで利用できる機能の全リストはこちら: ttps://whatwebcando.jp) が必要にならなければ、PWA を使用する必要はありません。1577>

知っておいていただきたいのは、Web アプリまたは PWA をハイブリッド アプリケーションに変換して、アプリケーション ストア (Android Play Store および Apple Store) に簡単にデプロイすることは常に可能であるということです。 このプロジェクトは長期的なロードマップに計画されているようですが、Web アプリケーションをラップしてストアに公開することにより、Bubble エディターでハイブリッド モバイル アプリを作成することは可能です。 さらに、ハイブリッド モバイル アプリは Web テクノロジーによって提供されるため、Android と Apple の両方のストアに簡単にデプロイでき、開発時間とコストを削減できます。

また、ハイブリッド モバイル アプリでは、Web アプリケーションや PWA より多くの権限とネイティブ機能 (連絡先、バイオメトリクス&スマート ログインなど) へのアクセスが可能です。

最適化された Web アプリをネイティブ アプリに変換する優れたプラグインがあります: Gaurav Jain による BDK Native。

✔️ カスタム コードの実行

Bubble プラットフォームのノーコードのネイティブ機能は印象深いものです。 実際、Bubble は強力な Web アプリケーションを構築するための多くのネイティブ機能を提供しています。 しかし、場合によっては、視覚的な言語が、機能を構築したり特定のアクションを達成したりするための最も適応的な方法ではないことがあります。 時には、Bubble 機能の上にカスタム要素やアクションを作成することにより、機能を拡張することが必要になることがあります。 Bubble はこの点で傑出しており、制限に遭遇したときに、開発者がカスタム コードを実行してアプリケーションを拡張することを可能にします。 とはいえ、プロジェクトでハードな制限にぶつかる可能性はほとんどありません。 そのため、Bubble をローコード プラットフォームと呼ぶことにしました。

✔️ API を使用して外部サービスやハードウェアに接続する

場合によっては、アプリケーションで外部ソースからデータを収集したり、何らかのアクション(ソーシャル アカウント データの取得、取引メールの送信、センサーからの温度の読み取りなど)をトリガーする必要があります。 Bubble プラットフォームは、アプリケーションを外部のソフトウェア システムやハードウェア デバイスにリンクするための強力なツールである API コネクターを提供します。 技術的には、膨大な画像セットを分類する AI 搭載エンジンや IoT デバイスの制御など、API を通じてほぼすべてに接続できます。

✔️ 外部データベースへの接続

デフォルトでは、アプリケーション データは AWS サーバーに読み込まれて保存されています。 Bubble エディタは、開発者がアプリケーションを外部データベースに接続し、Bubble 内から SQL クエリを実行できるようにするツール、SQL Database Connector を提供します。

✔️ ビジネスの成長に合わせてアプリを拡張する

拡張性は定期的に懸念されることです。 1577>

最初に考慮すべきことは、パフォーマンスとスケーリング機能は、アプリが Bubble エディター上でどのように構築され最適化されるかに大きく影響されることです。 Bubble は他のテクノロジーと同様にプログラミング ツールであるため、開発者は適切なパフォーマンスを確保し、エンド ユーザーに良いエクスペリエンスを提供するために、優れたプラクティスに従う必要があります。 言い換えれば、適切に設計されたデータベース モデル、最適化されたロジックとデータベース クエリ、および機能的なユーザー エクスペリエンスが必要です。

その一方で、Bubble チームはスケーラビリティとパフォーマンスの向上に努めており、アプリケーション パフォーマンス ニーズに合わせたさまざまな(手頃な)ホスティング プランを提供しています。 デフォルトでは、Bubble アプリは他のすべての Bubble アプリと同じコンピューティング リソースを共有します (Hobby および Personal ホスティング プランの場合)。 上位プランでは、より多くの容量を持つことができます(つまり、必要なときに、アプリが一定期間により多くのアクションを実行できるようになります)。

必要に応じて、Bubble チームはクライアントに専用プランを提供しています。 この場合、インフラストラクチャの恩恵を受け、常に AWS サーバー上で動作しますが、他の Bubble アプリから分離されているため、信頼性と拡張性が向上します。

Bubble は、限られたコンピューティング ニーズでソフトウェア プロジェクトを開始するための手頃なソリューションです。

✔️ データ アクセスとプライバシーの管理

Bubble は、他のノー コード ツールと比較して、非常にオープン エンドなプラットフォームです。 つまり、Bubble 上でアプリケーションを開発する方法は無限にあり、時には悪い習慣もあります。 デフォルトでは、Bubble アプリケーションを作成すると、すべてのデータが公開されます。 しかし、Bubbleエディタには、アプリのデータアクセスを設定するツールがいくつか用意されています。 実際、プライバシー ルールは情報を保護し、安全であることを確認する力を与えます。

❌ ネイティブ アプリケーションの構築

Bubble プラットフォームでは、アプリケーション ストアでネイティブ アプリケーションを構築して展開するための特定のエンジンは今のところ提供されていません。 これは中長期的に実装されるべきものですが、いくつかのテクニックと回避策 (上記参照) を使用すれば、モバイル PWA を構築したり、ハイブリッド モバイル アプリをストア上に展開することは可能です。

❌ プライベートまたはオンプレミスのサーバーでアプリをホストする

Bubble では、Amazon Web Services (AWS) クラウド サーバーまたは専用インスタンスを顧客にホストしています。 現在のところ、プライベート ホスティング サービスやオンプレミス サーバーで Bubble アプリをセルフ ホスティングすることはできません。

しかし、クラウド コンピューティングは標準になりつつあり、AWS はパフォーマンスとセキュリティの点で、主要クラウド プロバイダー (>50% 市場シェア ) として認識されています。 しかし、Javascript 言語のみがサポートされています。

Bubble のコア エンジンは Javascript 言語で記述されています。 現在までのところ、開発者は Bubble の上にカスタム統合を構築するために Javascript を使用することしかできません。 より良いオプションとして、開発者は Bubble の外部でカスタム アルゴリズムを使用または作成し (たとえば Amazon Lambda でホスト)、API を通じてデータを渡すことでそれらを使用できます (たとえば、機械学習アルゴリズム)。

❌ (高度な) ビデオ ゲームを作成する

Bubble エンジンで複雑な 3D ゲームやプラットフォーム ゲームを作成し実行することは期待しないでください…とはいえ、一部の賢い Bubble ユーザーは、J805 による The Legend of Zeldinia や Landowski による Pizza Mania など、試す価値のある小さなゲームを作成できているようです。 この独自モデルは、Bubble のビジネス モデルによって正当化されます。 したがって、アプリケーションをコードとしてエクスポートすることはできません。 Bubble プラットフォームから移行することを決めた場合、(コードなしの) アプリケーション ロジックを再構築する必要があります。 アプリケーション データと、Bubble の上に追加したカスタム コードのみをエクスポートできます。

コメントを残す

メールアドレスが公開されることはありません。