これらの日常的な例え話で主要なコンピューター サイエンスの概念を学びましょう


コンピューターサイエンスとプログラミングの違いは何ですか?技術者ではない人にビッグデータをどのように説明しますか?場合によっては、技術的な説明よりも日常的なたとえの方が優れていることがあります。このリストには、40 の主要なコンピューター サイエンスの概念が簡単に説明されています。

このリストは CarlCheo で編集されており、Stack Overflow や Programmers Stack Exchange などのさまざまなソースから取得されています。これらの概念は、ほとんどのコンピュータ サイエンスの学生が大学で触れることになるものであり、難しい概念を理解しやすくしたり、簡単に「クリック」したりすることができます。

リストの中から私のお気に入りをいくつか紹介します。

Q4 – Java と JavaScript の違いは何ですか?

車とカーペットが似ているように、Java と Javascript は似ています。 ~

グレッグ・ヒューギル/

スタックオーバーフロー

Q7 – 平均的なソフトウェア エンジニアは 1 日に何行のコードを書きますか?

コード行によってソフトウェアの生産性を測定することは、飛行機の重さによって進捗状況を測定することに似ています。 〜ビル・ゲイツ

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

物体は人間と同じです。彼らは生きていて、物事を行う方法についての知識を内部に持ち、物事を思い出すことができるように内部に記憶を持っているものを呼吸しています。そして、非常に低レベルで彼らと対話するのではなく、私たちがここで行っているように、非常に高い抽象レベルで彼らと対話します。

例を示します。私があなたの洗濯対象である場合、汚れた服を私に渡して、「私の服を洗濯してもらえませんか。」というメッセージを送ってください。私はたまたま、サンフランシスコで一番いいクリーニング店がどこにあるのか知っています。そして私は英語を話します、そしてポケットにはドルを持っています。それで私は外に出てタクシーを拾い、運転手にサンフランシスコのこの場所まで連れて行ってくれと言いました。あなたの服を洗濯しに行き、タクシーに飛び乗り、ここに戻ります。私はあなたのきれいな服をあげて言います、「これがあなたのきれいな服です。」

私がどうやってそんなことをしたのか、あなたには分からないでしょう。あなたは洗濯場の知識がありません。もしかしたらフランス語が話せるのに、タクシーを拾うこともできないかもしれません。ポケットにドルがないので、お金を支払うことはできません。それでも、私はそれをすべて行う方法を知っていました。そして、それを何も知る必要はありませんでした。その複雑さはすべて私の中に隠されており、私たちは非常に高い抽象レベルで対話することができました。それがオブジェクトというものです。これらは複雑さをカプセル化しており、その複雑さへのインターフェイスは高レベルです。 ~

スティーブ・ジョブズ/

ローリングストーン誌インタビュー

すべてのたとえ話が完璧であるわけではありませんが、興味深い説明です。詳細については、以下の投稿全文をご覧ください。(ダンさん、ありがとう!)

40 の重要なコンピューター サイエンスの概念を分かりやすく説明|カールチェオ

写真提供者ポール・ケラー