質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

4回答

459閲覧

独習C#をやっているのですが、分量が多くてどのように勉強すればよいかわかりません。どのように勉強すれば記憶できるのでしょうか?

ayasaka

総合スコア3

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

0グッド

0クリップ

投稿2020/10/22 10:30

ここに質問の内容を詳しく書いてください。
独習C#をやっているのですが、分量が多くてどのように勉強すればよいかわかりません。どのように勉強すれば記憶できるのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2020/10/22 10:32

できないと思います。
guest

回答4

0

記憶

に関して言うならば,
本の内容の詳細を頑張って記憶するのではなくて,本を読んだり手を動かしたりした結果として
「この本(のあのあたり)にはだいたいこんな事柄が書いてあったはず」みたいなことがぼんやりと記憶されているくらいで十分でしょう.
必要になったら都度その本見返せばよいので.

そうやって何度も見返していれば,そのうち覚えておく必要があるような事柄は自然と覚えることになるでしょうし.

投稿2020/10/22 11:12

fana

総合スコア11708

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

teratail:teratailランキング上位の方の思考が知りたいです。
という質問のQ2,3に答えている回答が参考になるかと。

Q2.ランキング上位者の方達はコードの引き出しが非常に多いように感じるのですが、全て暗記しているのですか?
Q3.暗記以外で効率よくコードを引き出す方法などがあれば教えてください。

そもそもプログラミングによって出来上がるアプリケーションは学校の試験問題を解くのとは違うので、暗記、記憶 全く役に立ちません。
同じ結果を出すとしても100人が書けば100通りのコードが出来上がることもあります。
1+1=〇 を埋めるのではなく 〇+△=2 を埋めるのと考えが近いです。

様々考えられる手法から要件にあったやり方を採用します。
覚えるのではなく、考えます。

もし機能について知りたいならメジャーな言語であれば公式ドキュメントがあって
バージョン毎にまとまっていたり、更新頻度も高いです。

お題だけ渡されて作文をするのとも近いかもしれません。
お題しかないので文章構成は自分で考えますよね。
曖昧な覚えの漢字や熟語があれば辞書を引きますよね。
大枠すら考えずに書き始めるということもないですよね。
そして書いた文章を元に推敲しますよね。

これもプログラミング・アプリケーション制作における「設計」「実装」「テスト」の流れに非常に近いです。

それに人間って忘れるものです。
何か月、何年と関わっていたプロジェクトで作ったコード
早ければ数日で忘れてしまいます。
設計書を見ればある程度の構成は関わっていない人でもわかるでしょうけど、
実装はまた別の話です。
それでも保守・メンテナンスをする際に「読んで意図が分かるコード」にしておくことも非常に大事なのです。
コメントは重要ですね。

なので、例え自分しか関わらないようなローカルなアプリであっても、
「次にそのアプリのコードを見るときは他人が作ったものである」という前提で作っていくと良いです。

投稿2020/10/22 10:59

m.ts10806

総合スコア80863

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

かなり昔全部読みましたが内容はひとつも覚えてません。
そもそも記憶するために読むものじゃないのでそれでいいと思うし、たぶん今読み直したらほぼ全部理解できてます。

投稿2020/10/22 10:41

gentaro

総合スコア8949

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

そもそも前提が違います

こういうものは**「すべて覚える」ではない**です。

概念を理解して、使えればそれでいいのです。
暗記はみんな、無理です。

「記憶しろ! 検索するな!」っていう先生がいたら、私ならキレますね。マジで。
そういう教える人も完璧に暗記なんてしていません。

たとえば C#や .NET Framework のリファレンス リファレンス1 を使って調べて見てください。
API (クラスとか)だけでも100ページは余裕であるはずです。
また、バージョンによって使える・使えないとかもあったりします。

また、ほかのライブラリを使う場合はそれも覚えないといけないはずです。

無茶ぶりでしょっ…って感じですね。

最低でも、

  • 基本概念( for, while, 変数, 配列 etc. ) を理解していること
  • 自分なりに仕様をまとめ、自分なりに組めること
  • 自分でデバッガ等を用いてデバッグやテスト(論理エラーが無いか調べる系の)ができること

ができればいいのです。

弁護士もそうらしいです。法律をすべて暗記しているわけじゃなく、大体の概念(どういうときに法が適用されるか等)を理解して、その都度調べているらしいです。

それと一緒で、「その都度、調べている」のです。
プロですら。

なので『覚える必要はない』が、「自分で考え、調べ上げる能力」があれば十分なのです。

で、アドバイスを。

実際に何か作品を作ってみて」ください。

ただ教科書を読んだだけでは身に付きません。

座学で逆上がりとかを習得しようとするようなものです。自転車でもいいですが。
普通は実際にやってコツをつかみますよね。それと一緒です。

ただし、「●●作りたいからコードくれ」じゃなくて「自分で設計し、自分で組み、自分でデバッグまでする」です。

あとは「データ構造とアルゴリズム」や「デザインパターン」(こっちはオブジェクト指向系の言語の場合) をやってみる。これは先人たちの知恵です。

AtCoderとかのような競技プログラミングをやってみるのも手です。(基礎ができている前提ですが)

頑張ってください。

投稿2020/10/23 14:03

BeatStar

総合スコア4958

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問