• 締切済み

独学の利点

ソフトウェア開発に携わる方に質問です。 自宅でも独学で勉強していますか? また、仕事(業務)でかかわりのないことも 勉強しますか? また、勉強して業務で使わないとわかっているのに なぜ勉強するのですか? また転職したとして、たとえばJAVAができますと 言ったとします。(面接) その時、独学だとあまり評価されないのは 自分が、ただクライアントサイドの勉強で あって、実際に多く使われるのはサーバーサイド らしいのですが、実際の業務のサーバーサイドの コードを見たことがないので また、実際にネットに載っていないので 勉強のしようがありません。 いいアイディアはありませんか? 本で勉強しても、あくまで触り程度で 実際にそういう、JAVAのサーバーサイドに携わる 業務に入るしかないのでしょうか?

みんなの回答

回答No.8

>また、仕事(業務)でかかわりのないことも勉強しますか? >また、勉強して業務で使わないとわかっているのになぜ勉強するのですか? という質問をするということは、未だ明確なキャリアデザインが描けていない方だと思います。みんな、5年後や10年後のなりたい自分を思い描き、そのためには今何をすべきかを逆算して考えながら日々、生きているわけです。もっとも、仕事(業務)でかかわったことしかできない技術者でも構わない、って言うんでしたら止めはしないですけども・・。 去年まで、主要なベンダー各社が以下のような資格取得支援制度なるものを実施していました。(MSは、独自に一社だけでこれを実施。いわゆる、「MCA マスター」。) エンジニア育成支援プログラム「トリプル・クラウン」 http://www.lpi.or.jp/triplecrown_new/ プログラマは、プログラミングさえできればいいわけではありません。その背景として、OSやDBの知識も持ち備えていれば、より高度な対応が可能となります。 >また転職したとして、たとえばJAVAができますと言ったとします。(面接) >その時、独学だとあまり評価されないのは 今現在も、情報処理技術者カテにていろんな方々の意見が拝見できますが、重要なことは『競い合う相手を間違えないように』ということです。確かに、どんなに未経験者が頑張って高度な資格を取得したとしても、実務経験者には全く歯が立たないでしょうが、張り合う相手が異なります。未経験者は、まず最初に『未経験者同士の競争』に打ち勝たなければなりません。 ここのカテ内でも未だ、「SJC-Aなんて・・」みたいな意見がたまに聞かれますが、私はとても意義あることだと思います。SJC-Aに合格する頃にはクラスとインスタンスの違いや型変換、equalsメソッドの利用などもマスターしていることでしょうし、何よりも自信が付きます(何せ、Sun認定ですから)。それに、ここのサイトだからこそ「何でインターフェイスを利用するの?」などの質問に対しても、相手をしてくださる方々がいらっしゃるわけで、実際の現場でなら十中八九「えっ??」って言われますよ。(敢えて、ニュアンスや文脈などは伏せておきます。) >自分が、ただクライアントサイドの勉強であって、実際に多く使われるのはサーバーサイドらしいのですが、実際の業務のサーバーサイドのコードを見たことがないのでまた、実際にネットに載っていないので勉強のしようがありません。 >いいアイディアはありませんか? 兎にも角にも、Tomcatのインストールです。ちょっと前にも、レンタルサーバがどうのこうのと言っている人がいましたが、全くの不要です(その人は、恐らくループバックアドレス[127.0.0.1]の事を知らないのでしょう。)。「サーバ」という言葉には、ハードウェア的な意味とソフトウェア的な意味がありハード系(ブレードサーバとか)に関しては無関係です。実際の現場でも、開発環境と運用時の環境を同じにする必要もないし、テストも「総合」と「受け入れ」で異なります。「Apache」というWebサーバソフトをインストールすれば、たとえデスクトップPCやノートPCでもWebサーバマシンとなりますし、HTTP通信もlocalhostで指定すれば、自身のPC内で処理が完結します。 あとは、一季節に一回ぐらいは、都会の大型書店に用が無くても足を運ぶことでしょうか。

全文を見る
すると、全ての回答が全文表示されます。
  • thamansa
  • ベストアンサー率40% (95/232)
回答No.7

>また、勉強して業務で使わないとわかっているのになぜ勉強するのですか? 業務で必要になってからでは遅いので、あらかじめ勉強しておくのでは。 >また転職したとして、たとえばJAVAができますと言ったとします。(面接) >その時、独学だとあまり評価されないのは Javaやった事ありません、勉強もしていません、という人と、 業務では経験がありませんが、JAVAは独学で習得しているので基礎知識はあります、という人では評価は大きく違うと思います。

全文を見る
すると、全ての回答が全文表示されます。
  • HIRSYU
  • ベストアンサー率51% (45/87)
回答No.6

>自宅でも独学で勉強していますか? 皆さんが書いてるように、ほとんど趣味でやってます。 >また、仕事(業務)でかかわりのないことも >勉強しますか? 業務内容だけでは、自分の知的好奇心を満足させれないので、業務内容外を勉強してます。 業務内容は業務で勉強できますし。 >また、勉強して業務で使わないとわかっているのに >なぜ勉強するのですか? 趣味だから。 >また転職したとして、たとえばJAVAができますと >言ったとします。(面接) >その時、独学だとあまり評価されないのは >自分が、ただクライアントサイドの勉強で >あって、実際に多く使われるのはサーバーサイド >らしいのですが、実際の業務のサーバーサイドの >コードを見たことがないので >また、実際にネットに載っていないので >勉強のしようがありません。 >いいアイディアはありませんか? 面接では、心象を良くするためほとんどの人が「勉強をしている」って答えてると思います。どの程度勉強してるかっていうのが、口答だけだと判断できないところがあるからだと思います。 皆さん書いてますが、勉強の「教科書」的な物は「ネット」だけではなく「書籍」もあります。 >本で勉強しても、あくまで触り程度で >実際にそういう、JAVAのサーバーサイドに携わる >業務に入るしかないのでしょうか? 皆さんが答えてるとおもいますが、そこそこ業務で使えるようなのもネットでありますよ。 そのサイトで公開されてるソースの1から10までが使える物なんてコピペオンリーで使えるようなものは、まず無いですが。 触り程度のものから、少しずつ勉強していけばいいのではないでしょうか。 実際にサーバーサイドのPGを作ってみてはどうでしょうか。 作りたいシステムを具体的に考えて、簡単な仕様書を作成し、触り程度のPGから、仕様書で定義した機能を徐々に加えていく。 PGって基本的なやつの組み合わせや応用で結構いけるものです。(もちろん上級技術的なのが必須なのも数多いですが) 「ネット」や「書籍」で調べても詰まるようでしたら、ここ等で質問する等してみてはどうでしょうか。 もし転職活動するんであれば、こんな感じで作成した「簡単な仕様書」と「プログラムソース」は提出物(実力を示す物)として使えますよ。 口答で「○○を勉強した」って答えるより、実力が伝わります。

全文を見る
すると、全ての回答が全文表示されます。
  • buriburi3
  • ベストアンサー率44% (353/792)
回答No.5

1) 自宅でも独学で勉強していますか?  している。むしろ、するのが普通? 2) また、仕事(業務)でかかわりのないことも勉強しますか?   また、勉強して業務で使わないとわかっているのになぜ勉強するのですか?  している。むしろ、しない方が不思議。  業務上必要な事は業務時間内に勉強すればよい。  業務上必要無い事を業務時間にに勉強することは出来ないので、興味があるけど業務には関係ないことは自宅で勉強する。  面白そうな仕事があっても知識がなければ手を上げられないでしょう。 3) JAVAができますと言ったとします。(面接)   その時、独学だとあまり評価されないのは  理由1: 業務と学習では密度が全く違う。      Sun-Java認定でも取れば学習の成果が一定以上にある事は評価されるでしょう。  理由2: サーバーサイドのプログラムは(言語に関係なく)ユーザー管理(セッション維持、プロセス制御::Javaだとプロセス制御はあまり考えなくて良い)に独特の知識が必要です。      基盤としている技術(HTTP)が処理の連続性を持たない事に深く関係しています。      Javaでプログラムが組める事とサーバーサイドプログラムが組めることは別問題です。 4) 実際の業務のサーバーサイドのコードを見たことがないので   また、実際にネットに載っていないので勉強のしようがありません。   サーバーサイドのコードに限らず実際の業務のコードがネットに載ることなど殆どありません。   サーバーサイドの基本的なコードはWebプログラム系の参考書やサイトが掃いて捨てるほど存在します。   入門版のお勧めはこんなところ   『基礎からのサーブレット/JSP 改訂版』   『はじめてのJSP&サーブレットプログラミング Eclipse3.1+J2SE5.0対応』   『Oracle Application Server 10g運用管理徹底ガイド 』    ※付属の10gASトライアル版はCentOS2.0で動作しますのでVirtualPC等で環境を作れば試せます。   他に業務目的ならDataBase(SQL)の知識とJDBC、JXLの使用方法くらいは押さえておきたいところでしょう。

全文を見る
すると、全ての回答が全文表示されます。
  • MrBan
  • ベストアンサー率53% (331/615)
回答No.4

> 自宅でも独学で勉強していますか? Yes. > また、仕事(業務)でかかわりのないことも勉強しますか? Yes. むしろ、業務でできないことを趣味でやってます。(業務上では、Javaはメインでない) > また、勉強して業務で使わないとわかっているのになぜ勉強するのですか? 興味がある、趣味だから。 > その時、独学だとあまり評価されないのは どうでしょうね。 ソレを目的にやってるわけではないので効果のほどは分かりませんが、 例えば業務でC/C++の経験がしっかりあったとして、そのほかに、 個人としてJava製のソフトを作成する実績を提示するなどすれば、 「あぁ、Javaでもそれなりにできるだろうな」と見えるのでは。 # Sun認定など取ってみる手もあるのかもしれませんが費用対効果が悪そう…。 > また、実際にネットに載っていないので勉強のしようがありません。 本やWebの情報を元に、自分で家庭内に立ててみたらいいのでは。 他人のものを見るのも勉強方のひとつですが、自分で組めるようでないと、 面接で「できます」といってみても弱いのでは。

全文を見る
すると、全ての回答が全文表示されます。
  • oka5130
  • ベストアンサー率66% (35/53)
回答No.3

> 自宅でも独学で勉強していますか? > また、仕事(業務)でかかわりのないことも > 勉強しますか? 業務に関係なく、興味があるものを見つけたらやります。 「新しいことを勉強しよう!」って思って本を買ってみたりしても、 興味のないことだと続かないので…。 > また、勉強して業務で使わないとわかっているのに > なぜ勉強するのですか? 「勉強」という言葉を使うと、使わないとわかっているものを勉強する人は少ないと思います。 私もそうですが、自宅でもやっているのは興味があることだからだと思います。 例えば、大学のセンター試験のためにプログラミングを勉強する人はいませんもんね。

全文を見る
すると、全ての回答が全文表示されます。
  • lv4u
  • ベストアンサー率27% (1862/6715)
回答No.2

沢山の質問項目がありますね(笑) >>自宅でも独学で勉強していますか? やってますね。ただし、そのときは「勉強」じゃあなく「趣味」って感覚の場合が多いです。 >>また、仕事(業務)でかかわりのないことも >>勉強しますか? >>また、勉強して業務で使わないとわかっているのに なぜ勉強するのですか? いつか使うかもしれない、または会社に使わせるためのネタ(デモソフト)を作るための勉強。 なんでもかんでも勉強ってことはない。興味ないことはやらない。 >>実際の業務のサーバーサイドのコードを見たことがないので また、実際にネットに載っていないので 勉強のしようがありません。 いいアイディアはありませんか? ネットをみると、オープンソースのCRMシステムなんてありますよ。実際に業務に使われています。膨大なソースだと思えます。 http://sourceforge.net/projects/compiere/ 以下のIPAのオープンソース・ソフトウエアのサイトをみて、ソースを探してみるのもいいと思います。 http://ossipedia.ipa.go.jp/ でも、現在、RubyonRailsが10年前のJavaのような注目を集めていますよ。そして、CODEGEAR(元Borland)の3rdRailは注目ソフトですね。リファクタリングの機能が凄いです。 >>本で勉強しても、あくまで触り程度で 実際にそういう、JAVAのサーバーサイドに携わる 業務に入るしかないのでしょうか? ソフト開発の実務は、独学、机上(学校)では無理な面があります。徒弟制度のように、マスターの元で実務を通して修行する必要があると思います。最近の情報系大学では、実際のシステムを企業から請け負って、学生に開発させるところもあるようですが、そういう教育なら、役にたちそうです。でも、学生さんが徹夜を何週間も続けて、システムを完成させても、成績としてみれば、1つの単位がOKになるだけで非効率な面があるかも?指導教官も大変かもしれないですね。 なんにしても「このシステムは実務で使われる!金がからんでいる!」と思えば、学習意欲が全然違ってくると思いますね。 まあ、プログラマは、5年でそこそこレベル。10年でやっとマスターの仲間入りって感じでしょうか?気長に勉強しましょう。

全文を見る
すると、全ての回答が全文表示されます。
  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.1

サーバーサイドJAVAの場合は サーブレット、JSPで調べると たくさん出てきますよ。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Java EE SDKとJava SDKについて

    お世話になっております。 現在以下の環境でサーバサイドプログラミングをしております。 Eclipse Europa Version 3.3.2 J2SE SDK1.5.0_15 Apache Tomcat /5.5.26 この環境でも問題なくサーブレットやJSPの開発ができており、動作確認もできております。そこで気になったのが、Java EE SDKの存在です。構成内容を見てみるとSample?のようなものとそのほかにも色々入っているようですが、JavaSDKだけで開発ができている今、これらの存在が疑問です。 なんとなく、JSPのコードをコンテナがサーブレット形式にコンパイルする際にJDKが必要なのだということはわかったのですが、なぜにサーバサイドプログラミングであるのにJ2SE Software Development Kitで開発が行え、Java EE SDKが必要ないのでしょうか。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • JAVAの開発環境について

    JAVA初心者です。 サーバサイドのJAVAの開発を行います。 サーバはSun Solaris9で、クライアントは WindowsXPです。 Servletはサーバに格納して動作させるものですが、 このコーディング・コンパイルはWindowsで行って、 コンパイルが通ったものをサーバにコピーする、という方法で開発できるのでしょうか? それともサーバはSolarisなので、コーディングは全てSolarisで行わなければならないのでしょうか。 非常に初歩的な質問で申し訳ないですが、回答をお願いいたします。

    • ベストアンサー
    • Java
  • オブジェクト指向の利点とは?

    汎用機でCOBOLのSEを10数年やってました。(今は自営業) COBOLはプロセス型の言語といわれているのに対して C言語はオブジェクト指向型の言語といわれています。 私はC言語やJAVAで開発したことはないのですが、 C言語、すなわちオブジェクト指向の利点ってなんでしょう? JAVA、C言語はオブジェクト指向ですよね。 私はソフトウェア開発技術者の資格など持っていますのでオブジェクト指向の表面的な意味は分かります。 ですが実際、アプリ開発時・運用時にどのような利点があるのかがイマイチ分かりません。 「どっちでもいいんじゃないか」なんて思ってしまいます。 プロセス指向(VB、COBOL等)とオブジェクト指向(C言語、JAVA)の差異って何なんでしょう。 よろしくお願いします。

  • 開発にプログラミングは必要ですか?

    今Javaを独学で勉強中なのですが、開発等の仕事には必要ありますか?将来私はアイデアを出すのが優れているらしく(自分でも思ってます)それを活かし新しい家電等の開発をしたいんですが。大学卒でないので最初から無理かもしれませんがこの優れている部分を無駄にしたくないんです。大学卒でなければ出来ないのなら悔しいですが諦めます。もしJava以外に開発で必要なプログラミングがあるなら教えてください。

    • ベストアンサー
    • Java
  • 転職のため、Web開発の経験を独学で積むには?

    オープン系のシステムエンジニアなのですが、社内では主に業務系デスクトップアプリケーションの受託開発がほとんどであり、通販やその他ネットビジネスのためのサイトの構築において必須のWEBアプリケーションの経験すらさせてもらえません。 C,C++,C#,VB.NETおよびOracle等のSQLしか経験したことがありません。 自宅で独学でスキルを積むには、JavaやphpなどWebアプリ用の言語を一から勉強したいのですが、自分が契約しているISP上にホームページを作って試行錯誤する意外に効果的な方法はありますか? また、Javaやphpのプログラミングを行ったり、それを使用したホームページをデザインするには、どのようなツールがお勧めでしょうか? (例えば、デスクトップアプリの開発には、Visual Studio、というようなもの)

  • Linuxでの開発について

    よく転職サイトでシステムエンジニアとかの募集でLinuxでの開発があることとありますが、実際はどういうことを指すのでしょうか? プログラマとしてJava(サーブレットやサーバサイド開発込み)やTeratermは使用したことがありますが、それとは別ものとはわかってても、じゃあ何?と聞かれると答えられません。 Linux環境での開発、これだと解る説明をください。

  • web系技術者に行くには

    情報サービス産業の仕事をしています。 現在、汎用機系のソフトウェア開発にかかわっておりますが今後のことを見据え、 WEB系の開発にかかわるようにシフトを行いたいと考えています。 そこで自分なりに考えた結果、以下の知識・技術の習得が必須かなと考えました。 1.サーバ系言語   JavaもしくはC# 2.クライアント処理系の言語   jQueryもしくはSCALA 3.データベース知識   ベンダ製品系ですと、オラクル   体系的な基礎知識はデータベーススペシャリスト また、30歳からの転身は可能なものでしょうか? なお、私の略歴としては・・・ 30歳、男性。 業務開発経験のある言語としては、 C言語(制御系)、COBOL(業務系)、JavaScript(業務系)での開発経験があります。 ご教授のほどよろしくお願いいたします

  • 初歩的な質問ですいません

    初歩的な質問ですいません。 Javaの勉強を始めたんですが、わからないことがありますので、質問します。 サーバーサイドJavaは、サーバ側のプログラミングに使うと書いてあったのですが、他のサーバ側でないもの(どんな種類があるかわかりませんが)は、サーバーサイドJavaではなく、なんと言うのでしょうか。 また、それらは、JSPやサーブレットは使わないのでしょうか。

    • ベストアンサー
    • Java
  • ブラウザ上で稼動するアプリを作りたい

    ゲームや業務ソフトといった様々なブラウザ上で動くソフトを開発したいと思っております。 基本、HTMLで画面を作成して動的処理をするプログラム言語でコーディングしていく方法でやりたいのですが、どういう言語が必要でしょうか? 簡単な業務ソフトならばJavascriptで作れそうですが、ゲームとなるとサーバー上で処理をするのでサーバーサイド系の言語、データベースや、クライアント系の言語もいると思いますが……

  • apacheとtomcatについて

    お世話になっております。 現在趣味でapacheとtomcatを連携させて webアプリ的なものを作成しています。 そこで疑問に思ったことなのですが、 apacheとtomcatを連携させるのは、 ポート80からもサーバサイドJavaが使えるようになる、という 利点があるからだという風に解釈しています。 ただ、web上の様々なサイトを見るところ、 クライアントサイドはapache上で動かし、 サーバサイドはtomcat上で動かすという様な分別の仕方をしている ような記述が多く見られます。 私はクライアントサイドもサーバサイドも 全てtomcat上に配置して動かしているのですが、 クライアントサイドをapache上で動かすのはどのような利点があるのでしょうか。 よろしくお願いいたします。