システムエンジニアリングの学位を取得するのに2か月かかります。つまり、マネージ言語を使用してコードを作成し、適切にコーディングする方法を学びました。
私がこのキャリアに入った唯一の理由は、ビデオゲームを作りたかったからです。現在のスキルセットでは、頭の中にあるもののいくつかを作成できないことを知っています。
純粋な数学の2度を取得することで、この目標を達成できますか?
システムエンジニアリングの学位を取得するのに2か月かかります。つまり、マネージ言語を使用してコードを作成し、適切にコーディングする方法を学びました。
私がこのキャリアに入った唯一の理由は、ビデオゲームを作りたかったからです。現在のスキルセットでは、頭の中にあるもののいくつかを作成できないことを知っています。
純粋な数学の2度を取得することで、この目標を達成できますか?
回答:
プログラミング以上にプログラマとして役立つ学位はありません。
勉強の切り札を体験してください。優れたプログラマーになりたい場合は、プログラミングを開始してください。私は学位を持っていませんが、15〜16歳の頃からさまざまなプロジェクトのプログラミングを楽しんでいます。言うまでもなく、大学でコンピューターサイエンスを勉強した友人よりも何年も先を行っており、「PHPまたはSQL GRANTオプションを使用してWebサイトの管理者権限を確認する方が良いですか?」
私には数学の背景があります(純粋数学と応用数学でダブルメジャーを専攻し、その後に応用数学で博士号を取得)。しかし、私はこの6年ほど開発者として働いてきました。数学の学位を取得してから、私の最初の開発職に就きました(映画のvfx業界で-グラフィックが重い)。しかし、私の仕事で学位から使用した実際の数学は最小限でした。
数学の学位について考えるには、2つの方法があります。1つは、難解な科目の複雑な数学について学習していることです。それは(ほとんど)役に立たない。2つ目は、複雑なシステムを理解し、複雑なパターンを見つけ、複雑な問題の解決策を見つけるために脳を訓練していることです。これは、深刻なソフトウェア開発の中核です。
私見の中には、この種の問題解決のコツを持っている人もいます(私は確かにやりました)が、正式な学習で改善します(確かにやり直しました)。そのようなトレーニングは、CSエンジニアリングの学位によっては非常に不足している場合があります。
できるだけ多くの数学を取り上げて、後悔することはないと思います。プログラミング言語のように古くなることはありません。(FORTRANはわずか30年で古くなっています。C#はおそらく同じように動作します。しかし、微積分、幾何学、群論はすべて数百年後にここにあります)。
一般的に、数学とコンピューターサイエンスの二重専攻は成果を上げることができます。経験から言えば、それは私を非常に助けてくれました。私は航空宇宙/防衛および金融で働いていました。数学では両方ともかなり重いことがあります。私は毎日数学をしません。ただし、数学の学位は、他の同級生よりもドメインの知識をはるかによく理解するスキルを与えてくれました。Googleは数式を提供できますが、数式を理解するのに役立ちません。
あなたの場合、私は1つまたは2つ以上の数学のクラスを取ります。いくつかの提案は、線形代数、差分方程式、モデリング、またはジオメトリです。数学の学位はさらに1〜2年かかります。コンピューターサイエンスの学位よりも簡単ではありません。途中で別の子供がいると、仕事からのお金が役に立つでしょう。
数学は形式的なシステムについて考えることを学ぶ方法として素晴らしいものであり、そこから学ぶべき多くの有用なことがあります。
いつか大学院に進学することを考えているなら、数学を多用することをお勧めします。数学の専攻よりもコンピュータサイエンスの専攻になる方が一般的に簡単であるため、そしてより理論的なことを学ぶための良い基盤だからです。
絶対に知りたい数学の部分はありますが、その多くはコンピューターサイエンスのカリキュラムで教えられるでしょう。複雑な理論やグラフ理論のようなことを教えて、多かれ少なかれ変装した数学のクラスがあなたにあったことを願っています。
ビデオゲームの場合は、間違いなくより多くの数学が必要です。線形代数が非常に得意であり、微積分を知る必要があります。ジオメトリ、三角法、代数を知る必要がありますが、これらは(少なくともこれらの形式では)通常、大学のクラスではありません。微分方程式は有用な場合とそうでない場合があります。あなたはそれを示すために学位を必要としません(他の誰かと一緒に仕事をしたい場合は数学のマイナーが役立ちますが)、あなたはそれを知る必要があり、私はそれを学ぶより良い方法を知りません大学のコースより。
全体の学位の価値は、おそらくやり過ぎでしょう。いくつかの数学を知っていると大いに役立ちますが(特に3Dプログラミングに真剣に取り組む場合)、純粋な数学の学位で学んだことの多くを適用できないと感じています。ただし、少なくともいくつかのクラスを受講することをお勧めします。
「経験が勉強に勝る」という議論については、ある程度の勉強をすることで、試行錯誤を繰り返して学習する必要がなくなります。私がやろうとしていることはそれを行うための最良の方法であるかどうか(または動作します)かどうかを事前に言うことができることを知っています。試行錯誤の群衆は通常、かなりの時間を浪費するまでその答えを知りません。
グラフィックプログラミングに役立ちます。しかし、それはゲームプログラミングよりもゲームエンジンプログラミングに関係しています(ゲームプログラミングの家をもっと考えてください)。エンジンプログラミングは、ゲームプログラミングと同じくらい興味深いものです。しかし、それは個人次第です。
ただし、ゲームプログラミング/開発が目標の場合は、代わりにゲームデザインの学位を取得してください。数学の学位を取得すると、ゲームデザインに役立たない可能性のあることを学習することになります(数学は非常に大きなテーマです)。ただし、一部の数学はボードゲームの設計に役立ちます(離散数学や組み合わせ数学など)。
ただし、計算には代数と三角法を知っておく必要があります。しかし、現在のインターネットでは、ゲームのプログラミングに本当に必要な場合、オンラインで基本的な数学を学ぶのは難しくありません。