- ベストアンサー!ちよりシステムエンジニア(SE)
私は未経験で入社し、Java→PHP→Scalaと学んできました。
どれも独学ではなく、派遣先の現場でそれらを使っていたから、現場を移るたびに勉強していた感じです。
最初がJavaから入ったので、今でも迷わずにかけるのはJavaです。ただ、Javaは何を書くにも仰々しい量のコードになってしまうので、ちょっとしたコードや小さいwebアプリケーションであればPHP、と使い分けられるようになってきました。
今はこれぐらいで十分(というか、新しく覚えるよりは今の技術をもっと磨いていった方がよさそう)だと思っていますが、サブプログラムでRubyやpythonのバッチを目にすることも多く、広く浅くでも良いのかも・・・?と悩むときもあります。
正直な話、フリーエンジニアではなく会社員ならば、会社の得意とする方向に従っておくのが一番だとは思います。身も蓋もないですが。。
よく「この言語はこれから廃れていく」とか「これからはこの言語だ」なんて言いますが、会社で一人だけが新しい技術を身に着けても、それだけではあまり意味がないこともあります。先陣を切って学んで、勉強会などで周りに広めていけるぐらいだと、一番いいんでしょうね。 - ankimoシステムエンジニア(SE)
学生の頃C言語をメインにプログラミングを行っていましたが、入社してからはJAVA⇒C#.Net⇒Objective-C⇒PHPを学びました。
特に一番プログラミング歴が長く、また自信を持って得意といえる言語はC#.Netです。一時期私の会社ではクライアントアプリケーションを全てC#.Netで作っていた時代がありました。
その際にがっつりとC#を覚えて得意になりました。
PHPは現在WEB系システムが流行りの為習得しました。PHPは特に開発環境に依存しないためどこでも学べるので便利な言語ですね。
学んでいて楽しかったのはObjective-Cです。これはiOS開発時に習得しました。先に学んでいたJAVAやC#とは違い独特性のある言語で最初は習得に時間がかかりましたが覚えてしまうとこんなにも楽しい言語があるのかと思ったほどです。
もしゆうとさんが次に自由に言語習得される機会がありましたら是非私はObjective-Cをおススメします。 - kyonプログラマー
私はJavaからプログラムの世界に入りました。まったく未経験の状態で、たまたま研修で教えられたのがJavaだったからです。その後の派遣先もJavaを使用したところが多かったです。
しかし、中にはVBやlubyを使用したところもありました。そのため、急いで現場に合った言語の知識を叩きこむ、といったことが必要になったこともあります。順番としては、Java→VB→luby
という感じです。
最近ではpythonや基礎であるC++の勉強もしなければならない、と感じています。会社の人から聞いた話ですが、今一番勢いがあるのは、lubyらしいです。PHPはもう時代遅れだという考えの人もいました。
しかし、システム関係の業務では、まだまだJavaが生き残っていくと思っています。
質問者様がもし今後どのような言語を学習していくべきか迷っているなら、私はJavaをおすすめします。Javaが出来るというだけで仕事には困らないと思います。- 13日金曜日のJSONフロントエンドエンジニア
横槍すみません。lubyはRubyのことですよね。慣れてないと環境つくるのが結構大変らしいですが、そこを乗り越えてしまえば「早く乗り換えればよかった」といってる知人は多数います。なんかRailsは海外でも人気(おしゃれらしい)です。ただ、Web系じゃないならJavaやっとけばいいかもしれません。
- 13日金曜日のJSONフロントエンドエンジニア
- ユリノハナコプログラマー
C++とJavascriptを開発で使う仕事がまったく想像できないんですがWeb系でしょうか?間違っていたらすみません。
Web業界であれば、Javascriptは需要のある言語なので、ある程度コードがかけるのであれば、当分の間は飯が食えると思います。無理して風呂敷を広げずに、C++と同じぐらいのレベルまで、Javascriptが書けるよう学習されてみてはいかがでしょうか?
私の回りにはいろんな言語を勉強しては辞めてしまい、何一つ身につかなかったエンジニアを知ってます。ゆうとさんのようなC++をマスターされた方であれば、そんなに言語に拘る必要はないと思いますので、自信を持ってください。
習得したプログラミング言語と順番ですが、まずはじめに、私は未経験で就職して社内でJavascriptとPHPいうサーバーサイドのプログラムを学んでホームページの掲示板やSNSなどのサービスを作ってました。その後にRubyというPHPに近いサーバーサイドの言語を学び、Androidのアプリ開発でJavaを学びました。
- Mizuテスター
アセンブラ→C言語->VC++->VC#のような経緯で、今まで経験してきましたが、ふと、ふりかえると、
例えば、同じ機能をもった単純な関数(メソッド)を、実際に別言語で、書いてみると、学びやすいのかもと思ったりもしました。
自分の場合は、実際に、業務経験の中で、VC++→VC#に移植する機会があり、その期間で大分、VC#に慣れた覚えがあります。言語というものは、よく観てみると、変数があり、定数があり、制御文があり、API(C++、C#系だとクラス@メソッド))という登場人物たちがいて
その宣言のしかた、実装の仕方は、言語によって異なるのですが、上記のような単位で、こっちの言語では、こうやってるけど、あっちの言語では、こうやって
実装するのかあ~と比較しながら、(そうでした!自分の知ってる言語の登場人物と これから学ぶ言語の登場人物の比較表を作ったりしてました!)
具体的には、文字列 VC++系:Cstring VC#:String /文字列書式:VC++系:~~ VC#:~~~~ このTipsを、蓄積してゆくと
ある程度たまってくると基礎固めがいつの間にか完了していて、何か、ふと忘れるとこの比較表をみにゆき、いつの間にか、覚えこみが完了すると
その比較表を見ることは、減っていったように思います。以上、参考になれば、幸いです☆