rubyの基本構文についてプロゲートというサイトで学習中です。しかし、このサイトでの学習を終えた後、自分が何をどのように勉強すれば良いのかがわかりません。もちろんプログラミングを学習するためにスクールなどに通うことが最善だとは思うのですが...。現状では自分がどこまでできるのかをどうやって確かめれば良いかもわからず、ただやっていてわからないところを解決していくことを繰り返しています。そこで、今後rubyを学習した後にrailsの学習も必要なのか、なにを勉強するべきか、を教えていただきたいです。やりたいことによるというのはわかっているのですが、意見をお聞きしたいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答5件
0
... やりたいことによるというのはわかっている ...
やりたいことを記載してみてくだい。
そうれうば、具体的なアドバイスがたくさん得られると思います。
英語の勉強も、単に英単語、文法を学ぶだけではつまらないです。
小説を読みたい、映画を字幕なしでみたい、英語の歌の意味をしりたい、英語で歌いたい...
などの夢がないと。
投稿2017/02/04 00:15
総合スコア22324
0
RailsはWebサーバーを構築するものです。
Rubyを覚える何割かはRailsを使ったWebサーバーを構築する為に覚えるのではないかという程によく使われています。
しかし、RailsだけがRubyの用途ではありません。
Rubyを純粋にスクリプト言語として使うという事を紹介します。
少しRubyと関係ないパソコン操作の話をします。
GUIではないCLIの世界というのを既に知っていますか?
真っ黒なターミナル画面だけ与えられて、キーボードに謎の命令を打ち込んでパソコンを動作させるアレをCLI(コマンドライン インタフェース)と呼びます。
GUIでマウス使って操作するほうが分かりやすいと感じるかもしれませんが、CLIの方が効率は断然上です。
例えばフォルダ移動一つとっても、3階層掘るのに目的のフォルダを見つけてクリックを3回繰り返しますが、そこに速度が向上する余地は存在しません。
マウスやモニターをゲーム用の良いものに変更し、マウスカーソルを最速にした状態で慣らしても常人の2倍といったところでしょうか。
CLIでは数文字打ち込んでTabキーで予測変換、/でフォルダを区切ってまた数文字打ち込んでTabキーで予測変換を繰り返して瞬時に移動できます。
それは頭の回転速度、タイピング速度と同じレベルにまで引き上げる事が可能で、練習次第では無限とは言わなくても何十倍もの速さでパソコンを操作することが出来るのです。
普通の人の数倍で作業するくらいならすぐ行くと思います。
また、CLIはコマンドを組み合わせて好きな自作コマンドを作る事が出来ます。
要するに特定の作業を完遂させるコマンドの組み合わせに別の名前を名づけてしまえば、
後はほっとくだけで完成です。
先行入力もいくらでも可能で、ああなってこうなって…を先に組み立てて実行して、
その間コーヒー淹れたりブログ記事を読みながら遊んでるのに、他の人より仕事が速いというケースもあります。
Rubyの話に戻ります。
Rubyはスクリプト言語というジャンルのプログラミング用の言語で、
Perl、Python、Node.jsと並ぶ「コマンドだけでやりきるには困難な、複雑なちょっとした作業」をこなすエキスパートです。
また、作ったスクリプトファイルは自分専用のコマンドとしてパソコン内に保存できるので、既存のコマンドと組み合わせて使うことも可能です。
ただし、現実の仕事の大多数は現実世界やGUIの世界で渡され、
完了は現実の紙に書いたり、GUIで読み取れるプログラムのファイル等でやり取りするケースばかりです。
なので現実世界ではすぐ終わる仕事ような作業が、一回変換して、Rubyのプログラミングを行って、また変換して提出するという風に行って戻る手間が発生します。
その手間を含めて、なおCLIでやった方が速いという上級者に至るには数年間を費やす必要があります。
下記、Rubyのプログラミングで作れそうなアプリを幾つか紹介します。
探せばGitHubなんかで公開している人は居そうですが、腕試しで作ってみてはどうでしょう?
- todoアプリを作る
- TwitterAPiと連携してCLIからTweetする
- 各ブログが発行しているRSSを登録して、オリジナルフィードを作る
投稿2017/02/04 06:22
総合スコア21158
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
Webサービスを作りたいのであれば、railsを学ぶべきですし、
スマホゲームを作りたいなら、cocos2d-x(C++)や、Unity(C#)という選択肢があります。
Androidアプリを作りたいなら、Javaになります。
iOSアプリならSwiftですね。
流行りの機械学習、深層学習ならPython、というように目的に合わせて使うツールやプログラミング言語は変わります。
それからスクールに通うのは、質問者さんの段階ではやめたほうがいいです。
入門者や本、オンラインの講座で学びながら分からないところを自分で悩みながら解決したり、ここのようなサイトで質問したりして、自分のペースでゆっくり進むほうが最善だと考えます。
明確な目的意識がないままスクールに通っても、次は何をすればいいの?という疑問は消えないままではないでしょうか?
投稿2017/02/04 01:14
総合スコア4025
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
プログラム歴1年もない私の意見ですが
railsの勉強は必須ではありません。
なぜなら、railsがなくても
できることがあるからです。
私みたいにそればっかりやっている人は
別に学習しなくても良いと思います。
べき論だと何でもやっておいて損は
ないだろうと私は考えます。
結局、質問者様がすでにおっしゃっている通り
やりたいことによるという結論になるかと
思います。
以上、私の意見でした。
投稿2017/02/03 19:51
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
rubyは遅いですしあまりおすすめしません。
しかし、書きやすく読みやすいといったメリットがあります。
Railsというのは非常に便利で、フレームワークの使い方を覚えてしまえば簡単なWebサービスを完成させることができてしまいます。
Webサービスを作りたいばRailsを覚えることをお勧めします。
windowsアプリケーションを作りたいならC#
iphoen用ならSwiftを
人工知能などを作りたいならpython3,C++
ゲームならC#,C++,java
また、webを作る場合HTNL,CSSが必ず必要になります。
やりたいことに合わせて言語をもう一度確認してみてはどうでしょうか?
一つの言語を覚えたらif文 switch文などはほとんどの言語にもあるので、ほかの言語に乗り換えるのはあまり難しくないでしょう。
最終的には何個かのプログラミング言語を覚えることになると思います。
個人的にはC#をお勧めします。
投稿2017/02/12 04:04
総合スコア25
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。