情報処理の専門学校を卒業して会社に入社したばかりの時は
本当に簡単なプログラムしかできずに苦しんでいました
私の場合は当時VB6.0を中心に勉強しながら仕事をしていたのですが
下記の本をたまたま本屋で見つけて関数だけでいろんな事ができるという事を知り
かなり進歩できました。
今では VB2008などを使用していろいろなシステムをユーザーの希望通り作れるようになりましたが この本がなければ もっと進歩が遅かったか 挫折していたかもしれません
ちなみに VB2008の前はVB2005を使っていて
VB6.0から移行するのに下記のサイトで勉強させていただきました。
http://homepage1.nifty.com/rucio/main/main.htm
VB2005を覚える為に数冊本を買いましたがいまいち勉強がはかどらなかったのですが
上記サイトのおかけで 一気にVB2005の壁が無くなりました。
それから 使えそうだなと思うサンプルを沢山集めておいて 必要な時に引っ張り出すと
効率的にプログラムを組めるのではないかと思っています。
プログラミング言語を学んでもそれだけではなかなか何も出来ません。
たいていの場合は作るものにあわせたライブラリなどが必要です。
たとえば、Windowsで動く一般的なアプリケーションを作ろうと思えば、
ウィンドウの作り方、メニューの作り方、画面への描画方法など
Windows 独自の方法を学ぶ必要があります。
それを知った上での質問なのかな?
どういうアプリケーションをつくるかにもよります。
ワードやエクセルのようなデスクトップアプリケーションや、
携帯端末で動くモバイルアプリケーション、
ブラウザで動かすWebアプリケーションなど、
どういうものを作りたいのか、
プログラミング言語を学んだだけなのか、
上記のような作成するアプリケーションにあわせた
個別に学ぶ必要のある部分も学んでいるのかという情報があると
回答を得られやすいかと思います。
WEBアプリをつくりたいと思い、PHPをまなんでます。PHP+SQLです。
つくりたいのは、ブラウザで動かすWebアプリケーションです。
状況としては、プログラム言語を学び中です(本を5冊ほどよみ簡単なプログラムは写し終わって、動く状況)。本に書かれてるものを読むと理解できますが、自分でゼロから記述するのはとても難しい(無理な気がする)という状況です。
言語や環境は何ですかね?
てっとり早く動いてる感じをつかむのは、既に動いてるプログラムのソースを見ることと、
それに手を加えて、自分なりの機能を付け加えることだと思います。
こんな時代なので、ソースを公開しているアプリはいっぱいあります。
最初に手を出すには、あまり大きいものだと手にあまりますが、
「こんなことをやってるアプリで、ソースが公開されてるものは何?」みたいなのがあれば、
いろいろ回答が付くように思います。
--
(追記)
そうしたソースを公開してるアプリって、どうやって探すのでしょうか??
検索するときに、キーワードに「ソース」とか「source」や「フリー」というのを入れてみると、結構、引っかかると思います。
↓なんかは、初めてだと、ちょっとボリュームが大きいですかね。
http://e0166.blog89.fc2.com/blog-entry-159.html
MAMP ということは、Webアプリケーションということだと思いますが、
PHP を抜きにした、いわゆる静的な HTML だけの Apache の動きは押さえておいた方が良いと思います。
ソースみてみます!!ただ、そうしたソースを公開してるアプリって、どうやって探すのでしょうか??
ちなみに、l開発言語は、lPHPを考えていて、環境は、MACです。MAMPをつかってます。
まずは、自分の欲しいアプリを作ってみることです。
プログラムは、『こんなことできたらいいな』を実現するものです。
要求事項(やりたいこと)を分解して、実現できそうなところから実装していくことも
プログラマの能力です。
コードは、人のまねでいいんです。
要は、何をどのように実現するか。どんなふうに作りこむか。バグををなくすか。
1から10まで、自分だけで、苦労して、作ってみてください。
プログラムでやりたいことを実現できる喜びは、それを学ぶ苦労を超えると思います。
「プログラムは、『こんなことできたらいいな』を実現するものです。」そうですよね・・・
「要は、何をどのように実現するか。どんなふうに作りこむか。バグををなくすか。1から10まで、自分だけで、苦労して、作ってみてください。プログラムでやりたいことを実現できる喜びは、それを学ぶ苦労を超えると思います。」了解です。やってみます!!つくってみます!
プログラミングすることを目的にするのではなく、手段にすることが大事です。
職場や家庭で困ってる誰かを見つけて、プログラムで解決するようなことを考えるとやる気がでやすいです。最近は、iPhoneやAndroidなどで持ち運べるものでプログラムを活用できるので、日常生活に役立つツールなどを作ってみてはいかがでしょうか?
あと全然違う話で、プログラムの基礎の基礎の本を読むだけだとわかったつもりになっても、本のレベルが低いだけで、なんとなく気持ち良くなっただけで、まだ何もできない、というケースもありますので、そういうのが問題であれば、思いきって次のステップは難しめの本を読んでみるのも良いでしょう。
えふしんさん!返答ありがとうございます。あの求人には度肝ぬかれました(笑)。
「プログラムの基礎の基礎の本を読むだけだとわかったつもりになっても、本のレベルが低いだけで、なんとなく気持ち良くなっただけで、まだ何もできない」この状況だと思いますので、プログラムを手段にするべく、いろいろやってみます!
なお、「初級のPHPの本を5冊ほどよみ、cakeはちょっと挫折しそう」そんな状況で、「プログラムを手段にする」という場合に、良い本がありましたら、是非お教えいただけないでしょうか?
ソースコードを写経するだけしかできない状況をなんとか脱出したいのです。
これは部分的には間違っています。
写経には、全然価値はありません。
「コーディングさせること....つまり単なるタイピングは無意味です。
そんな(初心者にとって理解する上で余計でしかない)どうでもいいことはさせませんでした。」
○プログラミングは物真似である。
(つまり(余計なことを考えずに)ただ単にコピーせよ、ということ)
キーボードから文字を入力する能力なんか何の意味も無いということです。
しかし、
プログラミングは物真似です。真似することでこそ技術を得られるのです。
なるほどー。とてもよく理解できました。
また自分で、写経しながら思っていた漠然とした気持ちがよくわかりました!!
もう少しがんばってみます。
PHPのプログラマーをしています。
私の場合、過去に自分が書いたPHPをコピペするのが作業の殆どですが、
目的はそれぞれ違うので色々なPHPが完成します。
サーバサイドプログラミングの面白いところは、
様々なユーザが情報を共有したり交換することが容易に出来る点だと私は思います。
先にCGIが普及したこともあり、
欲しいサンプルがPHPではあまり配布されていないことも多く、
つくり甲斐があると私は思います。
また、PHPはCGIと違い、
テンプレートをわざわざ作らなくても、
後でデザイナーがカスタマイズしやすいように記述することも可能ですから、
仕事上での連携にも優れていると思います。
http://yonetone.com/camera/pix/
のような簡単なもので良いと思いますので、
何か自分が使いたいと思うPHPを完成させると良いと思います。
そして、例えばですが、
何万画素のカメラのデータを入力した回数が何パーセントだったか、
目的のサムネイルサイズはどれくらいを入力しているのかなど、
統計や推移を時系列で表示することも可能です。
単純に掲示板を付けて、付加機能を募集するという方法もあると思います。
そうやって人と関わっていくことが面白いし大切だと思います。
やはり自分が使いたいと思う物を、実際につくることがベストですね。
ありがとうございます。
Webアプリを作るということであれば、PHP自体だけではなくWeb(HTTPやHTMLなど)の仕組みを理解しておくことも重要ですね。フォームの送信ボタンを押すと何が起こるのかとかが分かっていないと、Webアプリのイメージを掴みにくいことが多いように思われます。深く調べると奥が深いので、あくまで基本レベルで。
次にユーザーが目にする画面を、確認画面やエラー画面も含めて並べていくといいでしょう。実際にHTMLを書く必要はありませんが、フォームの中身は完全にリストアップしましょう。(実際にプログラムに移る予定なら、フィールドの名前とかをつけておくぐらいにリストアップします。)この時点で、自分が実現したい画面を作れる部品が見つからない時は、既存のシステムがどうやって実現しているかを調べることになります。(どこでも見たことがないような新しいものなら、そもそもWebアプリでは通常不可能なことかもしれません。)またこの時点でWebの知識に欠けていると、実現不能な画面を想定してしまうことがあります。(ページの移動無しにサーバーと通信するにはPHPの他にajaxの知識が必要である、とか。)
後は「このフォームから送られてくる情報が何で、それをどう処理すれば次の画面を送り返せるか」という純粋なPHPのプログラムの問題が残ります。
たしかにHTMLの知識も必要ですよね。実はこっちがわかってなかったのに、PHPの問題とかになってたことありました。
ユーザー目線で物事を捉えなおす。やってみます。ありがとうございます!
8年プログラムをしているものです。
現在はweb制作会社を自営業でしております。
現在も現役でプログラムをしてますが。
私も19歳のとき、某有名なIT会社に入社後、プログラムに慣れるまで苦労しました。
今では、誰にでもはったりではなく、なんでも作れますとお客様に発言しています。
◆一番プログラムに慣れた5つのターニングポイント!!◆
①まずマイクロソフト系のプログラム言語は使用しない。
⇒独自性が強くバグがあっても自分で解決が非常に難しくマイクロソフト頼りになる。これでは、デバッグをしないので力がつきません。お勧めは、PHP言語です。
②デバッグする癖をつけます。
⇒プログラムとは、ひとつひとつのコードの動きのポイントを理解していない限り、ただ動くだけのプログラムしか制作できません。デバッグすると中身が理解できます。
③プログラムの上級者にわからないことを質問責めする
⇒経験は、何年もかかると思います。なんでもいいので自分より上だと思う上級者に質問をたくさんしてください。10年かかる経験の知識も1年もかからない内で取得できるでしょう!おっさんの話だから、昔の言語の話だから、それは関係ありません。
プログラムのすべてには共通するバグや実際の運営するサイト・システムの問題点は昔からかわりません。
④お客様の要件定義をきっちりできているか確認
⇒よくあるのがお客様のプログラマの作るものが違う、これは一番だめです。
いくら上級のプログラマといわれてようとお客様第一!お客様の要件をどれだけ詰めて仕様書を制作し、プログラムを作っていくか!
⑤素直になり、恥をすてる
⇒はてなで質問していたように、どんなきらいな人にも下手にでて情報を聞き出しましょう。
※もっと詳しくプログラムを知りたければ、私に連絡してください。
やる気があるなら教えます。3か月~半年で中級者~上級者に育ててみせます。
phpに関しては本より、webのほうが情報は豊富です。有名どころといえばこちら↓
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/sak3php.htm#php_k
教えていただけるという事、とてもとても興味あります!!!
どのようにご連絡したらいいでしょうか?
ネットでの先生として3か月、みっちりやっていただけたら、出来るようになりそうなので!
ご連絡の方法、お教えください!
# やる気あります。
(追記)
やはり、1か月集中講座をまず希望します。やりきりたい。まず1か月。
その作成する予定のコンテンツ一つ一つをばらばらで作ってからそのプロジェクトの入るのはいかがでしょうか?
どうしてもわからない場合はPHPManualで調べて作成すると良いと思われます。
小さなプログラムを数多く作成してから次のステップに行くことが大事だと思います。
自宅で環境があるならスケジュールを立てて実践まがいな事をする事も大事です。
頑張ってください
ありがとうございます!がんばります!
やはり、最初はいろいろ難しいのですね・・。VBというのもプログラム言語ですよね?いろいろな言語がありますが、言語の種類をとわずに、学べぶ方法炉んとかってあるのでしょうか?ちなみに今僕がやってるのはPHPです。