ラベル php の投稿を表示しています。 すべての投稿を表示
ラベル php の投稿を表示しています。 すべての投稿を表示

月曜日, 5月 14, 2007

車輪を再発明してプログラミング修行

オブジェクト指向プログラミングが一般的になり、再利用性の高いコード、たくさんの便利なクラスライブラリ、などがあってこれらを活用してなるべく車輪の再発明みたいなことはしないのがスマートなプログラミング、というようなことをどこかで読みましたが、

あえて、そういうものには目をくれないで、全部自分で一からコードを書いてみるのがプログラミングセンス・スキルをレベルアップさせる近道のような気がなんとなくします。

ので、プログラミングセンス・スキルをレベルアップさせるために再発明する車輪を考えて羅列してみようかと。

ちなみにここではレベル0の初心者がPHPが使えるWEBプログラマ、みたいのを目指しているということを前提としてます。


「プログラミングセンス・スキルをレベルアップさせるために再発明する車輪リスト1」
・hello world(ただhell worldと表示するだけのプログラム)
・掲示板(テキストファイルで書き込みデータを管理するのとDBを使うのと両方)
・問い合わせフォーム(メール送信の仕方を覚えたい)


これを関数リファレンスみたいな本以外は見ないで一から自分で考えて作る、というのをやったらレベル5ぐらいになれるのでは。
それから

「プログラミングセンス・スキルをレベルアップさせるために再発明する車輪リスト2」
・RSS取得・表示プログラム(XMLやRSSの取扱方を身につけたい)
・AMAZON書籍情報表示プログラム(なにかひとつでもwebサービスを使用したプログラムがしてみたい)


こんなのもやってみたらレベル10ぐらい?
たぶんここまで自分でがんばって作ったものはきっとセキュリティ的には穴だらけなので、

Amazon.co.jp: PHPサイバーテロの技法―攻撃と防御の実際: 本: GIJOE
Amazon.co.jp: PHPサイバーテロの技法―攻撃と防御の実際: 本: GIJOE

このあたりの本を読みながら自分のプログラムの穴をチェック・修正する。


これでレベル15ぐらい?


とりあえずたったこれだけでも結構大変だと思うのでまずはこの辺で。

木曜日, 5月 10, 2007

形から入るプログラミング修行

何事もまず形から、ということで一流(と思われる)プログラマの人たちの開発環境をまねてみる、というのはどうだろうか。

とりあえずできるだけお金はかけない、という前提でPHPによるwebアプリケーション開発がスラスラできるようになるのを目標に。


とりあえず以下3点を実行してみる。

『形から入るプログラミング環境のポイント』
・linuxのシェルで作業する(CUI環境)。
・エディタはemacsを使う(vimも使うという説あり)。
・ソースファイルはsubversionでバージョン管理をする。

上記3点を実現するために

・windowsXPのマシンしかないのでcolinuxを入れて自分のWindowsマシンの中にlinux環境を構築する。
・colinuxにputtyでログインして作業できるようにする。
・colinuxにはdebianをインストールして、zsh apache php mysql phpmyadmin svn emacsなどが使えるようにして、sambaで自分のユーザのホームディレクトリを(Windows側と)ファイル共有できるようにする。


ここまで準備ができたら具体的な開発イメージとしては

「puttyでcolinuxにログインしてシェルはzshを使用、svnでファイルをチェックアウトしてemacsで編集、windows側のfirefoxで実行確認、よければコミットする」

この繰り返し。


Windows側のデスクトップは開発に集中できるように一切何もない状態にして下のタスクバーも隠す。真っ白なデスクトップにputtyのウィンドウとfirefoxのウィンドウだけがある状態、これを基本にする。


こんな感じがwebプログラミングの一流の開発環境、みたいな気がする。

また、一流の開発スタイルとしては

・とりあえずすぐに動くものを作る。
・自分のブログなどでもすぐにアウトプットをする。

など。

月曜日, 2月 19, 2007

phpのframework,library&webservice api

phpを使ってプログラミングするときに生産性をあげるにはどうすればいいか現状まとめ。

いわゆるフレームワーク的なものを使用する。
>今だったらcakephpが良さそう。

ライブラリとしてpearを活用できるようにしたい。
>せっとアップさえできれば使い方は簡単なのでセットアップをがんばる。

webサービス(ネット上で公開されているAPI)
>アイディア次第で簡単に動的な情報を組み合わせた便利なページが作れる。

ということでひとまずcakephpを使ってpear・webサービスを使ったページを作れるようになる、とひとつ壁を越えたことになりそう、ということでこれにチャレンジしてみます♪