追記:2015/03/17
アンチパターンではなくてグッドパーツです.文章はそのまま残しておきます.
色々な人に聞かれたのでアンチパターンをまとめておく.
- Windows は使わない
- Windows は環境構築がつらいだけではなくネットブックのような驚くほどスペックの低いものを使っている人がいたり,HDD の空き容量が極めて少ない人もいる
- Mac ならVM とか使わなければ Web プログラミング周りで困るスペックのものはあまりない…はず
- 開発環境があまりにも異常なので勘の良い人はおかしいと気付く
- 開発環境は特殊なものだと思われることはお互いにとってよくない
- VM・SSH は使わない
- そもそもVM がまともに動くスペックのものを使っている人はほとんどいない
- VM 自体を理解させることは不可能に近いしインストールさせることも困難
- SSH は魔法のコマンドにしか見えないし普段Windows を使っている初心者が基本的なUNIX コマンドを知っているわけがないので扱えない
- そもそもSSH をWindows で使うこと自体が初心者にはかなり難しい
- MSYS2 を使えば意外とまともに動くがLinux などを使った経験がない初心者は面食らう
- ネットワーク周りの知識もないとVM 内で起動したサーバーにホストマシンからアクセスさせることができない
- Eclipse は使わない
- MySQL は使わない
- MySQL は client-server model なので Server が起動していないとデータベースとして使用できない
- この仕様は初心者が学ぶ上では非常に厄介
- CREATE TABLE 文にストレージエンジンを指定することがほとんどだが初心者はSQL を学べれば十分なので無駄
- Apache/PHP は使わない
- Apache はデフォルトで 80 番ポートを使うのでSkype などが同時に使えないなどトラブルが発生しやすい
- プログラムが実行されている実感が無いので何で動いているのか初心者に全く理解ができない
- PHP もビルトインサーバーを使えばその辺りの問題は解決するがとりあえずApache モジュールのものはプログラミングの理解を助けない
- HTML の中にCSS/JS は直に書かない
- エディタのシンタックスハイライトが通常効かない
- 初心者でも興味のある人は通常ファイルに分けることを知っているので実践的な内容ではないことが分かってしまい,やる気がなくなる
- ただしファイルやフォルダを作るのは負担が大きいので予め作ってあげるべき
- JS だけで実際のアプリケーションではやらないようなことをやらない
document.write するだけなど- 実際の Web アプリケーションとの乖離が気になりやる気が無くなる
- 実際のアプリケーションでの使いどころをしっかり教える
- if や for などの文法を教えても実際のアプリケーションでの使いどころにピンとこない人が多くそこを知りたい人が多い
- 乖離が大きいとやる気が無くなる
ならどうするのがいいの??という方におすすめの本です.
本の内容について参考になる URL です.
よろしくお願いします.