愛車:マツダアテンザ
Webを中心とした、ビジネス&テクノロジーに関する思いつき
by F-shin
[ このサイトについて ] [ F-shinについて ] [ トップ ]
iPhoneアプリ
author:えふしん
photo_20.jpg
藤川真一について


初代モバツイ開発者
想創社再創業 / KMD博士課程
著書〜100万人から教わったウェブサービスの極意―「モバツイ」開発1268日の知恵と視点 [Kindle版]
お求めやすい夏休み特価!
このカテゴリ[書評系評論]の最新30件
システムがもたらす信頼を如何に作るか DeNA南場さん「不格好経営」 吉野家が「デフレ」の象徴は間違い〜「本当の経済の話をしよう」を読んだ エンジニアが一番、エンジニアらしく、シンプルに独立する方法 リーンスタートアップ実例として、オイシックス成功の苦労を描いた本「ライフ・イズ・ベジタブル」 「とにかくやってみよう」を否定する「リーンスタートアップ」まとめ4(完) 「とにかくやってみよう」を否定する「リーンスタートアップ」まとめ3 「とにかくやってみよう」を否定する「リーンスタートアップ」まとめ2 「とにかくやってみよう」を否定する「リーンスタートアップ」まとめ 「さあ、才能に目覚めよう」をやってみた 楽天ゴールデンイーグルスというベンチャー企業~「絶対ブレない「軸」のつくり方」書評 全文検索機能をつけたいWebサービスで必ず考慮したい1冊「Apache Solr入門」 マスコミは、もはや政治を語れない 「自分をデフレ化しない方法」を読んだ。 ツイッターがあれば名刺はいらない ~ 「ネットがあれば履歴書はいらない」 SEOには、運用のSEOと設計のSEOの2つのフェーズがある。 CS4のお得な購入方法~法人税が分かれば、会社のお金のすべてが分かる 「インターネット&Webの必須常識100」の執筆に参加しました! ニコニコ動画が未来をつくる ドワンゴ物語 「ワタシが主役」が消費を動かす―お客様の“成功”をイメージできますか? 「紳竜の研究」を心で記憶する。 真のライブをゲットせよ 〜2011年 新聞・テレビ消滅〜 やっぱり仕事で重要なのはプロモーション力だと思う - 「仕事するのにオフィスはいらない」 着々と広がるPython包囲網に君は立ち向かえるか?! 勝間和代さんの本が苦手な理由 ネットオタどもは自分の来た道を常に振り返るべき〜グランズウェル 買いたいけど買えないアマゾンカートの中身一覧 才能のあるレジのおばさんに相応の給与が支払われない合理性 GoogleDan ネットで売れるもの売れないもの
[このカテゴリをもっと見る]
Powered by
Movable Type

September 01, 2007

スポンサーリンク

本書は「一人前のWebシステムの開発者になりたい人が知っておかねばならない情報が幅広く書かれている一冊」かな。

なお、本エントリーは出版社の方から献本していただいた本の書評で、青学理工学部の情報学科の教科書といて作られた本です。一般に出版するにあたってどういうカスタマイズがなされたかはよくわかりませんが、C言語を書けるようになった学生が、オブジェクト指向の理解も含めてWebの開発ができるようになるための本というのがベースにあるそうです。

初級プログラマのためのWebアプリケーション構築入門 - 実践で学ぶJava,XHTML,SQL
矢吹 太朗 佐久田 博司
森北出版 (2007/07/20)
売り上げランキング: 87685


題材としてJava + MySQL + Eclipseを前提に書かれているので、PHPを使ってとりあえずプログラムが書ければうれしい、という人には向かない。何せレンタルサーバーでJavaが使えるところはないわけだが、その環境構築も含めてやる気がある人じゃないと無理だ。

(XAMPPという一発で環境を用意できる情報も載っているので、本書を読めば環境を作るのは難しい話じゃない)

しかし卒業して開発者になるにあたって、ベンチャーでLLをやるにせよ、SIer側の業務システム開発をやるにせよ、Javaを知っておくに超したことはない。

本書にも書いてあるが、Ruby on RailsやPHP(PHPはC言語のWebフレームワークみたいなもん)のような便利フレームワークは本来はその裏側を知っている人が楽をするために使うのが理想であって、プリミティブなところを全く知らないまま、例えばPHPのように一行でWeb上のHTMLソースを読み込めるような環境に慣れきってしまうのは本当は好ましくない。

ベンチャーに勤めているエンジニアの視点で言うと、中途入社も含めて、相応の社会人を迅速に集めて開発していく段階になると、そうも言ってられないので生産性の高い言語マンセーとなるのがプロジェクトリーダーサイドの理屈であるが、そういう意味で、まだまだ余裕のある学生向けであったり、もしくは、じっくり勉強したい人向けだと言える。


実は本書を読みながら、なかなか書評に至るまで難しいと思っていたのが、

・最初、大学の教科書じゃん、と思っていたこと。(あまり良い思い出がない)
・初級者向けのソフトカバーの本って、ダメな本多いよねという先入観。
・初級者向け本の中を読んで、僕が当たり前に理解してしまっているところを、正しくターゲット読者の視点で読み取れるか不安だった。

本書は、二番目の初級者向けの本を否定している。「10日で作るなんとか」という本は結局役に立たないのではないか?というのをテーマに掲げている。

そこの趣旨は理解した上で、この本の判断が微妙と思ったところ。

「大事なことは網羅されているが各項目の説明が薄い。幅広い内容を取り扱い、各項目の記述量は少ない。」

そこで、僕自身は文章に書いてあることは理解できてしまうため、「これって読み手は理解できるのかなぁ?」ということに、どう判断していいかわからず、悩んでいたのが書評が遅れた理由。

しかし、それをフォローするために、この本が充実しているのは参考文献の情報である。

つまり、たくさんの専門書の索引として、技術説明が記載されていると考えてみる。
その情報の幅は、CSS , XHTML、Java , MySQL 、オブジェクト指向などなど多岐にわたる。

オライリーはもちろん、「誰のためのデザイン?」や、ヤスヒサさんの本への引用もあったりする。

そう、Webはこんなにも幅広い技術や考え方で支えられてるのだな、ということがわかる。

非常に情報が濃縮され、まとまっている。


そんな本だ。


MVCモデルのメリットや、Eclipseを使う理由や、SQL文のあれこなどについては、こんな短くて良いのかなぁと思うところがあるので、そこは読み手が補完していく必要がある。

そのため本書の使い方としては、

・この本を読んで、Web開発に必要な全体像を把握する。そこからリンクする深い情報を参考文献に書いてある本を使って深めていく。

そこがいわゆる「教科書的」なのかな。

つまり、この本をポータルサイト的に使って勉強しろ!ってこと。

そう考えると僕は大学の頃は全然勉強してなかったなぁ。完全に読み流してるような気がする。本当は教科書の先にある本を読まなきゃいけなかったのね。それを学生時代に誰かに教わりたかった。

さて本書ですが、仕事でやってても知らないことが書いてあって(僕が無知なだけ)、密かに参考になったところもあるんですが、それはさておき気になったのが、

「DBのカラム設計でNULLはできるだけ使わないこと」

と、

「MySQLにコネクションプーリング」

の二点である。

前者のNULLに関しては、Webを調べるとNULL撲滅委員会というサイトが見つかる。

・・・うーん、NULLと0は違うと思うんだが、どうなんだろう。

NULL撲滅委員会を読むと、0で代用できるならそっちの方が良いよねって話なんだが。まぁそれをやる最大の理由があるとすれば、「インデックスが参照されない」かなぁ。

でも、インデックスを使いたいクエリーを発行したいシチュエーションで、0とNULLの区別が付かなくて良いのかなぁ・・・。とか思うので悩ましいのである。

あと、Javaと言えばコネクションプーリングであるが、ことMySQLに関しては、レアケースかもしれないが良い思い出がなくて、MySQL側のコネクションがたまに勝手に切れてしまって、エラーになってしまったりするのと、(これは別にPHPなどの都度接続でも失敗することがあるので、リトライの制御とかが面倒なので抽象化されたO/Rマッパーとかの複雑なフレームワークとMySQLはちょい面倒なことになる場合もある。)

PHPやPerlあたりの簡単にはコネクションプーリングが実現できない環境ではMySQLに限って言えば、都度接続しにいっても遅くないという話になってるので、MySQLの場合は、コネクションプーリングは使わくても良いんじゃないか?という印象。

PostgreSQLとかOracleの場合があるので、Javaの勉強でそうはいかないので、そういうこともあるよ的なニュアンスの記述があるとベターかなとは思った。

大事なのはコネクションプーリングを使わなくても大丈夫だよ、ということであり、往々にして現場では、スケーラビリティに対してコネクションプーリングありきで考えがちになってしまうので、そういうのは知っておいても良いんじゃないかなと。(いや、わかんない。僕が不幸すぎる経験をしているだけかも。誰かコメント求む)


本書が文字コードについては結構詳しくフォーカスしているので書いてしまうが、本書にはWindows上でXAMPPというApacheやPHPやMySQLを一発でインストールしてくれる便利な環境についての情報が掲載されていのだが、

Eclipseでの開発にはどうせバックグラウンドでTomcatを使うとして、是非、実行環境テストやMySQLの方は、Linuxなどにチャレンジして欲しい。

ちょっとイレギュラーだが、Mac OSXであればローカルに環境を作っても良いと思うが、いずれにせよWindowsとUnix系というのは、パス記述やWindows-31Jと呼ばれる文字セットに関してプラットフォームの違いを意識しなくてはいけなくなる。

こんなのは本職になってから考えても良いと思うが、本書の場合は、そういうことを言いたくなるぐらい、プロにとっての当たり前のことを意識させてくれる一冊と言えるのかもしれない。

スポンサーリンク
■同じカテゴリ[書評系評論]のエントリー
<<前の記事 2ちゃんねるはなぜ潰れないのか?を読んだ。
>>次の記事 旅する会社
■このblogの書き込み最新3件
本ブログは移転しました インターネットの遊び方を身につけよう トトロが陽なら、『風立ちぬ』は陰?〜『風立ちぬ』の感想