私は初心者プログラマーです。 C、C++、PythonおよびJava(主にC++に焦点を当てている)などの言語を勉強しています。私はあなたが「若くて経験の浅い」と呼んでいるものですそれ以外の主張はできないので、私はそれを認めます。
学生として、プログラミング以外にも多くの問題を抱えています。私はできる限り頻繁にプログラミングを練習しています。特に、私の先生は他のクラスよりもはるかに多くのエクササイズを行っているため(非常に低いレベルです)、多くの場合、学校のプロジェクトやスポーツ、旅行、プログラミング以外。
誤解しないでください、私はプログラミングが大好きです。私は、関数型コードを作成し、プログラムがボタンを押すだけで活気づくのを見て、できるだけ多くを学ぶことが好きです。事は、私にはそれのための多くの時間がないだけです。
質問にまっすぐに:あなたのプログラミング知識は時間が経つにつれて減少し、練習しませんか? 「どれくらいの時間を意味するのですか?」と尋ねることがあります。特定の時間を意味するわけではありませんが、参考のために、例として2か月または1年を例にとることができます。
知識とは、構文から言語機能まで、あらゆるものを意味します。
明らかに、プログラミングは、学習することであり、一連の事実や情報ではありません。とはいえ、それは自転車に乗ったり、言語を話すようなものです。理論もありますが、それはそれらを実践することに関するものです。
それでも、他と同じように、それを使用しないと、脳は情報を落とし始めます。そのようにあなたの脳は筋肉のようなものです。しばらくすると、構文や使用頻度の低い関数の詳細ではなく、幅広い概念を覚えているでしょう。たとえば、for
ループを実行するか、リストを反復処理して、それがwhile List.hasNext()
またはfor item in list
またはfor index, item of list
しかし、自信を持って書いていない。
良いことは、あなたが何をしたいのかがわかるということです。調べるだけです。だから私はあまり心配しません。それはあなたに戻ってきます。重要なことは、プログラムの問題を解決する方法を学ぶことです。通常、すべてのプログラミング言語は同じことを実行できますが、ほとんどの場合、さまざまな方法で実行できます。 RubyまたはPythonには内包があり、代わりに多すぎるfor
ループを書くことを忘れるかもしれませんが、あなたは仕事を成し遂げるでしょう。
どれだけ忘れたり覚えたりするかというと、それはあなたのマインドがどれほどアクティブで、何歳であるかにかかっていると思います。 19歳までは、完全に機能する脳を開発したとは思いません。その時点で、何かを覚えるのは簡単でした。誰もが違う。
要約すると、細部は常にフェードし、フェードの速度はユーザーによって異なります。すべての言語が同じ問題を簡単に解決できるように努めているため、問題の解決方法を学ぶことがより重要になる可能性があります。 :)
使用されないものは最終的には萎縮します。
私は中小企業のオーナーです。つまり、私はザガイです。したがって、Webサイトを更新する必要がある場合、私はZend/MVCの第一人者でなければなりません。データやTweak Webページをハックソーする必要がある場合、phpを使用する必要があることに気付きました。 Quickbooksと格闘しているとき、偽のQBクエリ、Visual Basic、php、mysql、linux、およびWindowsをテクノロジースープのミアズマで使用している自分を見つけることができます。そうそう、私はCADベンダーが図面を必要とするときに機能します。つまり、私は機械エンジニア/デザイナーであり、ファイル形式を理解しなければなりません。頭の中ではっきりとわかりました。もう一度カタログが足りなくなったので、Adobe CS5を購入し、古いカタログ用のInDesignファイルを取得して、新しいカタログ用に調整しました。
過去10年間のすべての経験を考えると、約1か月以内に物事を忘れてしまうことがわかりました。しかし、再びそれに没頭すると、脳はspark私をphp.netに送信するか、私が書いた古い/レガシー/古代のコードを掘り下げるメモリになります。CAD作業。1年以上にわたって出入りしてきた巨大なプロジェクトがあります。そのコンピュータの電源を入れると、すべての更新が完了し、ライセンスが整理されてから2日で完了するまでに1日かかりますあと5日で、やめたところに戻りました。
私は毎回Quickbooksのqodbcプログラミングを再利用するのが最も難しいと感じています。 :P私は何年にもわたってMySqlとPostgreSQLを何度も実行してきましたが、特に便利なクエリを保存するcheatsテキストファイルを使用すると、その内容をすぐに選択できます。
概要:すべての作業を永遠に保ち、6〜12か月ごとにそれを試してください。そのコードに再度アクセスする必要がある場合、おそらくあまり後退せず、1週間以内に再びフルスピードになると期待します。
方法論などは練習しなくても減りませんが、正しい構文とライブラリを覚えておけば間違いなく減ります。
主にJava、C++、C#を使用しています。しかし、過去2年間、私はJavaをたまにしか使用していませんでした(レガシーシステムでバグを修正する必要がある場合)。したがって、正しい構文を覚えるのに少し苦労します必要なライブラリです。
一般的なプログラミングの知識やプログラムによる問題解決のスキルは実際には古くなりませんが、言語固有またはフレームワーク固有の知識はしばらくすると古くなります。
時間の経過とともにプログラミングの知識が減り、練習しなくなりますか?
知識はありません(少なくとも全体像の概念は違います)。スキル、はい。
プログラムを学ぶことは、他の何よりも問題を解決する方法を学ぶことです。私は10年以上プログラミングをしていない状況にあります。はい、構文の詳細は定期的に調べなければなりませんでしたが、問題解決のスキルはまだ残っていました。
すべての脳の活動と同様に、文字通り数秒後に知識は衰退し始めます。それは数秒から数分続きます(短期)。一部は海馬によって長期記憶に移され、そこでは退色プロセスがはるかに遅くなります。
筋肉より好きな類推は「スポンジ」。学習と使用は、スポンジを素晴らしくふっくらとした「重い」ものにする水を加えるようなものです。水を加えるのをやめると、水分がなくなり、体重が減ります。神経科医はこの類推を好むかもしれません;)
これに対抗できるものは次のとおりです。
繰り返し。十分な回数のタスクを実行すれば、それを覚えられます。
ニーモニック。視覚的、聴覚的、その他何でも、それらは本当に役に立ちます。
柔軟性。知識そのものではなく、新しいタスクを実行する能力が重要であり、完全に新しいアクティビティを頻繁に行うことで助けられます。
運動。脳と記憶を助けることでよく知られています。
メモをとります。 (それほど)将来の参照用ではありませんが、実際にそれらを作成するプロセスは、知識を心に留めるのに役立ちます。
知識は多少低下しますが、特定の言語の構文やより複雑な側面の一部を忘れている場合があります。最初は、練習しないとコードを構成するのも難しいかもしれませんが、しばらくするとそれが戻ってきます。