なにか新しいプログラミング言語を学ぼうと思います。

つきましては、おすすめのプログラミング言語をご推薦ください。
他の方と重複しても結構ですので、「あえて○○を推薦する」などのような、個人的な好みや奇をてらったご回答ではなく、下記を読んで、真剣にご回答願います。

希望する条件は以下のとおりです。(優先順)
・ウェブアプリケーションも、デスクトップアプリケーションも、両方つくれる
・優秀な開発環境が、無料または低価格で提供されている
・GUIの構築が容易
・日本人ユーザが多く、ネット上で多くのご助言をいただける
・デスクトップアプリケーションにおいて、ウェブ上のテキスト情報を取得するのが容易
・言語の開発主体が開発を放棄しないと考えられる
・バージョンアップにおいて後方互換性を重視している
・正規表現が使える
・実行環境に対する依存度が低い
・高レベル言語である

なお、プログラミングはWindowsXP上でおこないます。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2009/11/09 18:10:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答8件)

id:b-wind No.1

回答回数3344ベストアンサー獲得回数440

ポイント17pt

・ウェブアプリケーションも、デスクトップアプリケーションも、両方つくれる

・優秀な開発環境が、無料または低価格で提供されている

・GUIの構築が容易

このあたりでもう Java か VB.NET ぐらいしか選択肢がないと思う。

・デスクトップアプリケーションにおいて、ウェブ上のテキスト情報を取得するのが容易

・実行環境に対する依存度が低い

こちらを考慮して Java が一歩リードぐらい。

MS の言語および開発環境の情報は会員サイトかPCにインストールするマニュアルに

集中しがちだし、実行環境は基本 Windows のみ。

言語としてはちょっとレガシーな部分も残ってるけどね。


なんというか、要領を得ない雲をつかむような質問が多いねぇ。

id:y-kawaz No.2

回答回数1422ベストアンサー獲得回数226

ポイント17pt

その条件ならJavaが一番無難に満たしていると思います。

id:saru7 No.3

回答回数606ベストアンサー獲得回数13

ポイント16pt

やはりJavaがいいのではないでしょうか?

http://e-words.jp/w/Java.html

プログラミング言語比較

http://www.geocities.jp/turtle_wide/programming/programing.html

id:misosoup No.4

回答回数27ベストアンサー獲得回数0

ポイント16pt

ruby。

VisualuRubyならデスクトップアプリケーションも作れます。

それに、日本人が開発した言語ですから、情報は多いですよ。

id:azuco1975 No.5

回答回数613ベストアンサー獲得回数16

ポイント16pt

C#

id:garyo No.6

回答回数1782ベストアンサー獲得回数96

ポイント16pt

Rubyをお勧めします。

希望する条件は以下のとおりです。(優先順)

・ウェブアプリケーションも、デスクトップアプリケーションも、両方つくれる

WEBアプリも作れますし、ディスクトップアプリはVisualuRubyやwxRuby等で作れます。

http://www.osk.3web.ne.jp/~nyasu/software/vrproject.html


・優秀な開発環境が、無料または低価格で提供されている

無料のIDE RDEが公開されています。

http://homepage2.nifty.com/sakazuki/rde/index.html


・GUIの構築が容易

VisualuRuby用に

FormDesigner for project VisualuRuby というフォームデザイナーがあります。

http://sourceforge.jp/projects/fdvr/


・日本人ユーザが多く、ネット上で多くのご助言をいただける

日本発の言語ということで、日本人ユーザーが多いです。

ruby メーリングリストなどで質問できます。

http://www.ruby-lang.org/ja/community/mailing-lists/


・デスクトップアプリケーションにおいて、ウェブ上のテキスト情報を取得するのが容易

require "open-uri"

open("http://yahoo.co.jp"){|f|puts f.read}

単純に開くなら上記で十分ですし


Hpricot,WWW::Mechanize,nokogiriなど色々ライブラリがあります。

http://route477.net/rubyscraping/


・言語の開発主体が開発を放棄しないと考えられる

たぶん、大丈夫でしょう。


・バージョンアップにおいて後方互換性を重視している

ある程度の互換性はあります。


・正規表現が使える

問題無いですね。


・実行環境に対する依存度が低い

Windows,MAC,unixどれでも動きます。


・高レベル言語である

高級言語です。


なお、プログラミングはWindowsXP上でおこないます。

WIndowsならActiveScriptRubyがお勧め

http://www.geocities.co.jp/SiliconValley-PaloAlto/9251/ruby/

id:kitaakabane No.7

回答回数82ベストアンサー獲得回数2

ポイント16pt

・ウェブアプリケーションも、デスクトップアプリケーションも、両方つくれる

・優秀な開発環境が、無料または低価格で提供されている

・GUIの構築が容易

・日本人ユーザが多く、ネット上で多くのご助言をいただける

ならHSPというプログラミング言語もっともが満たしているように思います。

また

・デスクトップアプリケーションにおいて、ウェブ上のテキスト情報を取得するのが容易

・バージョンアップにおいて後方互換性を重視している

・高レベル言語である

はモジュールを介すことにより可能です。

2.61⇒3へのバージョンアップの際も在来からの仕様の切り替えもモジュールでのサポートがありました。複数のバージョンが同時に使用する(たとえば2.61と3.0と3.2を共存させられる)ことも出来ます。

そのモジュール自体もC#なので開発が可能です。

・実行環境に対する依存度が低い

はJavaやCGIに変換・実行するシステムもあります。

開発者が日本人であることの他、構文が簡素で簡単なのも大きなポイントです。

http://hsp.tv/

id:uml No.8

回答回数97ベストアンサー獲得回数2

ポイント16pt

>・ウェブアプリケーションも、デスクトップアプリケーションも、両方つくれる

こういう場合普通は「コンパイラ系を1つ、スクリプト系(LL系)を1つ」覚えると良いと言われています。


そのため以下のような発言がでるわけです。

>> それにしても無茶な要求ばかり並んでますね。

>個々の要求自体はそれほど無茶とは思わないが、同時に満たすのはなかなかね。


ウェブアプリケーション:LL系といわれるPerl,PHP,Ruby,Python,・・・

デスクトップアプリケーション:コンパイラ系 C#,Java,C++,VB.net,・・・

(色物系 HSP,なでしこ、・・・)


LL系では

Perl:一番古くからあるため、大抵のサーバーで使用可能。ただ古い。今更・・・という話もある。

PHP:レンタルサーバーなどでWEBアプリを作る場合は一倍便利そう。対応しているサーバーも多い

Ruby,Python:オブジェクト指向スクリプト。言語として新しいので勉強するには良い。日本人ユーザーはRubyの方が多そう。


コンパイラ系では

Java:プラットフォーム非依存。WEBアプリでは業務系で使われることが多い。安いレンタルサーバーでJava使用可というのは少ない。(PHPの方が多い)

.net系:VC++,C#,VB.net どれも.net frameworkで動いているので、文法の違い以外は対して違いはない。これを選んだ時点でプラットフォームはWindowsになる。C#が文法的には過去のしがらみがないため素直。VC++は互換性のため、かなり無理をしている感がある。VB.netはVB6を切り捨てて互換性がない。

新規に覚えるのであればC#がお勧め。VBを昔から使っていたとしてもVB.netは新規覚えなおしになるので、C#と変わらない。VC++はよほどの理由がない限りお勧めしない。

レンタルサーバーで.net対応はJavaより少ない。(Javaも.net対応もレンタルサーバーではあまり見たことがない)


結論としては1つの言語ではなくLL系から1つコンパイラ系から1つ覚えることをお勧めします。


LL系からはこれから覚えるのであれば、新しい言語ということでPythonかRuby,日本人ユーザーが多いという点でRubyをお勧めします。


コンパイラ系ではWindowsでアプリを作るのであればC#,Windows以外でも動くアプリを作るのであればJavaをお勧めします。



最近の流行は関数型言語(Haskell,OCaml,Scheme,・・・)かも知れませんが、WEBアプリもディスクトップアプリも得意ではないですね。

  • id:standard_one
    「新しい」の意味が微妙な気がします。
    自分の知らない言語という意味なら何を知っているのかの列挙が必要ですし、年代的に新しいという意味なら西暦何年以降という指定が必要です。
  • id:kn1967
    Tcl/Tk と言ってみるテスト。
  • id:b-wind
    > Tcl/Tk
    言語としては Tcl になりますん。
    まぁ、Tk とセット以外の呼び方は殆ど見ないけど。
    あえていうなら、 Perl/Tk や Python/Tk もありますん。
    Redhat Linux のインストーラは Python/Gtk だっけ?

  • id:kn1967
    Python・・・いいかも・・・

    それにしても無茶な要求ばかり並んでますね。


  • id:tsnawo_mmm
    HSP3なら7つ目まで満たしてますが。
    きっとjjkkjpjjkkjpさんのレベルにピッタリだと思いますよ。

    http://hsp.tv/make/hsp3.html
    > HSPLetのJava変換機能によりWEBブラウザ上でも動作させることができます
  • id:b-wind
    > Python・・・いいかも・・・
    もしかして IronPython も含めれば結構いい線いくんじゃなかろうか。

    > それにしても無茶な要求ばかり並んでますね。
    個々の要求自体はそれほど無茶とは思わないが、同時に満たすのはなかなかね。
    一応理想的ではあるけども。

    > HSP3なら7つ目まで満たしてますが。
    あったね、そういえば。厳密に満たしてるかはちとあれだけどいい感じでは無いだろうか。
    >> HSPLetのJava変換機能によりWEBブラウザ上でも動作させることができます
    いや、それはブラウザ上で動くデスクトップアプリだから。
    ウェブアプリケーションとして動かすなら CGI でいい。
  • id:Reiaru
    > ・日本人ユーザが多く、ネット上で多くのご助言をいただける

    これは「人力検索で私の要求したコードを代わりに書いてもらえる」という意味ですか?
  • id:Reiaru
    一つ言っておきますが、今時のプログラム言語なんてどれでも大差ありませんよ。
    未だに C はちょっと特殊ですけどね。

    プログラムにはその人の資質と言いますか、向き不向きというのもありまして。
    駄目な人はいくら言語を換えた所で無理ですので悪しからず。

    でもって、一番容易なのが Visual Basic です。
    Visual Basic なんて全てのメソッドやらプロパティーを覚える事くらいは楽勝でしょう?
    Class が理解できないとか言うなら多少は分かりますけど。

    それも無理というなら「なでしこ」でもお使いになってみてはどうでしょうか?
    私は使った事がありませんけどね(笑)
  • id:garyo
    >WindowsならActiveScriptRubyがお勧め
    ActiveScriptRubyにはVisualuRubyとスクリプトをexe化するExerbが最初から入っているので
    お勧めです。


    VisualuRubyでGUI部を作って、Exerbでexe化して配布すればRubyをインストールしていない人でも使えるので、簡単なツールを良くRubyで作って配布しています。
  • id:b-wind
    >ActiveScriptRubyにはVisualuRubyとスクリプトをexe化するExerb
    Perl なら PAR & PAR::Packer で。
    http://taylor.gotdns.org/PAR.html

    さすがに話がどんどん横道に…。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません