ホームページ >バックエンド開発 >Golang >Go 言語は何を目指していますか?

Go 言語は何を目指していますか?

青灯夜游
青灯夜游オリジナル
2023-01-28 10:45:191858ブラウズ

Go言語はオブジェクト指向でもプロセス指向でもなく、明確な傾向はなくプログラマが使い方を考えることができる柔軟性が特徴なのでしょう、プログラミング読者でも実装できますオブジェクト指向ですが、オブジェクト指向のセマンティクス自体はサポートしていません。 Go は関数を構造にバインドできるため、Go はオブジェクト指向であると言われます (オブジェクト指向では構造はオブジェクトと見なすことができます)。オブジェクト指向にはカプセル化、継承、ポリモーフィズムという 3 つの大きな特徴があり、Go の構造は継承をサポートしていないため、Go は完全なオブジェクト指向ではないと言われています。

Go 言語は何を目指していますか?

このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。

Go 言語はオブジェクト指向でもプロセス指向でもないですが、実装しようと思えば実際に実行できます。

  • オブジェクト指向: オブジェクトを中心にしてオブジェクトの動作を考える;

  • プロセス指向: プログラミングにおいて、機能を中心 機能の目的を考えてください。

Go は関数を構造体にバインドできるため (オブジェクト指向では構造体をオブジェクトとみなすことができるため)、Go はオブジェクト指向であると言われますが、Go は完全にオブジェクトではないと言われています。オブジェクト指向には、カプセル化、継承、ポリモーフィズムという 3 つの大きな特徴があるためです。 Go の構造は継承をサポートしていません (ただし、構造のネスト/組み合わせはサポートしています)。

Go は関数を構造オブジェクトにバインドする必要がなく、プロセス指向の方法で設計およびプログラミングできるため、Go はプロセス指向であると言われます。

つまり、厳密に言えば、Go は OOP 言語ではありませんが、OOP プログラミング スタイルが可能であり、その柔軟性により、開発者はその使用方法を検討することができます。

Golang はどちらでもないとも言えますが、Golang には明確な傾向はなく、使い方をプログラマに考えてもらうことを好むため、柔軟でプログラマが使いこなせるのが特徴かもしれません。オブジェクト指向を実装しています。ですが、オブジェクト指向のセマンティクスはネイティブにサポートされていません。

#知識を広げる:

  • オブジェクト指向

オブジェクト指向 (OO) とはコンピュータ業界が現在注目しているのは、それが 1990 年代のソフトウェア開発手法の主流であったということです。オブジェクト指向の概念と応用は、プログラミングやソフトウェア開発の領域を超えて広範囲に拡大しています。データベース システム、インタラクティブ インターフェイス、アプリケーション構造、アプリケーション プラットフォーム、分散システム、ネットワーク管理構造、CAD テクノロジー、人工知能、その他の分野など。

オブジェクト指向に関しては、この分野に関する記事がたくさんあります。しかし、オブジェクトの定義を明示的に与えたり述べたりしているものはほとんどありません - 少なくとも私はまだ見つけていません。当初、「オブジェクト指向」とは、特に、プログラミングにおけるカプセル化、継承、ポリモーフィズム、抽象化などの設計手法の使用を指します。しかし、この定義は明らかに状況に当てはまりません。オブジェクト指向の考え方は、ソフトウェア開発のあらゆる側面に組み込まれています。たとえば、オブジェクト指向分析 (OOA、オブジェクト指向分析)、オブジェクト指向設計 (OOD、オブジェクト指向設計)、およびオブジェクト指向プログラミング (OOP、オブジェクト指向プログラミング) とよく呼ばれるものです。オブジェクト指向に関する多くの記事は、オブジェクト指向開発で注意する必要がある問題や、採用されるより良い設計手法についてのみ説明しています。これらの記事を読むことは、オブジェクトとは何か、オブジェクト指向とは何かを真に理解している場合にのみ、最大限の利益を得ることができます。この時点では、初心者はもちろん、関連する業務に長年携わっている人でも、漠然とした概念しか持っていないのではないかと思います。

  • 手続き指向

「手続き指向」(手続き指向)とは、プロセス中心のプログラミングの考え方です。これらは、誰が影響を受けるかというオブジェクト指向とは対照的に、何が起こっているかを主な目的としたプログラミングです。オブジェクト指向との明らかな違いは、カプセル化、継承、クラスです。

【関連する推奨事項:

Go ビデオ チュートリアル プログラミング教育

以上がGo 言語は何を目指していますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。