<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4956716051393715824</id><updated>2012-02-16T16:15:47.390+09:00</updated><category term='Python'/><category term='jQuery'/><category term='iPhone'/><category term='Dojo Toolkit'/><category term='css'/><category term='書籍'/><category term='勉強会'/><category term='JSON'/><category term='WEB API'/><category term='Objective-C'/><title type='text'>isnotunreachablecode</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-1186646980963758020</id><published>2009-06-13T12:42:00.006+09:00</published><updated>2009-06-13T12:51:11.168+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>PrivateTumblr1.0をリリースしました</title><content type='html'>iTunes App Storeについに、ついに、アプリが公開されました〜！&lt;br /&gt;わーい。&lt;br /&gt;&lt;br /&gt;・・・ところが、公開３日で非公開にしました・・・。&lt;br /&gt;&lt;br /&gt;原因は「特定の文字列が含まれる際にただしく動かない」というバグがあったためです。&lt;br /&gt;ログインしかり、投稿しかり。さすがにそんなもの公開するわけにはいかないので泣きながらデバッグです。&lt;br /&gt;&lt;br /&gt;書いているコードはrequest_bodyを作って、以下のようにNSMutableURLに対して&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class='C++'&gt;&lt;br /&gt;[request setHTTPBody:[request_body dataUsingEncoding:NSUTF8StringEncoding]];&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;としているもの。&lt;br /&gt;&lt;br /&gt;文献も見つからないのでしばらく格闘予定です。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-1186646980963758020?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/1186646980963758020/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2009/06/privatetumblr1.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/1186646980963758020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/1186646980963758020'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2009/06/privatetumblr1.html' title='PrivateTumblr1.0をリリースしました'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-6010826760264181816</id><published>2009-05-02T01:04:00.001+09:00</published><updated>2009-05-02T01:17:13.434+09:00</updated><title type='text'>そろそろ立て直しを・・・</title><content type='html'>最近はもっぱらiPhoneアプリ開発にハマっています（ダブルミーニングで）&lt;br /&gt;&lt;br /&gt;一つの事を憶えるのに一日作業になってしまうようなのんびり調子ですが、夏までには１本くらいリリース出来るようにがんばっていきたいと思っています。ノウハウなんかも紹介できると良いですね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-6010826760264181816?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/6010826760264181816/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2009/05/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/6010826760264181816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/6010826760264181816'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2009/05/blog-post.html' title='そろそろ立て直しを・・・'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-6470995654727114963</id><published>2008-12-04T21:13:00.003+09:00</published><updated>2009-05-02T01:07:44.108+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Python3.0リリース</title><content type='html'>Python3.0がリリースされたそうです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;とりあえず&lt;/h5&gt;&lt;br /&gt;今度触ってみます。とりあえず、後方互換性がないらしい、という情報だけ。&lt;br /&gt;&lt;a href="http://www.python.org/download/releases/3.0/" target="_blank"&gt;http://www.python.org/download/releases/3.0/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Python2.x&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='py'&gt;print "Hello", "World"&lt;/pre&gt;&lt;br /&gt;だったのが、&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Python3.0&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='py'&gt;print ("Hello", "World")&lt;/pre&gt;&lt;br /&gt;とか。&lt;br /&gt;&lt;br /&gt;詳しくは&lt;a href="http://docs.python.org/dev/3.0/whatsnew/3.0.html" target="_blank"&gt;http://docs.python.org/dev/3.0/whatsnew/3.0.html&lt;/a&gt;へ&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-6470995654727114963?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/6470995654727114963/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/12/python30.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/6470995654727114963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/6470995654727114963'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/12/python30.html' title='Python3.0リリース'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-3257648288598819231</id><published>2008-10-23T21:51:00.004+09:00</published><updated>2009-05-02T01:07:58.819+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Chromeでテキストエリアのリサイズを制限する方法</title><content type='html'>巷で話題の驚速ブラウザ、Google Chromeのチップスです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;自動リサイズするテキストエリア&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;このChrome、WEBデザイナ泣かせのCSS仕様で、テキストエリアがデフォルトリサイズ可能になっています。リキッドデザインが理想ですが、旧来のテーブルレイアウトではぐちゃぐちゃになること必死。以下のCSS定義をかませることでリサイズをオフにできます。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class='css'&gt;&lt;br /&gt;&lt;br /&gt;textarea {&lt;br /&gt;     resize : none;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;こんだけです。お手軽。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-3257648288598819231?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/3257648288598819231/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/10/chrome.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3257648288598819231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3257648288598819231'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/10/chrome.html' title='Chromeでテキストエリアのリサイズを制限する方法'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-5535364685931895505</id><published>2008-10-10T20:57:00.006+09:00</published><updated>2009-05-02T01:08:13.054+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dojo Toolkit'/><title type='text'>Dojo Toolkit 1.2 リリース</title><content type='html'>(個人的にイチオシ)JavascriptフレームワークのDojo Toolkitの最新バージョンがリリースされました。最新バージョンは1.2です。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;リンク&lt;/h5&gt;&lt;br /&gt; * &lt;a href="http://dojotoolkit.org/" target="_blank"&gt;公式サイト&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://dojotoolkit.org/book/dojo-1-2-release-notes" target="_blank"&gt;リリースノート&lt;/a&gt;&lt;br /&gt; * &lt;a href="http://journal.mycom.co.jp/news/2008/10/08/015/index.html" target="_blank"&gt;紹介記事(マイコミジャーナル)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;そこで&lt;/h5&gt;&lt;br /&gt;はやく日本語リファレンスを書かなきゃですね。&lt;br /&gt;相変わらずHTMLヘルプのみでダウンロードはしてくれないみたいです。公式。&lt;br /&gt;&lt;br /&gt;ところで、Dojoの公式のぐぐらびりてぃはなぜこんなにも低いのだろう。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-5535364685931895505?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/5535364685931895505/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/10/dojo-12.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/5535364685931895505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/5535364685931895505'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/10/dojo-12.html' title='Dojo Toolkit 1.2 リリース'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-7221405340773106151</id><published>2008-09-07T10:22:00.008+09:00</published><updated>2009-05-02T01:08:30.352+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Python基本 - 文字列１</title><content type='html'>Pythonの文字列型についてメモ。&lt;br /&gt;文字列は ' (シングルクォート)または " (ダブルクォート)で囲むことで表現します。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class="py"&gt;&lt;br /&gt;a = 'Hello, '&lt;br /&gt;b = "Mike"&lt;br /&gt;&lt;br /&gt;print a + b&lt;br /&gt;a + b&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;&gt;&gt;&gt; print a + b&lt;br /&gt;Hello, Mike&lt;br /&gt;&gt;&gt;&gt; a + b&lt;br /&gt;'Hello, Mike'&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;解説&lt;/h5&gt;&lt;br /&gt;文字列の加算です。単純に+（プラス）演算子で行うことができます。&lt;br /&gt;&lt;br /&gt;print a + b&lt;br /&gt;&lt;br /&gt;と&lt;br /&gt;&lt;br /&gt;a + b&lt;br /&gt;&lt;br /&gt;の違いは、数値型の出力よりわかりやすいと思います。&lt;br /&gt;前者はa + bの値を出力、後者はa + b というオブジェクトそのものを戻り値として返却するという動きです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;文字列の乗算&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='py'&gt;&lt;br /&gt;a = 'Hello, '&lt;br /&gt;b = "Mike"&lt;br /&gt;&lt;br /&gt;print a * 3 + b&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;&gt;&gt;&gt; print a * 3 + b&lt;br /&gt;Hello, Hello, Hello, Mike&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;解説&lt;/h5&gt;&lt;br /&gt;*（アスタリスク）演算子を使うことで、文字列の乗算ができます。意外と便利かも。&lt;br /&gt;&lt;br /&gt;ちなみに、減算、および除算はできません。以下の様になります。&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt; a - b&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&lt;stdin&gt;", line 1, in &lt;module&gt;&lt;br /&gt;TypeError: unsupported operand type(s) for -: 'str' and 'str'&lt;br /&gt;&gt;&gt;&gt; a / b&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&lt;stdin&gt;", line 1, in &lt;module&gt;&lt;br /&gt;TypeError: unsupported operand type(s) for /: 'str' and 'str'&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;文字列のエスケープ&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='py'&gt;&lt;br /&gt;# ダブルクォートとシングルクォート入れ子によるエスケープ&lt;br /&gt;a1 = " 'aaa' aaa"&lt;br /&gt;b2 = ' "bbb" bbb'&lt;br /&gt;&lt;br /&gt;# ¥（Yen）によるエスケープ&lt;br /&gt;a2 = ' ¥'aaa¥' aaa'&lt;br /&gt;b2 = " ¥"bbb¥" bbb"&lt;br /&gt;&lt;br /&gt;a1&lt;br /&gt;a2&lt;br /&gt;&lt;br /&gt;print a1, 'and', a2&lt;br /&gt;print b1, 'and', b2&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;&gt;&gt;&gt; a1&lt;br /&gt;" 'aaa' aaa"&lt;br /&gt;&gt;&gt;&gt; a2&lt;br /&gt;" 'aaa' aaa"&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt; print a1, 'and', a2&lt;br /&gt; 'aaa' aaa and 'aaa' aaa&lt;br /&gt;&gt;&gt;&gt; print b1, 'and', b2&lt;br /&gt; "bbb" bbb and "bbb" bbb&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;解説&lt;/h5&gt;&lt;br /&gt;ダブルクォートの中のシングルクォート、シングルクォートの中のダブルクォートでそれ自身を表現することができます。クォート同士に優劣関係はありません。よく考えればわかりますが、三階層は無理です。&lt;br /&gt;a1とa2は結果からわかる様に、同じ値を表しています。&lt;br /&gt;&lt;br /&gt;print文中のコンマは改行コードを含めずに連続して出力する際に使用します。&lt;br /&gt;&lt;br /&gt;たとえばこんなこともできます。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class='py'&gt;&lt;br /&gt;a = 'aaa'&lt;br /&gt;b = 'bbb'&lt;br /&gt;print a,&lt;br /&gt;print b&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;対話型の時にはリクエストごとに終了してしまうので違いはありませんが、プログラムファイルを実行している時に差が出ます。試しに上記のプログラムを「PrintTest.py」として、&lt;br /&gt;&lt;br /&gt;&gt; python PrintTest.py&lt;br /&gt;&lt;br /&gt;で実行してみてください。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;文字列の複数行にわたる定義&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='python'&gt;&lt;br /&gt;str1 = "It's very very very ¥&lt;br /&gt;long ¥&lt;br /&gt;sentence,"&lt;br /&gt;&lt;br /&gt;print str1&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;解説&lt;/h5&gt;&lt;br /&gt;文字列を複数行にわたって定義する場合、¥(円サイン、バックスラッシュ)を使用します。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-7221405340773106151?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/7221405340773106151/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/09/python_07.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/7221405340773106151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/7221405340773106151'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/09/python_07.html' title='Python基本 - 文字列１'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-7493561693489385364</id><published>2008-09-07T08:37:00.021+09:00</published><updated>2009-05-02T01:08:45.720+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Python基本 - 数値</title><content type='html'>Pythonでは基本的な型として数値があります。&lt;br /&gt;入力する値にはクォートはつけません。これで数値型を表現できます。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;整数の四則演算&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='python'&gt;&lt;br /&gt;a = 1&lt;br /&gt;b = 2&lt;br /&gt;&lt;br /&gt;a + b&lt;br /&gt;a - b&lt;br /&gt;a * b&lt;br /&gt;a / b&lt;br /&gt;a % b&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;&gt;&gt;&gt; a + b&lt;br /&gt;3&lt;br /&gt;&gt;&gt;&gt; a - b&lt;br /&gt;-1&lt;br /&gt;&gt;&gt;&gt; a * b&lt;br /&gt;2&lt;br /&gt;&gt;&gt;&gt; a / b&lt;br /&gt;0&lt;br /&gt;&gt;&gt;&gt; a % b&lt;br /&gt;1&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;解説&lt;/h5&gt;&lt;br /&gt;整数を代入するとその値は整数型として扱われますので、&lt;br /&gt;&lt;br /&gt;1 / 2 = 0 &lt;br /&gt;1 % 2 = 1  #除算の余&lt;br /&gt;&lt;br /&gt;となるのがポイントです。&lt;br /&gt;&lt;br /&gt;ところで、対話式のインタープリタで実行している場合、&lt;br /&gt;&lt;br /&gt;a + b&lt;br /&gt;&lt;br /&gt;も&lt;br /&gt;&lt;br /&gt;print a + b&lt;br /&gt;&lt;br /&gt;も同じ動きをしている様に見えますが、厳密には「演算の戻り値を返す」という動きと、「標準出力に値を出力する」ということで意味が違います。実際にコードを書くときに、「値を画面に出力したい」というときはprintを使用する必要があると思います。&lt;br /&gt;&lt;br /&gt;次に、小数型を扱ってみます。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;小数の四則演算&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='python'&gt;&lt;br /&gt;a, b = 1.0, 2.0&lt;br /&gt;&lt;br /&gt;a + b&lt;br /&gt;a - b&lt;br /&gt;a * b&lt;br /&gt;a / b&lt;br /&gt;a % b&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;&gt;&gt;&gt; a + b&lt;br /&gt;3.0&lt;br /&gt;&gt;&gt;&gt; a -b&lt;br /&gt;-1.0&lt;br /&gt;&gt;&gt;&gt; a * b&lt;br /&gt;2.0&lt;br /&gt;&gt;&gt;&gt; a / b&lt;br /&gt;0.5&lt;br /&gt;&gt;&gt;&gt; a % b&lt;br /&gt;1.0&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;解説&lt;/h5&gt;&lt;br /&gt;Pythonでは1行目の様な代入式が可能になっています。これはタプルというリスト構造によって実現されますがこれは後述します。コンマで区切ると代入式を一つにまとめることができると言うことを覚えておいてください。ただし、左辺と右辺の要素の数は同じでなければなりません。&lt;br /&gt;&lt;br /&gt;他の代入方法として、aとbに同じ値を代入したい場合、a = b = 1.0とすることもできます。この場合、aとbは同じオブジェクトを参照しているわけではないので、このあとでb = 2.0としてもa = 1.0のままです。参照のコピーではないんですね。&lt;br /&gt;&lt;br /&gt;コードの解説ですが、上の様に1.0 / 2.0 = 0.5となります。ちなみに、演算対象の型が混合していた場合、整数は小数型に変換されます。&lt;br /&gt;&lt;br /&gt;ex) 1 / 2.0 = 0.5&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;複素数の扱い&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='python'&gt;&lt;br /&gt;a = 1 + 2j&lt;br /&gt;a = 3 - 5j&lt;br /&gt;&lt;br /&gt;a.real&lt;br /&gt;b.imag&lt;br /&gt;&lt;br /&gt;a + b&lt;br /&gt;&lt;br /&gt;abs(a + b)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;&gt;&gt;&gt; a.real&lt;br /&gt;1.0&lt;br /&gt;&gt;&gt;&gt; b.imag&lt;br /&gt;-5.0&lt;br /&gt;&gt;&gt;&gt; a + b&lt;br /&gt;(4-3j)&lt;br /&gt;&gt;&gt;&gt; abs(a + b)&lt;br /&gt;5.0&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;解説&lt;/h5&gt;&lt;br /&gt;いや、複素数なんて、通常は使わないとは思いますけど。&lt;br /&gt;複素数は実部と虚部の小数により表されます。&lt;br /&gt;.realで実部を取得、.imagで虚部を取得できます。&lt;br /&gt;abs()で複素数の大きさを取得できます。&lt;br /&gt;&lt;br /&gt;いや、複素数なんて、通常は使わないとは思いますけど。一応。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-7493561693489385364?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/7493561693489385364/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/09/pyyhon.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/7493561693489385364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/7493561693489385364'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/09/pyyhon.html' title='Python基本 - 数値'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-5962930040890625703</id><published>2008-09-04T21:36:00.017+09:00</published><updated>2009-05-02T01:09:08.841+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>なにかとアツイPythonを触ってみた</title><content type='html'>最近（ちょっと遅い？）&lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;がアツイということなんで、とりあえず入門してみました。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Pythonとは？&lt;/h5&gt;&lt;br /&gt;&lt;a href="http://www.ruby-lang.org/ja/"&gt;Ruby&lt;/a&gt;みたいな言語です。思いっきり怒られそうですね。&lt;br /&gt;日本ではまだマイナーな部類ですが、海外では結構人気があったりします。&lt;br /&gt;&lt;a href="http://trac.edgewall.org/"&gt;Trac&lt;/a&gt;とか、&lt;a href="http://code.google.com/intl/ja/appengine/"&gt;GoogleAppEngine&lt;/a&gt;とか。。。&lt;br /&gt;詳しくは調べてみてください。&lt;br /&gt;&lt;br /&gt;最近オープンソースでおもしろいの出たなーと思って調べてみると、結構Pythonだったりします。これは飛びつかなければ。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;見た目&lt;/h5&gt;&lt;br /&gt;コードの見た目はこんなです。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class='python'&gt;&lt;br /&gt;def method1(a):&lt;br /&gt;    for i in a:&lt;br /&gt;        print i&lt;br /&gt;&lt;br /&gt;a = [111, 'aaa']&lt;br /&gt;method1(a)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;コンソールから&lt;br /&gt;&lt;br /&gt;&gt; python&lt;br /&gt;&lt;br /&gt;と入力して、対話形式のインタープリタを起動して上のプログラムを入力するか、&lt;br /&gt;「AAA.py」という名前で保存して&lt;br /&gt;&lt;br /&gt;&gt; python AAA.py&lt;br /&gt;&lt;br /&gt;と実行します。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;111&lt;br /&gt;aaa&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;特徴&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt; * 非常にらいとうぇいとな感じ&lt;br /&gt; * スクリプトぽくすいすい書ける&lt;br /&gt; * オブジェクト指向でもイケル&lt;br /&gt; * 構造は括弧（）｛｝［］でなくインデントで表記する&lt;br /&gt; * 処理系さえ入っていれば、OSは問わないので「Write once, ...」&lt;br /&gt; * 配列は［］で表記。型はない。数値も文字列も入れられる&lt;br /&gt; * ・・・&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ちょっと興味を持ってしまったので備忘録がてら、エントリーが続くかもしれません。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;オマケ&lt;/h5&gt;&lt;br /&gt;上のプログラムをJavaで書くとこうなります。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class='Java'&gt;&lt;br /&gt;public class AAA {&lt;br /&gt;&lt;br /&gt;  public static void main(String[] args) {&lt;br /&gt;    Object[] a = {new Integer(111), new String("aaa")};&lt;br /&gt;    method1(a);&lt;br /&gt;  }&lt;br /&gt; &lt;br /&gt;  private static void method1(Object[] a) {&lt;br /&gt;    for (Object i : a) {&lt;br /&gt;      System.out.println(i);&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;これを&lt;br /&gt;&lt;br /&gt;&gt; Javac AAA.java&lt;br /&gt;&lt;br /&gt;でコンパイルして&lt;br /&gt;&lt;br /&gt;&gt; Java AAA.class&lt;br /&gt;&lt;br /&gt;で実行っと。。。めんどくさい。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;※私自身は一応Javaエンジニアであり、本エントリーはJavaネガティブキャンペーンではありません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-5962930040890625703?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/5962930040890625703/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/09/python.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/5962930040890625703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/5962930040890625703'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/09/python.html' title='なにかとアツイPythonを触ってみた'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-2461154101802770776</id><published>2008-07-15T20:56:00.017+09:00</published><updated>2008-07-17T01:04:57.171+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WEB API'/><title type='text'>ブックマークレットを使ってウェブサイトのサムネイルを作成する</title><content type='html'>「ブックマークレット」って聞いたことあるけど、なんだかわからない。&lt;br /&gt;そんな方に、簡単なものを作って説明してみましょう。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;用意するモノ&lt;/h5&gt;&lt;br /&gt; * ウェブブラウザ（ないとは言わせない）&lt;br /&gt; * WEB API (&lt;a href="http://capture.heartrails.com/" target="_blank"&gt;http://capture.heartrails.com/&lt;/a&gt;)&lt;br /&gt; * このエントリに対する興味&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;ブックマークレットとは？&lt;/h5&gt;&lt;br /&gt;ブックマークレットとは、ブラウザのブックマークにjavascriptを流し込むことによって動かすアプレットのことです。リンクタグの中身に「javascript:うんぬん」と書くことがあると思うのですが、あれをイメージしていただけると近いです。なんだか裏技的なような、若干危なっかしいような（※1）、そんな機能です。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;ハローワールド！&lt;/h5&gt;&lt;br /&gt;まずはやっぱりこれです。ハローワールド。&lt;br /&gt;IE（※２）は持っていませんので、とりあえずfirefoxを想定して書きます。&lt;br /&gt;&lt;br /&gt;基本的な流れは以下の通りです。&lt;br /&gt;&lt;br /&gt;1. 「ブックマーク」を選択&lt;br /&gt;2. 「ブックマークの管理」を選択&lt;br /&gt;3. 「新規ブックマーク」を選択&lt;br /&gt;4. 「URL」の欄に、「javascript:alert('hello%20world%20!');」と入力します。&lt;br /&gt;&lt;br /&gt;以上です。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_ih0z9qKlhU8/SHyugR9ff0I/AAAAAAAAA-I/k0mybygwge8/s1600-h/add_bookmark.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://bp2.blogger.com/_ih0z9qKlhU8/SHyugR9ff0I/AAAAAAAAA-I/k0mybygwge8/s320/add_bookmark.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5223241537443299138" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;では、このブックマークレットを実行してみましょう。&lt;br /&gt;普通にブックマークを選択するだけです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;結果&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_ih0z9qKlhU8/SHyu6AqgCCI/AAAAAAAAA-Q/LhNpqGnxRGs/s1600-h/helloworld.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://bp2.blogger.com/_ih0z9qKlhU8/SHyu6AqgCCI/AAAAAAAAA-Q/LhNpqGnxRGs/s320/helloworld.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5223241979476838434" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;できましたか？&lt;br /&gt;&lt;br /&gt;「%20」は、半角スペースを表したものです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;WEB APIを呼んでみる&lt;/h5&gt;&lt;br /&gt;流れは一緒です。javascriptが書けるのだから、基本的にはなんでもできます。&lt;br /&gt;そこでWEB APIを呼んでみましょう。&lt;br /&gt;&lt;br /&gt;HeartRailsさん提供のWEB APIで「HeartRails Capture」というものを使用します。&lt;br /&gt;使い方は以下のように、ただアドレスをつなげるだけです。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_ih0z9qKlhU8/SHywWg1rhdI/AAAAAAAAA-Y/zmdAFR5xfTk/s1600-h/heartrails.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://bp3.blogger.com/_ih0z9qKlhU8/SHywWg1rhdI/AAAAAAAAA-Y/zmdAFR5xfTk/s320/heartrails.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5223243568661628370" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;上の例で言うところの、アマゾンのアドレスのところが置き換われば、常にサムネイルを取得できる。。。むふふ。ってなわけです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;一気に仕上げ&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;「window.location」という値で自身のURLが取得できます。&lt;br /&gt;&lt;br /&gt;「location.href='***'」で、ページの取得が行えます。&lt;br /&gt;&lt;br /&gt;合わせると、こういう記述になります。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="js"&gt;&lt;br /&gt;javascript:location.href='http://capture.heartrails.com/free?'+window.location;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;ハローワールドの例のように、ブックマークを追加して選択するだけです。&lt;br /&gt;今表示しているウェブページのサムネイルが表示されるはずです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;できましたか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;補足&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;※１&lt;br /&gt;javascriptでは、クッキー情報を取得することもできます。つまり、ログイン情報などを吸い出してサーバに送信する、なんて悪いブックマークレットがあると、あんなことやこんなことに悪用されちゃうわけですね。出所不明のブックマークレットは、危険ですので実行しないようにしましょう。&lt;br /&gt;&lt;br /&gt;※２&lt;br /&gt;IEの場合は、「ブックマーク」は、「お気に入り」でしたっけ？&lt;br /&gt;お気に入レット？？？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-2461154101802770776?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/2461154101802770776/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/07/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/2461154101802770776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/2461154101802770776'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/07/blog-post.html' title='ブックマークレットを使ってウェブサイトのサムネイルを作成する'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_ih0z9qKlhU8/SHyugR9ff0I/AAAAAAAAA-I/k0mybygwge8/s72-c/add_bookmark.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-4551526529488235880</id><published>2008-07-06T21:39:00.010+09:00</published><updated>2008-07-09T01:05:08.346+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='勉強会'/><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><title type='text'>OBJC読書会参加</title><content type='html'>先日買ったObjective-Cの本、読むのが大変なので読書会に参加してきました。&lt;br /&gt;と、書くと、そういうの慣れているみたいですが、初参加です。&lt;br /&gt;勉強会も参加したこともないですし、そもそもオフ会っぽいのも初めてです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;気になったこと&lt;/h5&gt;&lt;br /&gt; * コンセプトは重要。&lt;br /&gt; * 人が多いと大変。&lt;br /&gt; * Rubyの人が多かった。&lt;br /&gt; * Mac多かった。&lt;br /&gt; * ドジョウ鍋旨かった。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コンセプトは重要＆人が多いと大変&lt;/h5&gt;&lt;br /&gt;発起人の方が場所の手配から当日の音頭からやってくださいました。初心者には大変心強かったです。最初は、「どうする、どうする」みたいな感じでどうなることかとハラハラでした。なんとなく興味があって参加してみた人が多いんですね。自分のその口です。。。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ただ、読書会って、&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ほ　ん　と　に　読　書　す　る　ん　で　す　ね&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;音読（回し読み）&lt;br /&gt;&lt;br /&gt;→　質疑&lt;br /&gt;&lt;br /&gt;→　音読（回し読み）&lt;br /&gt;&lt;br /&gt;→　２，３章だけ読んで終了。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;一人じゃ集中して読めない私みたいなのには、いろんな視界も手に入り大変ありがたいのですが、結構退屈でつまらない人もいらっしゃったのではないでしょうか。次回は人減るかしら（やりやすくなるだろうな）。てっきりハンズオン的なものを想定していましたが、たしかに教えて君ばかりでは主催者にもメリットがないですし、はやく技術的なものをコミュニティに還元できるくらい勉強したいものです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Rubyの人が多かった&lt;/h5&gt;&lt;br /&gt;気がする。オープンソース人×マック＝Rubyなのかもしれません。フリーのエンジニア、会社でiPhoneやろうとしてる人、もうしてる人、Macアプリ作りまくっている人、学生、アーティスト、はてな日記の有名な人、いろんな人がいました。Rubyは仕事をえり好みしても食っていけるくらい仕事になるんだって。へー。ほー。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Macの人が多かった&lt;/h5&gt;&lt;br /&gt;あたりまえ。てか、全員ですが。&lt;br /&gt;&lt;br /&gt;比率としては、&lt;br /&gt;&lt;br /&gt;MacBook 50%&lt;br /&gt;MacBook Pro 30%&lt;br /&gt;MacBook AIR 20%&lt;br /&gt;&lt;br /&gt;くらいでしょうか。AIR超うらやましいんですけど。&lt;br /&gt;&lt;br /&gt;参加者の某氏いわく、「こないだ別の勉強会で、一人だけWindows持ってきた人がいたよ〜ww」だって。カルチャーショック。やっぱりプログラマーには来てるのか。ほんとなのか。まだ信用できません。。。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;ドジョウ鍋旨かった&lt;/h5&gt;&lt;br /&gt;懇親会で、どぜうを食いに行きました。&lt;br /&gt;初めてでしたが、旨かったです。&lt;br /&gt;# 卵いっぱいで、旬なんだそう！&lt;br /&gt;&lt;br /&gt;「きみ、飯田屋派？、駒形屋派？」&lt;br /&gt;&lt;br /&gt;みたいな会話があり、カルチャーショック２でした。&lt;br /&gt;&lt;br /&gt;※飯田屋はすっきりとした味&lt;br /&gt;※駒形屋は泥臭い通好みの味&lt;br /&gt;らしいです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;最後に&lt;/h5&gt;&lt;br /&gt;RubyやObjective-Cにもそそられますが、Web系エンジニアとしては、はやくDojoマスターになりたいものです。次は駒形屋！&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-4551526529488235880?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/4551526529488235880/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/07/objc.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/4551526529488235880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/4551526529488235880'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/07/objc.html' title='OBJC読書会参加'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-6050494624239797020</id><published>2008-06-30T22:53:00.007+09:00</published><updated>2008-09-05T00:12:15.898+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='書籍'/><category scheme='http://www.blogger.com/atom/ns#' term='Dojo Toolkit'/><title type='text'>Dojo本入手！</title><content type='html'>Prototype.jsやYUIやjQueryと並び「メジャーな」Ajaxフレームワークと評されるDojoですが、日本語リファレンスが全く足りないのが現状です。英語の書籍ですら、これまでありませんでした。なぜ、これで「メジャー」と言われるのかが不思議。&lt;br /&gt;&lt;br /&gt;６月に２冊ほど発売された英語版の本ですが、ようやく手に入りました！&lt;br /&gt;&lt;br /&gt;「Dojo - Using the Dojo Javascript Library to Build Ajax Applications」&lt;br /&gt;&lt;br /&gt;がんばって読むぞ。&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-6050494624239797020?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/6050494624239797020/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/dojo.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/6050494624239797020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/6050494624239797020'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/dojo.html' title='Dojo本入手！'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-3805409463132422859</id><published>2008-06-18T22:20:00.003+09:00</published><updated>2008-07-02T00:13:59.056+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='書籍'/><category scheme='http://www.blogger.com/atom/ns#' term='Objective-C'/><title type='text'>Objective-C本入手！</title><content type='html'>iPhoneでマルチタッチでぐりぐりうぃーんなアプリを作るためには、開発言語のObjective-Cの知識が必要になります。これは、CにSmallTalkの概念を取り入れた。。。というかなり高尚な言語で、Javaとかその辺しかわかっていない小僧は勉強のし直しが必要になります。&lt;br /&gt;&lt;br /&gt;これも、iPhoneでウハウハなアプリを作るため（！？）&lt;br /&gt;&lt;br /&gt;「詳解 Objective-C 2.0」&lt;br /&gt;&lt;br /&gt;通称「荻原本」というらしい。&lt;br /&gt;マーケットが狭いため、手に入りにくくなる可能性があるらしい。&lt;br /&gt;&lt;br /&gt;がんばって読むぞ。&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-3805409463132422859?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/3805409463132422859/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/objective-c.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3805409463132422859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3805409463132422859'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/objective-c.html' title='Objective-C本入手！'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-3248151488092083540</id><published>2008-06-17T03:33:00.008+09:00</published><updated>2009-05-02T01:07:14.995+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>iPhone SDKでHello World !!</title><content type='html'>なにかと話題のiPhoneアプリに手を出してみようかと思います。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;用意するもの&lt;/h5&gt;&lt;br /&gt; * Mac&lt;br /&gt; * OSX（10.5.3以降）&lt;br /&gt; * Xcode 3.1&lt;br /&gt; * iPhone SDK&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;まず&lt;/h5&gt;&lt;br /&gt;Macを用意します。現在iPhoneアプリはMac上でしか作れませんが、&lt;br /&gt;これはiPhoneのOSもOSXだからです。これをベースにしている以上、&lt;br /&gt;Windowsで開発するのは難しいのではないでしょうか。&lt;br /&gt;せっかくなんで興味ある人はこの際買ってしまいましょう。&lt;br /&gt;「Macは高い！」というイメージを持っている人も多いかもしれませんが、&lt;br /&gt;iMacとかMacBookだと、同じクラスのWindowsよりコストパフォーマンスは&lt;br /&gt;遙かにいいんじゃないかと個人的には思っています。&lt;br /&gt;&lt;br /&gt;MacProとかMacBookProとかは高いですけど。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;次に&lt;/h5&gt;&lt;br /&gt;OSです。ここ１年以内くらいに新しくMacを買った人は&lt;br /&gt;おそらく「OSX 10.5 Leopard」が入っているはずです。&lt;br /&gt;&lt;br /&gt;それより古い場合、がんばって買いましょう！&lt;br /&gt;LeopardはQuickLookとか、TimeMachineとか、目玉機能もありますので&lt;br /&gt;買って損はないと思います（私はずっと二の足踏んでましたが。。。）&lt;br /&gt;&lt;br /&gt;iPhone SDKは10.5.3以降を動作条件としていますので、&lt;br /&gt;そうでない場合、ソフトウェア・アップデートを行ってください。&lt;br /&gt;左上のリンゴマークを押下して出てくるメニューから、「このMacについて」&lt;br /&gt;で確認できます。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;総合開発環境の準備&lt;/h5&gt;&lt;br /&gt;次にXcodeです。総合開発環境で、EclipseやVisualStudioみたいなもんです。&lt;br /&gt;OSのインストールCDに入っています。&lt;br /&gt;試しにバージョンを確認すると、3.0だったりしますが、あまり気にしなくていいです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;SDKのダウンロード&lt;/h5&gt;&lt;br /&gt;AppleのサイトからiPhoneSDKをダウンロードします。&lt;br /&gt;$99払えとか$299払えとか言われてるように見えますが、&lt;br /&gt;これは、自分の作ったアプリを公開したいときに入る、有料会員みたいなものです。&lt;br /&gt;自分のローカル環境だけで動かす場合、無料で利用することができます。&lt;br /&gt;&lt;br /&gt;がんばってダウンロード（1GB以上！）した後は、普通にインストールしてください。&lt;br /&gt;特に展開場所を気にする必要はないと思います。&lt;br /&gt;&lt;br /&gt;「Welcome! Xcode3.1」とか言われるはずです。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;サンプルコードのダウンロード&lt;/h5&gt;&lt;br /&gt;iPhone SDK Dev Centerの下の方に、SampleCodeのリンクがあります。&lt;br /&gt;やっぱりここは、「HelloWorld」をダウンロードしましょう。&lt;br /&gt;zipを展開して、適当な場所（書類の下とか）に配置します。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;動かす！&lt;/h5&gt;&lt;br /&gt;Xcodeを起動し、「ファイル」&gt;「開く」から、&lt;br /&gt;先ほどダウンロードしたHelloWorldの下にある、&lt;br /&gt;「.xcodeproj」ファイルを開きます。&lt;br /&gt;&lt;br /&gt;Javaラーなあなたも、プログラムがさっぱりわからないあなたも、&lt;br /&gt;とりあえず「ビルドして進行」をクリックしてください。&lt;br /&gt;&lt;br /&gt;動きましたか？&lt;br /&gt;&lt;br /&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_ih0z9qKlhU8/SFa2b4SqhiI/AAAAAAAAA9M/jNS31NAoITU/s320/HelloiPhoneSDK.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5212554208811320866" /&gt;&lt;br /&gt;&lt;br /&gt;サンプルはたくさんあるのでプチプチ修正して、try&amp;errorで、&lt;br /&gt;なんとなく、掴んでいきましょう。&lt;br /&gt;&lt;br /&gt;ちなみに、Objective-C読めないので、私はさっぱりわかりません。&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-3248151488092083540?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/3248151488092083540/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/iphone-sdkhello-world.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3248151488092083540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3248151488092083540'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/iphone-sdkhello-world.html' title='iPhone SDKでHello World !!'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_ih0z9qKlhU8/SFa2b4SqhiI/AAAAAAAAA9M/jNS31NAoITU/s72-c/HelloiPhoneSDK.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-8097491393347674183</id><published>2008-06-01T21:35:00.000+09:00</published><updated>2008-06-02T21:51:00.477+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSON'/><title type='text'>似て非なるもの</title><content type='html'>JSON（Javascript Objct Notation）と、Objectは違うものらしいです。&lt;br /&gt;&lt;br /&gt;JSONはあくまでObjectと同じ構造を持ったフォーマット。&lt;br /&gt;違うものを指しています（土俵がちがうかも）&lt;br /&gt;&lt;br /&gt;プロパティ名、プロパティ属性には文字列型と数値型があり、&lt;br /&gt;文字列型の場合はダブルクォート（”）で囲わなければならないらしいです。&lt;br /&gt;&lt;br /&gt;あと、プロパティ値に関数（function）は使えないらしい。&lt;br /&gt;(文字列として定義してevalで実行することもできますが、なんか脆弱性のかたまりになりそう)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;つまり、「&lt;a href="http://isnotunreachablecode.blogspot.com/2008/05/json.html"&gt;JSONでクラス定義ゲットだぜ！&lt;/a&gt;」はあほ丸出しなわけですね。&lt;br /&gt;いいんです。オブジェクトの勉強になりました。&lt;br /&gt;&lt;br /&gt;ブラウザが拡大解釈して同じように扱えてしまうので緩くなりがちですが、&lt;br /&gt;違いをしっかり意識したいですね。&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-8097491393347674183?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/8097491393347674183/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/blog-post.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/8097491393347674183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/8097491393347674183'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/06/blog-post.html' title='似て非なるもの'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-3613739809658967562</id><published>2008-05-21T00:39:00.018+09:00</published><updated>2008-07-03T00:05:33.644+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSON'/><title type='text'>JSONでクラスを実装する</title><content type='html'>ちょっとJSON触ってみました。&lt;br /&gt;これでオブジェクト指向っぽい記述ができるようになりますね。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード１&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='javascript'&gt;&lt;br /&gt;var json1 = {"id" : "00001", "name" : "nagacy"};&lt;br /&gt;&lt;br /&gt;alert(json1.id + " : " + json1.name);&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード１の解説&lt;/h5&gt;&lt;br /&gt;JSON形式は、上のように　{"プロパティ名" : "プロパティ値"}　のように表記されます。複数のプロパティをセットしたい場合は、カンマでつなげて表記します。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード２&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='javascript'&gt;&lt;br /&gt;var id = "00001";&lt;br /&gt;var name = "nagacy";&lt;br /&gt;var json2 = {"id" : function(){return id}, "name" : function(){return name}};&lt;br /&gt;&lt;br /&gt;alert(json2.id() + " : " + json2.name());&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード２の解説&lt;/h5&gt;&lt;br /&gt;上のように、プロパティ値にはファンクションを定義することも可能です。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード３&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='javascript'&gt;&lt;br /&gt;var id;&lt;br /&gt;var name;&lt;br /&gt;var json3 = {&lt;br /&gt;  "getId" : function(){return id}, &lt;br /&gt;  "getName" : function(){return name}, &lt;br /&gt;  "setId" : function(_id){id = _id}, &lt;br /&gt;  "setName" : function(_name){name = _name}&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;json3.setId("00001");&lt;br /&gt;json3.setName("nagacy");&lt;br /&gt;&lt;br /&gt;alert(json3.getId() + " : " + json3.getName());&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード３の解説&lt;/h5&gt;&lt;br /&gt;今度はjson3のid, name属性に外から値をセットします。ファンクションの中身の問題ですから、カンタンですね。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード４&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='javascript'&gt;&lt;br /&gt;function User() {&lt;br /&gt;  var id;&lt;br /&gt;  var name;&lt;br /&gt;  var json4 = {&lt;br /&gt;    getId : function(){return id}, &lt;br /&gt;    getName : function(){return name}, &lt;br /&gt;    setId : function(_id){id = _id}, &lt;br /&gt;    setName : function(_name){name = _name}&lt;br /&gt;  };&lt;br /&gt;&lt;br /&gt;  return json4;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;var user = new User();&lt;br /&gt;user.setId("00001");&lt;br /&gt;user.setName("nagacy");&lt;br /&gt;&lt;br /&gt;alert(user.getId() + " : " + user.getName());&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード４の解説&lt;/h5&gt;&lt;br /&gt;今まで作ったJSONを返却するファンクションを定義してみました。もうほぼ完成です。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード５&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='javascript'&gt;&lt;br /&gt;function User(_id, _name) {&lt;br /&gt;  var id;&lt;br /&gt;  var name;&lt;br /&gt;  var json5 = {&lt;br /&gt;    getId : function(){return id}, &lt;br /&gt;    getName : function(){return name}, &lt;br /&gt;    setId : function(_id){id = _id}, &lt;br /&gt;    setName : function(_name){name = _name}&lt;br /&gt;  };&lt;br /&gt;&lt;br /&gt;  json5.setId(_id);&lt;br /&gt;  json5.setName(_name);&lt;br /&gt;&lt;br /&gt;  return json5;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;var user1 = new User("00001", "nagacy");&lt;br /&gt;alert(user1.getId() + " : " + user1.getName());&lt;br /&gt;&lt;br /&gt;var user2 = new User();&lt;br /&gt;user2.setId("00002");&lt;br /&gt;user2.setName("mindman");&lt;br /&gt;alert(user2.getId() + " : " + user2.getName());&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード５の解説&lt;/h5&gt;&lt;br /&gt;最後に初期化処理を定義して完成です。これでクラスっぽいものが自分で作れます。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;補足&lt;/h5&gt;&lt;br /&gt;これがわかった上でprototype.jsのClass.create()関数を見ると、意味がとてもよく分かりますね。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;補足２&lt;/h5&gt;&lt;br /&gt;厳密には間違いを含むエントリですが、記録として残しておきます。&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-3613739809658967562?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/3613739809658967562/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/05/json.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3613739809658967562'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/3613739809658967562'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/05/json.html' title='JSONでクラスを実装する'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4956716051393715824.post-2212569810981762326</id><published>2008-05-16T14:39:00.028+09:00</published><updated>2008-07-03T00:09:48.724+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>jQuery [$(~).each(func)]</title><content type='html'>jQueryのTips。Javascriptの言語仕様がそもそもよくわかってないのにjQueryを弄ってみたメモ。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード１&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='javascript'&gt;&lt;br /&gt;&amp;lt;script type="text/javascript" src="lib/jquery/jquery.js"&gt;&amp;lt;/script&gt;&lt;br /&gt;&amp;lt;script language="javascript"&gt;&lt;br /&gt;&amp;lt;!--&lt;br /&gt;function sampleEach() {&lt;br /&gt;&lt;br /&gt;    // (1)&lt;br /&gt;    $(".test").each(function() {&lt;br /&gt;      alert(".testを取得！");&lt;br /&gt;    });&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;--&gt;&lt;br /&gt;&amp;lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;div class="test" id="id01"&gt;あああ&amp;lt;/div&gt;&lt;br /&gt;&amp;lt;div class="test" id="id02"&gt;いいい&amp;lt;/div&gt;&lt;br /&gt;&amp;lt;div class="test"&gt;ううう&amp;lt;/div&gt;&lt;br /&gt;&amp;lt;div class="test2"&gt;えへへ&amp;lt;/div&gt;&lt;br /&gt;&amp;lt;input type="button" onclick="sampleEach()" value="取得"/&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード１の解説&lt;/h5&gt;&lt;br /&gt;jQueryのメソッドで $(~)とすると、DOM要素を取得します。&lt;br /&gt;&lt;br /&gt;$("div")とすると、HTML内の全てのdiv要素を配列で取得でします。&lt;br /&gt;$("#id01")とすると、HTML内でid="id01"を付与した要素を取得します。&lt;br /&gt;$(".test")とすると、HTML内でclass="test"を付与要素を配列で取得します。&lt;br /&gt;&lt;br /&gt;$(document)とすると、document全体を取得します。&lt;br /&gt;$(document.body)とすると、body要素を取得します。&lt;br /&gt;&lt;br /&gt;(1)のeachは配列に対し、ループ処理を行うメソッドですが、&lt;br /&gt;処理内で自分を参照したい場合、thisでは取得できず、$(this)とやる必要があります。&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード２&lt;/h5&gt;&lt;br /&gt;&lt;pre name="code" class='javascript'&gt;&lt;br /&gt;    // (1')&lt;br /&gt;    $(".test2").each(function() {&lt;br /&gt;      alert($(this).text() + "を取得！");&lt;br /&gt;    });&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;コード２の解説&lt;/h5&gt;&lt;br /&gt;$(~)要素に対し、以下のメソッドで要素の情報を取得できます。&lt;br /&gt;&lt;br /&gt;$(~).text() 要素内の文字列部分を取得します。&lt;br /&gt;$(~).html() 要素内のinnerHTML部分を取得します。&lt;br /&gt;$(~).attr("属性名") 要素の属性値を取得します。&lt;br /&gt;$(~).css("属性名") 要素のスタイル属性値を取得します。&lt;br /&gt;&lt;br /&gt;なお、引数を加えると、要素の情報を書き換えることができます。&lt;br /&gt;&lt;br /&gt;$(~).text("あああ") &lt;br /&gt;$(~).html("&amp;lt;p&gt;あああ&amp;lt;/p&gt;") &lt;br /&gt;$(~).attr("class", "test2")&lt;br /&gt;$(~).css("backgroundColor", "#ff0000") &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4956716051393715824-2212569810981762326?l=isnotunreachablecode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://isnotunreachablecode.blogspot.com/feeds/2212569810981762326/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/05/jquerytips-each.html#comment-form' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/2212569810981762326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4956716051393715824/posts/default/2212569810981762326'/><link rel='alternate' type='text/html' href='http://isnotunreachablecode.blogspot.com/2008/05/jquerytips-each.html' title='jQuery [$(~).each(func)]'/><author><name>_nagacy</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
