プログラミングについてです。
大学の情報系に進学しており、当然プログラミングの授業があります。去年の後期と今年の前期でC言語を学びました。正直プログラムを作ることは全然できません。しかし、テストは過去問に目を通して覚えることなどでその場しのぎですが合格をして単位は取得できました。
今学期からJavaが始まりましたが、三回目の授業でもう詰んでしまいました。クラスとメソッドがどうこうとか理論みたいなのはある程度分かっているつもりですが、これはこういうの、これはこういうの、という説明のみで、じゃあ課題のプログラム作って~って感じで、全然プログラムを作ることができません。独学で勉強すればいいのかもしれないけど、一週間という課題の期限を与えられている中、自分で勉強をしても絶対にその期間内にプログラムを作れる気がしません。もうすでにプログラミングに対して憂鬱というか、授業があると思うと一気に気分が沈んでしまいます。
同じような体験をされた方などいましたら、どのようにこういう気持ちを乗り切りました?どのような学習方法等でプログラムを作れるようになりましたか?
A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
う~ん、Javaの道具立ては、多人数で大きなプログラムを作る為の工夫に溢れてて
初心者には複雑なだけでしょうね。経験積まないと訳わからんでしょう。
最初はクラスー個にメソッド数個くらいの規模で、Cと似たような
かんじで簡単にわかる範囲から
初心者本を見つつ始めることをお勧めします。
課題ですが、内容にもよりますね。自力で出来ないなら人にレクチャを頼む
しかないでしょう。
情報学科なら、入学前からのJava使いなど、腐るほどいると思いますよ。
No.5
- 回答日時:
>どのような学習方法等でプログラムを作れるようになりましたか?
その場しのぎで先人の作品を利用するのではなく、先人の作品を
鑑賞(なるほど!、賢い!など感動しながら)して、
妄想(このテクニックはどこで使えるか想像をめぐらして)して夢を広げ、
技(わざ)を盗む(実際に使って自分のものにする)
かしら
回答していて気が付きました。
これって、プログラミング以外の他の科目でもいえる学習方法ですね。
>授業があると思うと一気に気分が沈んでしまいます。
それならいっそう、転科、進路変更を検討されたらいかがです?
No.4
- 回答日時:
>どのような学習方法等でプログラムを作れるようになりましたか?
せっかく1年かけてC言語でプログラムを作る勉強をしたのに、その場しのぎ
だけで済ませてしまったのが最大の失敗。
この段階で、自分の頭で考え・試行錯誤する事が、一番の勉強になったはず
なのに...
何事も、しっかりした基礎なしで、その上に物を作り上げる事はできません。
手間がかかっても、一歩一歩地道に進んでいくのが、一番の学習方法です。
No.3
- 回答日時:
題意から逸れるかも知れませんが、無理に勉強しようとしない方が良い気がします。
私の勝手な想像ですが、主氏自身の進路とプログラミングの関連性が
不明な為、身が入らないのでは無いかと・・・
先ずは進路先の現地見学等して必要性を感じる、とか
数千件のアンケート集計をプログラム集計してみて利便性を感じる等の
体験をされてみたら如何でしょうか?
No.2
- 回答日時:
数年前までシステム開発の仕事を30年ほどしていました。
その経験から。。。
プログラム作成の課題に対し答えであるプログラムの処理内容を課題となっているプログラミング言語で考えていませんか?
それだと学ぶ言語が変わるたびに一からの出直しです。
プログラムでやりたいことは必ず人が日常使っている言葉で説明できます。そうでないと実現不可能です。
ですからいきなりC言語だとかJavaで考えるのではなく、日常使っている言葉で処理手順を箇条書きにしてみましょう。
何らかのチャート図を眞井出場合はそれを使用すると効率的ですし、ビジュアル的に繰り返しや条件判断などを理解できてよいですが、知らなければ箇条書きでかまいません。
その際、繰り返し処置や条件判断のようなところは以下のように箇条書きをネストさせるとわかりやすいです。
1.××行う。
2.変数〇〇の数だけ以下の処理を繰り返す。
(1) △△を□□する。
(2) 変数◇◇の値に応じて以下の処理を行う。
(2-1) ◇◇が0以上なら※※する。
(2-2) ◇◇が0未満なら▲▲する。
(3) ・・・
3.・・・
こんな感じです。
で。
仕事としてのシステム開発は要求定義(人がしたい事を明確にする)からはじまり機械(主にコンピューター)に処理させる部分の設計、製造、試験と続きますが、先に記しました「日常使っている言葉で処理手順を箇条書きにする」ことは設計にあたります。
ちなみに出された課題には「こういう入力をするとこういう結果が出る」という意味合いの記述があると思いますがこれも設計です。これはやりたいことの機能を具体的に示したものでソフトウェアの見た目の動きを定義しています。機能設計とか外部設計とかいった呼ばれ方をする部分で、画面デザインや印刷様式、入出力ファイル(データベースのテーブル等も)がある場合はその具体的な構造を決める事もこの設計の重要な部分です。
そして、ソフトウェア内部での処理手順を記述するのは詳細設計とか内部設計とかいった呼ばれ方をする部分で、プログラム内部のデータ構造や処理中に中間的に出力するファイルなどがある場合はその構造も具体的に決めます。処理方法の設計では使用するプログラミング言語の機能に引きずられる部分もあります。特にJavaなどの記述レベルが高い高機能な言語(より自然言語に近く、言語側で様々なツール機能を提供するプログラミング言語)では。
あと、Javaなどのオブジェクト指向言語ですが、何をクラスとするかはC言語などの手続き型言語での「モジュール分け」とは考え方が異なるのですが、オブジェクト指向をしっかり学ばずにいきなりJavaの文法だけ習って、、、ということでしたら、あまり難しく考えず自分なりの考え方で分けてよいと思います。
理屈としては例えば。。。
「“人”というクラスがあるとAさんと言う人はそのインスタンス」とか、
「“人の腕”というクラスを考えた時、人のインスタンスは人の腕のインスタンスを2つまでしか持てない」とか、
いった面倒な理屈の部分はとりあえずオブジェクト指向の学習の方に追いやり、言語実習としては文法理解に集中するのがよいように思います。やっているうちに何となく「クラスってこういう感じなのかな?」という理解も出てくるように思いますし、もしその考え方が違っていたとしてもそれに気付く機会は後々いくらでもあるでしょうし。。。
ちなみにシステム開発やソフトウェア開発を仕事としている人でもオブジェクト指向の本質的なところをしっかり理解していない人は普通にいます。「自分はJava経験がたくさんあります」という人でも作ったプログラムのソースコードを見ると「あぁ、そうなんだぁ。。。」という人は多いです。(^^;
参考まで。
No.1
- 回答日時:
>同じような体験をされた方などいましたら
私はそういう体験してないですけど
友人にそういうのが何人かいたので
その人たちがどうしたのかを言います
その道をやめました
はっきり言って
プログラミングなどの技術系は
学ぶ意欲がないと今後絶対にやっていけません
大学で出される程度の課題を1週間でやることが出来ないのは
意欲が無いからです。
そりゃあ興味がないことを学ぼうとするなんて無理な話です
別にそのこと自体が悪いことではないですよ
当たり前のことなんですから
>どのような学習方法等でプログラムを作れるようになりましたか?
どんなことでも通じる学習方法なんですが
自分が作りたいものを作る
これが一番の学習方法です
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) VBA 1 2023/01/19 16:19
- その他(プログラミング・Web制作) 大学一年でVBAのプログラミングを勉強しているものです。来週の情報の授業で以下の問題のプログラムを勉 4 2023/01/19 16:15
- Ruby VBA 2 2023/01/14 14:14
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- IT・エンジニアリング IT業界に就職を考えているが適正がないかもしれない 5 2023/06/08 01:22
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- 物理学 【 理系科目の選択 】 現在、高一の者です。 文系に興味がなく理系に進もうと思うのですが、物理と生物 7 2022/10/06 22:53
- その他(教育・科学・学問) 大学期末試験における不合格処理はなるべく避けた方がいいですか。 3 2022/08/20 15:42
- 高校 高校に行く意味が分かりません 9 2022/11/15 18:03
- 書類選考・エントリーシート 僕はコンピューターの専門に行こうと思ってます。志望理由こんな感じでいいですかね? ①進学先に選んだ理 2 2022/09/11 17:41
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaScriptとC言語の違いについ...
-
JavaとAndroidアプリ(Java)違...
-
授業でプログラミングのJavaの...
-
エクリプスのプログラミングに...
-
【マジックナンバーの由来】
-
Javaに向いてない人はどんな人...
-
大学の授業のプログラミング、...
-
内部仕様、外部仕様
-
フレームのデザインを変えたい...
-
vba クリップボードクリアにつ...
-
使用しているJUnitのバージョン...
-
JSPファイルで生じるエラーをど...
-
IISワーカープロセスが原因でCP...
-
【javaコンパイル時のエラーに...
-
Eclipseソース開発画面の行番号...
-
MSFormsとは何ですか?
-
unzip32.dllの利用について(64b...
-
MSCOMCTL.OCXのアップデートの方法
-
CrystalReportsのバージョン確...
-
Selenium/VBA/Chrome エラーで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaとAndroidアプリ(Java)違...
-
エクリプスのプログラミングに...
-
授業でプログラミングのJavaの...
-
スキル高めのIT技術者になぜ左...
-
vectorクラスについて。
-
内部仕様、外部仕様
-
オブジェクト指向をひたすら練...
-
JAVA
-
遊びでJavaを勉強しようとして...
-
Netbeansでの、Java「実行」と...
-
Javaは暗記科目でしょうか?
-
超初心者のJAVA入門(学生)
-
Javaに向いてない人はどんな人...
-
JavaScriptとC言語の違いについ...
-
待ち受けiアプリ開発の参考資料...
-
VBA(えくせる)ってなんでメン...
-
Perl言語について。
-
java言語でオセロゲームを4人対...
-
javaでマリオやロックマンみた...
-
Effective Javaのどこが良いの...
おすすめ情報