コンピュータエンジニアリングの大学に通う前にプログラミング言語を学ぶ必要がありますか?[閉まっている]


14

つま先をC ++プログラミングに浸しましたが、実際には掘り下げていません。コンピューター工学のために大学に行く前に、実際にそれまたは他の言語を学ぶ必要があるかどうかを知りたいのですが、とにかく学校でそれを学ぶつもりですか?


私はあなたが絶対にそれをする必要はないと言うだろうが、それはまったく痛くないだろう。CSクラスを始める前は、コーディングをしたことは一度もなく、C ++が何であり、クラスがC ++であるかさえ知りませんでした。
11

3
...とにかくそこで学んだとしても、それはただ簡単なクラスを意味します。だから今、それを学ぶしない理由は...ありません
Izkata

プログラミングに適しているか、興味があるかどうかを確認するのに役立ちます。
JeffO

この質問は、programmers.stackexchange.comで尋ねました。「はい、大学に行く前にC ++を学んでください」以外の答えを本当に期待していましたか?
マーティントーマ

@moose、その後複製として閉じます。

回答:


48

はい、いくつかの理由があります。

  1. この分野での経験が早くなるほど、この分野が専攻すべき分野であるかどうかをすぐに理解できるようになります。プログラミングが気に入らない場合は、おそらく、コンピュータエンジニアリングは専攻分野には適していません。 in。CPUの設計に主に興味がある場合でも、プログラミングを大量に行うことになります。
  2. ほとんどの人は、大学で彼らに期待される仕事のレベルと量が、中等学校で慣れているものを大きく上回っていることを発見します。あなたが非常に才能がない限り、あなたは自分が仕事でhammerられていることに気付くでしょう。自分自身に感謝します。1年目のコースを教えるためにどの言語が使用されているかを見つけ、今すぐ学習を始めます。最悪の場合、あなたはクラスに少し退屈しますが、より速く仕事を終わらせ、他のクラスのために節約された時間を使用することができます。
  3. 多くのクラスは曲線で評価されます。これの欠点は、あなたが同級生と成績を競うことです。仲間のコンピューターエンジニアリングの学生の多くは、すでに多くのプログラミングを行っているので、すでに遅れを取っているかもしれません。これは追いつくのに良い時期です。
  4. プログラミングが得意な唯一の方法は、多くのことをすることです。今後数年間でプログラミングに費やす時間が長くなればなるほど、上手くいくことができます。経験が多ければ多いほど、インターンシップや仕事に上陸できる可能性が高くなります。

7
将来的にはそれを容易にするために今すぐ起動するための1
アンディ・ハント

また、HSで取得された場合、大学在学中に2つのクラス(通常、プログラミングの紹介とデータ構造の紹介)をスキップできます。受講するクラスが少ないということは、おそらくお金が少なくなるか、少なくともバッファ時間が長くなるということです。CSEプログラムは非常に厳格である場合があります。たとえば、1つのクラスをスキップすると、1年滞在することになります。バッファがあると役立ちます。いつでも追加の卒業生クラスを受講するか、未成年者を選ぶことができます。
仕事

プログラミングの入門クラスを受講するまでに、プログラミング言語が非常に流upになってしまう場合は、教育機関に「Credit By Exam」ポリシーがあるかどうかを検討してください。かなりの時間を節約できます(ただし、言語に非常に堪能な場合のみ)。
インシリコ

7

CSを自分で卒業(BS、MS、PhD)しているので、できるだけ早く足を濡らすことをお勧めします。あなたは大学の最初の年に十分な他のことをしているでしょう。特にプログラミングの場合:

  • 対象となる大学のウェブサイトを確認し、入門プログラミングクラスについては下位クラスのカタログまたはインストラクターのシラバスのウェブページをご覧ください。教えられているプログラミング言語を探し、最初のクラスでどのようなことを扱っているかを見てください。始める前に、その資料を読んでみてください。

  • 再び、クラスのシラバスのページを見て、以前のプログラミングの割り当てを見て、どのような種類のソフトウェアプログラミングツールと環境が使用されているかを確認します。それはviとgccですか?Microsoft Visual Studio?日食?開始する前にこれらのツールを使用してみてください。

  • ソフトウェアプログラミングは、CSカリキュラムで教えられることの1つにすぎません。その他は、アルゴリズム(QuickSortなど)、データ構造(ツリー、リンクリスト、ハッシュテーブル)、および純粋な理論(NP完全性とセットロジック)です。これらは少なくともあなたが学ぶプログラミング言語と同じくらい重要だと思います。


プログラミング言語で読むだけでなく+1
Andy Hunt

4

大学によって異なります。カリフォルニア州立大学で「コンピューターサイエンス」と呼ばれるものを研究したとき、彼らは(当然、私の意見では)科学の側面に集中し、誰でも(新入生でも)オペレーティングシステムの使用方法と一般的な言語でコードを記述します。彼らは、オハイオ州立大学で語学コースに参加して得た単位の一部を譲渡することを受け入れませんでした。(それは私にとって残念なことでしたが、繰り返しますが、私はそれを理解しています。)これには長所もありました。教授はCを読むことができなかったので、Pascalで書き直すように頼まれました。私はこの要求の正当性について部門の長に尋ねました、そして、彼は彼らが言語を教えないので、また、特定の言語で課題を完了することを期待することもできません。ですから、私の教授はCで書かれた私の課題に沿って生活しなければなりませんでした。しかし、私のアドバイスが必要な場合は、事前にできるだけ多くのことを学んでも痛いことはありません。


2
C ++を使用すると、機械の近くでプログラミングを習得でき、同時にOOPの学習を開始できるため、エンジニアリング分野のいずれかを使用する場合は、C ++を開始する言語として適しています。
マイクNakis

学校(イリノイ大学)に電話していただきありがとうございます。彼らは通常、学生は言語を少し理解しているだけで、学校に行く前にできる限り学ぶべきだと教えてくれました。ご助言ありがとうございます。
マット

すごい。可能な場合は、Linuxコマンドラインにも精通してください。そのような知識は通常、大学の環境で役立ちます。常に他の人に尋ねる男よりも、コンピューターラボで他の人に物事がどのように行われるかを示す方が良いです。
マイクナキス

4

そもそもプログラミング言語を学ぶべきかどうか疑問視する必要がある場合は、本当に何をしたいかを考えてみてください。コンピュータサイエンスの最初の数年のほとんどは、プログラミングを始める前からすでにかなり上手です。そのため、自然にオタクになりがちなタイプと競争することになります。まず頭に飛び込むか、好きなことをしてください。フェンスの上にいないでください。あなたは何をすべきかを愛する。私はこれに投票する必要はありませんし、望んでいません。ただあなたに直接話したいだけです。


1
「最初の1年で最も成功したコンピューターサイエンスの学生」と言って修正します。私が大学にいたとき(そしてその後、大学院にいたとき)、コンピューターの使用に関する最初のことを知らなかった驚くべき数のCS学生がいましたが、彼らはCSがすべてのお金があるところだと聞いたばかりです。インストラクターが何をタイプするのか教えてくれないことに非常に悩まされた後、それらのほとんどはメジャーを変更しました。
ふわふわ

私はそれらの初心者の一人であり、非常に成功しました。しかし、私は何もないところから始めたオタクのジョックでそれを成し遂げるために本当に一生懸命努力しなければなりませんでした。私が子供のためにお金を稼がなければならない状況になければ、私はそんなに一生懸命にならなかっただろう。私はそれをより理解したので、私はそれを愛してしまいました。
ジェイソンセブリング

3

大学に行く前に学ぶ必要はないと思います。しかし、私は人生のほとんどの事柄が好きだと思います。イベントなどに参加する前に事前に準備しておけば、どの情報を吸収し、どの情報を破棄するかについて十分な情報に基づいた決定を下すことができるでしょう。

より具体的には、少なくともつま先を浸すことによって、講師が言っていることをそのままコピーするのではなく、実際に彼らが伝えようとしている概念を吸収するのではなく、講師が言っていることを聞くことができるかもしれません大学の一部(実際に言語などの構文部分を学習するのではない)。

どのプログラミング言語を学ぶべきかについて。おそらく重要ではありませんが、最初の1年でカバーする可能性のあるものを読み始めるのに役立つかもしれません。

しかし、事前学習の裏側は、最初の数か月に到達すると、退屈で初歩的な講義を見つけるかもしれないということです。これにより、授業に出席しなかったり、講師が伝えようとしているものを破棄したりする可能性があります。したがって、実際に何かを学んだ方法が正しい方法ではないこと、つまり大学に通う前に悪い習慣を学んだことなど、重要な情報が欠落しています。

すでにこれらのタイプのサイトを詳しく調べることで、あなたはおそらく一歩先に進む方法の一部になっているので、大学での学習を助けてください。いずれにせよ、あなたが事前に学んだことはおそらく氷山の一角にすぎないでしょう。あなたがそれが提供するかもしれない利点を続けたいならば、あなたは大学教材の内外でこの学習曲線を続ける必要があります。


2

はい。ただし、最も複雑な言語から始めないでください。後で十分な時間があります。

足を濡らす簡単なものから始めてください。言語自体に負担をかけられていない場合、プログラミングの概念に頭を包む方がはるかに簡単です。同様に、一部の言語は他の言語よりもうまく機能します。

動的プログラミング、単純なオブジェクト指向プログラミング手法、適切なインデントのためのPythonを学びます。Javascript + JQueryまたはLuaを学び、クロージャーについて学びます。JavaまたはC#を学び、静的型付けについて学びます。文字列解析の正規表現を学びます。また、すべてのプログラマーはある時点でデータベースに触れる必要があるため、少しのSQLを学びます。次に、PHPを学習して、スパゲッティコードを識別できるようにします。

このリストは異なる場合がありますが、基本的にいくつかの楽しい言語を選択し、それらを使用して概念を学習します。その後、あなたはあなたの人生の残りのために1つの言語に停滞し、常にインターネット上で怒ってそれを防御しようとするのではなく、適応することを学びます。


1

開始時にどの言語を知っているかはあまり重要ではないと思いますが、最初のプログラミングの割り当てを取得したときに、あなたが持っていないという意味でおそらく利点がありますコードの観点から考える問題と格闘するために-あなたはすでにそこにいくらかの経験があるでしょう。克服すべき学習曲線が1つ少ないことは良いことです。初年度に彼らが教える言語を学べばボーナスですが、必須ではありません。


1

プログラミングがどれだけ難しいか簡単であるか、そしてあなたがどれだけ上手であるかを少なくとも知るまで、コンピューター工学が本当にあなたにとって適切な学位プログラムであるかどうかはわかりません。本当に知る唯一の方法は、少なくとも1つのプログラミング言語を試して学び、できるだけ多くのコーディングを行うことです。


1

大学に行く前に学習することに興味があるかもしれないいくつかの事柄(それらの中から選択してください):

  1. もう少し数学(私はフランス人で、あなたが持っていると思われる数学のスキルがわからないので、私はこれ以上具体的にすることはできません)。
  2. Ocaml、Scheme、Haskell、Luaなど、他のプログラミング言語は、新しい考え方に心を開きます。
  3. アルゴリズムの本
  4. よりよい英語と作文スキル(そして外国語は決して悪くない)
  5. GNU / Linuxおよびフリーソフトウェア全般での使用とコーディング。フリーソフトウェアを研究する(そしてそれに貢献する)能力は、あなたに多くを学びます。
  6. 自分で作業計画を定義し、それにこだわることができる、仕事の自律性
  7. SICP

C ++に狭義に焦点を当てることはお勧めしません。他の言語、本、スキルはあなたにもっと多くをもたらします。すべての努力をC ++に費やさないでください。

あなたの学習をお楽しみください。


1

正直なところ、時間があれば。教師が教えている間、ITはより理にかなっています。プログラミングをしたことがない学生よりも、それを最大限に活用できます。


1

間違いなく!以前にプログラミングしたことがない場合は、C ++またはCまたはJavaまたはC#を学習すれば、すぐに使い始めることができます。これらの言語はすべて(大体)Algolベースです-それらのいずれかを学習したら、LispまたはHaskellを学習してください。2つのファミリ間の素晴らしいパラダイムシフトは、コースの内容に関係なく役立ちます。


0

個人的にはお勧めします。これはすべての学校に当てはまるわけではありませんが、私は非常に優れた工学学校と考えられている学校に行き、プログラミングの入門クラスはひどかったです。基本を知ることは、あなたに教えられるかもしれない悪い習慣や間違った知識の多くを避けるのに役立ちます。また、別の回答で述べたように、他の人が苦労している間、あなたはそれらの簡単なプログラミング入門クラスをcoast行します。そして、もしあなたが私のようなら、それはあなた自身で苦労しているあなたの友人を助けるより多くの機会を与えてくれます。


0

すべきだと思う。ここで他の人から与えられた理由に加えて、私は多くの大学教授が教えるのがあまり得意ではないので、あなたは彼らに頼ってあなたが非常によく学んでいることを教えることができないと付け加えます。すでに基本を理解していれば、彼らが何を言っているかをよりよく理解できます。

さらに、大学では授業時間と授業時間の比率が高いことが多いため、教授がまともな教師であっても、授業時間内に効果的に教えることはできません。したがって、事前に得た知識は、教室の速いペースに追いつくのに役立ちます。

IMO C ++は初心者にとって最悪の言語の1つです。難しすぎない場合は、C ++を学習してください。ただし、C#、VB、Ruby、Pythonなどの他の言語はかなり簡単です。


0

大学に入る前にいくつかの言語を知ることは非常に賢明な動きでしょう。コンピュータサイエンスの大学での教育は、訓練を受けていない、または英語を話さないTAによって与えられる陰鬱な品質であることがよくあります。入門コースは優先事項ではなく、不十分な指導がルールです。大学は助成金のオーバーヘッドでお金を稼ぎます。助成金を取得することは、大学生を教えることではなく、ほとんどの大学の教員の優先事項です。これは、いくつかの例外を除いて悲しいルールです。

ただし、高校のプログラムの質も劣悪です。多くの学校管理者は、Micosoft Wordの使用に関するトレーニングはコンピューターサイエンスだと考えています。ああ、教育機関から派生したナンセンス!

もっと楽観的になりたいと思います。高校で優れたcompsciプログラムを使用している場合は、それを把握してください。限界を超えて、学習に積極的です。あなたがかなり進取的であれば、Pythonを自分で習得し、それをある程度習得することは難しくありません。一度学習すれば、他の言語を学ぶのは難しくありません。Pythonの単純な文法により、学習が比較的簡単になります。


0

はい。

どちらを学ぶべきかは、「コンピューターエンジニアリング」の意味によって異なります。これはかなり非標準的な用語です。私が勉強した場所は、電子工学とコンピューター科学の組み合わせでした。

主にコンピューターハードウェアを使用する予定がある場合は、CとForthを学ぶことをお勧めします。私が「コンピューターサイエンス」と考えるものを主にやっているのなら、PythonやSmalltalkのようなものを学んで「実際の仕事」とあなたが選んだ関数型プログラミング言語を試すことをお勧めしますLispまたはスキームの、しかし最も簡単でクールなものを選択してください)。


0

私自身の経験を共有します。

私は約10〜11か月前にプログラミングを開始しました。PHPを初めて使ったのは初めてでしたが、その後、地元のコミュニティカレッジの入門コース(CS 140)でC#を学習しました。基本を学んだ後、私はそれでほとんど飛んだので、それ以来止まりませんでした。C#の後、私はコンピューターがどのように機能するかの低レベルのメカニズムを学び始めることにしました。私はマルチプラットフォームであることが想定されているアプリケーションに取り組んでおり、ビデオゲームエンジンが相互作用するのを支援することになっています(SDLに似ていますが、GUI、数学に厳密に焦点を当てて、おそらくそれよりも低いレベルです) 、およびその他のヘルパー関数)。

基本的に、もしそれがそのクラスのためでなければ、ずっと後になってまで、私が愛したものを見つけられなかっただろう。その背後にある概念を本当に理解するまで、プログラミングを楽しんでいることを本当に知りません。あなたが知りたい場合は、JavaやC#のような手を握る言語を使用するのではなく、あなたが何をしているのかを理解する必要があるため、プログラミング本の紹介を選んでC / C ++から始めることをお勧めしますただいくつかのスクリプト言語-気を付けてください、これらは場所があり、使用するのに良いツールですが、最初に低レベルの概念を理解することも非常に重要です。これは私が最初に犯した間違いでした。

その後、楽しんでプログラミングを続けてください。そうでない場合は、他のことを学びます。あなたが何をするにしても、それを学ぶために2-4年の大学に参加する前に、できる限り多くの時間を費やすべきです。また、潜在的にあなたを雇うことができる雇用者に意欲を示します。

コンピューターサイエンス/電気工学の分野は、進化率の点で群を抜いて最速であり(年々増加し続けています)、最新のテクノロジーに遅れずについていくために、常に新しいテクノロジーを習得する必要があります。最新かつ最高の(少なくともややおもしろいと思うはずですが、それはあなたが専門としている専門分野に依存します。例えば、私はWebプログラミングが嫌いで、存在するテクノロジーにはまったく興味がありません。そのためですが、一部の人々は本当にそれを楽しみ、それに興味を持っています)。それにもかかわらず、C / C ++は学ぶのに最適な言語であり、他の多くの言語(C#、Javaなど)には「生活を楽にする」ための独自のAPIがありますが、実際に何が起こっているのか気に入らないでしょうあなたがボンネットの下に

基本的に、私は10〜11か月間プログラミングを行ってきましたが、大学には少しも参加していません。コミュニティカレッジでC#クラス(基礎を教えた最初のプログラミングクラス)を受講し、残りの少なくとも95%は自分で学びました。これは、そのクラスを受講した後、私はプログラマになりたいと思っていたからです。それを理解するようになると、あなたはそれを知るでしょう。どちらの道を選んでも、あなたが本当に成功したいのなら、それを独学で勉強するべきです。なぜなら、それは動機とコミットメントに対するあなたの適性を高めるからです。プログラマー成功する意欲がある 彼らは、単に「コードを書く」だけでなく、多くのことを処理します。アプリケーションは常にゼロからテスト、デバッグ、および理解する必要があります。通常、小規模であろうと大規模であろうと、着手するプロジェクトごとに何か新しいことを学ぶことになるでしょう。脳をアクティブに保つ必要があるため、これは良いことです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.