知りたいことはだいたい次のような内容です。
1.PCの環境とかサーバとか準備しなければならないことは何か?(できるだけ具体的に)
2.どんな言語を学ぶのが良いか?
3.手っ取り早く使えるようになるにはどんな方法で勉強すればよいか。
できるだけ早く覚えられて簡単に使えて、かつコストもあまりかからないというのが希望です。
作りたいものは、ウェブの情報を集めてきたり整理したりそれらをリンクさせたり共有させたりというようなウェブアプリで、目的はプログラマになることではなく、こんな便利なのがあればなあというアイデアをすぐ形にできるスキルを身につけることです。
本とかに書いてある情報よりもナマの先輩諸氏の声を聞いた方がそういうケースならみたいなよりいい方法が出ると思うので、そういう回答にしていただけると幸いです。
よろしくお願いします。
へたれプログラマですがアドバイスさせていただきます。(趣味です)
ウェブアプリを組むと言うことでしたら今はPHPがいいと思います。
今からマスターするならいきなりPHP5でも大丈夫でしょう。
PHPを学習するにはサーバーが必要です。(ほぼそれだけで大丈夫です。)
このページを見ればすぐにできると思います。
ローカルで実行するならCでしょう
1.環境はサーバなどを準備しなくていいので楽です。
必要なソフトはコンパイラだけです。
1.cygwin
2.ボーランドCコンパイラ(以下BCC)
1はご存知かもしれません。UNIXをWindows上で動かせるものです。正確にはGCCでおこなうんですが。詳しくは以下のページを見てください
http://www.sosb.com/hp/apache/cygwin.htm
http://programnet.hp.infoseek.co.jp/coloum/cygwin3.html
2の方法ではより簡単にできます。
http://www.kumei.ne.jp/c_lang/bcc/index.html
以下のページを見てください。
どちらも多少難しいかもしれませんが、がんばってみてください。
ローカルで実行したり、長い計算をしたりするにはべんりかもしれません。
マスター方法ですが、とにかく自分の好きなものをいっぱいつくってみることです。
ちょっとほしいなーとおもったらかんたんに造ってみればよいでしょう。
わからなかったら2chやマニュアル、リファレンスを見ればできると思います。
http://jp.php.net/manual/ja/index.php
このページを参考にどうぞ
PHP Perl Ruby Pythonなどの言語がいいでしょう。
少し高度になるとJavaとかになると思います。
上記4つなら、Windows XP/2000やMac OS Xでもサーバーではなく手持ちのパソコンでもはじめられると思います。
が、結局はUNIX環境を整えることになると思うので、言語と平行してLinuxやBSDの研究などもされてはどうでしょう?
未経験からでも可能なプログラマやSEといった仕事はそこそこあるみたいです。
回答ありがとうございます。
動かす環境も必要となると思うので参考にしてみます。
仕事は・・・できるようになってから考えますw
1.インタプリンタ言語かコンパイル系言語かによるが、とりあえず開発環境が必要。
2.ウェブならPerl,PHP,Phytonとかが有名。.NET系もASP.NETの利用でできる。
3.習うより慣れろ。案ずるより産むが易し。という感じですかね。
本を読んでサンプルを改造するのが直接的に身につくかもしれません。
PerlはActive PerlならWindows OSで使用可能
PHP PhytonもActive Stateにあります。
すべて無料で利用可能。
あとはHTTP(WWW)サーバが必要。Apacheが面倒ならAnHTTPdが有名で設定が楽。
http://www.st.rim.or.jp/~nakata/
MicrosoftのツールVB/VC#は無料のExpress版あり。
http://www.microsoft.com/japan/msdn/vstudio/express/
どんな言語を使うにしろ、やはりプログラミングをする脳になるのは慣れが必要ですし、
時間がかかります。理論的思考力も問われてきます。
自分が作りたいものを作れるようになるにはやはりそれなりの苦労を伴うのが現実です。
回答ありがとうございます。
>プログラミングをする脳になるのは慣れが必要ですし、時間がかかります。理論的思考力も問われてきます。
文系人間としてはまさにここが一番の課題かもしれません・・・。
ウェブ上のアプリということですので、PHPはどうでしょうか?
参考書やWeb上の資料もたくさんあるし、初心者から上級者まで幅広く使えます。企業のHPやASPなんかもPHPで作られているのが多数あります。
初心者用の本もたくさんありますが、なるべくコストがかからないということであれば
http://www.php.gr.jp/php/php4tettei/
こちらのPDFはどうでしょうか?実際に発売されている本のPDF版です。
サーバーはPHPとDBが使えて無料のサーバーがあります。
XREAは評がいいです。
とにかく習うより慣れろ、です。
本に載っているサンプルを入力して、動かして、どうしてそういう結果になるのかというのを考えれば習得は早いです。
どの言語を学ぶにしろ、プログラミングの基本は変わらないのでひとつでも習得したら他の言語を習得するのも早くなります。
回答ありがとうございます。
おーまたphpきましたね。
サーバーの方も紹介いただきすごくありがたいです。
Hot Soup Processor オフィシャルホームページ
Hot Soup Processor Page [Download]
初心者からプログラミングを始められるなら、
一通り動くものを簡単に作れるHSP(Hot Soup Processor)
をおすすめします。Windowsが動くPCが一台あれば作れます。
よさそうな書籍を1~3冊くらい買って勉強するといいと思います。
小学校高学年くらいなら理解でき、アプリケーションを
作ることができます。
HSPでプログラミングの理解を深めてから、
VB.NETやJavaに移行するといいんじゃないでしょうか。
ちなみにWEBアプリとはブラウザ上で動くアプリケーションの
ことです。お作りになられたいものはWEBアプリである必要は
ありません。
回答ありがとうございます。
HSPというのは知りませんでした。
小学校高学年ぐらいでできるってのはやる気になりますね。
作りたいのはブラウザ上で動くものですがこれも見てみます。
プログラミングといっても非常に範囲が広いです。なので何がやりたいかによって答えは変わってきます。
例えば基本的なこと
などを理解したいのなら、サーバは不要です。単体のパソコンだけあればいいです(実のところ、大昔、私がアセンブラを勉強(趣味)していた頃は中学生で当時はまだ「マイコン」ですら高価だったため紙と鉛筆で思考実験していました。なのでパソコンも不要とも言えますが、さすがに現在、そういう苦労をする必要もないでしょう)。
プログラミング言語については私の好みになってしまいますが、Rubyがお勧めです。
理由は
などです。
手っ取り早い方法は、まず短いプログラムのコピペでもいいので実際に動かしてみることですかね。入門書も多いですし、Web上にも入門者用のサイトがたくさんあります。
回答ありがとうございます。
リンク先に飛んでもわからないことだらけで段々息切れしてきた・・・。
Rubyは開発環境や資料が豊富でいい感じですね。
1.インターネットは基本的にUNIXでできているので、ウェブアプリの
開発なら、Linuxを使うのが一番いいと思います。
2.プログラミング言語の基本は、どれでも似たようなものだし、
必要なものから学ぶのがいいと思います。
ホームページでは無理で、本を買う必要があります。
3. ご希望のような目的だと、wgetというUNIXアプリがあるので、
これを基本につくるとよいと思います。Cで書かれていたはずです。
まったくないものから始めるより、すでにあるものを改造していく
のが日曜プログラマーにはいいと思います。ソースを読むというやつですね。
回答ありがとうございます。
UNIXというのもそもそも??なんですがちょっと調べてみます。
説明は下記のURLの記事へ
http://hotwired.goo.ne.jp/news/technology/story/20060222303....
プログラムをするのに必要なのは、
よい師匠を真似よう。独学ということなので師匠がいないので、良い師匠が書いたプログラムを真似よう。
プログラミング環境は師匠とあわせてみよう。
最近は、オープンソースとかいうものがあり、人のソースコードを読むことができる。自分のやりたいことに近いオープンソースのプロダクトを探してみよう。
そのプロダクトで意見交換できる場所(ML/掲示板/wikiなど)で、開発環境とかきいて、真似てみよう。実装して意見を聞いてみよう。
自分で手を動かす能力があるひとは、重宝されます
回答ありがとうございます。
やはり学ぶよりまねぶなんですね。
http://www.openspc2.org/reibun/javascript/
1.メモ帳とIE(Winの場合)
2.JavaScript
3.コピペ&改変
JavaScriptの良さを解説します。
一番手軽でかつ奥が深いスクリプト言語です。
・無料!
・メモ帳ですぐ書けてすぐブラウザで実行できる。
・流行のAjaxでwebアプリが作れる
・WSHでデスクトップアプリも作れる
・ECMA繋がりのFLASH(ActionScript)も後で覚えやすい
・ブックマークレットやアドビのスクリプトにも使える
・ブログで使えたりする(ライブドアブログなど)
・話題のGreaseMonky(Firefox)だって書けます
・オブジェクト指向言語
・型も宣言もいらずGCもあるので楽
ただし、>ウェブの情報を集めてきたり
するにはCGIと連携する必要があります。
例えばAjaxでRSSなどのXMLを拾うときに、
JavaScriptでは同一ドメイン制限があるので、
PerlなどのCGIでプロクシを作る必要があります。
じゃあ最初からPerlで全部やればいいかというと、
クライアントで処理した方がたいてい軽くなります。
またAjaxは文字化け防止のためUTF-8で書くので、
TeraPad(無料)などのテキストエディタ推奨です。
後々色々必要になりますが、とにかく導入は一番早いです。
回答ありがとうございます。
ウェブの情報を集めたりするにはJavaだけではダメなんですね。
その辺の関係がなんとなくわかりました。
しょぼプログラマですが、自身の実体験を元にお答えいたします。
1.PCの環境とかサーバとか準備しなければならないことは何か?(できるだけ具体的に)
「準備しなければならない」ワケではありませんが、「あった方が望ましい」ことは確かです。
今現在メインでお使いのマシンとは別に、もう1台をサーバ専用機として置いておくといいと思います。
「共有」と言うことは公開されるものになるので、WindowsよりセキュアなLinuxを選択したほうが良いでしょう。
Linuxのメリット
私はLinuxに関してまったく無知でしたが、「Fedoraで自宅サーバー構築」さんその他を参考にしてサーバを運営していました。
2.どんな言語を学ぶのが良いか?
私の場合はJavaがもっとも使いやすい言語でした。
Javaの強みは「調べれば何かしら出てくる」情報量の多さにあると思います。
事実、基礎学習からWebアプリ製作まで、購入した参考書は1冊のみです。
JavaにはJSP(JavaServer Pages)と呼ばれる、Webアプリ開発に最適なテクノロジがあります。
Javaのメリット
などが挙げられます。
Javaに関する大抵の基礎は、「JavaでHello World」さんその他で勉強できます。
http://www.hellohiro.com/basic/
3.手っ取り早く使えるようになるにはどんな方法で勉強すればよいか。
とりあえず書いてみること、動かしてみること。に尽きます。
いきなり大掛かりなものを作ろうとしても、必ず大きな壁にぶつかります。
最初は「文字を表示させる!」「計算させてる!」くらいからはじめることが大切だと思います。
基礎を決しておろそかにすることなく、ただひたすらの向上心が必ず完成に近づけてくれます。
「急がば回れ」を実践できる方にJavaはオススメです。
コレは私の師匠がやっていた荒業なのですが、
Javaにはソースコードの公開という、他ではあまり見られない特徴があります。
そのソースコードはSun Microsystems社の開発者がJavaで作っています。
もちろんここにエラーがあればJavaとしての正式な動作はありませんから、このソースコードは「限りなくミスのないJava」と言えます。
さて、このソース内のコメントは当然ながら全て英語です。
これを和訳し、さらに理解を深めるために適宜加筆します。
ドキュメントと照らし合わせながらの作業は大変ですが、一番理にかなった学習方法と言えそうです。
**********
ダウンロード・参考先
JDK(J2SE Development Kit / フリー)
J2SE 5.0 ドキュメント(マニュアル / フリー)
http://java.sun.com/j2se/1.5.0/ja/download.html
Eclipse(開発環境 / フリー)
回答ありがとうございます。
詳しく書いていただきわかりやすいです。
javaも候補に挙がってきました。
回答ありがとうございます。
ローカルのほうはよくわかりませんでしたがとりあえずphpを見てみます。