ソフトウェアで指定されたコンピューターサイエンスとソフトウェアエンジニアリングの違いは何ですか? どちらが良いですか?


答え 1:

最初にいくつかの用語を定義しましょう。 「ソフトウェアエンジニアリング」は、ライセンス要件がなく、コース作業に実質的な統一性がないため、ほとんどの場所に実際には存在しません。 これとは対照的に、たとえば、電気工学では、ライセンスとコースの作業が国境を越えてもはるかに均一になっています。

また、「より良い」とはどういう意味ですか。 リンゴはナシよりも優れていますか? 条件を定義する必要があります。 B. Sci。に基づいて、この2つを可能な限り比較対照します。 業界での学位と長年。

  1. コンピュータサイエンスの学位はより均一です。 コンピューティングの意味、データ構造、プログラミング言語(コンパイラを作成する必要がある場合があります)について学びます。私の授業では、ハードウェアからコンピューターを作成し、マシンコードでプログラムし、アセンブラー、並べ替えと検索アルゴリズム、およびその複雑さを記述しましたAI、機械学習、データベースの理論などを取得できます。「ソフトウェアエンジニアリング」(SE)は、項目1のほとんどのトピックをカバーしますが、特定の開発スタックの学習などに時間をかけるほど詳細ではありません。 、チームおよびソフトウェア開発プラクティス、時には認定コース、および実用的なアプリケーションの開発。

コンピュータサイエンスで行う学習は、より一般的であり、より明確に定義されています。 「内部」ではあまり違いがないので、新しいテクノロジーをより速く理解するのに役立ちました。 コンパイラはコンパイラであり、仮想マシンは仮想マシンです。 一部の実装の詳細は異なる場合がありますが、大差はありません。 すぐに自分を再訓練する方法を教えてくれました。 私が実際にいたプログラムは、1学期に3つのプログラミング言語を学ぶことを強制しました。

SEは、卒業後に仕事を得るために履歴書にもっと多くの項目を与えるでしょう。 しかし、私が出会った卒業生は、時々柔軟性に欠けるようです。 アプリケーションスタックのトレーニングや認定を受けたことがないので、アプリケーションスタックを切り替えるのが怖い人に会いました。 キャリア制限になる可能性があります。 しかし、もちろん、均一性がないため、一般化することは困難です。 私は良いプログラムと有能な人々がそれらを卒業するのを見てきました、そして、私は証明工場に過ぎないプログラムを見ました。

どちらが良いですか? それはプログラムとあなたがキャリアパスに望むものに依存します。


答え 2:

何十年もの間、コンピュータサイエンスは工学系の大学で工学系の教授によって教えられていたため、両者は同じものと考えられていました。

しかし、現在、一部のコンピューターサイエンスプログラムは工学系大学から分離され、現在は大学システム内の別の大学になっています。 ピッツバーグのカーネギーメロン大学は1つです。

どちらが良いかは、あなたが教えている大学または通っている大学によって異なります。

私はエンジニアなので、偏見を抱いています。