web-dev-qa-db-ja.com

ソフトウェアエンジニアはいくつの言語を学ぶ必要がありますか?

ソフトウェアエンジニアはいくつの言語を学ぶ必要がありますか?私はBTech 2の学生で、Cの知識しかありません。ソフトウェアエンジニアが必要とする他の言語やコースについて教えてください。

9

さまざまなパラダイムで言語を学習してみてください。これにより、すべての言語でのスキルが向上します(パラダイムごとに1つの言語で問題ありません。好みの順序でリストしています):

  • "構造化プログラミング":C、数値を扱う場合はFortranかもしれません
  • ジェネリックプログラミングとOO:C++
  • スクリプト言語:Python、RubyまたはPerl;数値が必要な場合はMatlab
  • VM指向の重いオブジェクト:C#、JavaまたはSmalltalk
  • 関数型プログラミング:Ocaml、Haskell、Scala
  • マシンプログラミング:i686アセンブリ
  • ロジック宣言型プログラミング:Prolog
  • データベースクエリ言語:SQL

しかし、急いではいけません...一度に1つの言語を学んでください...多分毎年新しい言語...これであなたはあなたが解決する必要があるかもしれないどんな問題のための非常に便利なツールボックスを持っているでしょう;)

16
e.tadeu

重要なのは言語の数ではなく、知識の深さです。

6
sharptooth

少なくとも17

4
Grzenio

いつものように 42


それを除けば、できるだけ異なる言語を調べることをお勧めします。 :

  • Cを学ぶ? Rubyスピンする;
  • トップクラスPythonハッカー?C#を調べて、それが何をするかを確認してください。
  • Javaはすべてを知っていますか?深呼吸してHaskellに飛び込みましょう。
4
Robert Munteanu

私はいつもその数は1だと言っています-あなたが毎日使う第一言語です。

他の人に精通していることは役に立ちますが、彼らに習熟していなくても大丈夫です-あなたは彼らが何が起こっているのかを理解し、その言語/セットアップの専門家にいつ尋ねるべきかを知る必要があるだけです。

1
gbjbaanb

言語の数よりも重要なことがあります。

たとえば、基本知識、基礎となるアーキテクチャ、プログラミングパラダイムなど。

IMOでは、2つのOOP言語を学習する代わりに、1つの構造化言語、1つのOO、および1つの関数型言語)を学習する方がよいでしょう。

1
Aamir

人気インデックス を確認することをお勧めします。しかし、人気がすべてではないことを忘れないでください。

プログラミング言語を選択してください 自分で始める-そして、 Cはかなり良いです
プログラミングを上手に続けてください 何年にもわたって 。追跡 チュートリアル そして練習。

アルゴリズムに焦点を当て、 効率的プログラミング 使用する言語に関係なく。

1
nik

言語(どの言語でもかまいません)の背後にある概念を理解していれば、必要に応じて他の言語を比較的簡単に選択できます。ここでは、ループや配列などの基本的なものだけでなく、オブジェクト指向、アスペクト指向、手続き型プログラミングについても話します。

深い知識を持っている人だけが知っている言語の特定の側面がありますが、これらは比較的まれで発見可能です。

0
ChrisF

解決する必要のある特定の問題に使用するのに最も適切な言語を知識に基づいて推測できるように、十分な言語を知っている必要があります。

0
Christoffer

あなたの質問に対する具体的な答えはありません。一部の人々は少数でうまくいくことができますが、一部の人々はほとんどすべてを知っている「頼りになる」人になることを好みます。

私の意見では、あなたのような学生にとって、できるだけ多くの言語を知ることは生産的ではなく、卒業するまでに、あなたが学んだことはもはや最先端ではないかもしれません。あなたが実用的な人である場合にできることの1つは、仕事のリストとその説明を見て、その仕事でうまくやるのに必要なスキルを確認することです。

まったく関係ありませんが、優れたプログラマーは、使用するプログラミング言語や環境に関係なくうまくいくと誰かが言ったことがあります。そうは言っても、環境によっては他の環境よりもうまくやるほうが簡単です。

卒業する前に、少なくともスクリプト言語(PHPなど)と別の管理言語(JavaまたはC#)を知っておくことをお勧めします。

スキルに関しては、経験を積むためにもっとプログラムする必要があります。私の意見では、練習すればするほど、上手くなります。少なくとも、いくつかのOOPプログラミングとデータ構造を知っている必要があります。一般的には、(世界または雇用者にとって)自分自身を役立つものを学ぶようにしてください。

これがお役に立てば幸いです。 =)

0
wai

ソフトウェアエンジニアプログラミング言語をまったく知る必要はありません。 開発者プログラミング言語が必要です。ソフトウェアの目的engineerは、一般的なソフトウェアシステムをモデル化することです(たとえば、層の数、SOAなど)。そのため、プログラミングは必要ありません。

ソフトウェアを実行する必要がある場合開発基本的な概念(オブジェクト指向と手続き型、命令型と関数型、コンパイル型言語とスクリプト言語など)を理解することが最も重要です。

また、アルゴリズムとその複雑さを理解する必要があります(ただし、これも言語に依存しません)。

0