授業時間では限られた話題にしか触れることができません。 授業で話すことは、あくまでも自分で勉強するためのキッカケだと考えて下さい。 必ず予習・復習をしてきて下さい。
1週間に3時間、合計45時間だけの学習でプログラミング言語がひとつマスターできる、 などということはあり得ません。ある程度の時間が必要です。 奇妙に聞こえるかもしれませんが、 プログラミングの学習は自転車に乗ること・泳ぐことのそれに似ています。 短時間の学習を週に一回程度しても上達しません。どこかで集中して学習する必要があります。 また、一つ一つは短くてもよいので、 できるだけたくさんのプログラムを作成することが、マスターへの道です。
授業時間は限られているので、すべての話題に触れることができません。 結局、プログラミングは自分で勉強しないと身につきません。
情報系の分野は次から次へと新しい技術が出てくるので、社会人になっても、 勉強の連続です。一から十まで、手取り足取りすべてを教わらないと、 勉強できないようでは、社会に出て役に立つ人材になれません。
電子・情報工学科は情報工学系の学科です。 情報工学系の学科の卒業生ならプログラミングはできて当然、 と世間では思われていると覚悟して下さい。 ワードやエクセルなどを使いこなすことは、 どのような学部・学科であっても今日では当然のことです。 自分でプログラムを作成できてこそ、情報系の学科の学生です。
もちろん、プログラミングが苦手な人がいることは仕方がないことで、 そのような人にも電子・情報工学科内に進路はありますが、 それでもプログラミングに関する常識的な知識は持っておく必要があるでしょう。
重要: 情報環境コースの希望者が定員を超過した場合、選抜には「電子・情報プログラミング」と 「情報数学」の成績が重視されます。
なお、電子情報通信コースに進む場合でも、 プログラミングの力が大きな武器になることは間違いありません。
情報工学系学科の卒業生ならC言語は使いこなせて当然、 と世間では思われていると覚悟して下さい。 他の言語を勉強するときも、C言語の知識が役に立つことはひじょうに多いです。
なお、言わずもがなですが、電子・情報工学科の2年次以降の計算機関係の授業のほとんどは、 C言語の技能を前提としています。
これは、「プログラミング」「電子・情報プログラミング」履修後の話になりますが、 情報工学系学科の卒業生なら複数のプログラミング言語は使いこなせて当然、 と世間では思われていると覚悟して下さい。 一つの言語を覚えるだけですべての用途でOK、というほど世の中は進んでいません。
自分なりに、「こういうプログラムを作ってみたい」という目標を持つと、 やる気がでて、学習効果が高くなります。
当然のことですし、絶対ばれます。 友人やTAにわからないところを聞くのはもちろん構わないのですが、 解答そのものではなく、考え方を聞くようにして下さい。
逆に教える立場になった場合も、解答そのものではなく、 考え方を伝えるようにして下さい。 (それが自分の理解度を深めることにもなります。) 解答のコピペは教えた側も同罪です。
文法をちゃんと覚えずに、コンマやカッコをつけたり、はずしたり、 もっともらしく思える組み合わせをすべて試してみようとする人がいます。 そのような組み合わせはあっという間に1,000通りを超えて、 人間の能力の限界を超えます。ちゃんと文法を覚えて下さい。 プログラミング言語の文法は、英語や日本語などの自然言語と比べると、 はるかに単純です。
キーワードがはっきり決まっているようなこと、例えば、
それに、実社会に出て演習問題でないプログラムをつくるとき、 このようなやり方が全く役に立たないのは言うまでもありません。
コンパイラを通れば、よく動作の確認をせずに、 課題を提出する人がたまにいますが、 コンパイルができるのはプログラムの作成のほんの最初の一歩にすぎません。
プログラム中のインデント(字下げ)は首尾一貫してつけて下さい。 採点の時は、 インデントができないのは、プログラムの構造を理解していないからだ、 と判断します。
例えば、関数や変数の名前を意味も考えずに例題のまま使っている人がいますが、 書き換えたプログラムでその名前ではヘンなことがよくあります。 プログラムもコンパイルできて実行できればOKではなく、 他人に見せる文章の一種だと認識して下さい。
プログラミングがある程度できるようになると、今度は逆に 「人間はいかに間違いを犯しやすいか」「人間はいかに間違いに気付かないか」 ということが身に染みてわかってきます。その間違いを見つけることも重要ですが、 間違いは犯しやすいものだ、ということを受け入れる必要があります。 プログラミングには、そもそも間違いをできるだけ起こさないための良いやり方がいくつもあり、。 上で挙げた「インデント」もその一例です。
単に文法を覚えるだけではなく、このような良いやり方も身に着けていく必要があります。
エラーメッセージの内容をよく理解せずに、 すぐに友人やTAに質問する人がいます。 エラーメッセージを良く読んで理解しようとして、 それでもわからない時に初めて質問して下さい。
可能性のあるエラーの種類は多すぎて、 授業でエラーの種類とその対処法を教えることは(ほとんど)できません。 その代わり、大抵はエラーメッセージに対処するための情報が書かれています。
なお、Visual Studio は日本語でエラーメッセージを出してくれますが、 2年生以上で使用するツールには、 英語でエラーメッセージを出すものも多くあります。 情報系で英語は避けて通れない、と覚悟して下さい。
プログラムが思った通り動作しないとき、「どこが間違っているか教えて下さい。 どこが間違っているかわかれば直せます。」 と言う人がいます。どこが間違っているかを見つけるのがもっとも肝心なことで、 それがわかれば誰でも直せます。
また、「これであっていますか」と教員やTAに聞く人がいます。 こういう質問に対しては、一目見て間違っていればそれを指摘できますが、 完全にあっているかどうかチェックすると時間がかかるので、 授業時間中に各個人に対してそこまではサービスできません。 チェックする責任はあくまでも学習者個人にあります。
上で述べたこととは逆に、30分も1時間も質問せずに自分で悪戦苦闘している人もいます。 プログラミングには、はじめのうちは気付きにくい罠もたくさんありますから、 自分でよく考えてもわからない時は、どんどん教員・TAに質問して下さい。
「プログラミング」、「電子・情報プログラミング」で学習することはC言語の初級編にしかすぎません。 C言語を一通り理解したと言えるのは、少なくとも、K&R という略称でお馴染の本:
プログラミング言語C 第2版 B.W.カーニハン & D.M.リッチー 著 石田 晴久 訳 共立出版(またはこれに相当する本)を読破してからです。