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

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

ただいまの
回答率

88.78%

詳しく学ぶのは、効率が悪いのか

解決済

回答 6

投稿

  • 評価
  • クリップ 0
  • VIEW 682

mov_mel

score 11

プログラミングの学び方について、意見を聞きしたいです。

ある会社のシステム部に入社し、プログラミングと出会いました。

私は、プログラミングが楽しいです
とても。
時間を忘れて没頭し、日常生活においても、「このアプリはどう動かしてるんだろう」「私ならどう動かすかな」と、気になって仕方がないです

理解できるまで基礎と睨み合い、「基礎がこうなら、もしや、こういうこともできるのでは?」と考えて
調べて試して、解決した瞬間の、感動の虜です

でも、職場の方は。「そんな深くまで、理解しようとしなくていい」「初心者のうちは、コードはコピペで貼ればいい」と言います。
ネットなどで見ても、「まずは早く全容を把握した方が、成長は早い」と書いてあります

私の学習方法は、良くないのでしょうか
いちいち仕組みに向き合っていたら、前に進めないのでしょうか
先輩方のご意見を伺いたいです

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

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

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

    クリップを取り消します

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

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

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

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

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

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

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

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

    質問の評価を下げる

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

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

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

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

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

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

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

    詳細な説明はこちら

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

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

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

質問への追記・修正、ベストアンサー選択の依頼

  • m.ts10806

    2019/05/10 23:19

    これはタグはC#ではなく「プログラミング言語」とかもう少し汎用的なものにしたほうが良いのでは(厳密には低評価がつく内容ですが、回答はそれなりにつくとは思います。)

    キャンセル

  • mov_mel

    2019/05/11 07:41

    ご指摘、ありがとうございます
    初めての質問で、少し思い詰めていたため、この掲示板の使い方が理解できていなかったようです。
    次回から、ここはどんな内容を質問すべき所なのか、質問のやり方を
    確認してから、質問するように致します

    キャンセル

  • m.ts10806

    2019/05/11 07:52

    質問は編集できますので適宜ご対応いただけたらと。

    キャンセル

回答 6

checkベストアンサー

+7

でも、職場の方は。「そんな深くまで、理解しようとしなくていい」「初心者のうちは、コードはコピペで貼ればいい」と言います。

業務の場合は納期と要件、指揮系統があるので、上司に従いましょう。
「初心者のうちは、コードはコピペで貼ればいい」というのは残念すぎる発言ですが、
「そんな深くまで、理解しようとしなくていい」というのは、場合によっては的を射ていることもあると思われます。
(本筋の役割と違うところで止まってしまって、そのアーキテクチャの基礎から理解をしようとし始めると、いくら時間と予算があっても足りなくなってくることでしょう。)

時間を忘れて没頭し、日常生活においても、「このアプリはどう動かしてるんだろう」「私ならどう動かすかな」と、気になって仕方がないです

理解できるまで基礎と睨み合い、「基礎がこうなら、もしや、こういうこともできるのでは?」と考えて
調べて試して、解決した瞬間の、感動の虜です

とても良い習慣で、開発者向きの資質だと思います。
プライベートな時間を使って何年か続ければ、いつでも転職出来るような実力が付くと思います。

ただ、
会社/上司がそれを求めているかは別問題なので、
合わないと思ったら転職も検討した方が精神的/キャリア的に健全でしょうね。

私の学習方法は、良くないのでしょうか
いちいち仕組みに向き合っていたら、前に進めないのでしょうか
先輩方のご意見を伺いたいです

学習効率は人に寄るので一概には言えません。
モチベーションを保つのは重要な要素の一つなので、やりたいように学習しましょう。
業務中に「学習」にどれだけ時間を割いて良いかはプロジェクト管理者と相談しましょう。


若干違和感を感じるところとしては、

理解できるまで基礎と睨み合い、「基礎がこうなら、もしや、こういうこともできるのでは?」と考えて
調べて試して、解決した瞬間の、感動の虜です

という方法を選択した場合、全容を把握することからスタートしないと基礎と睨みあうということが成立しないと思います。
やろうとしていることが「基礎」というよりは「ごく狭い範囲での応用」になっている可能性は結構あるんじゃないかなという印象です。
その部分だけでは無く、その周辺ヵ所/技術についても把握するように心がけると効率が良いとは思います。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

+4

個人的な感覚ですが、
「初心者のうちは、コードはコピペで貼ればいい」という意見には賛成できませんが、
「そんな深くまで、理解しようとしなくていい」という意見には賛成できます。

「いちいち仕組みに向き合っていたら、前に進めない」ということも多いからです。
仕事でやっている以上は求められるのは学習結果ではなく成果物です。
お金を払って学習する学校と違い、お金をもらってお客様の要求に対して成果物を出しているわけですから、
ゴールまではなるべく真っすぐに進むのが本分ですし、

「このアプリはどう動かしてるんだろう」「私ならどう動かすかな」「基礎がこうなら、もしや、こういうこともできるのでは?」

いずれも「横道」です。場合によりプロジェクトのやり方からはみ出す可能性もありますよね。
お客様には成果物を作る側が初心者かどうかなんて関係ありません。
(まあ・成果物が成っていればいいわけですからコピペかどうかも関係ないわけですけど)

直接成果物とならないのであれば、自身の仕事をきちんと終わらせて、
空いた時間や合間に自身だけの環境で考えて試すべきと思います。
それか帰宅後、自宅の自分のPCに環境作って(もちろん基本的に業務の環境を持ち帰ってはいけません)

もちろん、興味を持つのは非常に良いことです。
興味を以て進んだ結果、得られる知見もあるでしょうし、それが活かせる機会が来ることもあるかもしれません。
でもそれは今目の前の仕事とは離れるという認識だけは持っておいてください。

「そういうもの」と概要のみ(機能説明とINPUT/OUTPUT)理解して進める必要があることも多いです。
仕事でプログラミングをやっていると、案件に最初からではなく途中から(本当に途中ではなくひと段落ついたSTEP2とか別段階)参画することも少なくないです。
そういうときに求められるのは「大体こんなシステム」程度の理解で「それより設計書にそってガンガン作っていってよ」だったりします。
プログラム的には基盤もできているので一から作ることは少なかったりしますが、「その作りの根底の理解」より「これまでの作り方に倣って作る」だけで進めていく必要があったりします。
(正直、基盤部分を深く追っていっている余裕はないので)

基礎の基礎の基礎である部分はきちんと身につける必要はありますが、あとは「そういうもの」と飲み込んで進めていく必要がある機会のほうが多いです。
※ただそれが「基礎の基礎か」「そういうものと飲み込んで良いものか」自身で判断できないうちはなるべくきちんと修める方向で、周囲と相談しながら進めてください

投稿

編集

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

+3

趣味であるなら間違いではないと思いますが、業務であれば間違いです。
ハッキリ言って業務で求められることは、いかに早く正確に作成するかです。
工数が少なくなれば少なくなるほど会社として利益になるからです。
ですので、求められていること以外の横道は効率が悪いという判断になります。

ですが、趣味であればそのように深く掘り下げることは良いことだと私は思います。
スキルアップに繋がりますし、そうやって技術をみにつけることにより効率の良い
作業ができるようになるでしょう。

だから、そのような学習は趣味でやりましょう。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

+3

あくまで、私が勝手に思う「コードをコピペする際に、このくらいまでは調べといて欲しい」ことですが

  • 各行の文法的意味(条件分岐、ループ、関数呼び出し など)
    この時点で調べてもわからない場合、先輩等に聞いたほうが早いでしょう。
  • 呼び出してる関数の入力・出力・注意点 をリファレンス等で確認
  • 以上を踏まえた全体的な流れ

これ以上は調べる必要はありません。
趣味の時間でやるとよいでしょう。


追記:
掲載されているコードがGPLのソフトウェアのソースの断片だったりすることもなくもないので
ライセンスの確認も必要っちゃ必要です。

投稿

編集

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2019/05/11 20:39

    コピペって、普通は、昔のコードのコピペと思ったのですが、違う?
    修正する時に同じ様な事やってるから、そこから、コピペとか。
    ただし、一見、同じでも前提が違うワナが待ってたりもする。

    キャンセル

  • 2019/05/11 22:36

    どこからコピペするにしろ、理解してないコードをコピペするのは危険です。

    キャンセル

+1

大体、他の方の回答で良いと思います。

「まずは早く全容を把握した方が、成長は早い」

--> 成長は早いかも知れませんが、仕事の遂行は遅いかもしれません。仕事の内容にもよりますが、担当はプロジェクトの一部と思います。全容を把握すれば、後々、役に立つ(?)かもしれませんが、「全容を把握する」時間が余分になります。

私の学習方法は、良くないのでしょうか

学習方法としては、間違えていないと思います。ただ、それは学習であって、仕事の方法ではありません。業務としてそれが許されているか、です。
多分、今の職場では許されてないと推測します。そういう職場を期待するならば、転職を考えるべきですが、それが許されるところは多くないでしょう。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

0

会社の求めることも一理はあります。が、ケースバイケースです。

私の大学時の教官は「実在しないプログラムの出力結果」を発表し、大金を動かしたらしいです。起業とかも持ちかけられましたが、とても賛同する気にはなれませんでした。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

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

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

関連した質問

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