Javascriptはオブジェクト指向言語かどうか

オブジェクト指向プログラミング言語は、データとコードの両方を含むオブジェクトを使用します。オブジェクト指向プログラミングの原則は、カプセル化、抽象化、ポリモーフィズム、および継承です。

オブジェクト指向プログラミング(OOP)言語は、私たちが見るところすべてにあります。今日のコンピューティングの世界を構成する最も広く使用されているプログラミング言語のほとんどは、オブジェクト指向です。実際、多くのコンピュータプログラムとWeb上のコンテンツの多くは、オブジェクト指向言語。オブジェクト指向言語がどのように機能し、なぜそれらが有用であるかを理解することは、ITのほとんどすべてのキャリアにとって重要です。

この記事では、オブジェクト指向言語とは何かを見ていきます。 Äãareと彼らの長所と短所を調べます。また、今日使用されている、より人気のあるOOP言語のリストも見ていきます。

プログラミング言語とは何ですか?

プログラミング言語は、プログラマーがコンピューターに実行するための一連の命令を与えることを可能にする一連の規則と手順です。各プログラミング言語には独自の構文があり、一度学習すると、コンピューターが実行する必要のあるタスクを知るのに役立ちます。

このように考えてください。英語は、英語を話す人とのコミュニケーションを可能にする言語です。英語の基本的なルールを知っていれば、それを理解している人なら誰とでも話すことができます。ただし、コンピューターは英語やその他の「従来の」言語を理解できません。

言語オブジェクト指向プログラミングとは何ですか?

コンピューターは強力なマシンです。コンピューターを使えば、非常に迅速に数値を計算でき、多くのアプリケーション向けのすばらしいプログラムを作成できます。ただし、この力を利用するためにコンピュータと通信する必要があるのは、手動で1と0を入力するよりも簡単です。

したがって、プログラミング言語があり、すでに記述されているマシンコードでサポートされています。ただし、マシンコードから離れるほど、データ管理ではより抽象的で専門的な言語になります。これが私たちが非常に多くの言語を持っている理由です。完璧な言語はなく、アプリケーションはすべて異なり、重複しています。

プログラミングパラダイム

この点で、プログラミング言語は、多くの場合、プログラミングパラダイムから分離されています。プログラミングパラダイムは、データを調べてアクセスする方法です。 2つの主要なパラダイムはオブジェクト指向であり、 機能的ですが、他にもたくさんあります(上記の背後にある原則を含む)。

オブジェクト指向プログラミングは、オブジェクトを中心に構築されています。は、データ(プロパティまたは属性)とコード(プロシージャまたはメソッド)の両方を同時に含むデータ構造です。オブジェクトは「this」または「self」で変更できます。ほとんどのOOP言語では、ほとんどすべてが、値と実行可能コードの両方を持つことができるオブジェクトです。各オブジェクトは一意であり、別のオブジェクトのコピーである可能性がありますが、その変数は他のオブジェクトの変数とは異なる場合があります。

オブジェクト指向ソフトウェア設計のオブジェクトは、実際のオブジェクトと考えることができます。オブジェクトについて考えてください。 、時計など。この時計には特性があります。金属であり、黒であり、密度があります。しかし、このオブジェクトは物事も行います。時間を示し、ギアを回して手の位置を変えることで、自分自身に影響を与えることもできます。

オブジェクトのもう1つの特徴は、時計がどのように機能するかを常に知る必要がないことです。時計が適切に構築されていれば、干渉することなく時間を確実に伝えることができます。その内部の仕組み。

オブジェクト指向言語は、実世界のオブジェクトに似たオブジェクトを持っています。それらはプロパティと機能を持つことができます。また、特定の一連の原則に従う傾向があります。

<スパンクラス= "ez-toc-section" id = "principles-of-object-Oriented-programming"> 原則オブジェクト指向プログラミング

オブジェクト指向言語には、4つの原則があります。これらの4つの原則は、それらを定義し、それらを大幅に効果的にする共通の特性です。それらをオブジェクト指向プログラミングの4つの柱と呼ぶ人もいます。

オブジェクト指向プログラミングの4つの柱は次のとおりです。

  1. カプセル化
  2. 抽象化
  3. 継承
  4. ポリモーフィズム
  5. 4つの原則

    これらの4つの原則をさらに詳しく見ていきましょう。

    Java、Python、C ++、Lisp、Perlはすべて、一般的なオブジェクト指向プログラミング言語の例です。これらは、クラスとオブジェクトのパラダイムを使用したプログラミングをサポートしています。

    最も人気のある5つのオブジェクト指向言語には、次のものが含まれます。

    1. Java
    2. Python
    3. C ++
    4. Ruby
    5. C#
      • Java - Java はいたるところにあり、これまでで最も使用され、要求されている言語の1つです。 Javaの「一度書けばどこでも実行できる」というモットーは、Javaが実行され、使用されるプラットフォームの数に反映されています。
      • Python - Python は一般的であり、多くの場所で使用されています。ただし、Pythonは、機械学習とデータサイエンスにおいて確固たる基盤を持っています。これは、この新しく絶えず進化する分野に適した言語です。
      • C ++-C ++は、クラス機能とオブジェクト指向パラダイムを備えたCの速度を備えています。これは、コンパイルされた、信頼性が高く、強力な言語です。実際、他の言語のコンパイラやインタプリタを作成するためにも使用されます。
      • Ruby-Rubyはもう1つのジェネリックプログラミング言語です。シンプルにするために作られました。そうは言っても、Rubyは信じられないほど強力な言語です。ルビークリエーターのまつもとゆきひろは、「ルビーはとてもシンプルに見えますが、人体のように内部はとても複雑です。
      • C#-C#はマイクロソフトが設計した言語プログラムです。これは、Cの既存の概念を強化するように設計されています。C#は、Microsoft .NETフレームワークだけでなく、多くのWebアプリケーション、ゲーム、デスクトップアプリケーション、およびモバイルアプリケーションを強化します。

      他にもオブジェクトがあります-指向アプリケーション。言語、上記では説明していません。 Perl、Objective-C、Dart、Lisp、JavaScript、およびPHPもすべて、オブジェクト指向またはサポート機能を備えています。オブジェクト指向の原則。

      の長所と短所オブジェクト指向プログラミング言語、

      OOP言語は強力ですが、私はすべての状況に役立つわけではなく、考慮しなければならない手荷物が付属しています。

      プロ

      再利用性

      オブジェクト指向コードは、設計が非常にモジュール化されています。ポリモーフィズムと抽象化により、何度も使用できる関数を作成できます。すでに継承されている情報や機能をコピーすることもできます。これにより、時間が節約され、複雑さが軽減され、スペースが節約され、コーディング操作が簡素化されます。

      並列開発

      プログラムの一部を開発するための十分な基盤があります。互いに別々に、指向原理オブジェクトに従って動作し続けます。これにより、大規模な開発チームの並行開発がはるかに簡単になります。

メンテナンス

すべてではないにしても、ほとんどのコードが1つになっているためこのコードは、配置、呼び出し、再利用することで、維持がはるかに簡単になります。関数が呼び出される100の異なるインスタンスを個別に修正する代わりに、モジュラー関数とポリモーフィック関数だけを修正できます。

セキュリティ

ほとんどの言語にはセキュリティがありますが、オブジェクト指向言語は、セキュリティがカプセル化に組み込まれているため便利です。他のメソッドやクラスは、デフォルトではプライベートデータにアクセスできません。およびOOP言語で記述されたプログラムは、これに対してより安全です。

モジュール性

オブジェクト指向プログラミング言語は、アプリケーションをオブジェクトとクラスに分割します。 。これはあなたのアプリを与えるので有利ですよりモジュール化された構造。モジュラーコードは読みやすいです。したがって、保守が容易です。

短所

多くの場合厄介です

オブジェクト指向であるため言語は非常にカスタマイズ可能でスケーラブルであるため、コードがどのように機能するかについての理解を失いがちです。 OOPコードはいくつかの方法で機能します。他の方法論ではうまく機能しない、非効率的である、または使用が難しい多くのOOPプログラミング方法論があります。

より多くの計画が必要です

これらの言語としてâÄã‚Äãは非常にモジュール化されており、スケーラブルであるため、事前に明確な計画を立てずに参加することは、災害のレシピです。効果的なプログラムを作成するには、他のプログラミングパラダイムよりもしっかりとした計画が必要です。

不透明度

これは、短所と同じくらい長所です。オブジェクトと関数は独立して動作できます。彼らは情報を受け取り、(通常)信頼できる結果を返すことができます。結果として、それらはブラックボックスになる可能性があります。つまり、それらが何をしているのかが常に明確であるとは限りません。プログラマーはおそらくこのオブジェクトを作成し、彼が何をしているのかを知っていますが、OOP言語は他の言語のように透過的ではありません。

パフォーマンス

言語指向のオブジェクトは、しばしば深刻な打撃を受けます。 OOP言語で構築されたプログラムは、多くの場合、関数型言語よりも大きく、実行するためにより多くの計算作業を必要とします。ただし、これは常に真実または重要であるとは限りません。 C ++はOOP言語ですが、利用可能な最速の言語の1つです。同様に、速度は必ずしも重要ではありません。速度の違いは、巨大または複雑な計算を処理する場合、または極端な速度が必要な場合にのみ顕著になります。

これで、オブジェクト指向言語とは何か、その使用目的、これらの言語でのプログラミングは、有益であると同時に楽しいものであり、開発のキャリアはすぐそこにあります。