\r\n\r\n
コンピュータサイエンスは、情報(「データ」)とそれを操作して問題を解決する方法(「アルゴリズム」)について、主に理論的に、また実践的に研究する学問である。
コンピュータサイエンスは、コンピュータを研究する学問でもなければ、コンピュータを使うことを厳密に要求する学問でもありません。データやアルゴリズムは紙とペンで計算できるため、「コンピュータ・サイエンス」という言葉は不適切なのです。コンピュータサイエンスはより数学に近いので、現在では代わりに「情報学」という言葉を使うことを好む人もいます。
コンピュータ・サイエンスは、しばしば他の3つの関連する、しかし同一ではない分野と混同されることがあります。
しかし、現在では、プログラミング、データ解析・操作、ハードウェアとソフトウェアの相互作用を含むあらゆる分野を総称して「コンピュータサイエンス」と呼んでいる人がほとんどである。つまり、コンピュータサイエンスには多くの「集中」または「分野」があります
コンピュータサイエンスを勉強しようと思っている人は、2つの学校で同じ範囲やカリキュラムがないことを知っておく必要があります。どの科目がコンピュータサイエンスに該当するかはおろか、「コンピュータサイエンス」の意味についてさえ、学校は合意することができないのです。
ここでは、皆さんが遭遇する可能性の高いコンピュータサイエンスの「タイプ」と、各タイプの「専門分野」を非網羅的にリストアップしています。このように、コンピュータサイエンスは現在最も普及している分野の一つです。
コンピュータサイエンスの学位を取得して大学を卒業するためには、少なくとも次のような学習が必要です。
私は、「正しい」特性や特徴がないからといって、誰かにコンピュータサイエンスをあきらめるように言うことはありません。追求したいのであれば、ぜひそうしてください。努力と根性があれば、現場の欠点はすべて克服できる。
しかし、ある種の特徴や特性によって、コンピュータサイエンスのキャリアを楽しみ、成功する可能性が高くなることは事実です。学位取得には最低でも4年かかる。自分の行動を把握し、貴重な時間を無駄にする可能性を最小限に抑えましょう。
コンピュータサイエンスに「向いている人」は、次のような人です。
問題解決は、コンピュータサイエンティスト、ソフトウェアエンジニア、情報技術の専門家にとって核となるスキルである。好奇心が旺盛で、物事を深く理解したいという気持ちがなければ、コンピュータサイエンスを仕事として楽しいと思えないのは間違いないでしょう。
また、コンピュータ・サイエンスは、現在、世界で最も急速に発展している分野の一つです。新しい言語、新しいライブラリ、新しいアプリケーション、新しいイデア、ソフトウェアなどに追いつこうとしないなら、すぐに圧倒されてしまうかもしれません(レガシーな分野を使うことにこだわらない限り)。
コンピュータサイエンスは、とてもクリエイティブなものでもあります。作家や画家、音楽家と同じように、ゼロからコードを作ることになるのです。枠にとらわれない発想と練習が必要です。プログラマーズ・ブロックはよくある障害で、何度も克服するために決心する必要があるのです。
上記のいずれにも当てはまらない場合は、適さない可能性があります。
もしあなたがコンピューターサイエンスに興味を持ち、自分に必要なものがあると思うのなら、おめでとうございます。厳しいけれど、やりがいのある仕事があなたを待っています。成功したいのなら、たったひとつのことを知っていればいい...。
最初のうちは、コンピュータサイエンスのさまざまな分野をできるだけ多く探求してみてください。どれが自分のお気に入りなのか、驚くかもしれません(面白そうなものもありますが、そうでもないです)。しかし、それがどれかわかったら、それに集中し、その道の達人になりましょう。
いろいろな分野に手を出すことは、趣味の一つでもありますが、あらゆる分野の人がキャリアを積んで成功することは稀です。一方、プロのスペシャリストになると、遠回りをすることになります。
コンピュータサイエンスが何であるかはお分かりいただけたと思いますが、他にご質問、ご懸念、ご提案などはございませんか? 下のコメント欄でお知らせください。
写真提供: Matej Kastelic via Shutterstock.com