ホームページ > バックエンド開発 > Python チュートリアル > JavaScript vs Python:最初に学ぶべきですか?

JavaScript vs Python:最初に学ぶべきですか?

Lisa Kudrow
リリース: 2025-02-08 08:30:10
オリジナル
261 人が閲覧しました

JavaScript vs Python: Which One Should You Learn First?

キーポイント

  • Python構文はより直感的で英語に近いため、初心者が簡単に開始できますが、JavaScriptの構文にはより多くのシンボルが含まれています。
  • JavaScriptは、多数のライブラリとフレームワークを備えたWeb開発の主流の言語であり、この分野で働きたい人にとって非常に価値があります。
  • Pythonは、AI、機械学習、データサイエンスなどのさまざまな分野で非常に一般的であり、そのアプリケーション範囲はWeb開発をはるかに超えています。
  • 両方の言語は複数のプログラミングパラダイムをサポートしていますが、簡潔な構文のため、Pythonは一般的にオブジェクト指向のプログラミングにより適していますが、JavaScriptはイベントベースのスクリプトで優れています。
  • JavaScriptは、雇用市場の要求を考えると、特にWeb開発においてより多くの機会を提供し、Pythonは科学的および学術的アプリケーションに従事している人々にとって重要です。

プログラミングを開始する言語を選択することは、おそらく最も難しいことの1つです。選択が多すぎます!最初に学習するプログラミング言語に関するこのガイドを読むことができます。ただし、JavaScriptとPythonの間でheしている場合、この記事では、学習の長所と短所を比較します。 2023 Stack Overflow Surveyによると、JavaScriptは最も人気のある言語であり、プログラマーの63.61%がそれを使用しているため、Pythonは密接に続き、プログラマーの49.28%がそれを使用しています。 JavaScriptは、プロの開発者にとって依然として最も人気があります。この調査の詳細については、こちらをご覧ください。この記事では、PythonとJavaScriptを紹介し、並べて比較し、各言語の構文の例を提供し、学習すべき言語を提案します。

pythonとjavascriptの概要

JavaScriptは、しばしば解釈および実行される高レベルのプログラミング言語です。 1995年にブレンダンアイヒによって設立され、その後、コンピューターサイエンス業界で最も人気のあるプログラミング言語になりました。これは、Webページのクライアントプログラムで最も一般的に使用されています。通常、JavaScriptは、Webテクノロジー(HTML、CSS、およびJavaScript)の3つの要素の一部として表示されます。これらの3つのテクノロジーは、インターネット上のほとんどのWebページの基礎を形成し、JavaScriptはWebページをインタラクティブにします。

Pythonは、1991年にGuido Van Rossumによって作成された高レベルのプログラミング言語でもあります。実際には、ヘビの品種にちなんで命名されていませんが、古代のBBCコメディスケッチ「モンティペイソンのフライングサーカス」にちなんで名付けられました。 Python FAQによると、Guido Van Rossumは、「Python」という名前は「短く、ユニークでわずかに神秘的」であると考えている間にMonti Pysonの公開されたスクリプトを読みました。 1991年の発売以来、Pythonは最も一般的に使用されるプログラミング言語の1つになりました。通常、生徒が学校/教育機関によって教えるための第一言語です。通常、HTMLおよびCSSで使用されるJavaScriptとは異なり、Pythonはスタンドアロン言語として存在します。 Pythonは、機械学習、人工知能、データサイエンスなど、コンピューターサイエンスの多くの技術分野で長年にわたって大きな進歩を遂げてきました。

並んで比較

両方の言語が非常に人気があるため、最初に学習する言語を選択することは困難です。したがって、各言語のより微妙な要素を比較し、どの言語(JavaScriptまたはPython)をいくつかの分析を行います。比較するトピックは次のとおりです

    勉強の難易度
  • application
  • 外部ツール(ライブラリとフレームワーク)
  • 文法

研究の難易度

もちろん、2つの言語を選択するとき、最も重要なことは、言語を学ぶことの難しさを考慮することです。文法の複雑さ、利用可能なリソースの数、およびオンラインコミュニティのサイズによって言語を学ぶことの難しさを判断できます。

Pythonの構文は英語の構文と非常によく似ています。 Pythonは、英語の単語として多くの論理操作を提供しています(例えば、そうではない、またはOR)、それを非常に直感的な言語にしているため、簡単に開始できます。たとえば、発見されたフラグを使用して要素を検索すると、たとえば見つからない場合など、条件付きステートメントを書くことができます。さらに、Pythonは、インデントとコロンを介してコードのレイアウトを管理します(インデントの前)。これにより、Pythonコードは非常に読みやすくなります。

JavaScriptの構文も英語に似ていますが、単語の代わりにシンボルをより多く使用する必要があります。たとえば、javascriptでは、&&、||を持っています。 JavaScriptは、ブレースとセミコロンにも依存して、コード行を分離します。非常に多くのシンボルがJavaScriptを読みにくくするため、特に以前のプログラミングの経験がない場合は、学習が難しくなる可能性があります。

PythonとJavaScriptは非常に人気があるため、SetePointで入手可能な言語など、両方の言語を学ぶのに役立つ多くの記事、チュートリアル、本があります。多くのため、PythonまたはJavaScriptがより多くのリソースを持っているかどうかを判断することは困難です。オンラインリソースや本に加えて、コーディングコミュニティは、スタックオーバーフローやTwitterなどの多数のプラットフォームでの大規模なオンラインプレゼンスでも知られています。最も人気のある言語として、JavaScriptは自然にオンラインの影響力を最大限に発揮する必要があります。

とにかく、Pythonは構文の観点から学ぶのが最も簡単ですが、JavaScriptはより広いヘルプを提供します。

適用

PythonとJavaScriptの両方が「言語を促進する」と見なされます。つまり、それらの1つ(そしてもちろん!)を理解することで、高レベルのプログラミングがはるかに簡単になります。ほとんどのソフトウェア開発者/コーディングジョブでは、PythonまたはJavaScript、またはその両方をマスターする必要があります。さらに、ソフトウェア開発の最も人気のあるサブフィールドの1つであるWEB開発の1つは、JavaScriptの周りに反映されています。 2023 Stack Overflow Developer Surveyによると、プロの開発者の65.82%がJavaScriptを使用しており、専門家の間で最も一般的な言語になっています。さらに、JavaScriptは、雇用主が最も必要としている言語と見なされることがよくあります。 LinkedInの検索は、英国に60,000を超えるJavaScriptの求人があることを示しており、実際には、米国のJavaScript開発者の平均給与は108,981ドルです。

ただし、JavaScriptは通常、Web開発にのみ使用されます。 JavaScriptを他のアプリケーションに使用できる場合でも、ほとんどのJavaScriptリソースはWebアプリケーションの構築(さまざまな複雑さレベル)に焦点を当てているため、他のもの(特に複雑な場合)が非常に難しい場合があります。一方、Pythonは、コンピューターサイエンスの1つの側面に関連付けられていないため、この欠点の影響を実際に受けていません。 Pythonは、機械学習、人工知能、数学モデリングなど、多くのコンピューターサイエンスの分野に適用できます。

したがって、技術的なキャリアの観点から、JavaScriptを学ぶことはあなたのために多くの扉を開きます。ただし、コンピューターサイエンス全体の学習を促進してプログラミングを使用したい場合は、Pythonがより適切です。

外部ツール(ライブラリとフレームワーク)

PythonとJavaScriptの基本を学んだ後、プログラミングの旅の次の重要なステップは、多数の外部ツールを活用してプログラムが次のレベルに達するのを支援することです。

Pythonにはさまざまな非常に強力なライブラリがあります。これらのライブラリは、実際にPythonをとても強力で人気のあるものにしているものです。最も人気のあるライブラリには、Numpy、Scikit-Learn、Flaskが含まれます。 Numpy自体は、非常に複雑な数学的シナリオを迅速に処理できる組み込み関数を備えた、Pythonに大きな力をもたらします。さらに、Numpyは大規模な数学的処理とモデリングを促進し、Pythonは研究と教育に非常に適しています。 Scikit-Learnは、非常に強力なツールであるPythonでの機械学習をサポートしています。最後に、Flaskを使用すると、PythonでWebページのバックエンドを作成できます。

JavaScript Tool node.jsの開発により、JavaScriptが完全に変更されました。これにより、JavaScriptをブラウザなしで使用でき、サーバー側のコードをJavaScriptを使用して記述できるようにするためです。これは、Web開発を直接関与させない外部ツールを書き込むことができ、他のどの言語よりもNPMで公開されるパッケージが増えることを意味します。 2022年9月には、NPMレジストリに210万件以上のパッケージがリストされました。当時、これにより、NPMは最大の単一言語(JavaScript)コードリポジトリになりました。 1年半後、JavaScriptは利用可能な外部パッケージの数の先頭に立っています。

多くのJavaScriptフレームワークがあり、最も人気のある2つはReactとVueです。これらのフレームワークの全体的な目的は、Web開発をより簡単に改善することです。たとえば、ReactおよびVueは状態管理を処理してデータを処理するため、大規模で多層プログラムを開発しやすくなります(多くのデータが必要です)。

Pythonには多くの外部ツールがありますが、JavaScriptにはより多くのツールがあります。したがって、JavaScriptでは、必要なライブラリやフレームワークを見つけることをほぼ保証できますが、Pythonでは、よりニッチなエリアで困難があるかもしれません。

例はプログラミングスタイルです。さまざまなプログラミングパラダイムがあり、他のプログラミングよりもニッチがあります。たとえば、命令(手続き的)、機能的、論理的、オブジェクト指向、データ指向、スクリプト指向、アセンブリ、並行、リストベース、第4世代、視覚化など。異なるパラダイムでコーディングできることは、コードの保守性や特定のコード要素の再利用可能性を改善するなど、コードに多くの利点をもたらすことができるため、非常に人気のあるスキルです。したがって、それはおそらくあなたのプログラミングの旅の一部になるでしょう。

PythonとJavaScriptはどちらもマルチパラグラフ言語です。つまり、常に同じスタイルでプログラムを作成することに限定されません。それらはすべて、命令的、オブジェクト指向、機能的、スクリプトスタイルのパラダイムをサポートしています。以前に別のプログラミングパラダイムを見たことがない場合は、簡単な要約を次に示します。

  • Imperative:コードは、コードに表示される順序で実行される一連の指示として記述されます。これは、ほとんどのプログラマーが最も「直感的」と考えられており、コンピューターにあなたが起こりたいことをほぼ直接伝えることに最も近いため、学習し始めることの例です。こちらをご覧ください。
  • オブジェクト指向:コードは「オブジェクト」のコレクションとして記述されています。 「オブジェクト」は、プロパティと属性を使用して、コードにコピーしようとしているアイテムを説明します。たとえば、動物のゲームでは、犬の授業があるかもしれません。属性は、犬クラスのname = roverなど、クラスを記述する属性と見なすことができます。メソッドは、プロパティを更新またはアクセスする方法です。こちらをご覧ください。
  • 機能:コードは、プログラムを実行するためにリンクされた一連の数学関数として記述されます。たとえば、2つの数値を追加する場合は、x yを返す関数追加を定義する必要があります。ここで、xとyは関数の入力です。こちらをご覧ください。
  • スクリプトスタイル:コードは、タスクを自動化したり、既存のプログラムをカスタマイズするように設計されています。このパラダイムは、上記の他のパラダイムほど人気が​​ありませんが、JavaScriptにとって重要です。こちらをご覧ください。
PythonまたはJavaScriptの命令プログラミングは非常に似ていますが、他のパラダイムではより異なります。 Pythonには非常に簡潔なオブジェクト指向プログラミング(OOP)構文があり、クラスを使用してプロパティとメソッドを持つオブジェクトを定義します(関数/手順として)。この構文は、プログラミングのオブジェクトの正式な定義に非常に近いものです。これは、Pythonでは、ほとんどすべてがオブジェクトであるためです(たとえ気づかない場合でも)。一方、JavaScriptのオブジェクト指向プログラミング構文は、Pythonよりもはるかに劣っており、はるかに直感的です。ただし、JavaScriptはドキュメントオブジェクトモデルの使用で知られています。これにより、イベントベースのプログラミングはPythonよりも非常に自然で簡単になります。 Webサイトをインタラクティブにしたいため、Webアプリケーションを作成する場合、イベントベースのプログラミングが重要です。したがって、JavaScriptは、スクリプトの例に適した言語です(名前が示すように!)。機能的なプログラミングは両方の言語で実装できますが、JavaScriptはES6アップデートにconstキーワードと矢印関数を導入し、JavaScriptの機能プログラミングをはるかに簡単にします。

オブジェクト指向の機能的プログラミングを学習する場合、これらのパラダイム専用の言語を使用することが最善であることを覚えておくことが重要です。たとえば、JavaまたはC#はOOPに使用され、HaskellまたはELMは機能プログラミングに使用されます。したがって、OOPまたは機能的なプログラミングを早期に学び、実験するために、PythonとJavaScriptは完全に機能します。スクリプトの例を学習することに熱心であれば、JavaScriptの方が適しています。

概要

主题 Python JavaScript
语法 优点:与英语的相似性使其非常容易学习 缺点:符号的使用使其相当难以学习 平局
在线资源 平局 平局
在线社区 缺点:Python并不像JavaScript那样流行 优点:JavaScript是最流行的
就业机会 缺点:并非所有工作都需要Python 优点:由于Web开发是一个巨大的领域,几乎主要要求JavaScript
更广泛的计算机科学用途 优点:Python可用于机器学习、人工智能、数据科学、数学建模等 缺点:JavaScript主要用于网站开发
外部工具的数量 缺点 优点
外部工具的有效性 平局 平局
命令式编程 平局 平局
面向对象 优点:类定义的语法与正式和理论定义非常相似 缺点:类定义的语法与正式定义相差甚远
函数式编程 缺点:在Python中是可能的,但使用Python的语法更难维护函数式编程的规则 优点:使用const和箭头函数有很大帮助
脚本式 缺点:是可能的,但如果没有文档对象模型,它就会变得非常棘手 优点:文档对象模型的使用使事件处理更容易

grammar

2つの言語の文法については議論しましたが、2つの言語のより微妙な違いをさらに詳しく調べます。 PythonとJavaScriptの最も標準的なプログラミングの指示と違いについて説明します。

print

プログラミング言語の重要な概念は印刷です。優れた初心者プログラミングチュートリアルでは、最初に書くプログラムは、Hello、World!というフレーズを印刷する必要があります。以下は、Pythonで実装する方法です。

JavaScript:
print("Hello, World!")
ログイン後にコピー
ログイン後にコピー

ご覧のとおり、これらは非常に似ています。ただし、JavaScriptはより技術的な感覚を持っている一方で、Pythonが英語にどれだけ近いかをすでに確認できます。
console.log("Hello, World!")
ログイン後にコピー
ログイン後にコピー

変数

プログラミングにおけるもう1つの重要な概念は、変数を使用する機能です。変数は、基本的に、プログラムで再利用する必要があるデータを保存する方法です。この点で、PythonとJavaScriptは非常に異なります。たとえば、Pythonでは、変数の名前と初期値を指定する必要があります。

JavaScriptでは、任意の変数は3つのキーワードのいずれかで宣言する必要があります - var、letまたはconst(constは、変数の値が再割り当てされておらず、プログラム全体に変更されていない場合にのみ使用できます):

>

best_number = 29
print(best_number)
ログイン後にコピー
ログイン後にコピー
しかし、最新のJavaScript基準によれば、VARの使用は時代遅れなので、それを避け、変更する必要がある変数に使用することが最善です。

var bestNumber = 29
let secondBestNumber = 20
const worstNumber = 27

console.log(bestNumber, secondBestNumber, worstNumber)
ログイン後にコピー
ログイン後にコピー
ifステートメント

IFステートメントは、条件に基づいてプログラム分岐を作成する方法です。英語では、「これが本当なら、このコードを実行してください。そうでなければ、このコードを実行してください」と理解できます。 JavaScriptとPythonの場合、これは非常に似ています。しかし、ここでは、前述のJavaScriptブラケットとブレースの影響を確認し始めます。 Pythonでは、を書きます

2つの値が互いに等しいかどうかをテストするために==を使用する必要があることに注意してください。また、各IFステートメントセクションの最後にあるコロンに注意してください。キーワードElifを使用してIFステートメントにさらにブランチを追加できます(IFの場合)。たとえば、

JavaScriptで、
if best_number == 29:
    print("That's correct! That is the best number")
else:
    print("That's wrong...the best number is 29")
ログイン後にコピー

を書きます

if best_number == 29:
    print("That's correct! That is the best number")
elif best_number == 20:
    print("Close...that's the second best number!")
else:
    print("That's wrong...the best number is 29")
ログイン後にコピー
ご覧のとおり、Pythonのコロンの代わりに{}ブレースを使用し、括弧内にIFステートメントのコードを含める必要があります。また、javascriptで==の代わりに===を記述する必要があります。最後に、JavaScriptではコードを実行するためにインデンテーションを必要としないことを理解することが重要です。

しかし、これは非常に混乱しているように見え、JavaScript自体を読むのは難しいです!したがって、ほとんどの人は、コードの一部としてインデントを含めようとします。
if(bestNumber === 29){
    console.log("That's correct! That is the best number")
}
else if(bestNumber === 20){
    console.log("Close...that's the second best number!")
}
else{
    console.log("That's wrong...the best number is 29")
}
ログイン後にコピー
ループ

if(bestNumber === 29){console.log("That's correct! That is the best number")}
else if(bestNumber === 20){
console.log("Close...that's the second best number!")
}
else{
    console.log("That's wrong...the best number is 29")
}
ログイン後にコピー

ループは、プログラミングにおける反復手法です。この例では、forループを29回(明らかに)実行する必要があります。したがって、Pythonでは、次のように書きます
print("Hello, World!")
ログイン後にコピー
ログイン後にコピー

ここで、xは、forループの各反復に値が変化する一時的な変数です。最初の反復、x = 0、2回目の反復、x = 1、3回目の反復、x = 2、等々。したがって、私たちのプログラムは、28まで0、1、次に2などを出力します。ご覧のとおり、範囲関数は2つの制限で定義されます:0と29。ただし、上限29は含まれていません。 JavaScriptにはまったく同じ原理がありますが、構文は完全に異なります:

console.log("Hello, World!")
ログイン後にコピー
ログイン後にコピー

それを分解するために、セミコロンで3つの部分が分離されています:

  1. let x = 0は、初期値が0の一時変数xを宣言します。これは、PythonプログラムでXとまったく同じ目的を持ちます。
  2. x<
  3. xは、以下を記述するための略語です。各反復、Xの値を1 x 1増加させたいと考えています。

ご覧のとおり、JavaScriptにはより多くの手動設定があり、より多くのシンボルが必要です。このセットアップは読みにくいですが、実際にはJavaやCのような他の有名な言語に非常に似ています。さらに、JavaScript(上記のように)は、異なるブラケットと巻き毛ブラケットでコードを分離することに依存していますが、Pythonはインデントとコロンのみに依存しています。

while loop

ループは、IFステートメントとループ用の混合として機能するプログラミングにおけるもう1つの反復手法です。一方、ループは特定の条件が満たされるまでコードを実行します。たとえば、Best_Numberが29に等しくなるまで、間違った出力を続けたいと考えています。 Pythonでは、

を書きます
best_number = 29
print(best_number)
ログイン後にコピー
ログイン後にコピー

!=「等しくない」を意味します。したがって、Best_Numberが29に等しくない場合、印刷ステートメントを実行します。つまり、While Loopは最高の数値が29になるまで実行されます。 JavaScript:

var bestNumber = 29
let secondBestNumber = 20
const worstNumber = 27

console.log(bestNumber, secondBestNumber, worstNumber)
ログイン後にコピー
ログイン後にコピー

これらは非常に似ており、!=の代わりに!==など、微妙な違いのみがあり、上記で説明したすべての違いがあります。

文法の概要

化学は、言語がどのように書かれていて、読者にとってどのように見えるかについてのことです。 Pythonが非常にきれいに見えるので、これまでにプログラムしたことのない人でさえ、シンプルなPythonプログラムを読んで、それが達成していることを理解することができます。一方、JavaScriptは、ほとんどのプログラミング言語のように、単語よりもシンボルを好みます。これにより、外観とレイアウトがより数学的になります。おそらく驚くべきことに、JavaScriptの構文は、実際にはJavaなどの他の一般的な言語と非常に似ています。したがって、一般に、構文のみを考慮すると、PythonはJavaScriptよりも間違いなく学習しやすいです。ただし、JavaScriptにはより簡単に転送可能な構文があります。つまり、JavaScriptを学習したら、JavaやCなどの他の言語を学習する方がはるかに簡単になります。

結論

PythonとJavaScriptの概要があるので、どちらも学習があなたに害を及ぼさないことを覚えておくことが重要です!エンコーディングはエンコードなしよりも優れています!ただし、より技術的な観点からは、ソフトウェア開発の仕事を見つけるためにコーディングを学びたい場合、または他の言語の経験がある場合は、JavaScriptから始めることをお勧めします。学習のためだけにコーディングを学んでいる場合は、Pythonを使用することをお勧めします。これは、コーディングの世界への移行が容易であるためです。

以上がJavaScript vs Python:最初に学ぶべきですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート