1294874890 facebookなどが台頭してきた今、プログラミングをするとすれば、初学者が始めに学ぶ言語は何が最適か?そしてその理由は?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2011/01/20 08:30:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:typista No.5

回答回数359ベストアンサー獲得回数7

ポイント18pt

facebookの台頭がキッカケならJavaScriptかPHP、Pythonあたりでしょう。

アプリを作るには、これらスクリプト言語の親和性と手軽度は他の言語では難しいですよ。

語弊を恐れずに言うなら、環境を用意する手間が極力軽くて、

Webで見つけたサンプルがすぐに動く楽しさ=成功体験は極めて重要です。

facebookに限定せず、Webアプリ/サービス、ソーシャルアプリを

開発できるようになりたいなら、間違いなく「今しばらくは」これらの言語です。

Javaも近しいですが、いかんせん敷居が高いです。

C言語はコンピュータの本質も理解するにはかなり適していますが、

あくまでfacebookの台頭というアプローチには、

少し距離感があります。なぜならC言語で作ったプログラムというのは

コンパイル(Windowsのexeファイルという認識でほぼ良いです)された

ターゲットOSでしか動きませんから。

翻って、JavaScriptはブラウザ依存があるものの

あくまでプログラムが動くためにはブラウザがあれば良く、

そこにOS依存は介在しにくいです。

PHPはサーバサイドで動きますので、もちろんその環境は

必要ですが、ユーザ観点なら、極論ブラウザさえも選ばない

(依存しない)ものです。

PythonはGAE(GooleAppEngine)による無償または安価に

スケーラビリティを確保できるという点でオススメですが、

若干方言が強いのと、Javaに近しい敷居の

高さがあります。

方言という表現だけでは、JavaScriptとPHP、JacaそしてC言語は

かなり近しい方言です。英語の位置付けと同じという

解釈で間違いないかと。なので、どれか1つを

体得すれば、コードを読むくらいはできます。

それでもJavaが特殊なんですが、同じ英語でも、

日常会話や医学用語、法律用語ではそれぞれ

難易度が違うのと似てるかも知れません。

つまるところ、どういうことを具現化したいかで

最短ルートになり易い言語は決まるものの、

さらには自分ひとりでどこまでやるかによっても

複数言語を体得する必要があるかも知れません。

いずれにしても、今回の質問ではCOBOLやFORTRANやLISP、BASICはちょっと論外ですし、

アセンブラやマシン語はC言語以上のコンピュータの本質を

追求するなら別ですが、恐らく求められているであろう

ベクトルからは甚だ遠回りです。

http://developers.facebook.com/docs/fbjs

id:Ryu-Higa

適切な回答ありがとうございます!

2011/01/16 01:07:48

その他の回答6件)

id:Baku7770 No.1

回答回数2832ベストアンサー獲得回数181

ポイント19pt

 これからコンピュータを学ぼうとする人が陥りやすい誤解のある質問内容だと少なくとも私は考えています。

 私が最初にコンピュータとかプログラミング言語に触れたのは高校時代のS50年。機械はHPmodel10という、プログラミングもできる関数電卓のお化けといったような代物でした。

 その後、大学に進みFortranを中心にCOBOL以外の数多くの言語を学びましたが、その当時使われた言語で現在も使われているのはCOBOLとFORTRAN、BASIC以外に何かありますかね?最近の言語で10年生き残れる言語はまずないと思ってください。

 SIMULAは国際コンテストでALGOLの後継として優勝しましたが、PASCALに抜かれ、今ではC言語そしてC++へと遷っていますし、国防総省を中心にFORTRANの移植先とされたADAもいつの間にか聞かれなくなりました。

 BASICは基本的な文法は残っていますが、元々は機械に依存する言語でしたから、現在のBASICとは性格が全く違います。

 LISPは今でもたまに聞きますが、私みたいに特殊な分野でも活動していない限り話題にすることすらできません。

 実際実務に入ってみると、言語屋と呼びますがはっきり申し上げて使い捨てなんですよ。その言語しか使えないものですから、その言語が使えなくなると業界からも捨てられます。

 今でもCOBOLなら資産が沢山残っていて、全くの新規で作り直すには費用も時間がかかるからといったことでいまだに重宝されていますよ。でも、画面や帳票のエディタが整備されてきて資産の継承についても技術が進んだ現在ではそういった可能性は徐々に低くなってきています。

 強いて言語をあげるとすれば、機械語かアセンブラでしょう。プログラミングでどういったことが行われているか理解できるようになりますから。

 初学者が本当に学ぶべきは、セキュリティなどの周辺技術、電子計算機科学。

 それとfacebookを例えにされるのであれば、アイデアを生み出すにはといったことが色々と科学されていますからそういった分野とか、部下にそういったアイデアを生み出させるリーダシップ論や人間科学、そしてマーケティングを学ばれた方がより将来に結びつくと考えます。

(ダミー)

http://q.hatena.ne.jp/1294874890

id:Ryu-Higa

求めていた回答です!ありがとうございます!

2011/01/13 20:02:39
id:y-kawaz No.2

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

ポイント19pt

Javascript

・開発環境はブラウザさえあればすぐに始められる

・動作がすぐに確認できて常に達成感が得られるのでやる気が継続しやすい

・HTML5で新たなAPIも次々と定められて、今も今後も非常に重要な言語になってきている(TwitterもFacebookもJavascriptを高度に利用しています)

http://q.hatena.ne.jp/answer

id:Ryu-Higa

参考にします。ありがとうございます。

2011/01/13 20:03:05
id:hisam_k No.3

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

ポイント18pt

http://www.itmedia.co.jp/enterprise/articles/1002/03/news053.htm...

全くの初心者なら、プログラミング言語の前にマークアップ言語の「HTML」を勉強すると良いです。

書いて直ぐに表示が変わるので、実際に作って動かしているという実感を簡単に得られます。

そのままWeb開発系に進むなら、PHPが習得コストが低いと言われています。

Web以外なら、速度と実績に勝るC++がメジャーで、圧倒的に資料が多いです。

id:Ryu-Higa

回答、URL、共に参考にします。ありがとうございます!

2011/01/13 20:03:52
id:kou-tarou No.4

回答回数656ベストアンサー獲得回数81

ポイント18pt

初めて学ぶならば、C言語だと思います。

Cはプログラム構造がシンプルでありながら、きめの細かいプログラミングが可能です。

プログラミング環境も、簡単に整えることが出来ます。


データ型・演算子・式

例えば、char、int、short、long、float、double


文と制御の流れ

例えば、if else文、while文、for文、switch文・・・


定数

2進数、10進数、8進数、16進数・・・


変数の宣言、演算子、プリプロセッサ、ライブラリ関数・・・・


Cで学んだ基礎は、他の言語で、横滑り的に活かす事ができると言えます。


Javaと言う人もいるでしょう。しかし、Cと比較すると学ぶ量は、数倍に膨れ上がります。

初めて学ぶ際には、挫折する可能性が少なくないです。


理想は、数人で学ぶのがベストだと思います。

自分で書いたコードを、比較し合うのです。


学生のころ、はじめてプログラミングを学びました。

皆、はじめは、個性的なコードを書くんです。課題的に、約500行くらいで書かなければならないのに、

300行の人、1500行書き、スパゲティコードと揶揄される人。


しかし、卒業時には、皆、不思議と同じようなコードを書くようになるんですね。

シェイプアップされた美しいプログラムとでもいうのでしょうか。

比較することで、どんなコードが美しいのか、分かってくるんです。独学の場合は、経験者に見てもらう。

とうのもいいかもしれません。


プログラムは建築物と、同じだと思います。

雨漏りするようなトンデモ建築を建てないように、基礎工事は大切です。Cはお勧めです!


プログラムはなぜ動くのか

id:Ryu-Higa

構築物としての最後の文章、とても好きです。

参考にします。どうもありがとうございます。

2011/01/13 20:04:55
id:typista No.5

回答回数359ベストアンサー獲得回数7ここでベストアンサー

ポイント18pt

facebookの台頭がキッカケならJavaScriptかPHP、Pythonあたりでしょう。

アプリを作るには、これらスクリプト言語の親和性と手軽度は他の言語では難しいですよ。

語弊を恐れずに言うなら、環境を用意する手間が極力軽くて、

Webで見つけたサンプルがすぐに動く楽しさ=成功体験は極めて重要です。

facebookに限定せず、Webアプリ/サービス、ソーシャルアプリを

開発できるようになりたいなら、間違いなく「今しばらくは」これらの言語です。

Javaも近しいですが、いかんせん敷居が高いです。

C言語はコンピュータの本質も理解するにはかなり適していますが、

あくまでfacebookの台頭というアプローチには、

少し距離感があります。なぜならC言語で作ったプログラムというのは

コンパイル(Windowsのexeファイルという認識でほぼ良いです)された

ターゲットOSでしか動きませんから。

翻って、JavaScriptはブラウザ依存があるものの

あくまでプログラムが動くためにはブラウザがあれば良く、

そこにOS依存は介在しにくいです。

PHPはサーバサイドで動きますので、もちろんその環境は

必要ですが、ユーザ観点なら、極論ブラウザさえも選ばない

(依存しない)ものです。

PythonはGAE(GooleAppEngine)による無償または安価に

スケーラビリティを確保できるという点でオススメですが、

若干方言が強いのと、Javaに近しい敷居の

高さがあります。

方言という表現だけでは、JavaScriptとPHP、JacaそしてC言語は

かなり近しい方言です。英語の位置付けと同じという

解釈で間違いないかと。なので、どれか1つを

体得すれば、コードを読むくらいはできます。

それでもJavaが特殊なんですが、同じ英語でも、

日常会話や医学用語、法律用語ではそれぞれ

難易度が違うのと似てるかも知れません。

つまるところ、どういうことを具現化したいかで

最短ルートになり易い言語は決まるものの、

さらには自分ひとりでどこまでやるかによっても

複数言語を体得する必要があるかも知れません。

いずれにしても、今回の質問ではCOBOLやFORTRANやLISP、BASICはちょっと論外ですし、

アセンブラやマシン語はC言語以上のコンピュータの本質を

追求するなら別ですが、恐らく求められているであろう

ベクトルからは甚だ遠回りです。

http://developers.facebook.com/docs/fbjs

id:Ryu-Higa

適切な回答ありがとうございます!

2011/01/16 01:07:48
id:t_yamo No.6

回答回数15ベストアンサー獲得回数3

ポイント18pt

ダミー: http://q.hatena.ne.jp/1294874890

学習する人の特性によって異なりますが、個人的には

 ・資料が豊富

 ・比較的早い段階で動くものが作れる

 ・ビルドのステップがある

という点で「GUIを使って早い段階で楽しい感じを体験したい」場合はJavaかC#、「メモリ操作など基礎から学びたい」場合はCかなと思っています。

きちんと勉強できる人であればセキュリティやアルゴリズムなど情報処理の大元から入った方が初学者を抜けた後の伸びがよいかと思いますが、多くの場合は途中で飽きて挫折してしまうのかなと。

「すぐに動く」という点ではHTML+JavaScriptやその他スクリプト系の言語が一番なのですが、ソースコードと実行モジュールの違いを何となくでもよいので体感しておくと、その後ライブラリ的なものが出てきた場合の理解や大きめのシステムが出てきた場合の運用イメージのたて方に違いが出てくるのかなという気がしています。

CよりC++の方が実用的ではあるのですが、C++は長い時間を掛けてライブラリが洗練されてきたという背景があるため、資料が作成された時期や資料を作成した人のスキルレベルによって情報がマチマチであり、プログラミング自体が初めての人には敷居が高いかなと思っています。

id:Ryu-Higa

「資料が豊富」「比較的早い段階で動くものが作れる」「ビルドのステップがある」参考にします!

2011/01/16 01:09:01
id:chinchin-kozou No.7

回答回数198ベストアンサー獲得回数7

ポイント10pt

JavaScriptかPHP

適性があって、今後スキルアップできる人は

どの言語から入っても問題ないです。

適性がないのに、Cとかそんなのをやるとつまずいて

結局ないもできないだけになります。

まずは、手軽な言語で感覚だけでも使うのがよいです。

http://q.hatena.ne.jp/answer

コメントはまだありません

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

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

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

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