book

これ辞書だよ、辞書、JavaScript 第5版

一度、JavaScriptを体系的に勉強したいと思いいい機会だったので、こちらの本を読みました。

JavaScript 第5版
JavaScript 第5版

posted with amazlet at 19.01.28
David Flanagan
オライリー・ジャパン
売り上げランキング: 443,337


オライリーのサイトを見るとはじめにや索引を含めて704ページを超える大作なのだが、中身も濃厚でした。
体系的にJavaScriptを学びたいならば、本書一冊あれば十分なんじゃーないのかなーっと思いました。

というわけで、

に関しては禿同で、タイトル通りまさにDefinitive Guideと同時に、本書は、初めてJavaScriptを触る人には正直きつい内容と思いました。

さらに本書を読んで思ったのは、IEが特殊仕様のために他のブラウザとは違う対応を取らざるを得ず、そのため、余分にページを割かなくてはいけないことが多々ありました。
仕様が統一されてれば、もっと、ページ数少なくてすんだんじゃーないのかなーっと思ってしまった。
(別にこの件に関しては著者の責任では決してありません。)

また、2007年に出版されたので、当然、まだGoogle chromeも存在していないので、IEと(firefox|NetScape)に焦点が置かれていて、webkitの話がなかったのでちょっと物足りなさを感じてしまった。
と同時に、今後は、html version 5も普及してくると思うので、新タグをJavaScriptからどうイジるのかの解説も今後の版改定時に追加してほしいなーっと。

今度の第6版は、すでに洋書でamazonでは予約が始まっています。

JavaScript: The Definitive Guide: Activate Your Web Pages (Definitive Guides)
David Flanagan
O’Reilly Media
売り上げランキング: 19,052

最後に読んでいて素朴に思った疑問
BtoC向けのサイトでJava Appletってまだ使われているのか???

は、別冊のJavaScriptクイックリファレンス第5版に収録されています。

JavaScriptクイックリファレンス
David Flanagan
オライリージャパン
売り上げランキング: 915,609

iPhone Core Audioプログラミング

超大作を読了

iPhone Core Audioプログラミング
永野 哲久
ソフトバンククリエイティブ
売り上げランキング: 349,098


CoreAudioを専用に扱ったサンプルアプリの紹介なのですが、内容が濃すぎて正直な話、すべて消化しきれたとはいいきれない。

実は、本書を手に取ったのは、iPhoneの開発というよりも、むしろ、iPadの音楽用アプリケーションを作りたいと考え購入しました。
twitterで何回も言っていますが、今後、音楽業界(特に楽器業界)は、iPad用のアプリケーションを作ってくるのは、間違いなく、実際、KORGに先を越されてしまった。
(非常に悔しい。。。orz)

誤解してほしくないので、きちんと書きますが、すべての楽器が、iPadに置き換えられるというわけではないので、あしからず。
おもに、DTMの揺り戻しが発生すると考えています。

で、話は横にされましたが、本書は、iPhoneアプリケーションの初心者にはまったくむかない本である。
しかも、アプリケーションをXcodeで作っただけではなく、リリースした人が対象と思われる。
というのもiPad音楽ライブラリーにアクセスする方法は、エミュレータだとできず、実機でないと動作しないので、実機にアプリを転送した経験がないと厳しいかなと。
(これは、本書のせいではなく、フレームワークはこのような仕様になっているため、仕方がない。)

また、InterfaceBuilderも使ったことがないと本書は厳しいんじゃないかなと。
サンプルアプリでは、説明抜きでIBoutletが普通に登場するので。

さらに、高校数学、具体的に、sinθ、cosθの計算、一次関数それもy切片を使う関数、大学数学も少し必要で、フーリエ変換、三角関数の逆関数も登場するので、理系である必要もあります。

これだけでも、かなり対象者は限られているのにもかかわらず、さらに、フレームワークの都合上、ポインタが多発するので、C言語にも慣れていないと本書を読むことができない。

こう書いていくと、一体誰が買うんだー?という疑問がわき起こるが、今、iPhoneアプリの開発ラッシュを考えると需要はあると思います。

CoreAudioの完全解説版が本書登場以前にはなかったので、本書がバイブル的な存在になるのは、明らか。
かなり細かく網羅されているので、リファレンスと併用して使っていきたい。

しかし、唯一残念だったのは、サンプルコードをビルドしてもエラーが発生してしまい、どうしても動作確認をすることができなかった。
具体的には、最終章のFMDrumをXcodeのver 3.2.2で、iPhone OS 3.0で普通にコンパイルを行ったが、どうしてもエラーをはずすことができなかった。(他にも結構、コンパイルエラーがあった。)
本書の冒頭には、iPhone OS 3.0で動作確認できたとあったので、じゃー、コンパイルできるだろーっと思っていたのだが。

ただでさえ、本書のサンプルコードには省略されている部分が多く、前後関係を把握したい意味で、サンプルコードを実行しながら、確認していきたいと思っていたのに、こうもいきなりコンパイルエラーをかまされると、すごく萎えてくる。

なので、本書は、ページ数がものすごく多くなるが、サンプルコードの全コードの掲載をしてほしいなーという要望が一つありました。
今度、出版されるJavaScript第6版並になるかもしれない。
(amazonでみると、1000ページを超えている!!)

JavaScript: The Definitive Guide: Activate Your Web Pages (Definitive Guides)
David Flanagan
O’Reilly Media
売り上げランキング: 22,726

後、本書、執筆時点で、最新のXcodeで動作確認をしてほしかった。。。

こうして書いてみると、今後、新しいCoreAudioだけに特化し、またサンプルコードのコンパイルのエラーが起きないような本が登場した場合、バイブルの地位を奪われるのだろうなーっと思ってしまった。

まだ、上記のような問題点があったため、すべてのサンプルコードを理解できていないため、今後、何回か再度、読んでいきたいと思いました。

これをきっかけに、CoreAudioをマスターしていきたいし、そのスタートとして最適に一冊である。

プログラミングGauche

ものすごく長い道のりでした。

ようやく読了!!

プログラミングGauche
プログラミングGauche

posted with amazlet at 19.06.20
Kahuaプロジェクト
オライリージャパン
売り上げランキング: 572,162


まず、gaucheとは、schemeを業務レベルで使えるように拡張した言語で、schemeの他にも、perlやlispの影響を受けて形成されている言語です。

では、なぜ、この本を購入したのかというと、小飼さんのこの一言が決め手になりました。

というわけで、SICPは量>>質という趣が感じられて、何よりもまず初めに質より量を積みたかったので、そういうわけで本書を購入。

結論から言うと、今年読んだIT系書籍の中で、もっとも濃厚な一冊でした。

最初は、ただ単純に量を積めればと思ったのですが、ことはそう単純でもなく、すべてこなすのに相当苦労しました。

具体的には、

1:mac os x 10.5にmysqlを導入方法
2:mysqlのスキーマ作成、database、table作成
3:emacsからgaucheまたはschemeの実行方法
4:簡易webサーバーの作成方法
5:4に付随してhttp://hoge/?foo=1234(index.html?foo=1234ではない状況でのレンダリング)
6:lisp系言語によるオブジェクト指向の考え方
7:mac os x 10.5でcgi(perl)を導入
8:unixからコマンドを実行

で、これらは決して、今の業務ではゲットできない知識でもあり、読了後の達成感がハンパないほどありました。

同じことをwindowsでやろうとしたら決して達成することはできなかったかなと。
(秀丸では対話モードでschemeの実行ができないからなー。。。)

現に本書でもそれを後押ししているかのように、windowsの画面イメージが一切でてくることなく、説明はunixを意識していても、画面イメージはmac os xものが相当ありました。

ホント、mac持っていて助かったーっと思った瞬間でもありました。

というわけで本書に取り組む際には、是非、macで。
後、プログラミングを初めて触る場合に、本書は向かないと思います。
(本書でも書いてありましたが。)

下記言語をある程度かじっているといいかなーと思いました。

1:html、JavaScript
2:scheme
3:unix(コマンドを実行したことがあればいい)

2のschemeですが、lambdaあたりまでをある程度押させていくと、前半戦が楽になります。

というのも前半戦を楽にしておかないと、後半戦相当苦しくなるかなと。

1に関しては後半戦で、htmlを発行する場面が登場するので、一回、一回、htmlのタグを調べるのが億劫になってしまいます。
metaタグをちょこっと知っておくとなおいいかもしれません。

まとめとして、まだまだ本書を完璧に理解していないので、複数回読む必要があるのかなと。
またそれぐらい味わい深かった♪
(やっと、objective-Cに戻れる。。。)

ピーター・リンチの株で勝つ―アマの知恵でプロを出し抜け

この本も泣く泣く手放しちゃった。

ピーター・リンチの株で勝つ―アマの知恵でプロを出し抜け
ピーター リンチ ジョン ロスチャイルド
ダイヤモンド社
売り上げランキング: 1,390


ピーターリンチの書籍の中で一番濃厚な一冊。

新装版なので、新たに前書きが追加されているのですが、ピーター・リンチの株式投資の法則―全米No.1ファンド・マネジャーの投資哲学とは時代が進んでインターネットを通したネットショッピングに基づいた銘柄選択が紹介されていました。

マゼランファンド運用時代で培われた、チャート分析から帳簿の分析方法まで彼独自に視点で描かれています。

彼の書籍がおもしろいのは、どうやったらアマがプロに勝つのかを紹介しているのと、当時、実際に、それを実行した際に、結果、どうなるのかが描かれているところ。

しかも、専門的な知識を使わず、地に足のついた投資方法で、さらに、同じファンドマネジャーをこきおろしているような感じで書かれているところもおもしろいです。

プロの投資家がファンドマネジャーを批判する書籍はいっぱいでているのですが、ファンドマネジャーがやじるのはあんまりないんじゃーないのかなー。

地に足のついた投資をしたい場合に本書を参考にしていました。
(手放してしまったので、もう参考にできないのです。。。ちょっと後悔したかも。)

ピーター・リンチの株の教科書—儲けるために学ぶべきこと

昨日の記事と同様に、こちらもawayに

ピーター・リンチの株の教科書―儲けるために学ぶべきこと
ピーター・リンチ ジョン・ロスチャイルド
ダイヤモンド社
売り上げランキング: 474,083

実は、↑は新装版で、持っていたのは、↓の古い版でした。

ピーター・リンチのすばらしき株式投資―楽しく学んで豊かに生きる
ピーター リンチ ジョン ロスチャイルド
ダイヤモンド社
売り上げランキング: 408,575

新装版の目次を掲載します。

本書は、株うんぬんかんぬんよりも、株式会社ってなんぞや?、株と会社の関係って?、資本主義って何?というある種、社会に近いものを感じました。

唯一会計がでてくるのは、補遺(2)ぐらいで、他はほとんど専門用語がでてこなかった記憶があります。

本書は、大人のエントリー本というよりも子供に読ませたい一冊かなと。

そう言って、手放してしまったのですが。

ピーター・リンチの株式投資の法則―全米No.1ファンド・マネジャーの投資哲学

これを手放すのは苦渋の決断だった。

ピーター・リンチの株式投資の法則―全米No.1ファンド・マネジャーの投資哲学
ピーター リンチ
ダイヤモンド社
売り上げランキング: 85,331


マゼラン・ファンドを運用していたピーターリンチが、自身の経験に基づいて、投資哲学について書いた本書は、タイトルは「・・・の法則」とありますが、実際は、哲学に近いものがあった。

具体的な投資の分析方法については、書かれておらず(厳密には、PERに関する言及がありますが、方法論とまでは言えないような気が)、それよりも、どういった視点から銘柄を選択し、世の中の現状と照らし合わせて、選択した銘柄が本当に買いか?または、売りなのか?を中心に書かれた本かなーと思いました。

特にどういった銘柄を選択していいのかを養うには、非常に勉強になって、実際にこの方針で大学時代に株を選んで買ったら上昇した記憶があります。

本に書かれている選択方法ですが、特に難しいことをやっているのではなく、日常生活で何を買っているのかに着眼して、選択していることが多かったのではないかと。
(もちろん例外もありますが。)

例えば、ピーターリンチには、子供がいるのですが、「子供が買ってるおもちゃのメーカーはどこか?」、「子供が着ている洋服のメーカーは?」、「しょっちゅう食べているものは?」、子供以外では「妻が買っている宝石店のメーカーは?」など問いかけて、でてきた銘柄を選択することから始まっています。
(この後、財務諸表で分析、さらにその後チャートの分析と続いていきます。)

この本がおもしろいのは、こういった着眼点で銘柄を買うことによって、後に株価があがったという証拠を、第1章で、見せているところ。

説明の際に、難しい会計用語を使わずに、まず、子供に絵(例えば、ハンバーガーの絵、ミッキーマウスの絵など)を見せて、その絵で思いつく会社をあげさせて、結果、その会社の株を買ったら、今頃どうなっているのかが分析されており、大変、興味深い結果がわかります。
(詳しくは本書を参考に。)

後、本書を読むに当たって会計用語よりも、株の専門用語を知っておくことが大事なのではないかと。

ありがたいことに、今は、ネットですぐに調べられるので、そこらへんは意識する必要がないかもしれません。

まとめとして、株の入門書としては難しいかもしれませんが、大事な本かなと。
まず始めに、どんな銘柄を選択するのがいいのかという、第一手を決めるには最適解を得ることができると思います。

はぁー、もっと本棚がでかかったら。。。

ピーターリンチの本、全部、手放しちゃった。。。
今、思ったら間違った判断かもしれなかったかも。

詳解JavaScript辞典 改訂版

詳解JavaScript辞典 改訂版
詳解JavaScript辞典 改訂版

posted with amazlet at 19.01.29
半場 方人
秀和システム
売り上げランキング: 1,866,809


詳解JavaScriptの改訂版(第二版)で、JavaScriptを使ったサンプル集が500ページ以上に渡って書かれていて、一見、濃そうな内容に見えますが、昔のと、さほど内容が変わっていないような。

しかも、2005年に出版されている割には、DOMを使ったサンプルが少ないような気がしました。
(ajaxを考慮したサンプルがないということ。)

確かに、動作確認ではIE4~IE6、FireFox、Safariと各種ブラウザで検証されているようなのですが。。。

今、新しい第三版がでているようなのですが、どうなんでしょうか?

詳解JavaScript&DynamicHTML辞典 第三版Ajax対応
半場 方人
秀和システム
売り上げランキング: 2,453,999

COLD FUSION入門 第2版

やっとこさ、タイピングが完了しましたー。

COLD FUSION入門 第2版
COLD FUSION入門 第2版

posted with amazlet at 19.01.24
JCFUG(Japan Cold Fusion User Group)特別プロジェクトチーム
日経BP社
売り上げランキング: 1,425,102


今まで、3冊、紹介しましたが、イントラの構築方法について学びたい場合に、最初に手にとった方がいいかもしれない本。

webクリエイターのためのCold Fusionと比べると、イントラの構築方法に焦点が絞られており、かつ、ソース込みできちんと掲載されているので、タイピングをしていけば、きちんとしたものになるという充実した構成。

メールを送信するところから始まり、変数の表示、条件分岐はもちろんのこと、データベースを使って、データを登録、更新、削除も、ばっちり網羅されています。
(しかもページング処理についても掲載されています。本ブログでもCFにおけるページング処理関してこちらに書いています。)

かと言って、完璧な本かなといえば、必ずしもそうではないのかもしれません。

なぜならば、まず、pタグの使い方。

一般的に、閉じタグを必要とするのですが、覚えている限り、閉じタグを使っているところがなかったような。
(HTMLの文法なので、CFとは関係がありませんが。)
pタグに閉じタグをつけないと、どこからどこまでが段落かわかりにくいような気がします。

また、現行のColdFusionは、バージョン8なのだが、cfservletが使えないので、付録1のサンプルコードを実行することができない。

おそらく、java servletのソースをコンパイルし、ColdFusionサーバーに登録を行わないとできないような気がするのですが、まだ、完全に調査しきれていません。
しかも、その方法は、当然、本書では解説されていない。
でも、それはしょうがありません。
だいぶ前のバージョンを対象にした本なのですから。

で、前回紹介したDreamweaver Webアプリケーションスターティングガイド―Dreamweaver8+ColdFusion MX7ではじめるWebプログラミングでもそうだったのですが、CFQueryParamを使った、トランザクションが一個も入っていない。
8章にも渡って構成されているのに。。。

CFQueryParamは、SQLインジェクションを防いでくれたり、SQLの実行速度をあげてくれたりとかな~り重要なタグだと思うのですが。。。

(CFQueryParamに関しては、こちらに書いています。)

トランザクションに関するダメだしは、まだあって、一回も、try、catchを使った処理が書かれていないのもなー。
なんで、これを使わないのだろうか??
更新・登録がこけた時の処理はどうしろっていうの??
自動COMMIT形式でプログラムを書いてしまうことは、毎回、毎回、発生する更新処理が確実に正常終了ってことを前提にしているような気がして怖いのですが。

おそらく、説明するのがめんどくさかったからだと思う。

(cftry、cfcatchを使ったトランザクション処理は、こちらを参照。)

変数参照に関して思い出したが、8章では、本来ならば、form.変数名と書かなくて、いけないところを、変数名と省略し、同様に、URL変数の時も、URL.変数名と書かずに、変数名で参照してしまっている。

確かに、変数名が一意に特定できる場合は、それでも構わないのだが、同じ変数名が存在している場合、CFはどのように動作(インタプリタ)するかわからない。
(例えば、同一ページで、hogeとform.hogeがあった場合など)

きちんとわけで考えないと後々、困るような気がしました。

ここから先は、だめだしというわけではないのですが、SELECTしたデータを表示するのに、ほとんど、<cfoutput query=”hoge”>形式が多かったのですが、<cfloop query=”hoge”>の方が個人的には好みです。

まぁー以上を総合にして考えてみても、やはり、本書の存在として、質より量を積みたい場合に、重要な本かなと思いました。

ここまで書いて思ったのは、8章に関するダメだしが多かったなー。

Dreamweaver Webアプリケーションスターティングガイド―Dreamweaver8+ColdFusion MX7ではじめるWebプログラミング (WEB DESIGNERS’ PROGRAMMING BOOKS)

やっとこさ、終了しました。


本書は、Dreamweaver8をベースにColdFusionを組み合わせてアプリケーションを作っていくのですが、Dreamweaver8を基準に構成されているせいか、およそ、9.9割ソース(プログラム)がでてきません。

読んで思ったのは、初めてプログラミングをする上で入門書として本書を手に取るのは危険かなーと。

なぜならば、やはりプログラムがでてこないから。

しかも、サンプルプログラムが落ちていて、中身をみると、初心者には敷居が高いように思う、構文ばかり。
なので、後から、プログラムで解析するのが難しく、結果として、プログラミングするときは、Dreamweaverに頼らざるを得ない状況を作り出してしまっている。

これを通して、「徐々にプログラムを読んでいくぞ」となってくれれば、問題はないと思うのですが。

後、本書では、イントラ系のシステムを紹介していて、ストーリは、まるで、一般サイトを今後の業務を通して作っていくような流れだが、イントラ系のシステムを作る上でDreamweaverがあるところってあるの?

さらに、Dreamweaverがなかった場合どうなるの?

ってこの疑問が発生した時点で、本書を手に取る必要はなかったのかもしれない。

というわけで、本書は、個人でサイトを作成する人向けだと思いました。

仮に本書を通してサイトを作り一般公開したとしても、セキュリティが弱いので、すぐにSQLインジェクションをくらってしまう可能性があるので、その点だけ注意したいかなと。

(もうすでに3冊、CFの本を読んだが、今だに、CFQueryParamを使ったSQL文に遭遇していないような。かなり重要だと思うんだけどなーーー)

自作アプリをApp Storeで世界に向けて販売できる!! iPhone SDKプログラミング大全 (MacPeople Books)

自作アプリをApp Storeで世界に向けて販売できる!! iPhone SDKプログラミング大全 (MacPeople Books)
木下 誠
アスキー・メディアワークス (2009-01-06)
売り上げランキング: 1,144,487


まず始めにいえるのは、副題が「自作アプリをApp Storeで世界に向けて販売できる!!」と書かれているが、確実に、これを読んだからといって、自分の思い描いたアプリを作ることができるかというと、それは無茶だと思った。

それは、なぜかというと、まず、本書では、いくつか実際に手を動かしながらアプリを作る例があるのですが、その数が圧倒的に少ないような気がしました。

他の言語の入門書をいくつか読んだことがあるのですが、それらと比べても一番、例が少なかったように思いました。

アプリの作り方は、3章から始まるのですが、手を動かしたのは、4章のみで、他はただサンプルコードの紹介のみでした。

しかも、その4章は、Interface Builder(UI作成ツール)とXcode(IDE)を使ってアプリを作成する方法で、UIとコードの関連性がイマイチつかめずじまいで終わってしまった。

やはりこの手の本は、ソースですべてを語ってほしいと思った。
まず、Xcodeですべてを作りあげて、そんでもって、さらに、「Interface Builderを使うと、より早く便利開発することができるんですよー」という流れだと納得するのですが。

別に著者のせいにするのではなく、それだけ、仕様が複雑なので、各章で、すべての例を網羅するのは無理なんだろうなーと判断しました。

なので、この本を読んでわからなかったことは、各自で調べる必要があるのかなと。

後、2章では、Objective-Cの説明をするのに、C++との比較が登場するのですが、それと同時にJavaとの比較もほしかったかなと。

C++の開発者の方も結構いるとは思うのですが、それと負けず劣らずJavaの開発者の方も大勢いると思うんですよね。

と納得のいかない部分もあるにはあるのですが、では、買わなかった方がよかったと聞かれればそれは、「No」かなと。

本書では、iPhone dev centerのトップページに記載されている仕様のほとんどをカバーしているように思えました。

なので、英語を読むのがおっくうで、そっこーで知りたい場合は、かなり便利なのではないかと。
実際にすっげー早く理解できました。

で、本書を読みながら仕様に目を通すとより理解が深まると思います。

後、Objective-Cの説明がすごくわかりやすかった。
これを読んでおけば、本書で言っていたようにかなりの部分をカバーできるのではないかと。

残すところは実践あるのみかなと。