• 締切済み

WEBアプリケーション開発におけるプログラミング言語選び

こんばんわ。 メーカー系IT企業にSEとして入社して、 2年目になるriridewと申します。 プログラミング言語選びで相談に乗ってください。 私の所属する部署ではWEBアプリの開発を行っています。 顧客は某大企業です。 IEを起動し、ログイン画面でIDとパスワードを入力してログインし、 必要な項目を入力して、検索、新規登録、変更、削除、CSV出力などを行なったり・・・。 新人研修でJavaを2~3ヶ月勉強しましたが、新人の中でかなりの落ちこぼれでした。 JavaはC言語比べると簡単と聞きますが、私にはレベルが高いです。 2年目になるというのにプログラミングが苦手で、 新入社員と同等もしくはそれ以下のレベルしかありません。 一度諦めて、他の勉強(SQLなど)をしましたが、再度プログラミングを勉強しようと思います。 何の言語を勉強したらいいでしょうか。 先輩からは言語は何でもいいと言われます。 何の言語を勉強していいかわからないので、アドバイスください。 一番は「習得のしやすさ」です。 次に「開発のしやすさ」、それと「メンテのしやすい」言語がいいです。 サーバ:Windows Server 2003 Std(RDBMS:Oracle Database 10g) クライアント:Windows XP Professional(WEBブラウザ:IE6) 社内でのプログラミング言語:C#中心です。VB.NETもあります。 よろしくお願いします。

みんなの回答

  • lv4u
  • ベストアンサー率27% (1862/6715)
回答No.4

>>JavaはC言語比べると簡単と聞きますが、私にはレベルが高いです。 JavaはC言語よりも簡単というのは誤解でしょう。Javaは過去において、「打倒!C++」を旗印に、C++に後追いの機能拡張&誇大広告を続けた結果、初心者にとっては「わけわか」な言語になっていると思えます。そしてC言語は、非力なコンピュータでも使えるようにシンプルな作りで初心者にも入りやすい言語です。 ただし、C言語にはポインターという難解な壁があります。どうも、これがスムーズに理解できる人とできない人がいるようです。ポインターの壁が越えられないと感じられるなら、主力言語をC言語、C++言語以外にしたほうが良いでしょうね。 なお、Javaもポインターの考え方が解らない方だと学習する上で厳しい面があるような気がします。 >>2年目になるというのにプログラミングが苦手で、 新入社員と同等もしくはそれ以下のレベルしかありません。 プログラミングに限りませんが、それなりにマスターしたと感じるまでは、ある程度の学習量と期間が必要な気がします。例えていえば、水槽に水を貯める期間が学習期間ともいえます。水槽から水が溢れるようになるのが、「それなりに理解できた時」だとすれば、水槽の深さや広さがどのくらいかが解れば、想像できるでしょうが、現実にはそれを知ることはできません。 「いつか水が溢れる」と信じて、水を入れ続ける(学習を続ける)しかないでしょう。 ただ、ネットやPC系の雑誌で紹介されている「SE必読書」といわれるような書籍を50冊、念を入れるなら100冊ほど読めば、新入社員に大きな顔ができるようになると思いますよ。 >>次に「開発のしやすさ」、それと「メンテのしやすい」言語がいいです。 楽していてはダメですね。基礎を抜きにして学ぶと、トラブル時にお手上げになりますし、応用力も身につきません。できれば、1ボートコンピュータなどの組み立てキットで、アセンブラなどを学ぶことから始めるといいと思います。遠回りのようですが、「急がば回れ」です。 ただ、「プログラミングの面白さ(手軽に作れて、それでいて役にたつ凄いことができる等)を感じる」とやる気がでます。そういう意味では、スクリプト言語のPerlとかRubyがお勧めです。これらの言語は、マスターしておくと、プログラマ・SEになったとき、顧客の為の仕事でも使えますが、自分自身の仕事を楽にするためにも大変有用です。CやC++で作るとうんざりするような処理が、楽々記述できます。(処理は遅いですが・・。でも、ある処理に一晩かかっても、人間がやるよりもずーと早く、正確な結果が得られます。) C#はC言語の難しさ・めんどくささの原因であるポインターとメモリー管理からプログラマを解放してくれる言語ですが、同僚によると、「C#での開発だったけど、ポインターを使う必要があった。自分でメモリ管理するために面倒だったな。また.Netのバグには苦労した。」って言っていました。彼はC言語もできるので、わりとすんなり対処できたようですが、ポインタが理解できなかったら大変だったでしょうね。 ということで、将来的に仕事で有用な言語を勧めるとしたら、高級アセンブラと揶揄されるC言語です。C言語のソースとオプションでコンパイラが生成するアセンブラのコードを対比して学ぶと、スタックやヒープ、レジスターの使い方が学べていいですよ。

noname#259269
noname#259269
回答No.3

>一番は「習得のしやすさ」です。 >次に「開発のしやすさ」、それと「メンテのしやすい」言語がいいです。 上記であれば、私は VB.NET か C# を推します。 入門書やインターネットでの情報・事例が豊富にある、という点が大きいです。 ひとつ確認なんですが、「勉強」は自宅もしくは社内で行うことができ、業務とは直結しないのでしょうか? Web 開発は、画面を構成するだけでも HTML, CSS, JavaScript(VBScript) というようにいくつもの技術要素がでてきます。これにサーバ側で動く言語とDBアクセス(SQL)が加わってきますから、いきなり取り組むのはハードルが高いと思います。 ですから、業務と直結しない勉強ができるのであれば、一旦 Web とは切り離して、自分のパソコンだけで動く小さいシステムを作成してみてはどうかと思います。例えば、Windows に付属の電卓、これを(関数機能は除いて)作ってみるだけでも結構勉強になりますよ。 プログラミングが苦手ということは、ロジックの組み立てに慣れていないということだと思うので、場数を踏むことです。 あと、勉強するのであれば、言語だけではなく土台となる周辺知識も少なからず必要になってきますので、基礎からしっかり書かれた書籍も読んでおいた方がよいでしょう。 がんばってください。

回答No.2

何でもいい、というのは実は、どの言語でも必要となる能力は同じだから、どの言語でも使えるようになってほしい。という意味のような気もしますが、まあいいでしょう。 必要となる能力は、逆に言うとどれか一つ使えるようになれば、あとはさほど違わないということですから、習得のしやすさを重視するのは意味があるでしょう。 習得のしやすさは、学習用に機能を絞ったもののようなものも考えられますが。それよりも学習できるだけの環境を整えたり、本やWeb上の情報が多く誰かに教えてもらえたり、自分で学習ための情報を集めるのに困らないものがよいでしょう。 CやC++は難解で学習には向かないとされています。適当な書き方を許してくれない傾向なので確かに難しいように思えるのですが、実は情報は最もたくさんあるので、そういう面での苦労の少ない言語です。 C#やJavaは柔軟な書き方が許されていて学習に向いているとされています。ですが柔軟な分、本来の書き方が解りにく面もあります、また比較的新しい言語なので、ある目的の物を作ろうとするとき、それをC#やJavaでするのが自分が最初でCやC++を参考にしなければならず、結局CやC++を理解できる必要があることがでてくることがあります。PHPもC#やJavaと同じような傾向ですが用途がはっきりしているため、実現可能か不可能かで悩んで時間をとられることの少ない傾向があります、ただWindows Serverでは出番がないかも。 目的が違う言語ですが。JavaScriptのようなクライアントサイドのスクリプティングから始めるというのも良いかもしれません。体験をするのは簡単ですし、人口の多さから情報は入手しやすい、出来ることがはっきりしているので実現可能か不可能かで悩むことが少ないというメリットがあります。サーバサイドのC#やVB.NETで開発するのとは全く別の目的のものですが、Ajaxなどサーバサイドと連携するケースで役に立つかもしれません。

  • okg00
  • ベストアンサー率39% (1322/3338)
回答No.1

「会社の方針にもよるので、会社の先輩を含めた上司に相談してください」というのが正解かな。 趣味でやるんならRubyでもPythonでも簡単な言語で構わないと思うんですが、仕事でやるんなら納品してからメンテできる(生産性の高い)言語でやらないといけないのでは。C#中心ならそれでよいのでは。得てして習得しやすい言語は機能が限られており、結果的に生産性が低い事がありますので。 どうしても苦手なら、別の道に進んだ方が良いと思いますけど。SEなんですよね?PGじゃないんですよね?

関連するQ&A

  • webプログラミングが出来る言語ですか?

    javaというプログラミング言語は、 webプログラミングが出来る言語ですか? それともweb系ではなくソフトウェアを作成する言語ですか?

    • ベストアンサー
    • Java
  • JAVAはどんなプログラミング言語を用いて開発されたんですか?

    JAVAに関して質問があります。 (1)JAVAはどんなプログラミング言語を用いて開発されたんですか? (例えばC言語で作成されたとか) (2)JAVAで作られたプログラミング言語とかはありますか? (例を挙げるとRubyやHSPはC言語で書かれているとか、なでしこはDelphiで書かれているとかです。)

  • webを自由自在に操作しやすいプログラミング言語は

    webを自由自在に操作しやすいプログラミング言語は? 今はvbaでIEを立ち上げログインしたり、 欲しいデータを取得したりしてるのですが VBAよりも操作度が高くて、細かい事までできるプログラミング言語はありますか?

  • ウェブアプリケーション開発の定番は何ですか?

    データベースと連携したショッピングカートのウェブアプリを開発しようと思います。 自分は、今までウェブアプリを開発したことはなく、Access(VBA)とSQLServerによるデータベースシステムの開発経験しかありません。 VBの開発経験があるという事で、ASP.NETをVB.NETでプログラミングを考えましたが、VBとVB.NETは言語体系が異なるのと、またVB.NETが将来的に普及せず人気がなくなるか不安です・・・。 一番不安なのが、せっかく勉強して覚えた言語が、不安定だったり、あまり役に立たなかったり将来的に人気がなくなってしまう事です。 聞くところによると、JAVAとORACLEの組み合わせが定番というか需要が多いと聞きますがPHPもいいかなと思います。 以下の条件に当てはまるものでオススメの【開発言語】と【データベース】を教えてください。 ★OSはWINDOWS SERVERのみ。 ★開発言語は、とにかく将来的に人気がある言語がいいです。ただし、C言語は難しそうなので避けます。 ★データベースはSQL SERVERを使用。ただし、オラクルの方が将来性があってパフォーマンスもずっと良くて今後も人気があるということであればオラクルを選択します。 ★WEB SERVERはIISのみ。アパッチにGUIがあってマニュアル本も充実してて扱いが難しくないならアパッチを選択します。 また、VB2005というのは.NETの表示がありませんが、言語体系的にVB.NETの後継ではなくVB6の後継と考えていいのでしょうか? よろしくお願いします。

  • Webアプリケーション開発を学ぶためのお勧め入門書を教えてください。

    こんばんは、初めまして。 Javaを使ったWebアプリケーション開発に関する入門書で お勧めの物を紹介していただけないでしょうか? 今年3月からの新入社員教育でJavaを使ったWebアプリケーション開発の 講師をすることになりました。 講師をするのは全然構わないのですが問題は・・・自分はJavaをほとんど使ったことがありません。 素人の状態からあと1ヶ月でJavaを覚えて教材を作らなくてはいけません。 今日も本屋を覗いてみたのですが、Javaの参考書にはWebアプリケーションとは書いてなく、 また、そういったジャンルのコーナーも有りませんでした。 Javaでも種類がいくつかある(?)らしく、どのJavaを覚えればよいのかもよくわかってません。 こんな状態ですが、何かお勧めの書籍はありませんか? 以下書籍の条件です。 ・Java言語を使ったWebアプリケーション開発が中心に書かれている。 ・1からはじめるので入門書レベルの物を・・・ ・開発環境を無料で整えられるもので書かれている。 以上です。よろしくお願いします。

    • ベストアンサー
    • Java
  • JavaScriptとWEBプログラミング言語!

    WEBプログラミングの勉強中の者です。 ケースバイケースだと思いますが、 WEBサイトをプログララミングしていく上で、 JavaScriptで作るべき部分と、 PHP、Python、Go言語などのWEBプログラミング言語で作るべき部分について ご意見を頂ければと思います。 ■今日の日付を取得する部分などは、JavaScriptとWEBプログラミング言語では、 サーバー上の実行速度が早い方のプログラミング言語で作るべきでしょうか? 同じくらいの速度の言語ならなるべくJavaScriptで作った方が、後で他の言語で作りなおす時に手間の工数を削減できて良いでしょうか? ■流石にNode.JSなどをの除いてSQLの部分はWEBプログラミング言語以外は実装は難しいので、WEBプログラミング言語で実装するべきなのは理解できています。

  • WEBのプログラミング言語

    hiroです。 今、会社でWEB画面を作ろうと思っているのですが、 下記の条件があって、どの言語を使用するか、困っています。 使用したことがあるのがVBA,VB,VB.NET等ありますが、 お勧めのプログラミング言語を教えてください。 よろしくお願いします。 条件 (1)クライアント側のPCのOS種類がXPとWindows2000 (2)クライアント側はダウンロード 禁止 (3)サーバー側Windows Server 2008+Oracle 11g

    • ベストアンサー
    • CSS
  • プログラミング言語の勉強

    新規でプログラミング言語を勉強するのにおすすめの言語は何でしょうか? プログラミングの知識としてはHTML、javascriptを少しかじった程度です。 主な目的はブラウザ上でデータの処理や閲覧等を容易に行えるように そのうちアプリみたいなものも作ってみたいなと考えています。 調べる限りではPython、Rubyあたり?データ処理を行うのであればSQLiteあたり?なのかなと考えています。 ただし、最終的に個人の勉強にとどめるのではなく勤めている会社で使えるものを使いたいと考えており、制約として会社では自由にインストールや業務に関係ないようなWebサイトは閲覧制限がかかっています。上記にあげた言語はインストールする必要があるようで会社ではダメなのかなと・・・ 開発、実行環境としてインストール等必要がないものがあればご教授ください。 OSはWindows10、ブラウザFirefox、IE11です。

  • プログラミング言語を作るには

    オリジナルなプログラミング言語を作ってみたいと考えています。 ただ、どうやって作ればいいかがわかりません。 私は、今のところ、Perl、なでしこ等々、簡単なプログラミング言語での プログラミングしか出来ません。 しかし、プログラミング言語を作ることによって、 プログラミングの勉強にもなると考えているのですが まずは、簡単なものでもいいので、それらしいものを作るには 何から勉強を始めればいいでしょうか、 又、他の言語を覚える必要はありますか。アドバイスを御願いします。 もしくは、例えば、参考になりそうなWEBサイトや、 書籍等々でも、結構です。宜しく御願いします。

  • 新言語プログラミング2005?

    以前にC/C++言語・Javaプログラミングを勉強したことがあるのですが、今は違う業界にいて、最近では何のプログラミングが最新なのか分かりません。 「これから」という新言語プログラミングを、誰か知っていたら教えてください。 ちなみに、C言語とJavaの検定・2級を持ってます。

専門家に質問してみよう