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

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

ただいまの
回答率

90.51%

  • Java

    13828questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

プログラマーの勉強とは?

解決済

回答 3

投稿

  • 評価
  • クリップ 2
  • VIEW 325

karasu0318

score 16

すいません。
コーディングの質問とかではないので、ここに書くか迷いましたが、
質問させてください。

最近プログラマーとして転職しましたが、勉強方法について悩んでいます。

例えば仕事で、JavaとSQLが必要、と言われたらその言語を勉強するわけですが、
どの範囲まで勉強すればよいのかいつもわからなくなります。

例えば、JavaといってもJDBC、JSON、Spingなど様々あり、それだけでもかなりの分野があります。

基本的な事は当然学びますが、それ以外の事は何を、どのような基準で選んで、学べばよいのでしょうか?

いつも学ぶべき事を見極める事ができず、必要ない事を勉強したり調べたりしてしまいます。

皆さんの実体験を元にご回答いただけたら幸いです。

よろしくお願いいたします。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+4

学問に王道なし。

あなたがかかわっている分野のスキルを地道に上げる。周辺分野を含めて経験や知識レベルのかさ上げを図る。しかないんじゃないでしょうか。デッドラインを前に必死に勉強したことが終わってみれば目下の案件とはとりあえず関係なかったということは、当然出てくるでしょうが、仕方がないでしょう。

とりあえずは無駄にみえてもそのような勉強の蓄積なくして「必要な勉強範囲」を見極められるようにはなりません。その手間を省ける都合の良い勉強方法などというものはありません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/01/03 21:33

    ご回答ありがとうございます。
    KojiDoi様のご回答、大変参考になりました。
    まずは範囲を見極められるように、勉強を続けてみます。

    キャンセル

+2

私は「必要に迫られたときに勉強したことしか応用できない」と思っているので
基本的には「使わないといけないもの」しか勉強しなくていいと思います。
転職先のところで使わないものに関してはたとえ関係があっても優先順位はかなり低いかと。
基準に関しては難しいですが、私の勉強するスタンスとしては
「今のこのプログラムをどうしたら早く、効率よく組み同じ結果を得るか」という視点で、
新しいフレームワークやオブジェクト、外部ライブラリの勉強をします。
やはり早さは大事で、時間(技術)はお金だと思います。本番の開発時に高速かつ正確にする
ために何倍もの時間をかけている感じですね。

後輩にプログラムを教えていますが、良いコードも悪いコードも教えていますし
課題を与えてあえて自分で考えさせて私が改善箇所を指摘するということもよくします。
最善の方法、コーディングだけを自分が知っていてそれを教えても
「それが最善かどうかが相手のスキルではわからない」のであれば意味がないです。
不必要なことをあとで知ってもそれは無駄ではなく「無駄なものが無駄と理解できるようになった」
ということだと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/01/03 21:36

    ご回答ありがとうございます。速さを追求するために時間をかけて勉強するという事ですね。
    まずは無駄なもの無駄と理解できるよう、いま必要な事を洗い出してみます。

    キャンセル

0

ご存じのように、JavaやSQLの勉強に終わりはありません。

しかし、職場にはものすごく広い幅でこの辺までという線があるはずです。つまり、仕事の指示をしたとき、仕事内容より技術的な質問が多いようでは困るし、たぶん技術的な問題点の指摘をしてほしいとも思っていないはずです。

私であれば、新人にjavaとSQLというならば、今使っているJavaの文法と一般に利用しているSQL文が読み書きできれば良いと思います。また言葉には出さなく手も今使っているIDEの基本的な操作とフレームワークの知識も求めると思います。とにかく”今使っている”が基準になります。

ということで、もう少し説明してもらうことが大事だと思います。その際には、こんな本を読んでみようと思うのですがと具体的に相談すると細かい話もしてもらいやすくなるとおもいます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/01/03 21:38

    ご回答ありがとうございます。
    いくつか書籍は購入したので、それをもって上司に相談してみます。
    自分の勉強している事を目に見える形で相談すれば、上司にも相談に乗ってもらえるかもしれないので。

    キャンセル

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

  • ただいまの回答率 90.51%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Java

    13828questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。