詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com/#zz 孔子はかつてこう言いました。「原初の混沌がある限り、すべては可能である。」 世界で戦争が絶えない理由 激化する紛争 根本的な原因は 意見の相違は公平に解決されない 私たちが子供の頃にみんなで遊んだゲームがありました。 ハンマー、紙、はさみ それは実際には相違を解決する方法です。 最も独創的で効果的な方法 でも、なぜ大人になると この方法を使用しないのはなぜですか? 彼には2つの欠点がある 1つはアクションのスピードです。 もう一つは、一時的に手の形を変えることです 多様な端末の出現 この問題を一挙に解決しました さて、ここで質問です 時代を超えた素晴らしい製品 なぜ宣伝されなかったのでしょうか? 2 つの欠点があるからです。 一つは持ち運びが不便だ もう一つは...高価(取り消し線付き)...オープンソースではない オープンソースのHongmeng分散端末の登場 一挙に問題を解決した では、このような Hongmeng 分散型分岐端末の **プロトタイプ** を構築するにはどのくらいの時間がかかりますか? 10分くらいですか? いいえ、 おそらく... 週末。 具体的な手順は 3 つあります。 最初のステップは、自宅で赤ちゃんをなだめることです。 ステップ2: コンピュータを開いてバグ(取り消し線付き)コードを書きます ステップ 3: デバッグします。問題がある場合は、手順 2 を繰り返します。 初めは何事も難しいものですが、最初の一歩が一番難しいものです。 最初のステップを実行したら、次の 2 つのステップは簡単です。 Hongmeng 分散型分岐端末プロトタイプの設計原理を詳しく分析してみましょう。 # Hongmeng分散型分岐端末プロトタイプの設計 ## まず、需要分析 1)。自分の決定を**入力**することができます 2) **中立的な第三者による決定** 3)。最終決定結果を見ることができます ## 次に、モジュール分割です。 ニーズに基づき、Hongmeng の分散設計コンセプトを使用して、端末を 2 つのコア モジュールに分割します。 1)。 FAと呼ばれるダイバージェンス端末のインタラクティブモジュールは、決定を入力し、結果を表示するために使用されます。 2)。 PAと呼ばれる不一致端末の計算モジュールは中立的な第三者として機能し、最終決定を下す。 ## 再度、処理します。 A と B の間に意見の相違があり、それを解決する必要があると仮定します。意見の相違を解決するための一般的なプロセスは次のとおりです。 1)。 Aは分岐端末の対話型モジュール(FA-A)を起動します。 2)。 Bは分岐端末の対話型モジュール(FA-B)を起動する 3)。 AとBは同じ分岐端末計算モジュールに接続され、計算モジュールA(PA-A)であると仮定します。 4)。 AとBは、それぞれの分岐端末のインタラクションモジュール(INPUT-A、INPUT-B)に決定を入力します。 5)。ダイバージェンス端末の計算モジュールは、AとBの入力に基づいて結果を自動的に計算します。結果 6)。 A と B は、それぞれの端末のインタラクティブ モジュールで結果 RESULT を表示します。 B が結果に満足しない場合は、満足するまで別の決定を下すことができます。 ## 再度、詳細な設計。 ### 1. ブランチターミナルインタラクションモジュール(FA) インタラクティブ モジュールは、ユーザーに入力インターフェイスと表示インターフェイスを提供する必要があるため、Hongmeng の FA、つまり Feature Ability が使用されます。 FA はページ アビリティとも呼ばれ、ページにはサブページであるアビリティ スライスが複数存在することがあります。 意思決定プロセスのさまざまな段階に応じて、Ability Slice を使用して次の 3 つのサブページを設計します。 * 1)。分岐端末コンピューティングモジュール(PA)への接続に使用される初期準備ページ、HomeSlice ここでは、Hongmeng分散ソフトバスを使用する必要があります。 a)。自動デバイス検出機能 同じネットワーク上にある Hongmeng デバイスは、条件が満たされると、自動的に互いを検出できます。ネットワーク インターフェイス (udp/tcp など) を呼び出したり、さまざまなネットワーク条件 (wifi/bluetooth/nfc など) に合わせて異なる実装を行う必要はありません。 b)デバイス直接接続機能 connectAbility インターフェースを使用すると、デバイスの実際のネットワーク状態を知らなくても、接続先のコンピューティング モジュールに直接接続できます。 * 2)。待機ページ、WaitingSlice。最初に意見の相違解決に参加する人は、このページで他の人が参加するのを待つ必要があります。 全員が参加したことが確認されると、自動的に次のページ「分岐意思決定ページ」に進みます。 * 3)。決定ページ、GameSlice。紛争解決に携わる人々が決定を入力し、最終的な裁定結果を表示します。 このモジュールの技術的なポイント: 1)。サブページ間の切り替え:現在の方法を使用する 2)。決定結果の更新: タイマーを使用して結果をポーリングし、更新することができます。 知らせ タイマーで UI を更新する場合、関連するコードを UI スレッドで実行する必要があります。 EventRunner を使用できます。コードを参照してください:
参照ドキュメント 1)。ページ能力開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-page-concept-0000000000033573 2)。 JAVA UI フレームワーク開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ui-java-overview-0000000000500404 ### 2. 分岐端末コアコンピューティングモジュール (PA) コンピューティング モジュールの中心的なタスクは、表示を必要とせずにデータを処理することです。そのため、Hongmeng の PA (Particle Ability) が使用されます。 計算モジュールが実装する必要がある機能は次のとおりです。 a)。インタラクティブモジュールから意思決定の入力を収集する b)。それぞれの決定に基づいて最終決定を下す 意思決定のプロセスは、基本的に a > b かどうかを判断するプロセスなので、詳細には触れません。 技術的なポイント 1)。 PAに接続する場合はconnectAbilityを使用する 2)。マルチスレッドデータ同期に問題が発生する可能性がある 3)。デバイス間の操作を実行するには、コード内で必要な権限を手動で申請する必要があります。 プロジェクト モジュールの config.json 内:
MainAbility の起動時に権限を申請します:
参照ドキュメント 1)。サービス能力開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-service-concept-0000000000044457 2)。分散タスクスケジューリング https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-distributed-overview-0000001050419345 ### 3. インタラクションモジュールとコンピューティングモジュール間のデータ通信 2 つのモジュールが相互作用する必要があるため、必然的にデータ通信が必要になります。 データ通信のプロセスでは、関連する通信インターフェイスを呼び出すことに加えて、データをパッケージ化およびアンパックすることも非常に重要なポイントです。 通信プロセス全体は、Hongmeng 分散ソフト バスを通じて完了します。 ソフト バスによって提供されるインターフェイスを使用して、通信プロセスを実装し、データ構造、およびパッケージ化とアンパックの方法を定義することができます。 ただし、これは 10 分以内に完了しません。 幸いなことに、Hongmeng は、この頭の痛い作業を完了するのに役立つ非常に便利なツール、IDL (Hongmeng Interface Definition Language) を提供しています。 > IDL公式ドキュメント > https://developer.harmonyos.com/cn/docs/documentation/doc-references/idl-overview-0000001050762835 IDL ツールを使用すると、わずか 3 つのステップでデータ通信機能を実現できます。 1)。 IDLファイルでメソッドのインターフェース、メソッド、入力および出力パラメータを定義します。 2)。 DevEco Studioを使用してIDLファイルをコードに変換する 3)。特定のビジネスロジックを実装する インターフェースを定義した後、ローカル メソッドを呼び出すのと同じようにリモート メソッドを呼び出すことができます。 IDLコードの例:
### 4. 組み立てとテスト すべてのモジュールの準備ができたので、FA/PA/IDLを組み立てて続行します。 接触... 調整する... テスト... 試す...... 運が良ければ、10 分でデバッグを完了できるかもしれません。運が悪ければ、数え切れないほどのテストと修正を経て、最終的には明らかなバグのないバージョンをデバッグできるようになるでしょう。 こうして、Hongmeng 分散分岐端末のプロトタイプが完成しました! ### 6. インターフェースの美化について インターフェースを美しくする必要があるとおっしゃいましたね? ## プロ版 Hongmeng 分散型分岐端末は、Pro バージョンにアップグレードして、さらに多くの「プロフェッショナル」機能を追加することもできます。これらはすべて、Hongmeng の分散機能を使用して簡単に実現できます。次に例を示します。 1)。 AIディスカッション:退屈な人たちが議論する場 2)。視聴:相違点の意思決定プロセスを一般の人々が視聴できるようにする 3)。マルチプレイヤー: 2人以上が対戦するゲーム 4)。招待/強制競争: 他の人を競争に参加するよう招待する 5)。あらゆるデバイスでディスカッション: 携帯電話に加えて、時計などの他のデバイスもディスカッションの入力として使用できます。 6) 大画面での共同競争: プレイヤーは自分のデバイスで入力し、結果は大画面に表示されます。 ## オープンソースコード プロジェクトのコードは参考のために gitee にアップロードされています。 > https://gitee.com/devonzhang/じゃんけん ## 参考文献 このプロジェクトを完了するために必要なスキル ポイントは、Hongmeng OS 開発者 Web サイトで学習資料を見つけることで確認できます。 1)。 Hongmeng OS アプリケーション開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/document-outline-0000001064589184 2)。能力開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-ability-overview-0000000000029852 3)。ページ能力開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-page-concept-0000000000033573 4)。サービス能力開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-service-concept-0000000000044457 5)。分散タスクスケジューリング https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-distributed-overview-0000001050419345 6)。 JAVA UI フレームワーク開発ガイド https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ui-java-overview-0000000000500404 7)。 Hongmeng OS IDLインターフェース使用仕様 https://developer.harmonyos.com/cn/docs/documentation/doc-references/idl-overview-0000001050762835 ## やっと このプロジェクトのコードは学習目的のみに使用されます。本番環境で直接使用しないでください。万が一バグが発生した場合、当社は一切の責任を負いません。 # 最後 ここまで読んでくださった皆さん、私はフルスタックゲーム開発者のアビンです。ようこそ 1. 私の洪蒙学習コラム「Abin と一緒に洪蒙を学ぶ」を購読してください https://harmonyos..com/column/25 2. 私の個人公開アカウントをフォローしてください: Honest IT Man Abin 3. 私の技術ブログをご覧ください: https://xmanyou.com/ ©著作権は著者とHarmonyOSテクノロジーコミュニティが共同で所有します。転載する場合は出典を明記してください。そうでない場合は法的責任を問われます。 詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com/#zz |
<<: KMaaS を使用してマルチクラウドのキー管理の課題に対処する方法
>>: クラウドコンピューティング業界に関する詳細なレポート: 企業のデジタル変革が加速し、クラウドコンピューティングには大きな可能性があります
外部リンクと内部リンクは、ウェブサイトのランキングの 8 割を占めています。外部リンクとコンテンツの...
デジタル時代の到来により前例のない進歩がもたらされ、人工知能(AI)はさまざまな業界でイノベーション...
今年のダブルイレブンは例年よりも早く盛り上がりました。李佳奇や魏亜など、タオバオのトップキャスターの...
現在 lovevps が使用しているデータ センターは次のとおりです: - Custodian DC...
検索エンジンがますますユーザーフレンドリーになるにつれて、サイトの内部構造に対する要件もますます高く...
QuestMobileのデータによると、2018年4月時点で、下位層市場の月間アクティブユーザー数は...
インターネットの普及、特に電子商取引の急速な台頭に伴い、インターネット上でのさまざまな不正サービス、...
スティーブ・マルティネリノアが編集制作 | 51CTO テクノロジースタック (WeChat ID:...
Huaweiのイントラネットクラウドノートの数は現在58万件に達しているとのことです。デジタル時代に...
今日は、Yiyun がパーソナリティと SEO の関係についてお話しします。 SEOマーケティングの...
VPSUnlimited は、この中秋節のプロモーションで大きな割引を提供し、大容量メモリを備えた ...
1月10日、「有識者」はJD CloudとKingsoft Cloudが合併し、人事を担当するHR部...
近年、ペット市場は爆発的な成長を遂げ、ペットフードを主産業とし、医療、サービスなどの産業を補助産業と...
【1号につき1文】誰もが時間に浸り、過ぎ去る年月に流されていく。人々は一生をかけて時間と戦っています...
香港の VPS、特に安価なものには、まだ一定の需要があることがわかりました。帯域幅は少し高価ですが、...