広く知られているinsertion sortのコードは駄目すぎる 【やねうらお−よっちゃんイカを食べながら年収1億円稼げる(かも知れない)仕事術より】
http://d.hatena.ne.jp/yaneurao/20091126#p1
ソートはよく使う処理のため様々なアルゴリズムが公開されています。(下記Wikipediaの記事参照)
その中の一つ、挿入ソートについての考察です。
コメント、トラックバック先などの記事も目を通すのを勧めます。
ソートの事以外でも、いついかなるものであっても速度は重要なので、勉強になります。
ソート 【Wikipediaより】
http://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%BC%E3%83%88
挿入ソート 【Wikipediaより】
http://ja.wikipedia.org/wiki/%E6%8C%BF%E5%85%A5%E3%82%BD%E3%83%BC%E3%83%88
JavaScript でソートアルゴリズムを可視化 【bkブログより】
http://0xcc.net/blog/archives/000160.html
↑ソートを可視化していてわかりやすいし面白い。
ソート概要 【++C++; //未確認飛行 Cより】
http://ufcpp.jp/study/algorithm/sort.html
K.Y
http://d.hatena.ne.jp/yaneurao/20091126#p1
ソートはよく使う処理のため様々なアルゴリズムが公開されています。(下記Wikipediaの記事参照)
その中の一つ、挿入ソートについての考察です。
コメント、トラックバック先などの記事も目を通すのを勧めます。
ソートの事以外でも、いついかなるものであっても速度は重要なので、勉強になります。
ソート 【Wikipediaより】
http://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%BC%E3%83%88
挿入ソート 【Wikipediaより】
http://ja.wikipedia.org/wiki/%E6%8C%BF%E5%85%A5%E3%82%BD%E3%83%BC%E3%83%88
JavaScript でソートアルゴリズムを可視化 【bkブログより】
http://0xcc.net/blog/archives/000160.html
↑ソートを可視化していてわかりやすいし面白い。
ソート概要 【++C++; //未確認飛行 Cより】
http://ufcpp.jp/study/algorithm/sort.html
K.Y
Google App Engine for Java + BlazeDSでハマらない方法 【CodeZineより】
http://codezine.jp/article/detail/4628
http://codezine.jp/article/detail/4629
Flex、BlazeDS、GoogleAppsEngine(Java)と3つの技術を使用し、さらに5日で作ったということで話題になったご都合.com/の開発者がはまらない方法という事で記事を執筆しています。
確かに記事を読んでると凄い簡単にできそうなんですが。。。
そろそろ始めないといけない時期ですね。
実開発で分かったGoogle App Engine for Javaの“すごさ” 【ITpro 総合トップより】
http://itpro.nikkeibp.co.jp/article/COLUMN/20090518/330180/
Google App Engine for Javaを使ってみよう! 【CodeZineより】
http://codezine.jp/article/detail/3835
K.Y
http://codezine.jp/article/detail/4628
http://codezine.jp/article/detail/4629
Flex、BlazeDS、GoogleAppsEngine(Java)と3つの技術を使用し、さらに5日で作ったということで話題になったご都合.com/の開発者がはまらない方法という事で記事を執筆しています。
確かに記事を読んでると凄い簡単にできそうなんですが。。。
そろそろ始めないといけない時期ですね。
実開発で分かったGoogle App Engine for Javaの“すごさ” 【ITpro 総合トップより】
http://itpro.nikkeibp.co.jp/article/COLUMN/20090518/330180/
Google App Engine for Javaを使ってみよう! 【CodeZineより】
http://codezine.jp/article/detail/3835
K.Y
http://codezine.jp/article/detail/4623
またまた古いニュースで恐縮ですが…。
米国Adobesystems社は11/17、同社のRIAプラットフォーム「Flash Player」の最新バージョン「Flash Player 10.1」のプレリリース版と、デスクトップ動作環境「Adobe AIR」の最新バージョン「Adobe AIR 2」のベータ版を、それぞれ公開しました。主な変更内容は以下。
― Adobe AIR ―
―Flash Player 10.1―
AIRの変更内容を見る限り、マルチタッチ対応が入ってるところなんかはモバイル機器や家電での利用を見越している事が伺えます。他には、Win版は大きな動きがあったよう反面、その他のぷラットフォームは準備が遅れている印象もあります。
どちらもAdobe LabsよりDLが可能です。是非確認してみて下さい。
【マイコミジャーナル】「Adobe AIR 2」「Flash Player 10.1」のベータ版提供が開始
【engadget日本版】Flash Player 10.1ベータ版リリース、ハードウェアデコード対応でYouTubeも軽量化
【Computerworld.jp】アドビ、Flash Player 10.1とAIR 2のベータ版を公開
【lifehacker日本版】『Flash Player 10.1』のプレリリース版と『Adobe AIR 2』β版の見どころ
ヨウイチ
またまた古いニュースで恐縮ですが…。
米国Adobesystems社は11/17、同社のRIAプラットフォーム「Flash Player」の最新バージョン「Flash Player 10.1」のプレリリース版と、デスクトップ動作環境「Adobe AIR」の最新バージョン「Adobe AIR 2」のベータ版を、それぞれ公開しました。主な変更内容は以下。
― Adobe AIR ―
- 大容量デバイスストレージの検出可能
- マルチタッチ動作サポート
- P2P通信やUDP通信の強化
- HTML5 / CSS3サポート
- H.264動画のハードウェアデコードに対応(Win版のみ)
―Flash Player 10.1―
- Adobe Flash Access 2.0による権利保護下でのHTTPストリーミング
- H.264動画のハードウェアデコードに対応(Win版のみ)
- マイク入力をサポート
AIRの変更内容を見る限り、マルチタッチ対応が入ってるところなんかはモバイル機器や家電での利用を見越している事が伺えます。他には、Win版は大きな動きがあったよう反面、その他のぷラットフォームは準備が遅れている印象もあります。
どちらもAdobe LabsよりDLが可能です。是非確認してみて下さい。
【マイコミジャーナル】「Adobe AIR 2」「Flash Player 10.1」のベータ版提供が開始
【engadget日本版】Flash Player 10.1ベータ版リリース、ハードウェアデコード対応でYouTubeも軽量化
【Computerworld.jp】アドビ、Flash Player 10.1とAIR 2のベータ版を公開
【lifehacker日本版】『Flash Player 10.1』のプレリリース版と『Adobe AIR 2』β版の見どころ
ヨウイチ
http://journal.mycom.co.jp/news/2009/11/19/033/index.html
やや古いニュースになってしまい、申し訳ありませんが…。
米国Microsoft社は11/18、同社が提供するRIA Framework「Silverlight」の最新メジャーバージョンである「Siverlight4」のベータ版を公開しました。今回の主な変更内容は以下。
個人的にはSilverlightは動画系が強い印象があったのですが、今回の機能追加では業務連携の部分が強化されており、より業務システムを構築するには実践的になったと感じています。
ダウンロードはこちらから。
しかしこう次々とメジャーバージョンがアップすると着いて行く方は大変です。><;
今までのパターンからすると、正式リリースは来年秋頃になるんじゃないかと思います。それまでに習得できると良いスタートダッシュが切れるんじゃないでしょうか。
【ITpro】Microsoft,「Silverlight 4」「Office 2010」などのベータ版を公開
【Publickey】[速報]Internet Explorer 9初披露、HTML5対応、DirectXで描画。Silverlight 4は今日からβ公開
【ZDNet Japan】マイクロソフト、「IE 9」と「Silverlight 4」に言及--PDC2日目
【Tech-On】【PDC】Silverlight 4が早くもベータに,オフ・ブラウザー機能を大幅強化
【ITmedia】Microsoft、「Silverlight 4」のβ版リリース
【japan.internet.com】Microsoft が『Silverlight 4』を披露、『IE 9』開発状況も明らかに
【k_maruの思うところ】カメラ
ヨウイチ
やや古いニュースになってしまい、申し訳ありませんが…。
米国Microsoft社は11/18、同社が提供するRIA Framework「Silverlight」の最新メジャーバージョンである「Siverlight4」のベータ版を公開しました。今回の主な変更内容は以下。
- ブラウザ外での実行機能の強化(デスクトップアプリとして動作)
- 開発環境に「Visual Studio 2010」を追加
- Office製品やShare Point Serverとの連携強化
- マイク・Webカメラを利用可
- 高解像度映像コンテンツのマルチキャストをネイティブサポート
- 画面部品を60ほど追加
- リッチテキスト機能(表や画像も埋め込み可能)
- 起動速度、実行速度の大幅な向上
- クリップボードへの対応
- デジタル権利管理(DRM)技術「Microsoft PlayReady」のオフライン利用可
個人的にはSilverlightは動画系が強い印象があったのですが、今回の機能追加では業務連携の部分が強化されており、より業務システムを構築するには実践的になったと感じています。
ダウンロードはこちらから。
しかしこう次々とメジャーバージョンがアップすると着いて行く方は大変です。><;
今までのパターンからすると、正式リリースは来年秋頃になるんじゃないかと思います。それまでに習得できると良いスタートダッシュが切れるんじゃないでしょうか。
【ITpro】Microsoft,「Silverlight 4」「Office 2010」などのベータ版を公開
【Publickey】[速報]Internet Explorer 9初披露、HTML5対応、DirectXで描画。Silverlight 4は今日からβ公開
【ZDNet Japan】マイクロソフト、「IE 9」と「Silverlight 4」に言及--PDC2日目
【Tech-On】【PDC】Silverlight 4が早くもベータに,オフ・ブラウザー機能を大幅強化
【ITmedia】Microsoft、「Silverlight 4」のβ版リリース
【japan.internet.com】Microsoft が『Silverlight 4』を披露、『IE 9』開発状況も明らかに
【k_maruの思うところ】カメラ
ヨウイチ
数日前に↓の記事でIEのinnerHTMLの挙動にはまったと書きましたが、またはまりました。
【Javascript】IEのinnerHTML挙動と`(バッククォート)について
http://mfria.blog106.fc2.com/blog-entry-1660.html
今回は半角スペースです。
IEは文頭に半角スペースがある場合は除かれ、文中に半角スペースが複数ある場合には1つにまとめます。
例:
←ここには2つ半角スペースがあります。
→ ←ここには2つ半角スペースがあります。
これはよく知られた事ですが、Javascriptを使用しinnerHTMLやnodeValueで取得した場合も同様の値を取得してしまいます。
innerHTMLというのはその名の通りオブジェクト内の「HTML」を取得するものだと思ったのですが。。。
ソース通りに取得してくれるのが正しい挙動だと思うのですが。。。
IE6、IE7で当現象が発生する事を確認済み。
又、Firefox3.5.5では当現象は発生しないようです。
サンプルURL↓
http://jsbin.com/upeyi
サンプルソース↓
<html>
<head>
<script>
function testfunc() {
str = document.getElementById('test2').innerHTML
alert('[' + str + ']');
}
function testfunc2() {
str = document.getElementById('test').childNodes[0].firstChild.nodeValue;
alert('[' + str + ']');
}
</script>
</head>
<body>
<div id="test"><div id="test2"> blank blank </div></div>
<input type="button" value="CLICK ME1" onclick="testfunc()"><br>
<input type="button" value="CLICK ME2" onclick="testfunc2()">
</body>
</html>
K.Y
【Javascript】IEのinnerHTML挙動と`(バッククォート)について
http://mfria.blog106.fc2.com/blog-entry-1660.html
今回は半角スペースです。
IEは文頭に半角スペースがある場合は除かれ、文中に半角スペースが複数ある場合には1つにまとめます。
例:
←ここには2つ半角スペースがあります。
→ ←ここには2つ半角スペースがあります。
これはよく知られた事ですが、Javascriptを使用しinnerHTMLやnodeValueで取得した場合も同様の値を取得してしまいます。
innerHTMLというのはその名の通りオブジェクト内の「HTML」を取得するものだと思ったのですが。。。
ソース通りに取得してくれるのが正しい挙動だと思うのですが。。。
IE6、IE7で当現象が発生する事を確認済み。
又、Firefox3.5.5では当現象は発生しないようです。
サンプルURL↓
http://jsbin.com/upeyi
サンプルソース↓
<html>
<head>
<script>
function testfunc() {
str = document.getElementById('test2').innerHTML
alert('[' + str + ']');
}
function testfunc2() {
str = document.getElementById('test').childNodes[0].firstChild.nodeValue;
alert('[' + str + ']');
}
</script>
</head>
<body>
<div id="test"><div id="test2"> blank blank </div></div>
<input type="button" value="CLICK ME1" onclick="testfunc()"><br>
<input type="button" value="CLICK ME2" onclick="testfunc2()">
</body>
</html>
K.Y
ハイテンションAjax入門 【三等兵より】
http://d.hatena.ne.jp/sandai/20091115/p1
名前は知ってるし興味はあるけど、業務で使ってるわけじゃないし…
そんなあなたにわかりやすく?教えてくれます。
っというか、ある程度の知識があればとりあえず動けば後は自分でやりたい事は調べて出来るわけで。
結局、最初のきっかけですよね。
Ajaxに興味あるけど今更入門サイト見るのダルイ。。。って人はどうぞ
K.Y
http://d.hatena.ne.jp/sandai/20091115/p1
名前は知ってるし興味はあるけど、業務で使ってるわけじゃないし…
そんなあなたにわかりやすく?教えてくれます。
っというか、ある程度の知識があればとりあえず動けば後は自分でやりたい事は調べて出来るわけで。
結局、最初のきっかけですよね。
Ajaxに興味あるけど今更入門サイト見るのダルイ。。。って人はどうぞ
K.Y
Excelっぽい機能も付いた検索&ソート&ページング機能付きテーブル実装JSライブラリ「TinyTable V3」
【phpspot開発日誌より】http://phpspot.org/blog/archives/2009/11/exceljstinytabl.html
これはいいなぁ。。。
データのテーブル表示するにしても色々機能付けなければならないので、こういうライブラリがあると便利ですね。
又、こういう便利なライブラリの中身を実装する際に中身を覗く事で使い方ややり方などの勉強になるのがライブラリのいい所だと思います。
(そのまま使えるライブラリというのは少ないですしね。。。)
K.Y
【phpspot開発日誌より】http://phpspot.org/blog/archives/2009/11/exceljstinytabl.html
これはいいなぁ。。。
データのテーブル表示するにしても色々機能付けなければならないので、こういうライブラリがあると便利ですね。
又、こういう便利なライブラリの中身を実装する際に中身を覗く事で使い方ややり方などの勉強になるのがライブラリのいい所だと思います。
(そのまま使えるライブラリというのは少ないですしね。。。)
K.Y
Google Chrome OS 【ITmedia Newsより】
http://www.itmedia.co.jp/news/articles/0911/20/news083.html
今のところはネットブックを対象にしているようですが。。。
近いうちにWindowsを脅かす存在になる事は間違いないでしょう。
Windowsの対抗馬が出てくるのは歓迎ですが、シェアが拮抗して両方のOSをサポートする事になるのは勘弁して欲しいところです。
Googleがパソコン向けの独自OS「Google Chrome OS」の詳細を正式公開、実際に動作しているデモムービーも【GIGAZINE(ギガジン)より】
http://gigazine.net/index.php?/news/comments/20091120_google_chrome_os/
Googleの独自OS「Google Chrome OS」をスクリーンショットで徹底解説【GIGAZINE(ギガジン)より】
http://gigazine.net/index.php?/news/comments/20091120_google_chrome_os_demo/
忙しい人のためのGoogle Chrome OS 【IDEA*IDEAより】
http://www.ideaxidea.com/archives/2009/11/google_chrome_os.html
K.Y
http://www.itmedia.co.jp/news/articles/0911/20/news083.html
今のところはネットブックを対象にしているようですが。。。
近いうちにWindowsを脅かす存在になる事は間違いないでしょう。
Windowsの対抗馬が出てくるのは歓迎ですが、シェアが拮抗して両方のOSをサポートする事になるのは勘弁して欲しいところです。
Googleがパソコン向けの独自OS「Google Chrome OS」の詳細を正式公開、実際に動作しているデモムービーも【GIGAZINE(ギガジン)より】
http://gigazine.net/index.php?/news/comments/20091120_google_chrome_os/
Googleの独自OS「Google Chrome OS」をスクリーンショットで徹底解説【GIGAZINE(ギガジン)より】
http://gigazine.net/index.php?/news/comments/20091120_google_chrome_os_demo/
忙しい人のためのGoogle Chrome OS 【IDEA*IDEAより】
http://www.ideaxidea.com/archives/2009/11/google_chrome_os.html
K.Y
innerHTMLはオブジェクト内のHTMLを書き換える事が可能なため割とよく使われますが、ブラウザによって挙動が違ったりします。
今回これにはまったのでメモ。
解説の前にソースです。
〜〜〜ここから〜〜〜
<html>
<head>
<script>
function testfunc(){
document.forms[0].innerHTML = document.forms[0].innerHTML;
}
</script>
</head>
<body>
<form action="" name="form1">
<input type="text" name="b"value="`"/><br>
`
<input type="button" onclick="testfunc()" value="CLICK ME"/>
</form>
</body>
</html>
〜〜〜ここまで〜〜〜
あからさまに怪しい所がありますが、特に問題になるような感じはないと思います。
ところが、これをIEで開いてボタンをクリックすると。。。

↓クリック

こんな感じでHTMLが崩れてしまうんです。
サンプル↓(IE6、7、8で確認済み)
http://jsbin.com/ejacu
以下解説
IEではバッククォートはダブルクォーテーションやシングルクォーテーションと同様に属性の引用符として使用することができます。
↓こんな感じ
<input type=`text` name=`c` value=`value` />
で、今回の場合innerHTMLで値を取得した際に"が全て取られます。
そのため、再度挿入時にバッククォートが属性引用符として判断されておかしな事になってしまっているようです。
IDやnameにバッククォートが入る事はないでしょうから、valueにバッククォートが入る場合には注意が必要だと思われます。
しかし、この事についてWebで情報が見つからなかったのは何故!?
K.Y
今回これにはまったのでメモ。
解説の前にソースです。
〜〜〜ここから〜〜〜
<html>
<head>
<script>
function testfunc(){
document.forms[0].innerHTML = document.forms[0].innerHTML;
}
</script>
</head>
<body>
<form action="" name="form1">
<input type="text" name="b"value="`"/><br>
`
<input type="button" onclick="testfunc()" value="CLICK ME"/>
</form>
</body>
</html>
〜〜〜ここまで〜〜〜
あからさまに怪しい所がありますが、特に問題になるような感じはないと思います。
ところが、これをIEで開いてボタンをクリックすると。。。

↓クリック

こんな感じでHTMLが崩れてしまうんです。
サンプル↓(IE6、7、8で確認済み)
http://jsbin.com/ejacu
以下解説
IEではバッククォートはダブルクォーテーションやシングルクォーテーションと同様に属性の引用符として使用することができます。
↓こんな感じ
<input type=`text` name=`c` value=`value` />
で、今回の場合innerHTMLで値を取得した際に"が全て取られます。
そのため、再度挿入時にバッククォートが属性引用符として判断されておかしな事になってしまっているようです。
IDやnameにバッククォートが入る事はないでしょうから、valueにバッククォートが入る場合には注意が必要だと思われます。
しかし、この事についてWebで情報が見つからなかったのは何故!?
K.Y
IE9の発表があったようです。
ただ、リリースの予定などは公開されておらずβどころかα版よりも前といった状態で、現在のJavascriptの実行速度などが公表されたようです。
この様子だとまだまだ先の話のようですが、徐々にシェアを奪われているブラウザ市場を盛り返す事ができるのでしょうか?
[速報]Internet Explorer 9初披露、HTML5対応、DirectXで描画。Silverlight 4は今日からβ公開 【Publickeyより】
http://www.publickey.jp/blog/09/internet_explorer_9html5directxsilverlight_4.html
マイクロソフト、「IE 9」と「Silverlight 4」に言及--PDC2日目 【CNET Japanより】
http://japan.cnet.com/clip/global/story/0,3800097347,20403883,00.htm
「IE 9のJavaScriptは、競合ブラウザに追いついた」――マイクロソフト、IE 9の性能向上をアピール 【Yahoo!ニュースより】
http://headlines.yahoo.co.jp/hl?a=20091119-00000002-cwj-sci
K.Y
ただ、リリースの予定などは公開されておらずβどころかα版よりも前といった状態で、現在のJavascriptの実行速度などが公表されたようです。
この様子だとまだまだ先の話のようですが、徐々にシェアを奪われているブラウザ市場を盛り返す事ができるのでしょうか?
[速報]Internet Explorer 9初披露、HTML5対応、DirectXで描画。Silverlight 4は今日からβ公開 【Publickeyより】
http://www.publickey.jp/blog/09/internet_explorer_9html5directxsilverlight_4.html
マイクロソフト、「IE 9」と「Silverlight 4」に言及--PDC2日目 【CNET Japanより】
http://japan.cnet.com/clip/global/story/0,3800097347,20403883,00.htm
「IE 9のJavaScriptは、競合ブラウザに追いついた」――マイクロソフト、IE 9の性能向上をアピール 【Yahoo!ニュースより】
http://headlines.yahoo.co.jp/hl?a=20091119-00000002-cwj-sci
K.Y

