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

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

新規登録して質問してみよう
ただいま回答率
85.49%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

7回答

2733閲覧

【意見超大募集】プログラミング勉強するにあたって学習した方がいい項目、しなくても良い余計な項目の整理

garchomp

総合スコア128

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

1グッド

6クリップ

投稿2017/05/19 07:45

現在rubyとpythonを勉強しています。

勉強してきた中で気づいたことと同時に疑問が出てきましたので質問させていただきます。

まず、プログラミングとは問題を解決する為であって、必死に数式や関数名とかを覚えても仕方がない。というところまではわかりました。

では、結局どれぐらいまで理解できればいいのか?という問題に関してなんですが、これは何を作るかによっても変わってくると思います。

少なくとも私は頻繁に出てくるものは覚えて、出来るだけストレスフリーでプログラミングをしていきたいです。

そこでなんですが、これから更に学習を進めて行くにあたって、覚えておいた方がいいメソッド、数式、思考法の範囲はどれぐらいになるでしょうか?

前提ステータスとして、私は現在、rubyの基本的な文法(変数、for while each ifelsifelse def( ) times class self 継承など。先頭であればあるほどよく覚えているもの)を覚えているところです。pythonもほぼ同じ程度と考えてもらっても良いです。(rubyのほうがsulit等の関数も覚えていますが・・・)

なお、rubyの勉強をし始めてから現在2週間ぐらいですが、その前に一カ月ぐらいjavascript jqueryの勉強をしていました。

また、簡単なfizzbuzzや簡単な計算、条件分岐、配列繰り返し、jqueryでよく使うあれこれは演習で組んだので、頭の中でコードをある程度組めますが、たとえば4を100%として、最初に20%差し引いたものをA,そのAを今度は100%として30%引いた答えXを求めるコードは組むことができません(paiza dランクは組めてもcランクはなかなか答えられない状態です)

pythonを使いだ押すにはもちろんSランクまで習得必須だと思いますが、webアプリケーション実装、という点で考えると、そこまで難しい(式)は作れなくてもよいとしても、最低でもpaizaでいうどの問題までできるようになるとよろしいでしょうか?(やっていなければたとえばこの問題を解けるぐらいまで。とかでも構いません)

以上、よろしくお願いいたします。

yohhoy👍を押しています

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

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

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

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

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

guest

回答7

0

言語に関係なく、デバッグ技術は学習すべき重要な項目です。

プログラムはある程度経験を積めば、誰でも書けるようになります。
しかし、いつも思った通りに動くわけではありません。
思った通りに動かなくなったとき、それを解決する技術が「デバッグ」です。

ここでのデバッグとは

  • 現象を確実に再現し、その内容(状態)を確認できるようにする。
  • 確認できた内容から、原因を探し特定する。
  • 原因から解決(修正)方法を導き出す(解決できないこともよくあるが無駄ではない)。

ことを指します。

投稿2017/05/19 08:42

編集2022/07/27 14:03
can110

総合スコア38254

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

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

garchomp

2017/05/19 08:49

解答ありがとうございます! デバッグ技術はとても大切な項目なんですね… コードを組んでいく中で、なぜそのエラーが起こっているのか?それを解決するにはどうしたらいいのか? 思った通りに動かない場合、全体を見渡して、ちゃんとプログラムを組めているのか? こういったところにしっかり重点を置く必要があるんですね。 そして、try&エラーを起こしていく中で、一つ一つデバッグを取ることを積み重ねていくことで、応用範囲を増やしていく…なるほど。しっかり覚えなければできないもんだと思っていましたが、やはりプロフィールから説得力がありますね。 地道にデバッグを積み重ねて様々なものをモノにしていきたいと思いました!
can110

2022/07/27 14:00 編集

デバッグ技術を身につけると、エラーを修正することができるようになるだけではなく データやプログラムの流れを頭の中でイメージし操作することができるようになります (頭の中に、365日24時間電気代もかからないタダで動くコンピュータが出来上がる)。 これができるとプログラマとしての能力は確実にレベルアップします。 がんばってください。
guest

0

ベストアンサー

仕事でPythonでウェブアプリを複数作って運用中の者です。

Paizaは広告しか見たことがないのでわかりません・・・すみません。

この問題が解けるか、ということであれば1個簡単なアプリを作れるか?というのが具体的な課題としては良いと思います。

おすすめは一度簡単なアプリを一から手作りしてみると一気に実力があがりますよ^^
即戦力がある証明にもなりますし^^

アプリはほとんどはフレームワークというコードがすでにできているものの塊を使います。例えばパスワード認証などの毎回使う機能は他の誰かが作ったものを再利用できるというわけです。

フレームワークを利用して、ブログや、やること一覧表などを練習台に作る方が多いと思います。(私もそうでした。)
pythonならDjangoというフレームワークが世界的に人気です(インスタグラムで使われていることでも有名 私の会社もDjangoでの開発案件が多いです)

(私Rubyは使ったこと無いのですがRubyであればRuby on Rails が一番人気だと思います)

一つアプリを作っている間に、クラス等の基礎から様々な技術的におさえるべきことが身につきやすいと思います^^

基礎的なことで、いつまでも役立つなあとよく感じるのは、文字列操作です。pythonだとsplit(".")とかはしょっちゅう使いますので重点的に勉強しておいて損はありません、・・・多分^^

投稿2017/05/19 10:40

k_mawa82

総合スコア234

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

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

0

何を目指しているかわかりませんが、
プログラマなら、必要に関数とか覚える必要はないと思います。
(やってて覚えている関数はたくさんありますが、意図的に覚える必要はない)

そのライブラリやフレームワークや言語で、どんなことができて、どんなことができないか。
それを利用する方法(ググるキーワードでもいいと思っている)くらい覚えておけば、
プログラミングをする上で大体のことは解決します。

投稿2017/05/19 08:30

szk.

総合スコア1400

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

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

garchomp

2017/05/19 08:40

解答ありがとうございます! 基礎を身に付けたら、あとは作ってみるに限るんですね… 頑張ります!
guest

0

英語が出来ないのであれば英語です。

投稿2017/05/19 08:23

harashow1701

総合スコア854

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

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

garchomp

2017/05/19 08:38

解答ありがとうございます。単純明快ですねっ! ホンット苦手です。超苦手です^^; 以外にも英語が優先順位高かったり… うまく両立して勉強進めて行きます^^;
guest

0

... 思考法の範囲 ...

各種の疑問が浮かんだり、問題が発生したときに、仮説を立てて、それを確認し、解決していくという思考・行動様式が必須です。

そのための方法のひとつに, web 上で同様の問題をすでに解決している人がいないかを検索するというものがあります。
そして、その検索範囲は日本語だけに限定していたのでは、解決できる可能性が低いです。

英語の stackoverflow にある QA のやりとりを読めるだけの英語の読解力が必須スキルとなります。

投稿2017/05/20 16:26

katoy

総合スコア22324

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

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

0

paizaは問題文が難しいので私はあまりやっていません。
(私の読解力が著しく低い。)

趣味でプログラミングやっておられるならご自身が
納得されるところまでで良いと私は思います。

投稿2017/05/19 08:13

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

garchomp

2017/05/19 08:37

解答ありがとうございます! 実は、勉強して間もなくですが、もうすぐ転職する予定でして…(独学オンリーです) 優先順位を立てて勉強していきたかったので^^;
退会済みユーザー

退会済みユーザー

2017/05/19 09:49

おぉ。幸運を祈ります。
guest

0

覚えておいた方が良いメソッドは、一度使ったもの全てです。
引数までコード補完の使えるエディタが使えるなら、完璧でなくても構いません。
メソッド名にどんな単語が含まれていて、何を引数に何を求めるのかということは覚えてください。

paiza ランクは実用的でないので、あまりあてにはなりません。
知識や実力を測るものというより、プログラマとしての適性を測るもののような気がします。

投稿2017/05/19 08:08

Zuishin

総合スコア28660

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

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

garchomp

2017/05/19 08:36

解答ありがとうございます! そうなんですね・・・ どちらかというと、適性を図るもの、と見たほうがよさそうですね… メソッドや引数、簡単な概要だけでも覚えておけばいいのですね! 良く使いそうなものから広く浅く覚えて行きたいと思います<m(__)m>
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問