アーキテクチャの設計とアーキテクチャの考え方

序文

スティック方式の種類は、必ずしもそのよう楊過としてガイ、ではありません。
ときにそのような蕭峯としてガイ、スティックの種類は、必ずしも法律がすることはできませんしません。
建築家アーキテクチャは必ずしも必ずしもアーキテクチャのタイトルを知っている、または建築設計に参加する機会を持っていない建築家があり、タイトルを持っていません。
スマートに移動するプログラマにとって、でも建築家のタイトルなしで、我々はまた、武道限り、そのアーキテクチャの努力を訓練することができます。
次に、アーキテクチャ何かをチャット

まず、特徴である何が良い建築家

  1. 優れた技術。少なくともコードは簡単に、読みやすい拡張するために、再利用がオブジェクト指向やデザインパターンを学ぶ必要がある、だけでなく、コーディング手法の多数によってだけでなく、良いですが、ちょうど計画段階で停止しません
  2. ビジネスを理解します。ビジネスを理解していない、あなたは、ビジネスアーキテクチャの設計に合うことができない、と業界の知識を蓄積することができ、短い時間ではありません。
  3. 良好なコミュニケーションスキル。建築家のニーズを把握通信する必要がある、チームはアーキテクチャを理解する必要があります。
  4. 建築の考え方があります。抽象的、分割統治を使用する方法を知って、再利用、反復ソフトウェアの複雑思考を減らす、など

第二に、アーキテクチャ設計は何ですか

アーキテクチャ設計は、ソフトウェアが実行されている保護するために、最小限の運用コストで、開発やニーズの変化の人材ニーズを満たすために最低コストを使用することです。
次のような一般的に用いられる方法

  1. マイクロサービスアーキテクチャの使用は、システムは小さなサービスのシリーズに複合体を分割し、そして次に機能モジュールに分割し、労働力のよりよい部門にスタッフを可能にします
  2. 前と分離の終了後に、知識の特定のフィールド上のプログラマの焦点は、開発作業を軽減します
  3. 階層設計、ビジネスロジックの分離および要件変更の影響を軽減

第三に、なぜ必要なアーキテクチャ

  1. 技術ニーズが複雑になってみましょう。ブログを作成し、Googleの操作を行い、技術の複雑さがレベルではありません
  2. スタッフは、技術的な複雑さを作ります。チームメンバーによって開発されたソフトウェアが同レベルではない、良い技術的な方向は同じではありませんが、効果的に協力してどのように大きなテストです。
  3. 技術自体は複雑です。プログラミング言語、フレームワーク、コンポーネント、データベース、人工知能、ビッグデータ技術を使用したソフトウェアプロジェクトは、コストを学習しています
  4. ソフトウェアの安定した操作も複雑になってみましょう。オンラインのソフトウェア開発が完了した後は、そのような星のようなクラウドサービスプロバイダなどの不確実性、フリーズすること、のフルは、マイクロブログを送信するシステム障害を引き起こす可能性がありますが、そのようなライブラリーは、Paolu削除されました

これらの理由よりもございますので、我々はこれらの複雑さを軽減するためのアーキテクチャを設計する必要があります

  1. 開発コストを削減します。複雑なシステムは、複数の比較的単純なサービスに分かれ、通常のように、プログラマは、人件費を削減するために行うことができます。
  2. ヘルプの人々は、効率的なコラボレーションを整理します。抽象化と分割、開発者が独立して機能モジュールを完了できるようにします。
  3. 様々な技術を整理します。最も効率的な需要を達成するために、適切なプログラミング言語、プロトコル、フレーム、およびその他のコンポーネントを選択します
  4. セキュリティサービスと安定した動作。このような負荷分散、電流制限、降格、ヒューズなどの高度なインフラプログラムの使用は、このように高可用性サービスを保証します。

第四に、アーキテクチャの考え方は何ですか

これらのコレクションその抽象的、分割統治、再利用および反復的、建築的思考:ソフトウェアの複雑さを軽減し、いくつかの効果的な方法があります

  1. 抽象的思考
    満たすビジネス需要へのアーキテクチャが存在し、通常、最終的に実行するためにマシンコードになりますプロトタイプのいくつかの説明のテキスト、UIデザインを、必要とします。
    私たちは、抽象的でなければならない、このモデルは、コンピュータが認識できるとなっている必要があります。
    例えば、抽象的、個々のユーザー、受注、コンテンツモデル、オブジェクトの相互作用の仕方を描き、さまざまな役割と責任は、無関係な細部の多くを非表示にします。
  2. 分割統治思考
    分割ルールの複雑なシステムの、より小さな、単純な部分に分けます。
    例えば、並行性の高いシナリオで、流れは、単一のサーバの過負荷を避けるために、異なるサーバーに設計することができます。
    関数呼び出しの他の例として、N個の独立したとしてパッケージ1000ラインの機能、これ以上50以下の行
  3. 思考多重
    再利用すると、同じ内容の抽象化により、開発効率を向上させるための最も簡単で効果的な方法は、異なるシナリオのために再聞かせすることができます。
    以下のような多くの初心者は、要件の変更ならば、低効率、維持するのが難しいの開発をあらゆる場所に貼り付けを変更するだけでなく、テスト多くの労力を無駄にする必要性をコードプログラムをコピーして貼り付けます。
  4. 反復思考
    の良いアーキテクチャの進化が終わって、少しアーキテクチャは、1つのステップであり、私たちは、財団は、通常の業務の進捗に影響を与えないことを確認する必要があり、徐々に合理的なアーキテクチャの最後の繰り返しの中へ

おすすめ

転載: www.cnblogs.com/chenqionghe/p/12549664.html