データベース開発ツールSqlEndia 2.6.1テスト版ダウンロードURLを公開します。
http://www.sqlendia.com/download/sqlendia2.6.1.zip
対応内容:
①SqlServer2008対応
②バグ修正
自分で作ったり提供したりするものは、まず自分自身で使ってみろろということです。自分じゃ使わないものなら人はいくらでも無責任にも無思考にもなれる。そういう投げやりな「サービス」やら「プロダクツ」なんて、だれだってイヤだ。自分が作り手と同時に利用者の立場になれば、ちゃんと使えるレベルのものを提供しようとします。
2010年11月24日水曜日
2010年11月19日金曜日
c# string compareto
C#でストリング比較関数(CompareTo)実行結果をメモします。
string teststring = "20101115";
System.Diagnostics.Debug.WriteLine(teststring.CompareTo("20101114"));
System.Diagnostics.Debug.WriteLine(teststring.CompareTo("20101115"));
System.Diagnostics.Debug.WriteLine(teststring.CompareTo("20101116"));
実行結果:
1
0
-1
また
string teststring = "20101115";
System.Diagnostics.Debug.WriteLine("20101113".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101114".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101115".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101116".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101117".CompareTo(teststring));
実行結果:
-1
-1
0
1
1
string teststring = "20101115";
System.Diagnostics.Debug.WriteLine(teststring.CompareTo("20101114"));
System.Diagnostics.Debug.WriteLine(teststring.CompareTo("20101115"));
System.Diagnostics.Debug.WriteLine(teststring.CompareTo("20101116"));
実行結果:
1
0
-1
また
string teststring = "20101115";
System.Diagnostics.Debug.WriteLine("20101113".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101114".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101115".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101116".CompareTo(teststring));
System.Diagnostics.Debug.WriteLine("20101117".CompareTo(teststring));
実行結果:
-1
-1
0
1
1
2010年11月10日水曜日
asp.net mvc2 controller attributeサンプル
asp.net mvc2フレームワークのコントローラー属性を定義するサンプルです。
ShowMessageAttribute.cs
ShowMessageAttribute.cs
namespace MvcApplicationEmpty.Attributes { public class ShowMessageAttribute : ActionFilterAttribute { public string Message { get; set; } public override void OnActionExecuting(ActionExecutingContext filterContext) { //base.OnActionExecuting(filterContext); filterContext.HttpContext.Response.Write("[OnActionExecuting " + Message + "]"); } public override void OnActionExecuted(ActionExecutedContext filterContext) { //base.OnActionExecuted(filterContext); filterContext.HttpContext.Response.Write("[OnActionExecuted " + Message + "]"); } public override void OnResultExecuting(ResultExecutingContext filterContext) { //base.OnResultExecuting(filterContext); filterContext.HttpContext.Response.Write("[OnResultExecuting " + Message + "]"); } public override void OnResultExecuted(ResultExecutedContext filterContext) { //base.OnResultExecuted(filterContext); filterContext.HttpContext.Response.Write("[OnResultExecuted " + Message + "]"); } } }
asp.net mvc複数ボタンの処理
asp.net mvcフレームワークのformに複数のSubmitボタンを配置して、押したボタン情報のみサーバーに送信する処理を説明します。
①まずViewModelにCmdプロパティを定義する。
public string Cmd { get; set; }
②画面にSubmitボタンを配置する。
<button name="Cmd" value="btn1">確定1</button>
<button name="Cmd" value="btn2">確定2</button>
③コントローラーにCmd引数を判定して、ボタン処理を振り分ける。
①まずViewModelにCmdプロパティを定義する。
public string Cmd { get; set; }
②画面にSubmitボタンを配置する。
<button name="Cmd" value="btn1">確定1</button>
<button name="Cmd" value="btn2">確定2</button>
③コントローラーにCmd引数を判定して、ボタン処理を振り分ける。
[HttpPost] public ViewResult DoLink2(GuestResponse pobjGuestResponse) { switch (pobjGuestResponse.Cmd) { case "btn1": break; case "btn2": break; } ... }
asp.net mvc2メモ
参照用ソースのメモです。
1、Controllersフォルダにコントローラーを作る 2、Viewsフォルダにコントローラーごとにフォルダを作って、下にコントローラーメッソド(Action)ごとにビューページを作る 3、Global.asax.csにデフォールトページ或はコントローラーを指定する
2010年11月9日火曜日
jQuery ajaxサンプル
jQuery ajax関数のサンプルをメモします。
ソース:
ソース:
<script type="text/javascript"> $(function () { $("#btn01").click(function () { $.ajax( { async: false, global: false, ifModified:false, url: "/txt/txt1.txt", cache: false, beforeSend: function () { $("#div01").append("<hr/>"); }, dataFilter: function(data, type){ return "<b>" + data + "</b>"; }, success: function (msg, textStatus) { $("#div01").append(msg + "<br/>"); }, error: function(xhrobj, status, errorEx){ $("#div01").append(status + "<br/>"); }, complete: function (xhrobj, textStatus) { $("#div01").append(textStatus + "(complete)<hr/>"); } } ); }); $("#btn02").click(function () { $.ajax( { type: "post", url: "/Home/AjaxTest", cache:false, dataType: "text", // xml, html, script, json, jsonp, text data: { data: "あいうえお", data1: ["aaa", "bbb"], }, success: function (msg, textStatus) { $("#div02").append("success:<br/>"); $("#div02").append(msg + "<br/>"); var obj = jQuery.parseJSON(msg); $("#div02").append("obj.a=" + obj.a + ",obj.b=" + obj.b + "<br/>"); }, } ); }); }); </script>
2010年11月8日月曜日
2010年11月5日金曜日
2010年11月4日木曜日
SqlEndia 2.6 ダウンロードURL
データベースクライアントツールSqlEndia最新版2.6をここにリリースします、下記のURLからごダウンロードください。
url:
http://www.sqlendia.com/download/sqlendia2.6.zip
url:
http://www.sqlendia.com/download/sqlendia2.6.zip
2010年11月2日火曜日
jQuery formサンプル
jQuery Ajax Formサンプルを紹介します。
このサンプルで、クライアント側でファイルをアップロードすると、画面サブミットせずにアップロードできます。
このサンプルで、クライアント側でファイルをアップロードすると、画面サブミットせずにアップロードできます。
<script src="jquery-1.4.3.min.js" type="text/javascript"></script> <script src="jquery.form.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { var options = { //target: // target element(s) to be updated with server response success: function (responseText, statusText, xhr, $form) { alert("サブミット完了しました。[" + response + "]"); } , iframe: true }; $('#uploadFileForm').ajaxForm(options); }); <form id="uploadFileForm" runat="server" enctype = "multipart/form-data"> <div> <input type="file" id="fileUpload1" name="fileUpload"/> <asp:Button ID="Button1" runat="server" Text="アップロード"/> </div> </form>
Google jQueryライブラリの利用方法
Google社提供しているJavascriptライブラリの利用方法を紹介します。
このトピックでjQueryの利用サンプルを説明します。
【Google API Test】ボタンを押して、Google jQueryライブラリを経由して【Hello】メッセージを出します。
このトピックでjQueryの利用サンプルを説明します。
【Google API Test】ボタンを押して、Google jQueryライブラリを経由して【Hello】メッセージを出します。
2010年10月31日日曜日
WCF勉強開始
Windows Communication Foundation(WCF)は、.NET Framework 3.0 における新しい通信サブシステムであり、アプリケーション同士をネットワーク経由で接続する仕組みである。Indigo とも呼ばれていた。WCF アプリケーションは .NET でサポートされている言語なら、どの言語でも開発できる。
IT人としてこのWCF技術を勉強しないと、時代に遅れるでしょう。
IT人としてこのWCF技術を勉強しないと、時代に遅れるでしょう。
2010年10月23日土曜日
2010年10月22日金曜日
htcサンプル
ウェブアプリを作る技術の一つ、htcサンプルを紹介します。
まずCSSファイルの下記のように記述する
koma.htc内容:
まずCSSファイルの下記のように記述する
input, tr { behavior:url(koma.htc); }
koma.htc内容:
<public:attach event="onfocus" onevent="koma_onfocus();" /> <public:attach event="onblur" onevent="koma_onblur();" /> <script language="javascript"> function setBgColor(vColor) { if (window.event.srcElement.type != null && window.event.srcElement.readOnly != null ) { if (window.event.srcElement.type == 'text' && window.event.srcElement.readOnly != true ) { window.event.srcElement.style.backgroundColor = vColor; } } } function koma_onfocus() { setBgColor('lightyellow'); } function koma_onblur() { setBgColor(''); } </script>
2010年10月15日金曜日
html5 web workersサンプル
html5からマルチスレッドAPIも提供しています、これはWeb Workersです。これを利用して、画面側で動的に内容表示や大量計算など処理はよりより実現可能になります。
サンプル:
http://html5next.appspot.com/webworkers.html
サンプル:
http://html5next.appspot.com/webworkers.html
ps3 backup ftpユーザー
PS3のFTPサーバーソフトはps3 ftp serverとOpen Managerは二つあります。この二つのアプリのFTPユーザーネームは違いますので、ここにメモします。
ps3 ftp server:
FTPD12345
Open Manager:
OMAN46756
ですが…
ps3 ftp server:
FTPD12345
Open Manager:
OMAN46756
ですが…
2010年10月13日水曜日
html5 form紹介
html5仕様からたくさんのformタグが追加されました、このトピックで紹介します。
まずは現時点で各ブラウザーのサポート状況をまとめておきます、下記のリストをご覧ください。
サンプル:
http://html5next.appspot.com/html5_form.html
まずは現時点で各ブラウザーのサポート状況をまとめておきます、下記のリストをご覧ください。
ブラウザー | 説明 |
Chrome | 5.0からemail,number,tel,url,search,rangeとバリデーション一部をサポート開始 |
Firefox | 4.0からサポート予定 |
IE | 9.0から? |
Opera | ほとんどサポートしている |
Safari | 4.0からemail,number,tel,url,search,rangeとバリデーション一部を、サマートフォンのほうがさらによりよくサポートする |
サンプル:
http://html5next.appspot.com/html5_form.html
2010年10月12日火曜日
これはWindows Phone 7 か?
2010年10月8日金曜日
ps3 jb情報サイト
2010年10月7日木曜日
iPad 2来年発売か?
HTML5 XMLHttpRequest Level 2 Sample
いろいろ試してみたんですが、やはりだめです…:'(
html5仕様によりHTML5 XMLHttpRequest Level 2 APIがサポートされるはずですが、自分で作ったサンプルはやはりだめだった。マルチドメインにアクセス処理は現時点でまだサポートされていないでしょうか?
下記のサンプルではGoogle或はYahooサイトを取得できるはずですが、何回も試したら、エラー0を戻されました、これはどんなエラーでしょうか?自分の勉強不足でエラーの原因が分かりません。;(
サンプル:
http://html5next.appspot.com/xmlhttprequest.html
ご存知の方はいらっしゃったら教えていただけませんでしょうか?
html5仕様によりHTML5 XMLHttpRequest Level 2 APIがサポートされるはずですが、自分で作ったサンプルはやはりだめだった。マルチドメインにアクセス処理は現時点でまだサポートされていないでしょうか?
下記のサンプルではGoogle或はYahooサイトを取得できるはずですが、何回も試したら、エラー0を戻されました、これはどんなエラーでしょうか?自分の勉強不足でエラーの原因が分かりません。;(
サンプル:
http://html5next.appspot.com/xmlhttprequest.html
ご存知の方はいらっしゃったら教えていただけませんでしょうか?
HTML5 XMLHttpRequest Level 2
HTML5仕様もAjax機能を増強しています、従来のAjax処理を実装するのはXMLHttpRequestオブジェクトを利用するのは一般ですけど、XMLHttpRequestオブジェクトは一つのドメインしかアクセスできないため、システム開発には不便だとよく言われています。XMLHttpRequest Level2からはマルチドメインにアクセスできることになりました、下記のイメージのようにアプリケーション仕組みを築くことも簡単に実装可能です。
なお、現在はXMLHttpRequest Level 2 APIをサポートしているブラウザーはわずかですが、将来はどんどん増えるでしょう。
なお、現在はXMLHttpRequest Level 2 APIをサポートしているブラウザーはわずかですが、将来はどんどん増えるでしょう。
ブラウザー | 詳細 |
Chrome | 2.0以上 |
Firefox | 3.5以上 |
Microsoft IE | Not |
Opera | Not |
Safari | 4.0以上 |
2010年10月6日水曜日
html5 Communication APIsを通じてドキュメント間の通信機能を実現
この前はウェブページ間のデータ交換などの処理はほとんどURLパラメータや、openerなどの方式で実装されるんですが、HTML5から新しい通信APIが提供されました、これはCommunication APIsとなります。
サンプル:
http://html5next.appspot.com/postMessagePortal.html
このサンプルはホストページとIFrameページ間のデータ交換処理を示しています。
サンプル:
http://html5next.appspot.com/postMessagePortal.html
このサンプルはホストページとIFrameページ間のデータ交換処理を示しています。
HTML5 Geolocation Sample紹介
このサンプルはHTML5 Geolocation APIを利用してクライアント位置情報を取得して、Google地図に表示するのです。(クライアント位置取得のはユーザー許可が必要です。)
サンプル:
http://html5next.appspot.com/geolocation1.html
サンプル:
http://html5next.appspot.com/geolocation1.html
2010年10月5日火曜日
HTML5 Geolocationの仕組み
html5仕様でクライアント位置を取得する機能も定められています、これはHTML5 Geolocation APIです、現時点ではGeolocation仕様グループもW3Cから分離されてたみたいです、詳細のことはまだ分かりません。
このトピックでHTML5 Geolocationの仕組みを紹介しようとします、まずは下記のイメージをご覧ください。
解説:
①ユーザーはブラウザーでロケーション機能のあるページにアクセスする
②ロケーション機能関数より、クライアント位置取得リクエストを実行する。この際に、ブラウザーから何かの提示が表示され、ユーザーに確認していただくのは普通です。(【はい】とします)
③ブラウザーはクライアント設備(iPhoneなど)から位置情報を収集する。(IPアドレス、GPS座標など)
④ブラウザーから収集した情報を信頼しているロケーションサービスに送信し、さらに詳しい位置情報を取得する。
このトピックでHTML5 Geolocationの仕組みを紹介しようとします、まずは下記のイメージをご覧ください。
解説:
①ユーザーはブラウザーでロケーション機能のあるページにアクセスする
②ロケーション機能関数より、クライアント位置取得リクエストを実行する。この際に、ブラウザーから何かの提示が表示され、ユーザーに確認していただくのは普通です。(【はい】とします)
③ブラウザーはクライアント設備(iPhoneなど)から位置情報を収集する。(IPアドレス、GPS座標など)
④ブラウザーから収集した情報を信頼しているロケーションサービスに送信し、さらに詳しい位置情報を取得する。
iPad向けアプリ開発の方にSafariアプリの開発をお勧めします。
自分もそうするつもりです。iPhone/iPadよりはAndroidアプリの開発がオープンであると思われてる方はたくさんいるでしょう。Android SDKを利用して、開発したアプリをすぐ実機に導入でき、利用することに対し、iPhone/iPadアプリはアップルストアーにアップロードしないと利用できないです。ですから、iPhone/iPad開発はHTML5+Javascriptを利用してSafariアプリを開発するほうがましです。自分もそうするつもりです。
Safari開発リファレンス:
http://developer.apple.com/library/safari/navigation/
PS:
html5のすばらしさはFlashに劣らないように存在します。
Safari開発リファレンス:
http://developer.apple.com/library/safari/navigation/
PS:
html5のすばらしさはFlashに劣らないように存在します。
html5 audio videoの基本
html4よりhtml5はマルチメディアへのサポートは強くなりました、現時点のhtml5仕様によりサポートするメディアファイルのフォーマットは下記のようにあります。
・ Audio Video Interleave (.avi)
・ Flash Video (.flv)
・ MPEG 4 (.mp4)
・ Matroska (.mkv)
・ Ogg (.ogv)
コーダー/デコーダー(coders/decoders)
オーディオ:
・ AAC
・ MPEG-3
・ Ogg Vorbis
ビデオ:
・ H.264
・ VP8
・ Ogg Theora
となります。
なお、html5サポートしていない機能も紹介します。
・ ストリームオーディオとビデオ(Flashオンライン放送などの機能)
・ クロースオリジン(cross-origin)リソースしか利用できない
・ フルスクリーンサポートしない(ブラウザー機能を利用すれば可能です)
・ 仕様の一部はまだ策定中
・ Audio Video Interleave (.avi)
・ Flash Video (.flv)
・ MPEG 4 (.mp4)
・ Matroska (.mkv)
・ Ogg (.ogv)
コーダー/デコーダー(coders/decoders)
オーディオ:
・ AAC
・ MPEG-3
・ Ogg Vorbis
ビデオ:
・ H.264
・ VP8
・ Ogg Theora
となります。
なお、html5サポートしていない機能も紹介します。
・ ストリームオーディオとビデオ(Flashオンライン放送などの機能)
・ クロースオリジン(cross-origin)リソースしか利用できない
・ フルスクリーンサポートしない(ブラウザー機能を利用すれば可能です)
・ 仕様の一部はまだ策定中
au Android OS携帯発表
au社はAndroid OSを採用する最新携帯IS03を発表しました、2010年11月に発売開始という予定です。この製品の仕様を少し調査しました、Android OSを日本ローカル化した携帯といっても過言ではないでしょう。自分の驚いたところは、IS03はGoogle Marketにつながらずに、自分のauマーケットを通してアプリを利用する予定です。このやり方は日本特有なものでしょうか?先日中国製Android製品(A81E)も購入しましたので、この製品は問題なくGoogle Marketに利用できます、何でほとんどの日本Android製品は自分のメーカマーケットを開設することになるでしょうか?今後Android提供者のGoogle社の位置づけはどうなるんでしょうか?
PS:
年末に発売する予定のシャープ電子書籍端末(GALAPAGOS)も自分のマーケットにしか使えないみたいです。
PS:
年末に発売する予定のシャープ電子書籍端末(GALAPAGOS)も自分のマーケットにしか使えないみたいです。
パブリッククラウドとプライベートクラウド
最近クラウドサービスの話題は沸いてきました、採用検討中の企業は少なくないようですが、既存システムとどのように連携するかは私今までずっと持っている質問です。私の認識により、クラウドサービスというのはインターネットを通じてあるISPから提供されるウェブサービスの一種であることで、ちょっと知識不足かなと感じました。実はクラウドサービスというのはパブリッククラウドとプライベートクラウドが二つあります。自分が今まで考えているのはパブリッククラウドです、プライベートクラウドは全然知りませんでした。
この二種類のサービスの使い分けは、このように考えても大丈夫でしょう。中小企業に対してはパブリッククラウドを利用して社内情報管理などの手間の作業は簡単に実現できる代わりに、大手企業に対しては、プライベートクラウドサービスを通じて、既存システムと統合して一括に管理できるようになるではないかと認識しました。
パブリッククラウド:
Google App Engine
Microsoft Windows Azure(アズレではなく、アジュールと呼ぶ)
プライベートクラウド:
Vblockなど
この二種類のサービスの使い分けは、このように考えても大丈夫でしょう。中小企業に対してはパブリッククラウドを利用して社内情報管理などの手間の作業は簡単に実現できる代わりに、大手企業に対しては、プライベートクラウドサービスを通じて、既存システムと統合して一括に管理できるようになるではないかと認識しました。
パブリッククラウド:
Google App Engine
Microsoft Windows Azure(アズレではなく、アジュールと呼ぶ)
プライベートクラウド:
Vblockなど
2010年10月4日月曜日
Android Marketの一つ【Camangi】
AndroidマーケットはGoogleだけではなく、いろんなメーカから提供されています、このトピックに自分の収集したAndroid Market情報を公開します。
Camangi
http://www.camangimarket.com/index_jp.html
Camangi
http://www.camangimarket.com/index_jp.html
javascript数値関数
javascriptで数値を整理する関数もあります、ここに小数点処理関数を紹介します。
切り上げ:Math.ceil(9.8);
切り捨て:Math.floor(9.8);
四捨五入:Math.round(9.8);
結果確認:
切り上げ:Math.ceil(9.8);
切り捨て:Math.floor(9.8);
四捨五入:Math.round(9.8);
結果確認:
html5 canvas座標系の変換
html5 canvasのcontextオブジェクトのsave()とrestore()メソッドを使って座標系変換処理を示します。
使い関数:
context.save();
context.translate(100, 0);
...
context.restore();
サンプル:
http://html5next.appspot.com/canvas4.html
使い関数:
context.save();
context.translate(100, 0);
...
context.restore();
サンプル:
http://html5next.appspot.com/canvas4.html
html5 image表示
html5で画像イメージを表示する方法を紹介します。
このサンプルではイメージリソースをロードしたら表示するようにするサンプルです。
サンプル:
http://html5next.appspot.com/image1.html
このサンプルではイメージリソースをロードしたら表示するようにするサンプルです。
サンプル:
http://html5next.appspot.com/image1.html
html5曲線の描画
html5で曲線を描画する方法を紹介します。
新しい知識はないので、ただCanvas描画APIの紹介です。
サンプル:
http://html5next.appspot.com/curves1.html
新しい知識はないので、ただCanvas描画APIの紹介です。
サンプル:
http://html5next.appspot.com/curves1.html
html5 web storage技術
html5仕様に定められるローカルストレージ技術は二種類に分かられます。
①localStorage
cookieのように利用できるんですが、切り期限などは設定しません。データ保存量も従来のcookieより多いで、パフォーマンス面もよいです。
②sessionStorage
ブラウザーを閉じるまで存在するローカル保存ストレージです。
サンプル:
http://html5next.appspot.com/storage1.html
①localStorage
cookieのように利用できるんですが、切り期限などは設定しません。データ保存量も従来のcookieより多いで、パフォーマンス面もよいです。
②sessionStorage
ブラウザーを閉じるまで存在するローカル保存ストレージです。
サンプル:
http://html5next.appspot.com/storage1.html
Androidシステムを備えたタブレットはやってきた
先日ネットで注文したAndroid OSの中国製A81Eタブレットは先週土曜日に到着しました、日本製品のようにじっくり作られるものではないですけど、自分の望む機能はほとんどあるので、納得できる。
Androidシステムはどんなものかと知りたいため、このデバイスを注文した、自分でAndroidアプリを開発できるかなと思って、いろいろ調査して、この中国製A81Eを決めました、なんとiPhone 3Gと同じなCPU(A8)を使ってるので、操作性はよりよいと思いましたが、やっぱりiPhone 3Gのようにスムーズに動作できなかった。どこのせいか分からなくて、A81E本体の設計は悪いか、それとも、Androidシステムは遅いかは本当に分からないです。
驚いたところもあります。Androidアプリのインストールはすごく簡単です、ブラウザーから【apk】ファイルをminiSDカードにダウンロードして、Apk explorerで実行してすぐインストールできます、その便利性は予想外です。
Androidシステムは今まだ勉強中で、いろいろ使ってみて、今後もこの製品の使用レポートを報告します。
Androidシステムはどんなものかと知りたいため、このデバイスを注文した、自分でAndroidアプリを開発できるかなと思って、いろいろ調査して、この中国製A81Eを決めました、なんとiPhone 3Gと同じなCPU(A8)を使ってるので、操作性はよりよいと思いましたが、やっぱりiPhone 3Gのようにスムーズに動作できなかった。どこのせいか分からなくて、A81E本体の設計は悪いか、それとも、Androidシステムは遅いかは本当に分からないです。
驚いたところもあります。Androidアプリのインストールはすごく簡単です、ブラウザーから【apk】ファイルをminiSDカードにダウンロードして、Apk explorerで実行してすぐインストールできます、その便利性は予想外です。
Androidシステムは今まだ勉強中で、いろいろ使ってみて、今後もこの製品の使用レポートを報告します。
2010年10月1日金曜日
html5 canvasタグ描画サンプル②
html5 canvasの基本利用方法②です、canvasタグのpathとstrokeを利用してイメージを描画する
サンプル:
http://html5next.appspot.com/canvas2.html
サンプル:
http://html5next.appspot.com/canvas2.html
w3schoolsリソース
ウェブサイト関連技術を一括に網羅している有名なサイトです。
英語:
http://www.w3schools.com/
中国語:
http://www.w3school.com.cn/
残念ですが、日本語サイトは見つかりませんでした。
英語:
http://www.w3schools.com/
中国語:
http://www.w3school.com.cn/
残念ですが、日本語サイトは見つかりませんでした。
html5 video再生サンプル
現時点のHTML5仕様では二種類のビデオが再生可能となります。
MPEG4再生サンプル:(ChromeとSafariのみ見れます)
http://html5next.appspot.com/video1.html
IE 8 | Firefox 3.5 | Opera 10.5 | Chrome 3.0 | Safari 3.0 | |
---|---|---|---|---|---|
Ogg | √ | √ | √ | ||
MPEG 4 | √ | √ |
MPEG4再生サンプル:(ChromeとSafariのみ見れます)
http://html5next.appspot.com/video1.html
2010年9月30日木曜日
html5 canvasタグ描画サンプル①
html5 canvasタグを利用して、簡単なイメージを描画する覚書です。
サンプル:
http://html5next.appspot.com/canvas1.html
サンプル:
http://html5next.appspot.com/canvas1.html
ソース: <canvas id="cvs01" height="250" width="250" style="border:1px solid black;"> </canvas> <script type="text/javascript"> function drawCanvas() { var objCanvas = document.getElementById("cvs01"); var objContext = objCanvas.getContext("2d"); // Create a path in absolute coordinates objContext.beginPath(); objContext.moveTo(70, 140); objContext.lineTo(140, 70); // Stroke the line onto the canvas objContext.strokeStyle = "red"; objContext.stroke(); } drawCanvas(); </script>
Android SDK
グーグルAndroid OSを採用したタブレットを予約しました、週末ごろに届けるかな
携帯、タブレット開発を進めるため、iOSやAndroidの開発便利性を調査するつもりで、Android製品を手にも入れたいです。
Android開発環境:
http://developer.android.com/sdk/index.html
Android開発入門参考:
http://itpro.nikkeibp.co.jp/article/COLUMN/20090708/333496/?ST=android-dev
携帯、タブレット開発を進めるため、iOSやAndroidの開発便利性を調査するつもりで、Android製品を手にも入れたいです。
Android開発環境:
http://developer.android.com/sdk/index.html
Android開発入門参考:
http://itpro.nikkeibp.co.jp/article/COLUMN/20090708/333496/?ST=android-dev
HTTPヘッダー内容を全部表示する方法(jsp)
クライアントブラウザー情報などを判断するため、HTTPヘッダーの内容を読み取る必要です。
サンプル:
http://html5next.appspot.com/cb.jsp
ソース:
サンプル:
http://html5next.appspot.com/cb.jsp
ソース:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" import="java.util.*"%> <% Enumeration objEnm = request.getHeaderNames(); while (objEnm.hasMoreElements()) { String strKey = (String) (objEnm.nextElement()); out.println(strKey + "=" + request.getHeader(strKey) + "<br/>"); } %>
2010年9月29日水曜日
Mac OSにWindowsをインストールする方法
Boot Campのインストールと設定ガイドのダウンロードURLを共有します。
http://manuals.info.apple.com/ja_JP/Boot_Camp_Install-Setup_J.pdf
http://manuals.info.apple.com/ja_JP/Boot_Camp_Install-Setup_J.pdf
html5+javascriptの初体験
html5ドキュメント内容を処理するため、javascriptが必要不可欠です、このトピックでこの二つの技術の統合処理を紹介します。
サンプル:
http://html5next.appspot.com/html5js.html
サンプル:
http://html5next.appspot.com/html5js.html
html5 sectionサンプル
html5ページにセクションタグによりいつくかの部分を分けることができます。
例えば:
header,footer,section,article,aside,nav
サンプル:
http://html5next.appspot.com/section.html
例えば:
header,footer,section,article,aside,nav
サンプル:
http://html5next.appspot.com/section.html
html5コンテンツ分類
コンテンツ分類 | 説明 |
Embedded | 文字以外のリソースをインポートする、例えば:audio,video,canvas,image |
Flow | ページ内容記述用のタグ、例えば:form,h1,table,div |
Heading | ヘッダー記述用、例えば:h1,hgroup |
Interactive | 利用者との交互用、例えば:input,button,textarea |
Metadata | ページ行為などの記述用、例えば:meta,script,style,title |
Phrasing | 文字表示用、例えば:mark,sub,sup |
Sectioning | ページ領域分割用、例えば:article,aside,title |
全てのタグはCSSスタイルが通用できます。
html5ページ記述の変更点
ウェブページの【DOCTYPE】と【Character Set】の記述方法は分かりました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
html5:
<!DOCTYPE html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
html5:
<meta charset="utf-8">
【DOCTYPE】
html4:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
html5:
<!DOCTYPE html>
【Character Set】
html4:<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
html5:
<meta charset="utf-8">
html5の特徴
従来のhtml4よりhtml5スペックの特徴を紹介します。(現時点ではhtml5スペックはまだ策定中です)
html5の特徴:
これから少しずつhtml5の奥義を探りたいと思います。
html5の特徴:
• Canvas (2D and 3D) • Channel messaging • Cross-document messaging • Geolocation • MathML • Microdata • Server-Sent events • Scalable Vector Graphics (SVG) • WebSocket API and protocol • Web origin concept • Web storage • Web SQL database • Web Workers • XMLHttpRequest Level 2
これから少しずつhtml5の奥義を探りたいと思います。
ps3もjailbreakされたか?
ソニーゲーム機PS3もハックされたみたいで、最近どこかのサイトからこのニュースを見ました、はっきり覚えてないですけど、【PS3 break】というUSBデバイスでハックする可能です。ただゲームファイルをバックアップする機能なので、完全にハックされたとは言えないでしょう。
PS:
ハックされたよりは脱獄されたほうが正しいでしょうかね?
PS:
ハックされたよりは脱獄されたほうが正しいでしょうかね?
2010年9月28日火曜日
万能メディアファイル再生ソフト-K-Lite Codec Pack
このソフト一本を持ってるなら、どんなビデオ、音楽でも再生可能になります、本当にすばらしいソフトなので、紹介します。
K-Lite Codec Pack
http://www.codecguide.com/
K-Lite Codec Pack
http://www.codecguide.com/
シャープのタブレットGALAPAGOSが発表され
発表された仕様、機能などから見れば、以下の問題点があると思います。
問題点:
①シャープの電子ブックストアしか使えない
②Android OSを採用したのに、Android Marketをサポートしない可能性がある
③値段はまだ発表されてないけど、Amazonキンドル3のような低価格で提供する見通しはない
④本体サイズは16:9型でありそうで、僕のかばんはそのサイズにあわない(iPadのようなサイズだったら問題ないですけど)
この製品は本当に大丈夫でしょうか?
結論:
①普通のユーザー(作者)にとって自作品を電子ブックで発表できて儲かれるなら、悪くないです
②5.5サイズのほうは1万円ほどであれば、買ってみるつもり
問題点:
①シャープの電子ブックストアしか使えない
②Android OSを採用したのに、Android Marketをサポートしない可能性がある
③値段はまだ発表されてないけど、Amazonキンドル3のような低価格で提供する見通しはない
④本体サイズは16:9型でありそうで、僕のかばんはそのサイズにあわない(iPadのようなサイズだったら問題ないですけど)
この製品は本当に大丈夫でしょうか?
結論:
①普通のユーザー(作者)にとって自作品を電子ブックで発表できて儲かれるなら、悪くないです
②5.5サイズのほうは1万円ほどであれば、買ってみるつもり
2010年9月27日月曜日
クラウドサービスは大丈夫でしょうか?
自分はグーグル社のクラウドサービスGoogle App Engine(以下はGAE)を利用したことがあります、このサービスを通してアプリケーションの開発と配布することはすごく簡単で済みます、ハードウェアなども一切に気にせず、単純に一行のコマンドを実行してアプリを更新することが可能です(Eclipseプラグインからも簡単にリリースできます)。他社のクラウドサービスも同じ感じと思います。けど、このような透明的なクラウドサービスを利用したら、既存業務システムのデータの移行は同かなと思います、その作業は簡単に実施するのではないでしょう。例えば、A社のクラウドサービスを採用したら、既存の業務データをA社のデータベースクラウドサービスに導入しないと、システムの連動性もできないでしょう。新規システムの場合(既存システムデータはほとんど無視の場合)、クラウドサービスを採用すれば悪くないですけど…
結論:
クラウドサービスを採用する前に、まず既存業務システムデータの移行範囲を検討すべきです。
結論:
クラウドサービスを採用する前に、まず既存業務システムデータの移行範囲を検討すべきです。
iPhone/iPad開発にはObjCかHTML5か
最近iPhone/iPad開発に力を入れようとしますが、採用技術のほうにちょっと迷っています。困っているところはObjCを勉強するか、それともHTML5+Javascriptを勉強するかのことです。
ObjCはアップル系のネイティブ開発言語なので、これができたら、iPhone/iPadというか、Macアプリまでも開発可能になりますが、アプリ配布はアップルストーに限定されているため、パッケージ更新などはすごく不便と感じています。これに対して、HTML5は新しいウェブページ標準なので、開発したアプリはウェブサーバーに配布しておくだけで、クライアントのウェブブラウザーから直接にアクセスする可能です、なお、HTML5の新標準によりアプリデータはローカルセーブ(オフライン)も可能です。普通の企業アプリ開発には十分だと考えますが、華やかなゲームなどの開発には向いてません。企業アプリケーション開発は、iPhone/iPad限定のクライアントであれば、HTTPリクエストのヘッダにフィールドを判断して、Safari以外のブラウザーを拒否すれば、制御可能になります。
結論:
操作性や見栄えなどに凝るアプリ(ゲーム)はObjCがお勧めで、企業の業務アプリケーション(閲覧処理は80%を占めるMISシステムなど)はHTML5が優先としていいじゃないでしょうか。
ObjCはアップル系のネイティブ開発言語なので、これができたら、iPhone/iPadというか、Macアプリまでも開発可能になりますが、アプリ配布はアップルストーに限定されているため、パッケージ更新などはすごく不便と感じています。これに対して、HTML5は新しいウェブページ標準なので、開発したアプリはウェブサーバーに配布しておくだけで、クライアントのウェブブラウザーから直接にアクセスする可能です、なお、HTML5の新標準によりアプリデータはローカルセーブ(オフライン)も可能です。普通の企業アプリ開発には十分だと考えますが、華やかなゲームなどの開発には向いてません。企業アプリケーション開発は、iPhone/iPad限定のクライアントであれば、HTTPリクエストのヘッダにフィールドを判断して、Safari以外のブラウザーを拒否すれば、制御可能になります。
結論:
操作性や見栄えなどに凝るアプリ(ゲーム)はObjCがお勧めで、企業の業務アプリケーション(閲覧処理は80%を占めるMISシステムなど)はHTML5が優先としていいじゃないでしょうか。
Sql切り上げ処理
Sql関数の切り上げ処理をメモします。
select TRUNC(1000 / 1000 + 0.999,0) from dual --結果:1
select TRUNC(1001 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1103 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1203 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1303 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1403 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1503 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1603 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1703 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1803 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1903 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1999 / 1000 + 0.999,0) from dual --結果:2
PS:
TRUNC関数は切り上げ関数ではなく、切捨て関数です。
select TRUNC(1000 / 1000 + 0.999,0) from dual --結果:1
select TRUNC(1001 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1103 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1203 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1303 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1403 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1503 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1603 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1703 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1803 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1903 / 1000 + 0.999,0) from dual --結果:2
select TRUNC(1999 / 1000 + 0.999,0) from dual --結果:2
PS:
TRUNC関数は切り上げ関数ではなく、切捨て関数です。
2010年9月15日水曜日
Objective-C 2.0プログラミング言語
最近ずっとObjective-Cを勉強しています、この言語の面白さも分かるようになりました。正直言うと、ObjCの勉強は始めたときは、『何だこれ』、『変な言語』だと思ったことがありますけど、今は全然慣れました、変な言語というより、悪くない言語だと考え直しました。
アップルデベロッパーサイトからダウンロードしたObjC勉強ドキュメントを学んでいましたので、本当に役に立ちました。
このURLを紹介します。
http://developer.apple.com/jp/documentation/cocoa/conceptual/objectivec/ObjC.pdf
アップルデベロッパーサイトからダウンロードしたObjC勉強ドキュメントを学んでいましたので、本当に役に立ちました。
このURLを紹介します。
http://developer.apple.com/jp/documentation/cocoa/conceptual/objectivec/ObjC.pdf
2010年9月14日火曜日
Cコンパイルの過程
Cプログラムをコンパイルする四つの過程を紹介します。
①予備処理→②コンパイル→③アセンブラ→④リンク
具体例:hello.c
#include <stdio.h>
int main( int argc, char *argv[] )
{
printf( "Hello World!\n" );
return 0;
}
①予備処理
gcc -E hello.c -o hello.i
②コンパイル
gcc -S hello.i -o hello.s
③アセンブラ
gcc -c hello.s -o hello.o
④リンク
gcc hello.o -o hello.exe
①予備処理→②コンパイル→③アセンブラ→④リンク
具体例:hello.c
#include <stdio.h>
int main( int argc, char *argv[] )
{
printf( "Hello World!\n" );
return 0;
}
①予備処理
gcc -E hello.c -o hello.i
②コンパイル
gcc -S hello.i -o hello.s
③アセンブラ
gcc -c hello.s -o hello.o
④リンク
gcc hello.o -o hello.exe
2010年9月13日月曜日
Windowsシステム整理ツール紹介
最近家のパソコンはすごく遅くなった、余計なソフトはたくさん入ってる原因だと思いますので、先週週末に一気に整理しました、役にたったツールを紹介します。
TweakNow RegCleaner
URL:http://www.tweaknow.com/
Revo Uninstaller
URL:http://www.revouninstaller.com/revo_uninstaller_free_download.html
TweakNow RegCleaner
URL:http://www.tweaknow.com/
Revo Uninstaller
URL:http://www.revouninstaller.com/revo_uninstaller_free_download.html
2010年9月11日土曜日
Macから初めての投稿
先月に注文したアップルマックミニはついに到着しました、本当にいいデザインできれいなOSです。
これからObjective-Cの勉強は続いていくため、しばらくマイクロソフトWindowsOSから離れてMacOSに専攻することにしました。
よし、頑張ろう。。。俺の子のため
これからObjective-Cの勉強は続いていくため、しばらくマイクロソフトWindowsOSから離れてMacOSに専攻することにしました。
よし、頑張ろう。。。俺の子のため
2010年9月10日金曜日
Javascriptで月数はマイナス1関数
JavascriptでDateオブジェクトを利用して「-1」処理を実装する関数です。
<script language="javascript">
function Minus1Month(dteYM)
{
var strRet = "";
if (dteYM.length == 6)
{
var strYear = dteYM.substring(0,4);
var strMonth = dteYM.substring(4) - 1;
var objDate = null;
if (strMonth == 0)
{
objDate = new Date(strYear - 1, 11, 1); // 月は11ですけど、実は12月です
}
else
objDate = new Date(strYear, strMonth - 1, 1);
strYear = objDate.getYear();
strMonth = objDate.getMonth() + 1;
if (strMonth.toString().length == 1)
strRet = strYear + "0" + strMonth;
else
strRet = strYear + "" + strMonth;
}
return strRet;
}
alert(Minus1Month("201001"));
</script>
<script language="javascript">
function Minus1Month(dteYM)
{
var strRet = "";
if (dteYM.length == 6)
{
var strYear = dteYM.substring(0,4);
var strMonth = dteYM.substring(4) - 1;
var objDate = null;
if (strMonth == 0)
{
objDate = new Date(strYear - 1, 11, 1); // 月は11ですけど、実は12月です
}
else
objDate = new Date(strYear, strMonth - 1, 1);
strYear = objDate.getYear();
strMonth = objDate.getMonth() + 1;
if (strMonth.toString().length == 1)
strRet = strYear + "0" + strMonth;
else
strRet = strYear + "" + strMonth;
}
return strRet;
}
alert(Minus1Month("201001"));
</script>
2010年9月8日水曜日
2010年9月7日火曜日
Javascriptで数値型を判定する
function txtAge_keydown()
{
if (
event.keyCode==8 || //バックスペース
event.keyCode==9 || //タブキー
event.keyCode==46 || //deleteキー
(37<=event.keyCode && event.keyCode<=40) || //矢印キー
event.keyCode==189 || //マイナス「-」
event.keyCode==109 || //テンキーのマイナス「-」
//数字判定
(48<=event.keyCode && event.keyCode<=57) || //テンキーじゃない方の数字
(96<=event.keyCode && event.keyCode<=105) //テンキーの数字
)
return true;
else
return false;
}
{
if (
event.keyCode==8 || //バックスペース
event.keyCode==9 || //タブキー
event.keyCode==46 || //deleteキー
(37<=event.keyCode && event.keyCode<=40) || //矢印キー
event.keyCode==189 || //マイナス「-」
event.keyCode==109 || //テンキーのマイナス「-」
//数字判定
(48<=event.keyCode && event.keyCode<=57) || //テンキーじゃない方の数字
(96<=event.keyCode && event.keyCode<=105) //テンキーの数字
)
return true;
else
return false;
}
全てのコントロールのカーソル設定(WebPage)
Ajaxコーディングでは、ページがサブミットしないため、カーソルの制御などが必要となるので、一つのコツとしてメモします。
function setWaitCursor()
{
var i,origLength;
origLength = document.all.length;
for (i = 0; i < origLength; i++)
{
document.all[i].style.cursor = "wait";
}
}
function resetCursor()
{
var i,origLength;
origLength = document.all.length;
for (i = 0; i < origLength; i++)
{
document.all[i].style.cursor = "";
}
}
function setWaitCursor()
{
var i,origLength;
origLength = document.all.length;
for (i = 0; i < origLength; i++)
{
document.all[i].style.cursor = "wait";
}
}
function resetCursor()
{
var i,origLength;
origLength = document.all.length;
for (i = 0; i < origLength; i++)
{
document.all[i].style.cursor = "";
}
}
2010年9月5日日曜日
2010年9月3日金曜日
WindowsでObjectiveCコンパイル環境を構築する(GNUstep)
GNUstepでMacOSX開発に近い環境を構築することもできます。
オフィシャル:
http://www.gnustep.org/
必要なファイル:
gnustep-msys-system-0.25.1-setup.exe
gnustep-core-0.25.0-setup.exe
gnustep-devel-1.1.1-setup.exe
インストール手順:
①システムファイルを
gnustep-msys-system-0.25.1-setup.exe
②ライブラリファイルを
gnustep-core-0.25.0-setup.exe
③開発ツール(GCC)を
gnustep-devel-1.1.1-setup.exe
コンパイルコマンド:
gcc -o main main.m -I c:/GNUstep/GNUstep/System/Library/Headers -L c:/GNUstep/GNUstep/System/Library/Libraries -lobjc -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import
オフィシャル:
http://www.gnustep.org/
必要なファイル:
gnustep-msys-system-0.25.1-setup.exe
gnustep-core-0.25.0-setup.exe
gnustep-devel-1.1.1-setup.exe
インストール手順:
①システムファイルを
gnustep-msys-system-0.25.1-setup.exe
②ライブラリファイルを
gnustep-core-0.25.0-setup.exe
③開発ツール(GCC)を
gnustep-devel-1.1.1-setup.exe
コンパイルコマンド:
gcc -o main main.m -I c:/GNUstep/GNUstep/System/Library/Headers -L c:/GNUstep/GNUstep/System/Library/Libraries -lobjc -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import
WindowsでObjectiveCコンパイル環境を構築する(GNU)
必要ソフト:
MinGW
ObjectiveC Compiler(MinGWインストールに既に入ってるけれども、インストールしたら入ってないみたいです、バグ?だから、単独にObjectiveCコンパイラーをダウンロードする必要です。)
手順:(重要)
①mingwインストール
mingw-get-inst-20100831.exe
②パス設定:
PATH=C:\MinGW;C:\MinGW\msys\1.0\bin;...
③gcc-objc-4.5.0_20100311-2-mingw32-bin.tar.lzmaをC:\MinGWにコピーする
④DOSに入り、下記のコマンドを実行する
cd C:\MinGW
tar xvf gcc-objc-4.5.0_20100311-2-mingw32-bin.tar.lzma --lzma
⑤完了
注意:デフォルトはObjectiveCファイルの拡張子が「m」ではないとコンパイルエラーです。
ファイルリスト:
mingw-get-inst-20100831.exe
gcc-objc-4.5.0_20100311-2-mingw32-bin.tar.lzma
MinGW
ObjectiveC Compiler(MinGWインストールに既に入ってるけれども、インストールしたら入ってないみたいです、バグ?だから、単独にObjectiveCコンパイラーをダウンロードする必要です。)
手順:(重要)
①mingwインストール
mingw-get-inst-20100831.exe
②パス設定:
PATH=C:\MinGW;C:\MinGW\msys\1.0\bin;...
③gcc-objc-4.5.0_20100311-2-mingw32-bin.tar.lzmaをC:\MinGWにコピーする
④DOSに入り、下記のコマンドを実行する
cd C:\MinGW
tar xvf gcc-objc-4.5.0_20100311-2-mingw32-bin.tar.lzma --lzma
⑤完了
注意:デフォルトはObjectiveCファイルの拡張子が「m」ではないとコンパイルエラーです。
ファイルリスト:
mingw-get-inst-20100831.exe
gcc-objc-4.5.0_20100311-2-mingw32-bin.tar.lzma
2010年9月2日木曜日
ObjectiveC先の一歩
iPhone/iPadアプリの開発を勉強しようとするため、前日にアップルストアでMac miniを注文しましたが、現在まだ届いていません。このうちに、まずObjectiveC開発環境をWindowsプラットフォームに構築するつもりです。
必要なソフト:
Cygwin
オフィシャルサイト:
http://cygwin.com/
インストールビデオ:(参考まで)
http://www.youtube.com/watch?v=tBRhjEDuck0
PS:
Cygwinのインストールする際に、GCCコンパイルパケッジはあるかどうかを確認する必要があるみたいです。
其の他:
Dev-C++
http://www.bloodshed.net
必要なソフト:
Cygwin
オフィシャルサイト:
http://cygwin.com/
インストールビデオ:(参考まで)
http://www.youtube.com/watch?v=tBRhjEDuck0
PS:
Cygwinのインストールする際に、GCCコンパイルパケッジはあるかどうかを確認する必要があるみたいです。
其の他:
Dev-C++
http://www.bloodshed.net
2010年8月30日月曜日
2010年8月26日木曜日
UpdatePanel使用コツ
①クライアントのjavascriptを実行する
private void RunClientScript(string key, string content)
{
ScriptManager.RegisterClientScriptBlock(UpdatePanelGridView, typeof(UpdatePanel), key, content, true);
}
②PageLoadイベントに非同期リクエストかどうかを判断する
ScriptManager170.IsInAsyncPostBack
private void RunClientScript(string key, string content)
{
ScriptManager.RegisterClientScriptBlock(UpdatePanelGridView, typeof(UpdatePanel), key, content, true);
}
②PageLoadイベントに非同期リクエストかどうかを判断する
ScriptManager170.IsInAsyncPostBack
2010年8月20日金曜日
URLルート知識
URLルート追加:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", // Parameter defaults
id = UrlParameter.Optional }
);
本来の書き方:
Route myRoute = new Route("{controller}/{action}/{id}", new MvcRouteHandler())
{
Defaults = new RouteValueDictionary( new {
controller = "Home", action = "Index", id = UrlParameter.Optional
})
};
routes.Add("Default", myRoute);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", // Parameter defaults
id = UrlParameter.Optional }
);
本来の書き方:
Route myRoute = new Route("{controller}/{action}/{id}", new MvcRouteHandler())
{
Defaults = new RouteValueDictionary( new {
controller = "Home", action = "Index", id = UrlParameter.Optional
})
};
routes.Add("Default", myRoute);
2010年8月19日木曜日
lambda式サンプル
C#3.0からlambda式文法が提供されました、ここでlambda式使用方法を紹介します。
関数定義:
private int test01(int p1, Func<int, int> func1)
{
return func1(p1);
}
この関数の第二引数は一つのint引数とint戻り値の関数式を指定しています。
lambda文法使用例:
int temp = 0;
temp = test01(5, x => x * x); // 25
temp = test01(5, x => x + x); // 10
temp = test01(5, x => x - x); // 0
関数定義:
private int test01(int p1, Func<int, int> func1)
{
return func1(p1);
}
この関数の第二引数は一つのint引数とint戻り値の関数式を指定しています。
lambda文法使用例:
int temp = 0;
temp = test01(5, x => x * x); // 25
temp = test01(5, x => x + x); // 10
temp = test01(5, x => x - x); // 0
2010年8月18日水曜日
Ninject(IoC/DIコンテナ)
Don't call me, I will call you.
Ninject入門サンプル
一、ログ出力インターフェースを宣言する
Ninject入門サンプル
一、ログ出力インターフェースを宣言する
- public interface ILogger
- {
- void Write(string message);
- }
- public class FlatFileLogger : ILogger
- {
- public void Write(string message)
- {
- Console.WriteLine(String.Format("Message:{0}", message));
- Console.WriteLine("Target:FlatFile");
- }
- }
- public class DatabaseLogger : ILogger
- {
- public void Write(string message)
- {
- Console.WriteLine(String.Format("Message:{0}", message));
- Console.WriteLine("Target:Database");
- }
- }
- internal class MyModule : Ninject.Modules.NinjectModule
- {
- public override void Load()
- {
- Bind<ILogger>().To<FlatFileLogger>();
- Bind<ILogger>().To<DatabaseLogger>();
- }
- }
- private static IKernel kernel = new StandardKernel(new MyModule());
- static void Main(string[] args)
- {
- ILogger logger = kernel.Get<ILogger>();
- logger.Write("Bruce Say: Hello Ninject!");
- Console.WriteLine("continues..");
- Console.Read();
- }
2010年8月17日火曜日
Asp.Net MVC2必須技術のまとめ
Ninject
http://ninject.org/
WatiN
http://watin.sourceforge.net/
moq
http://code.google.com/p/moq/
オプション:(勉強したほうがいい)
SpecFlow
http://specflow.org/
http://ninject.org/
WatiN
http://watin.sourceforge.net/
moq
http://code.google.com/p/moq/
オプション:(勉強したほうがいい)
SpecFlow
http://specflow.org/
2010年8月16日月曜日
2010年8月11日水曜日
urlエンコード(javascript)
function button1_onclick() { text2.value = escape(text1.value); text2.value = encodeURI(text1.value); text2.value = encodeURIComponent(text1.value); } function button2_onclick() { text3.value = unescape(text2.value); text3.value = decodeURI(text2.value); text3.value = decodeURIComponent(text2.value); }
2010年7月20日火曜日
電話の取り次ぎ方
普通の取次ぎ:
「○○でございますね。ただいま代わりますので少々お待ちいただけますでしょうか」
保留の時間
「申し訳ございません。まだ少々時間がかかりそうですので、折り返しこちらからお電話させていただきます」
担当者が不在の時
「申し訳ございません。あいにく ○○は席をはずして(外出して)おります」
「お急ぎでしょうか」
「こちらからお電話いたしましょうか」
「よろしければご用件を承っておきましょうか」
「○日(○曜日)まで出張しております」
「本日は休みをいただいております。○日には出社いたします」
「申し訳ございません。○○はただいま席をはずしております。伝言を承りましょうか、それとも戻り次第、お電話を差し上げるよう申しましょうか。」
担当者が電話中の時
「あいにく、ほかの電話に出ております。いかがいたしましょうか」
「それでは少々お待ちください」
「かしこまりました。それではお電話があったことを申し伝えます」
「確かに申し伝えます」
接客中、会議中の取次ぎ
「あいにく会議中(接客中)ですが、いかがいたしましょうか」
「○○社の△△様からお急ぎのお電話が入っております」
「お話中失礼します」
「会議中失礼します」
「○○でございますね。ただいま代わりますので少々お待ちいただけますでしょうか」
保留の時間
「申し訳ございません。まだ少々時間がかかりそうですので、折り返しこちらからお電話させていただきます」
担当者が不在の時
「申し訳ございません。あいにく ○○は席をはずして(外出して)おります」
「お急ぎでしょうか」
「こちらからお電話いたしましょうか」
「よろしければご用件を承っておきましょうか」
「○日(○曜日)まで出張しております」
「本日は休みをいただいております。○日には出社いたします」
「申し訳ございません。○○はただいま席をはずしております。伝言を承りましょうか、それとも戻り次第、お電話を差し上げるよう申しましょうか。」
担当者が電話中の時
「あいにく、ほかの電話に出ております。いかがいたしましょうか」
「それでは少々お待ちください」
「かしこまりました。それではお電話があったことを申し伝えます」
「確かに申し伝えます」
接客中、会議中の取次ぎ
「あいにく会議中(接客中)ですが、いかがいたしましょうか」
「○○社の△△様からお急ぎのお電話が入っております」
「お話中失礼します」
「会議中失礼します」
2010年7月15日木曜日
Linq-GroupBy
Linq言語のGroupBy機能を紹介します。
従来のSELECT文でGroupByをしていますが、Linq言語を利用したら簡単にできるようになりました、本当にありがたい技術です。
class Pet
{
public string Name { get; set; }
public int Age { get; set; }
}
// Uses method-based query syntax.
public static void GroupByEx1()
{
// Create a list of pets.
List<Pet> pets =
new List<Pet>{ new Pet { Name="Barley", Age=8 },
new Pet { Name="Boots", Age=4 },
new Pet { Name="Whiskers", Age=1 },
new Pet { Name="Daisy", Age=4 } };
// Group the pets using Age as the key value
// and selecting only the pet's Name for each value.
IEnumerable<IGrouping<int, string>> query =
pets.GroupBy(pet => pet.Age, pet => pet.Name);
// Iterate over each IGrouping in the collection.
foreach (IGrouping<int, string> petGroup in query)
{
// Print the key value of the IGrouping.
Console.WriteLine(petGroup.Key);
// Iterate over each value in the
// IGrouping and print the value.
foreach (string name in petGroup)
Console.WriteLine(" {0}", name);
}
}
従来のSELECT文でGroupByをしていますが、Linq言語を利用したら簡単にできるようになりました、本当にありがたい技術です。
class Pet
{
public string Name { get; set; }
public int Age { get; set; }
}
// Uses method-based query syntax.
public static void GroupByEx1()
{
// Create a list of pets.
List<Pet> pets =
new List<Pet>{ new Pet { Name="Barley", Age=8 },
new Pet { Name="Boots", Age=4 },
new Pet { Name="Whiskers", Age=1 },
new Pet { Name="Daisy", Age=4 } };
// Group the pets using Age as the key value
// and selecting only the pet's Name for each value.
IEnumerable<IGrouping<int, string>> query =
pets.GroupBy(pet => pet.Age, pet => pet.Name);
// Iterate over each IGrouping in the collection.
foreach (IGrouping<int, string> petGroup in query)
{
// Print the key value of the IGrouping.
Console.WriteLine(petGroup.Key);
// Iterate over each value in the
// IGrouping and print the value.
foreach (string name in petGroup)
Console.WriteLine(" {0}", name);
}
}
2010年7月14日水曜日
NBAボストン・セルティックス
2010年7月12日月曜日
Linq文法でExcelプロセスメモリを解放する
public static void ReleaseExcelMemoryResource()
{
System.Diagnostics.Process[] aobjProcessExcel =
System.Diagnostics.Process.GetProcessesByName("excel");
var LinqExcelProess = from excelprocess in aobjProcessExcel
orderby excelprocess.StartTime descending
select excelprocess;
LinqExcelProess.First().Kill();
}
2010年7月6日火曜日
IT人こそ投資で勝てる
IT人として投資で儲かる条件を取り上げます。
①頭がいい
頭がいい人こそプログラムができる
②勉強能力が強い
IT業界に生存してる人は毎日勉強しないと(新技術など)、すぐ業界に捨てられる恐れがある
③分析能力が強い
システムエンジニアの分析能力は普通以上にある
④アイデアが多い
新製品開発、新サービス提案
だから、IT人の僕はこれから金融業に挑戦しようとします。:)
よし、やってやる…
①頭がいい
頭がいい人こそプログラムができる
②勉強能力が強い
IT業界に生存してる人は毎日勉強しないと(新技術など)、すぐ業界に捨てられる恐れがある
③分析能力が強い
システムエンジニアの分析能力は普通以上にある
④アイデアが多い
新製品開発、新サービス提案
だから、IT人の僕はこれから金融業に挑戦しようとします。:)
よし、やってやる…
2010年7月4日日曜日
米経済、振れの大きな世界市場からの逆風に直面=オバマ大統領
オバマ米大統領は2日、国内経済は正しい方向に向かっているが、振れの大きな世界市場の動向が引き続き向かい風となっているとの認識を示した。 6月の雇用統計発表後に記者会見した大統領は「われわれが正しい方向に向かっていることに間違いない」とした上で、「多くの国民にとって(景気回復が)十分なペースで進んでいない」と述べた。 6月の雇用統計・非農業部門雇用者数は、多くの臨時雇用契約が終了する中、予想以上の減少となった。減少は今年に入ってから初めて。 大統領は「われわれは振れの大きな世界の市場からの逆風と引き続き闘っている。経済を修復し、国民を仕事に復帰させるためにすべきことはまだ山積している」と語った。
一方、米経済諮問委員会(CEA)のローマー委員長は声明で、雇用統計は労働市場の段階的回復の兆候を引き続き示しているとし「特に最近の世界市場の振れの大きさや他の経済指標の内容がまちまちであることを踏まえると、こうした回復の継続的兆候が重要だ」と説明した。
一方、米経済諮問委員会(CEA)のローマー委員長は声明で、雇用統計は労働市場の段階的回復の兆候を引き続き示しているとし「特に最近の世界市場の振れの大きさや他の経済指標の内容がまちまちであることを踏まえると、こうした回復の継続的兆候が重要だ」と説明した。
2010年6月30日水曜日
出産予定日計算ツール
現在、妻は妊娠しているんで、赤ちゃんの出産予定日を計算するため、出産予定日計算ツールを作成しておきました、自分だけ使用するのではなく、皆さんにも共有します。
出産予定日計算ツールURL:
http://babykoma.appspot.com
皆さんぜひご利用ください。:)
出産予定日計算ツールURL:
http://babykoma.appspot.com
皆さんぜひご利用ください。:)
2010年6月28日月曜日
愛国主義とは何ですか?
中国サイトから参照してきた【愛国主義】の纏めです。現在の中国には【憤青】という若者がいます、毎日【愛国主義】に囲まれてる彼たちは中国以外のこと(アメリカとか、日本とか、歴史とか、ワールドカップでも)何でも叱ってるんで、彼たちは本当に中国のことを考えてるでしょうか?
PS:
憤青(ふんせい、簡体字:愤青、ピン音:Fènqīng フェンチン)とは、「愤怒青年」を短縮した、中国語で「怒れる若者」を意味する言葉。1960年代の日本語の「怒れる若者達」、英語の「angry youngmen」と同義。この言葉は1970年代の香港で、中国社会に不満を持ち改革を望む若者を指して初めて使用された。また、文化大革命で農村に下放され、学問の道を絶たれたゆえに「憤慨する青年」を指すこともあった。しかし今日では中国のネット上で特別な意味を持つ言葉として使用されている。
PS:
憤青(ふんせい、簡体字:愤青、ピン音:Fènqīng フェンチン)とは、「愤怒青年」を短縮した、中国語で「怒れる若者」を意味する言葉。1960年代の日本語の「怒れる若者達」、英語の「angry youngmen」と同義。この言葉は1970年代の香港で、中国社会に不満を持ち改革を望む若者を指して初めて使用された。また、文化大革命で農村に下放され、学問の道を絶たれたゆえに「憤慨する青年」を指すこともあった。しかし今日では中国のネット上で特別な意味を持つ言葉として使用されている。
2010年6月22日火曜日
これからはAndroidの革命か?
東芝は2010年6月21日、OSにAndroid 2.1を採用したネットブック「dynabook AZ」を発表した。10.1型液晶とハードウエアキーボードを備えて、重量は870g。東芝では「クラウドブック」と呼ぶ。2010年8月下旬に出荷する。
これからの時代は本当にAndroid主導の業界革命でしょうか?IT人としてAndroid技術と製品を知らないと危ないでしょうか?
Android
これからの時代は本当にAndroid主導の業界革命でしょうか?IT人としてAndroid技術と製品を知らないと危ないでしょうか?
Android
Google Chart Toolsサンプル
最近、Google App Engine(以下はGAEと称する)からグラフを出力する技術を研究しています。セキュリティの考慮であるかもしれないで、GAE環境にはjava.awt.*パッケージを利用できないのです。この制限で、Graphics2Dを利用してイメージ出力処理もできなくなりました、他の方法を探すしかないです。この成行きで、Google Chart Toolsを発見しました、これは完璧な解決案ではなく、他のいい方法を見つけるまでこれを一時的に利用するだけです。
Google Chart Tools実行効果:
Google Chart Tools実行効果:
2010年6月21日月曜日
Google App EngineでExcel出力する
Google App Engine(以下はGAEと称する)でjexcelapiを利用して、Excelを作成してダウンロードする処理を実装しました。
GAEにはホワイトリストがありますの、このリスト以外のクラスがサポートされていません、例えばApache POIはExcel作成によく使われるんですが、GAE環境にはなかなか使えません。(多分Apache POIがJava低レベルAPIを使っているかもしれません)いろいろ調べると、jexcelapiが見つかりました、これを利用して問題なくExcelファイルが作成でき、ダウンロードすることもできるようになりました。このサンプルを作成しましたので、ご覧ください。
GAEにはホワイトリストがありますの、このリスト以外のクラスがサポートされていません、例えばApache POIはExcel作成によく使われるんですが、GAE環境にはなかなか使えません。(多分Apache POIがJava低レベルAPIを使っているかもしれません)いろいろ調べると、jexcelapiが見つかりました、これを利用して問題なくExcelファイルが作成でき、ダウンロードすることもできるようになりました。このサンプルを作成しましたので、ご覧ください。
中国の「過剰投資」は報われるのか
中国ビジネスに関して興味深い文書を発見しました、本当に勉強になりました。
●米中が「不均衡の是正」という皮肉
まずは、中国の歴史と現在の状況から始めたいと思います。長い視点で見ると、そもそも中国は四大文明の1つを起源とし、高い文化と発明を誇ってきた強国でしたし、欧米列強に利権を奪われる19世紀までは、世界最大の経済大国であったというデータもあります。逆に言えば、中国がマイナーな存在になったのは、この100年余りのことなのです。
…
●高まる「不動産開発バブル」崩壊リスク
さらに中国の累積された設備(資本のストック)の状況を分析してみます。中国は、1997年のアジア危機以降の拡大財政政策に始まり、2001 年の WTO以降も投資を加速し、さらに2008年の北京オリンピック開催に向けて政府の固定資産投資を積み上げ、累積設備を増やしてきました。そうした中で、オリンピック後に、本来はそろそろ投資の速度を緩めようとした矢先に金融危機が起こり(それはまたちょうど政治的にも建国60周年を迎え安定を求められる時期でもあったので)、さらに思い切った財政政策を打たざるを得なかったのです。
…
●日本と中国の成長過程は相似形
新興国の発展過程を、私たち日本人が体験した1970年代の高度経済成長期に当てはめて、イメージしてみたいと思います。(1)日本の高度経済成長は、 1960年の「所得倍増計画」に始まりました。ここから、1964年の東京オリンピックに向けて設備投資が加速しましたが、その後その反動もあり、 1965年には「昭和40年不況」に突入。ただその後も息の長い「いざなぎ景気」が1970年まで続きました。
中国では、 1986~1990年の間に生まれた3回目のベビー・ブーマーが、2004年から大量就職を始めます(実は旧共産圏でも同じ時期にベビー・ブーマーが大量就職を終えているようです)。高校卒業組から大学卒業組まで考えると、今まさに大量の就職者がいるわけですが、2007年までの好景気の時期はともかく、昨年来の金融危機の影響を受けている中では大変な就職難だと聞いています。
…
●米中が「不均衡の是正」という皮肉
まずは、中国の歴史と現在の状況から始めたいと思います。長い視点で見ると、そもそも中国は四大文明の1つを起源とし、高い文化と発明を誇ってきた強国でしたし、欧米列強に利権を奪われる19世紀までは、世界最大の経済大国であったというデータもあります。逆に言えば、中国がマイナーな存在になったのは、この100年余りのことなのです。
…
●高まる「不動産開発バブル」崩壊リスク
さらに中国の累積された設備(資本のストック)の状況を分析してみます。中国は、1997年のアジア危機以降の拡大財政政策に始まり、2001 年の WTO以降も投資を加速し、さらに2008年の北京オリンピック開催に向けて政府の固定資産投資を積み上げ、累積設備を増やしてきました。そうした中で、オリンピック後に、本来はそろそろ投資の速度を緩めようとした矢先に金融危機が起こり(それはまたちょうど政治的にも建国60周年を迎え安定を求められる時期でもあったので)、さらに思い切った財政政策を打たざるを得なかったのです。
…
●日本と中国の成長過程は相似形
新興国の発展過程を、私たち日本人が体験した1970年代の高度経済成長期に当てはめて、イメージしてみたいと思います。(1)日本の高度経済成長は、 1960年の「所得倍増計画」に始まりました。ここから、1964年の東京オリンピックに向けて設備投資が加速しましたが、その後その反動もあり、 1965年には「昭和40年不況」に突入。ただその後も息の長い「いざなぎ景気」が1970年まで続きました。
中国では、 1986~1990年の間に生まれた3回目のベビー・ブーマーが、2004年から大量就職を始めます(実は旧共産圏でも同じ時期にベビー・ブーマーが大量就職を終えているようです)。高校卒業組から大学卒業組まで考えると、今まさに大量の就職者がいるわけですが、2007年までの好景気の時期はともかく、昨年来の金融危機の影響を受けている中では大変な就職難だと聞いています。
…
Google Font APIサンプル
5月からGoogle社は新しいAPIサービスを提供し始めました、これはGoogle Font APIです。
これはどんなサービスかというと、クライアントにインストールしないフォントでも当サービスを利用して正しく表示できるサービスです。
上記の文字はGoogle Font APIサービスを利用して表示したイメージです。
現時点では利用可能なフォントは下記のURLから御確認ください。
http://code.google.com/webfonts
問題:
日本語フォントはまだサポートされていません。
これはどんなサービスかというと、クライアントにインストールしないフォントでも当サービスを利用して正しく表示できるサービスです。
WelCome To Koma Blog
上記の文字はGoogle Font APIサービスを利用して表示したイメージです。
現時点では利用可能なフォントは下記のURLから御確認ください。
http://code.google.com/webfonts
問題:
日本語フォントはまだサポートされていません。
面白い日本語
先週週末も本屋に足を運びました、元々買うつもりはないですが、下記の本を発見して本屋で一気に半分以上読んでしまいました、教え方は本当に面白いので、最後はやはり買ってきました。
この本は外国留学生さんは日本語を習う間は先生にいろいろな質問をしていて、日本語先生はこのような質問攻撃を受けて、さらに自分で日本文化を勉強していて、知らないうちに学生さんは日本語ができるようになり、先生も【日本人の知らない日本語】を勉強されてる物語です。
この本は外国留学生さんは日本語を習う間は先生にいろいろな質問をしていて、日本語先生はこのような質問攻撃を受けて、さらに自分で日本文化を勉強していて、知らないうちに学生さんは日本語ができるようになり、先生も【日本人の知らない日本語】を勉強されてる物語です。
2010年6月17日木曜日
漫画 はじめての投資大作戦
最近は一人暮らしになるので、暇のときは読書をしています。この前はほとんどIT技術に関連する本しか呼んでいませんでしたが、最近他の領域に興味を持つようになりました、例えば投資、心理学など。先週週末に隣の本屋へ足を運びましたんで、投資知識を教えてくれる漫画本を購入しました。
なぜ漫画形式の本を買うかというと、新しい領域の入門者の私にとっては分かりやすいのが一番大切です。
なぜ漫画形式の本を買うかというと、新しい領域の入門者の私にとっては分かりやすいのが一番大切です。
2010年6月15日火曜日
2010年6月8日火曜日
Appleが薄さ9.3mmの「iPhone 4」を発表、6月24日発売
米Appleは米国時間2010年6月7日、携帯電話の新機種「iPhone 4」を発表した。モバイルOSの新版「iOS 4」を搭載する。500万画素のデジタルカメラを内蔵し、ビデオ通話機能「FaceTime」を備える。薄さ9.3mmで重さ137g。米国、日本など5 カ国で6月24日に発売する。
iPhone 4は、3.5インチの「Retina」ディスプレイを搭載する。解像度は960×640ピクセルで、現行製品「iPhone 3GS」より4倍向上した。デジタルカメラは5倍デジタルズームとLEDライトを備え、高品位(HD)ビデオ撮影も行える。
Apple独自のプロセッサ「A4」を採用したことにより、バッテリー寿命が従来と比べ40%向上した。連続待ち受け時間は最大300時間。音声通話なら最大7時間、WebブラウジングならWi-Fi経由で最大10時間、3Gネットワークでは最大6時間行える。動画再生は最大10時間、音楽再生は最大 40時間可能という。
また、新たなゲーム体験の提供を目指し、3軸ジャイロセンサーを実装した。加速度センサーと組み合わせることで、上下、左右、前後の6軸を感知する。
カラーはブラックとホワイトの2種類。米国と日本のほか、フランス、ドイツ、英国で6月24日に販売を開始する。米国での希望小売価格(米AT&Tと2 年契約を結んだ場合)は、16Gバイトモデルが199ドル、32Gバイトモデルが299ドル。6月15日より予約注文を受け付ける。9月末までに88カ国に販売を拡大する計画。またiPhone 4の発売に合わせて、iPhone 3GSの8Gバイトモデルを99ドルで提供する。
iOS 4は100以上の新機能を追加した。マルチタスク機能、フォルダー機能、企業向け機能を備え、メールアプリケーションを強化し、同社の広告プラットフォーム「iAd」を実装する。iAdでは、ユーザーがビデオ再生、ゲーム利用、アプリケーションダウンロードなどを行う際に広告を表示する。Appleが広告枠の販売とホスティングを行う。iAdは7月1日より利用可能にする。
iOS 4は6月21日に無償アップデートソフトをリリースする。iPhone 4とiPhone 3GS、「iPhone 3G」のほか、第2世代および第3世代の「iPod touch」で利用可能。
iPhone 4は、3.5インチの「Retina」ディスプレイを搭載する。解像度は960×640ピクセルで、現行製品「iPhone 3GS」より4倍向上した。デジタルカメラは5倍デジタルズームとLEDライトを備え、高品位(HD)ビデオ撮影も行える。
Apple独自のプロセッサ「A4」を採用したことにより、バッテリー寿命が従来と比べ40%向上した。連続待ち受け時間は最大300時間。音声通話なら最大7時間、WebブラウジングならWi-Fi経由で最大10時間、3Gネットワークでは最大6時間行える。動画再生は最大10時間、音楽再生は最大 40時間可能という。
また、新たなゲーム体験の提供を目指し、3軸ジャイロセンサーを実装した。加速度センサーと組み合わせることで、上下、左右、前後の6軸を感知する。
カラーはブラックとホワイトの2種類。米国と日本のほか、フランス、ドイツ、英国で6月24日に販売を開始する。米国での希望小売価格(米AT&Tと2 年契約を結んだ場合)は、16Gバイトモデルが199ドル、32Gバイトモデルが299ドル。6月15日より予約注文を受け付ける。9月末までに88カ国に販売を拡大する計画。またiPhone 4の発売に合わせて、iPhone 3GSの8Gバイトモデルを99ドルで提供する。
iOS 4は100以上の新機能を追加した。マルチタスク機能、フォルダー機能、企業向け機能を備え、メールアプリケーションを強化し、同社の広告プラットフォーム「iAd」を実装する。iAdでは、ユーザーがビデオ再生、ゲーム利用、アプリケーションダウンロードなどを行う際に広告を表示する。Appleが広告枠の販売とホスティングを行う。iAdは7月1日より利用可能にする。
iOS 4は6月21日に無償アップデートソフトをリリースする。iPhone 4とiPhone 3GS、「iPhone 3G」のほか、第2世代および第3世代の「iPod touch」で利用可能。
2010年5月26日水曜日
2010年5月24日月曜日
ブラウザー閉じるボタンを押したら、スクリプトを実行させる方法
システム開発にはよく問われる問題ですので、他のサイトから見かけた解決方法を纏めたいと思います。
方法①
function window.onunload()
{
if(self.closed || (event.clientX<=-9000 && event.clientY<=-9000))
{
// セッション解放処理
}
}
方法①
function window.onunload()
{
if(self.closed || (event.clientX<=-9000 && event.clientY<=-9000))
{
// セッション解放処理
}
}
2010年5月18日火曜日
2010年5月13日木曜日
2010年5月12日水曜日
JDO-トランザクション使用例
明示的なトランザクションを使用していない場合、どちらのエンティティも個別のアトミックなアクションを使用して作成されます。その場合、 Employee エンティティの作成が成功し、ContactInfo エンティティの作成が失敗することも考えられます。どちらのエンティティも正常に作成されたか、どちらのエンティティも作成されていないことを保証するには、トランザクションを使用する必要があります。
JDO-関係-1 対 1 の所有関係
2 つの永続オブジェクト間に一方向の 1 対 1 の所有関係を設定するには、関連付けられるクラスのクラスをタイプとして持つフィールドを使用します。
次に、ContactInfo データ クラスと Employee データ クラスで、Employee から ContactInfo への 1 対 1 の関係を定義する方法を示します。
次に、ContactInfo データ クラスと Employee データ クラスで、Employee から ContactInfo への 1 対 1 の関係を定義する方法を示します。
2010年5月11日火曜日
Google App Engine トランザクション処理
「トランザクション」とは、完全に成功または失敗した一連のデータストア操作のことです。トランザクションが成功すると、意図した効果がすべてデー タストアに適用されます。トランザクションが失敗すると、意図した効果は適用されません。
データストアの書き込み操作はすべてアトミックです。エンティティの作成、更新、削除は「実行される」か「実行されない」かのどちらかです。操作が 失敗する原因として、同時にエンティティを変更しようとするユーザーが多すぎて競合頻度が高くなっていることが考えられます。また、アプリケーションが割 り当て制限に達したために操作が失敗する場合もあります。そのほか、データストアの内部エラーが原因の場合もあります。いずれの場合にも、操作の効果は適 用されず、Datastore API は例外を発行します。
データストアの書き込み操作はすべてアトミックです。エンティティの作成、更新、削除は「実行される」か「実行されない」かのどちらかです。操作が 失敗する原因として、同時にエンティティを変更しようとするユーザーが多すぎて競合頻度が高くなっていることが考えられます。また、アプリケーションが割 り当て制限に達したために操作が失敗する場合もあります。そのほか、データストアの内部エラーが原因の場合もあります。いずれの場合にも、操作の効果は適 用されず、Datastore API は例外を発行します。
2010年Q1の米国スマートフォン市場、Android端末がiPhoneを抜いて2位に
米NPD Groupが米国時間2010年5月10日にまとめた同年第1四半期(Q1)の米国スマートフォン市場調査によると、米Googleが開発を進める 「Android OS」を搭載した端末の販売シェアが28%となり、米Appleの「iPhone」を抜いて2位となった。首位はカナダResearch in Motion(RIM)の「BlackBerry OS」搭載端末でそのシェアは36%。iPhoneは21%で3位に後退した。
同社によると、スマートフォンの販売台数シェアは、通信事業者の商品供給体制やプロモーション活動に大きく左右される。第1四半期は、米Verizon WirelessがiPhoneを意識し、「buy-one-get-one(1台購入するともう1台がもらえる)」というプロモーションをスマートフォ ンの全機種で展開した。これによりVerizonは、「Droid」「Droid Eris」「Blackberry Curve」といった端末の販売を伸ばした。その結果、スマートフォン市場におけるVerizonの販売台数シェアは30%となり、iPhoneを販売す る米AT&Tの32%に迫った。
同社によると、スマートフォンの販売台数シェアは、通信事業者の商品供給体制やプロモーション活動に大きく左右される。第1四半期は、米Verizon WirelessがiPhoneを意識し、「buy-one-get-one(1台購入するともう1台がもらえる)」というプロモーションをスマートフォ ンの全機種で展開した。これによりVerizonは、「Droid」「Droid Eris」「Blackberry Curve」といった端末の販売を伸ばした。その結果、スマートフォン市場におけるVerizonの販売台数シェアは30%となり、iPhoneを販売す る米AT&Tの32%に迫った。
JDO Extent
JDO Extent は、データストア内にある特定のクラスのすべてのオブジェクトを表します。
PersistenceManager の getExtent() メソッドから Extent を開始し、データ クラスへと渡します。Extent クラスは、結果へのアクセスに Iterable インターフェースを実装しています。結果アクセスの完了後は、closeAll() メソッドをコールします。
次に、データストア内のすべての Employee オブジェクトを繰り返し処理する例を示します。
PersistenceManager の getExtent() メソッドから Extent を開始し、データ クラスへと渡します。Extent クラスは、結果へのアクセスに Iterable インターフェースを実装しています。結果アクセスの完了後は、closeAll() メソッドをコールします。
次に、データストア内のすべての Employee オブジェクトを繰り返し処理する例を示します。
import java.util.Iterator;エクステントは結果をバッチで取得するため、クエリ結果に適用される 1,000 行という制限を超えて結果を取得できます。
import javax.jdo.Extent;
// ...
Extent extent = pm.getExtent(Employee.class, false);
for (Employee e : extent) {
// ...
}
extent.closeAll();
JDOクエリ(JDOQL)
JDO には一連の条件を満たすオブジェクトを取得するためのクエリ言語が含まれます。JDOQL と呼ばれるこの言語は、JDO データ クラスとフィールドを直接参照することができます。また、クエリ パラメータと結果の種類のチェック機能も備えています。JDOQL は SQL に似ていますが、App Engine データストアのようなオブジェクト指向のデータベースには SQL よりも適しています(App Engine データストアは、JDO インターフェースでの SQL クエリはサポートしていません)。
クエリ API は複数のコール スタイルをサポートしています。JDOQL 文字列の構文を使用すれば、文字列の中に完全なクエリを記述することができます。また、クエリ オブジェクトのメソッドをコールし、クエリの一部またはすべてを指定できます。
メソッド スタイルのコールを使用したクエリの簡単な例を紹介します。この例では、フィルタで使用される値に対してパラメータの置き換えを行い、フィルタを 1 つ、並び替え順序を 1 つ指定します。クエリ オブジェクトの execute() メソッドは、クエリにおいて代用される値と共に宣言順にコールされます。
クエリ API は複数のコール スタイルをサポートしています。JDOQL 文字列の構文を使用すれば、文字列の中に完全なクエリを記述することができます。また、クエリ オブジェクトのメソッドをコールし、クエリの一部またはすべてを指定できます。
メソッド スタイルのコールを使用したクエリの簡単な例を紹介します。この例では、フィルタで使用される値に対してパラメータの置き換えを行い、フィルタを 1 つ、並び替え順序を 1 つ指定します。クエリ オブジェクトの execute() メソッドは、クエリにおいて代用される値と共に宣言順にコールされます。
JDO-detachable
クラスを「デタッチ可能」と宣言すると、PersistenceManager を閉じてからオブジェクトを修正できます。そのためには、次のように @PersistenceCapable アノテーションに detachable 属性を追加できます:
import javax.jdo.annotations.IdentityType;
import javax.jdo.annotations.PersistenceCapable;
@PersistenceCapable(identityType = IdentityType.APPLICATION, detachable="true")
public class Employee {
// ...
}
JDO-コレクションプロパティ
1 つのデータストア プロパティに、複数の値を保持することもできます。JDO では、これをコレクション型の単一フィールド(主な値型またはシリアライズ可能なクラスのコレクション)で表します。以下のコレクション型がサポートされます:
* java.util.ArrayList<...>
* java.util.HashSet<...>
* java.util.LinkedHashSet<...>
* java.util.LinkedList<...>
* java.util.List<...>
* java.util.Set<...>
* java.util.SortedSet<...>
* java.util.Stack<...>
* java.util.TreeSet<...>
* java.util.Vector<...>
JDO-シリアライズ可能なオブジェクト(Serializable)
フィールド値には、シリアライズ可能なクラスのインスタンスを格納できます。その場合は、インスタンスをシリアライズした値を Blob 型の単一プロパティ値として格納します。JDO で値をシリアライズするには、そのフィールドで @Persistent(serialized=true) を使用します。Blob 値はインデックス化されないため、クエリ フィルタや並び替え順序に使用することはできません。
ここでは、ファイルを表す単純なシリアライズ可能なクラスの例を示します。コンテンツ、ファイル名、および MIMI タイプが含まれています。これは JDO データ クラスではないため、永続性アノテーションは付加されていません。
ここでは、ファイルを表す単純なシリアライズ可能なクラスの例を示します。コンテンツ、ファイル名、および MIMI タイプが含まれています。これは JDO データ クラスではないため、永続性アノテーションは付加されていません。
JDO-埋め込みクラス
埋め込みクラスを使用すると、新しいデータストア エンティティを作成したり関係を形成したりしなくても、クラスを使ってフィールド値をモデル化できます。オブジェクト値のフィールドは、保持されているオブジェクトのデータストア エンティティに直接格納されます。
すべての @PersistenceCapable データ クラスは、他のデータ クラスへの埋め込みオブジェクトとして使用できます。クラスの @Persistent フィールドはオブジェクトに埋め込まれます。埋め込み対象のクラスに @EmbeddedOnly アノテーションを付加すると、埋め込みクラスとしてのみ使用できるようになります。埋め込みクラスが独立したエンティティとして格納されることはないため、主キー フィールドは必要ありません。
次に埋め込みクラスの例を示します。この例では、埋め込みクラスを、それを使用するクラスの内部クラスにしています。この方法はクラスを埋め込み可能にする上で便利ですが、必須というわけではありません。
すべての @PersistenceCapable データ クラスは、他のデータ クラスへの埋め込みオブジェクトとして使用できます。クラスの @Persistent フィールドはオブジェクトに埋め込まれます。埋め込み対象のクラスに @EmbeddedOnly アノテーションを付加すると、埋め込みクラスとしてのみ使用できるようになります。埋め込みクラスが独立したエンティティとして格納されることはないため、主キー フィールドは必要ありません。
次に埋め込みクラスの例を示します。この例では、埋め込みクラスを、それを使用するクラスの内部クラスにしています。この方法はクラスを埋め込み可能にする上で便利ですが、必須というわけではありません。
2010年5月10日月曜日
html改行処理
スタイルシートの「white-space」プロパティはタグ内のスペースがどのように扱うかを指定する属性です。
normal
デフォールト値。スペースはブラウザーに無視される
pre
<pre>タグのように扱う
nowrap
<br>タグで改行する
pre-wrap
スペースを保留し、改行も正常に扱う
pre-line
スペースを合併し、改行に正常に扱う
inherit
親タグの設定に従う
normal
デフォールト値。スペースはブラウザーに無視される
pre
<pre>タグのように扱う
nowrap
<br>タグで改行する
pre-wrap
スペースを保留し、改行も正常に扱う
pre-line
スペースを合併し、改行に正常に扱う
inherit
親タグの設定に従う
2010年5月7日金曜日
未来の計画
従来のWindowsアプリケーションの開発をやめて、今まで自分の把握しているWeb知識を利用して、新しいウェブサービスを開発することにしました。
アプリ形態:ウェブサービス
開発予定:3ヶ月~6ヶ月
採用技術:Java
アプリ形態:ウェブサービス
開発予定:3ヶ月~6ヶ月
採用技術:Java
2010年4月28日水曜日
SmartGWT Criteriaクラスの使用方法
SmartGWTにコントロールデータバンディング処理のため、SearchFormクラスはよく使われています。例えば:
grid.fetchData(searchForm.getValuesAsCriteria());
サーチフォームの設定内容をgridウィジェットに渡して、gridは実際のデータを検索して表示する仕組みです。getValuesAsCriteria()メソッドの戻り値はCriteria型ですので、中身のロープ処理はjava.util.Map型と同じです。
ソースサンプル:
grid.fetchData(searchForm.getValuesAsCriteria());
サーチフォームの設定内容をgridウィジェットに渡して、gridは実際のデータを検索して表示する仕組みです。getValuesAsCriteria()メソッドの戻り値はCriteria型ですので、中身のロープ処理はjava.util.Map型と同じです。
ソースサンプル:
2010年4月27日火曜日
SmartGWT Windowクラスの使用法
2010年4月26日月曜日
SmartGWT基本②ーHTMLPane
SmartGWTのHTMLPaneウィジェットを紹介します。
HTMLPaneとは、HTML内容を収めるカンバスオブジェクトです、SmartGWT以外のHTML内容を表示する時に利用します。
サンプルコード:
HTMLPaneとは、HTML内容を収めるカンバスオブジェクトです、SmartGWT以外のHTML内容を表示する時に利用します。
サンプルコード:
SmartGWT基本①-XY表示
2010年4月23日金曜日
2010年4月22日木曜日
Google App Engine StringUtilで末尾にある空白の文字を削除する
Google App Engineで提供しているStringUtilクラスをを見かけました、このクラスにいろんな実用性高いメソッドが入っています、この記事で【trimEnd】メソッドを紹介します。
Javaで文字列処理関数はtrim()がありますが、末尾にある空白の文字を削除する関数は提供していません。けれど、Google App Engineライブラリになんと提供しています。
インポート文:
import com.google.appengine.repackaged.com.google.common.base.StringUtil;
使い方:
String strTempLast = StringUtil.trimEnd(content);
Javaで文字列処理関数はtrim()がありますが、末尾にある空白の文字を削除する関数は提供していません。けれど、Google App Engineライブラリになんと提供しています。
インポート文:
import com.google.appengine.repackaged.com.google.common.base.StringUtil;
使い方:
String strTempLast = StringUtil.trimEnd(content);
2010年4月21日水曜日
SmartGWT利用
RIA開発コンポーネントSmartGWTを採用してアプリを開発するつもりで、まずSmartGWTの利用方法を紹介します。
①HTMLファイルに下記のリソースを指定します。
<script> var isomorphicDir = "heloworld/sc/"; </script>
②モジュールファイルにSmartGWTクラスを参照します。
<inherits name="com.smartgwt.SmartGwt"/>
<inherits name="com.smartgwt.tools.SmartGwtTools"/>
①HTMLファイルに下記のリソースを指定します。
<script> var isomorphicDir = "heloworld/sc/"; </script>
②モジュールファイルにSmartGWTクラスを参照します。
<inherits name="com.smartgwt.SmartGwt"/>
<inherits name="com.smartgwt.tools.SmartGwtTools"/>
2010年4月20日火曜日
UiBinderツールをリニューアルしました
新しいURLを作成しました、今後UiBinderアプリをこのURLに更新します。
http://uibinder.webdesktop.jp/
UiBinder機能だけではなく、GWTコーディングに全ての補助機能を追加する予定です。
http://uibinder.webdesktop.jp/
UiBinder機能だけではなく、GWTコーディングに全ての補助機能を追加する予定です。
GWT ClientBundle使用例
Google Web Toolkit 2.0からClientBundleリソース定義方法を導入しました、従来のImageBundelなどにより拡張性があがりました、この記事で紹介しようと思います。
このサンプルは【uibinder.css】を定義して、各ui.xmlウィジェットは【{style.cssTextBox}】の形で参照します。なお、他のJavaウィジェットからどのように参照すればいいのかといえば、答えはリソースクラスを利用することです。
このサンプルは【uibinder.css】を定義して、各ui.xmlウィジェットは【{style.cssTextBox}】の形で参照します。なお、他のJavaウィジェットからどのように参照すればいいのかといえば、答えはリソースクラスを利用することです。
Eclipse外部ソースフォルダを追加する方法
Eclipseでウェブアプリケーションを開発する際は外部プロジェクトを参照して、部品化したコンポーネントを利用する場合、単純に参照プロジェクトを当プロジェクトの【Projects】タグに追加するだけではだめです。原因はこのように参照したプロジェクトはコンパイル時に参照元ソースのコンパイルしたクラスファイルは【war/WEB-INF/classes】にコピーできません。この問題を解決する方法は、下記のイメージのように【Link Source】を利用して、参照してるプロジェクトのソースを当プロジェクトにリンクして一緒にコンパイルするのです。
2010年4月19日月曜日
GWT Widgetコンポーネント化
Google Web Toolkitのウィジェットコンポーネント化サンプルを紹介します。
UiBinderを利用して、ウェブコンポーネント(WebUserControl)の再利用性と拡張性を説明します。
まずはウェブウィジェットを定義します。
UiBinderを利用して、ウェブコンポーネント(WebUserControl)の再利用性と拡張性を説明します。
まずはウェブウィジェットを定義します。
2010年4月18日日曜日
TabLayoutPanel CSS設定サンプル(メモ)
Google Gearsもう終わり
Google GearsはWebアプリケーションをオフライン状態でも使うことができる環境をブラウザに拡張機能として付与するという技術です。けど、HTML5の登場後はGoogle Gearsの未来は見えなくなるかもしれません、Google Gearsの機能はHTML5がほとんど提供しています、例えばDatabase APIなどの機能はHTML5に類似な機能もあります。FireFox、Chromeなどのブラウザは既にHTML5をサポートしているのはいうまでもなく、マイクロソフト社もIE9からHTML5規範をサポートしはじめるといわれます。
2010年はHTML5を勉強しないと時代に遅れるといえるでしょう…
結論:Google Gears APIを勉強するより、HTML5を勉強してください。
2010年はHTML5を勉強しないと時代に遅れるといえるでしょう…
結論:Google Gears APIを勉強するより、HTML5を勉強してください。
2010年4月17日土曜日
GWT DeferredCommandを試しました
ユーザーに待たせないようにするため、一定間隔に処理を繰り返して実行する機能を試しました、よい経験を積めました。
DeferredCommandクラスはIncrementalCommandインターフェースを実装したクラスを実行できます、IncrementalCommandインターフェースの実現したクラスのexecuteメソッドかfalseを戻すまで繰り返して実行します。
IncrementalCommand実装例:
DeferredCommandクラスはIncrementalCommandインターフェースを実装したクラスを実行できます、IncrementalCommandインターフェースの実現したクラスのexecuteメソッドかfalseを戻すまで繰り返して実行します。
IncrementalCommand実装例:
2010年4月16日金曜日
GWT Css Style設定(UiBinder)
UiBinder XMLファイルにCSS設定方法を紹介します。
何の理論説明より簡単なソースのほうは分かりやすいと思いますので、一緒に見てみましょう。
何の理論説明より簡単なソースのほうは分かりやすいと思いますので、一緒に見てみましょう。
2010年4月15日木曜日
これは毎日要チェック(wpendia+webso)
wpendiaとwebso.jpから新しいアプリを立ち上げたいと思います、皆さんは毎日よくお使いになっているサイトを纏めてwpendiaウェブ版の形でサービスアプリをご提供いたします。
wpendiaウェブ版
このバージョンは今後も続けて開発していきたいと思います。
wpendiaウェブ版
このバージョンは今後も続けて開発していきたいと思います。
UiBinder Event作成ツール
Google Web ToolKit Eclipse PluginはUiBinderへのサポート機能がありますが、なかなかコントロールイベントなどのソースを作成してくれないです、そのためUiBinderイベントジェネレーターツールを作成しました。
UiBinderイベントハンドラージェネレーター
今後はさらにより多いイベント、コントロールタイプを追加する予定です。
UiBinderイベントハンドラージェネレーター
今後はさらにより多いイベント、コントロールタイプを追加する予定です。
2010年4月14日水曜日
JSNIでブラウザー情報を取得する
Google Web ToolKitフレームワーク且つJSNIでユーザーブラウザーの情報を取得するサンプルを紹介します。
サンプル
JSNIコード:
public final static native String getUserAgent() /*-{
return navigator.userAgent.toLowerCase();
}-*/;
サンプル
JSNIコード:
public final static native String getUserAgent() /*-{
return navigator.userAgent.toLowerCase();
}-*/;
2010年4月13日火曜日
GWT Xml利用例
Google Web ToolkitエンジンでXML解析機能も提供しています、この記事で紹介します。
サンプル
まずはモジュールファイルにXML処理クラスを追加します。
<inherits name="com.google.gwt.xml.XML" />
XML解析方法:
サンプル
まずはモジュールファイルにXML処理クラスを追加します。
<inherits name="com.google.gwt.xml.XML" />
XML解析方法:
GWT Tips
①ウィジェット削除
RootPanel.get().remove(w); // wはウィジェット
或は
DOM.removeChild(RootPanel.getBodyElement(), w.getElement());
使用例:
ログインした後にメイン画面に遷移する
RootPanel.get().clear(); //或は RootPanel.get().remove(loginView);
RootPanel.get().add(mainView);
RootPanel.get().remove(w); // wはウィジェット
或は
DOM.removeChild(RootPanel.getBodyElement(), w.getElement());
使用例:
ログインした後にメイン画面に遷移する
RootPanel.get().clear(); //或は RootPanel.get().remove(loginView);
RootPanel.get().add(mainView);
GWT Timer紹介
Google Web ToolkitのTimerクラスを紹介します。
このクラスは一定の間隔で実行するスケジューラのような機能です。
サンプル
この記事ではTimerクラスの簡単なサンプルを紹介します。
このクラスは一定の間隔で実行するスケジューラのような機能です。
サンプル
この記事ではTimerクラスの簡単なサンプルを紹介します。
GoogleDeveloper
YoutubeからGoogleDeveloperビデオをメモします。
http://www.youtube.com/watch?v=SH92957DU2g&feature=channel
http://www.youtube.com/watch?v=pc-IQkVmOdI
グーグルジャパンブログ
http://googlejapan.blogspot.com/
http://www.youtube.com/watch?v=SH92957DU2g&feature=channel
http://www.youtube.com/watch?v=pc-IQkVmOdI
グーグルジャパンブログ
http://googlejapan.blogspot.com/
マイクロソフトが独自スマートフォン「KIN」、製造はシャープが担当
米マイクロソフトは2010年4月12日(米国時間)、独自ブランドのスマートフォン「KIN」を発表した。タッチスクリーンとスライド式のキーボードを備え、ハードウエアの製造はシャープが担当する。米アップルの「iPhone」、米グーグルの「Nexus One」に続いて、マイクロソフトのKINが加わることで、スマートフォン分野で大手3社の競争がいっそう激しさを増す。
KINには小型の「KIN ONE」(写真1)と、画面や搭載メモリー容量が大きい「KIN TWO」(写真2)という2 種類のモデルがある。いずれもタッチ方式のスクリーンとスライド式のキーボード、そしてデジタルカメラを備える。デジタルカメラの画素数は、KIN ONEが500万画素、KN TWOが800万画素。
「KINにはソーシャルネットワークサービス(SNS)が組み込まれている」。マイクロソフトはKINの特徴をこう説明する。KINには「LOOP」と「SPOT」という2種類のメニューがある。いずれもマイクロソフトや既存の大手SNSとの連携機能を備えるのが特徴だ。例えばLOOPは、 FacebookやTwitter、MySpaceといった大手SNSと連携して、利用者の友人の情報を取得できる。SPOTは写真や動画といったコンテンツを共有するための標準メニューだ。
KINで利用できる携帯電話事業者は、米国向けがベライゾン・ワイヤレス、欧州向けがボーダフォン。米国ではベライゾンから5月に発売される。ボーダフォンは今秋、ドイツとイタリア、スペイン、英国でそれぞれ発売する。
2010年4月11日日曜日
RequestBuilderサンプル
Google Web ToolKitで非同期通信サンプルを紹介します。
サンプル
GWT1.4前のバージョンはHTTPRequestを利用するんですが、1.5からRequestBuilderを利用し始めました。このサンプルではRequestBuilderクラスを説明します。
サンプル
GWT1.4前のバージョンはHTTPRequestを利用するんですが、1.5からRequestBuilderを利用し始めました。このサンプルではRequestBuilderクラスを説明します。
2010年4月10日土曜日
Google Eclipse Plugin
GoogleのEclipse開発プラグインURLです。
Eclipse 3.3(Europa)
http://dl.google.com/eclipse/plugin/3.3
Eclipse 3.4(Ganymede)
http://dl.google.com/eclipse/plugin/3.4
Eclipse 3.5(Galileo)
http://dl.google.com/eclipse/plugin/3.5
Eclipse 3.6 (Helios)
http://dl.google.com/eclipse/plugin/3.6
Eclipse 3.3(Europa)
http://dl.google.com/eclipse/plugin/3.3
Eclipse 3.4(Ganymede)
http://dl.google.com/eclipse/plugin/3.4
Eclipse 3.5(Galileo)
http://dl.google.com/eclipse/plugin/3.5
Eclipse 3.6 (Helios)
http://dl.google.com/eclipse/plugin/3.6
2010年4月9日金曜日
2010年4月8日木曜日
プログラムアンインストールソフト―Revo Uninstaller
アプリケーションを徹底的にアンインストールする機能のほか、Windows の一時ファイルや主要な
アプリケーションの使用履歴を削除する機能、不要なスタートアッププログラムを削除する機能、
ファイルや削除済みファイルを完全に抹消する機能 などを備えてます。
「Revo Uninstaller」は、高機能なアンインストール支援ソフトです。
アプリケーションをアンインストールする際に、
“ ソフトが、ハードディスクやレジストリにゴミファイルを残していないか ”
ということを徹底的にチェックすることができ、普通にアンインストールしただけでは削除しきれない
ファイルまでを検索 & 削除できるところが大きな特徴。
また、アンインストールできなくなってしまったプログラムのインストール情報を削除する機能や、
インストール済みのプログラムを検索する機能 なども備えています。
さらに、スタートアッププログラムを管理する機能や、不要なファイルを検索&削除する機能 なども
持ち合わせているので、総合的なお掃除ツールとしても使うことができると思います。
アプリケーションの使用履歴を削除する機能、不要なスタートアッププログラムを削除する機能、
ファイルや削除済みファイルを完全に抹消する機能 などを備えてます。
「Revo Uninstaller」は、高機能なアンインストール支援ソフトです。
アプリケーションをアンインストールする際に、
“ ソフトが、ハードディスクやレジストリにゴミファイルを残していないか ”
ということを徹底的にチェックすることができ、普通にアンインストールしただけでは削除しきれない
ファイルまでを検索 & 削除できるところが大きな特徴。
また、アンインストールできなくなってしまったプログラムのインストール情報を削除する機能や、
インストール済みのプログラムを検索する機能 なども備えています。
さらに、スタートアッププログラムを管理する機能や、不要なファイルを検索&削除する機能 なども
持ち合わせているので、総合的なお掃除ツールとしても使うことができると思います。
Aptana Studio
ウェブアプリケーション開発IDEーAptana Studioを紹介します。
URL:
http://www.aptana.org/
EclipseRCPアプリなので、プラグインも提供されています。
RCP:http://www.aptana.org/studio/download
Plugin:http://download.aptana.org/tools/studio/plugin/install/studio
URL:
http://www.aptana.org/
EclipseRCPアプリなので、プラグインも提供されています。
RCP:http://www.aptana.org/studio/download
Plugin:http://download.aptana.org/tools/studio/plugin/install/studio
2010年4月7日水曜日
spketプラグイン
Spket IDEはEclipse IDEをベースとして作られた高機能エディタで、XMLやJavaScriptのコーディングをサポートしてくれる優れものです。非商用であれば無償で利用可能です。
オフィシャルサイト:http://www.spket.com/
インストールUpdateURL:
http://www.spket.com/update
オフィシャルサイト:http://www.spket.com/
インストールUpdateURL:
http://www.spket.com/update
GAE web.xml設置例
Google App Engine Javaで開発するウェブアプリケーションのweb.xml設置例を紹介します。
web.xmlとサーブレットの連携してサービスを提供します。
web.xmlとサーブレットの連携してサービスを提供します。
GAE UrlFetchサービス
Google App EngineのUrlFetchサービスを紹介しようとします。このサービスを利用して、他のウェブサイトのサービスやWeb内容を取得することが可能です。
なお、このサービスの使い方も簡単です。
なお、このサービスの使い方も簡単です。
システムクリーナー【ATF Cleaner】の紹介
パソコンシステム(OS)を長い間に使うと、一時フォルダに不要なファイルがたくさん残っている問題にずっと悩んでいます。最近すごく便利なシステムクリーナーソフトを発見しました、これは【ATF Cleaner】です、ソフト本体はただ一つファイルなので、インストールも不要です。
ATF Cleanerの使い方もとても簡単です。プログラムを起動して、下記のイメージのように全てのチェックボックスをチャックして(【Select All】ボタンだけで押してもOK)、【Empty Selected】ボタンを押すんですみます。
ATF Cleanerの使い方もとても簡単です。プログラムを起動して、下記のイメージのように全てのチェックボックスをチャックして(【Select All】ボタンだけで押してもOK)、【Empty Selected】ボタンを押すんですみます。
2010年4月6日火曜日
GAE Mail送信サンプル
Google App Engineでメールを送信するサンプルを紹介します。
GAEは無料で一日2000通のメールを送信する可能ですので、本当に便利な機能です。
SendmailServlet.java
GAEは無料で一日2000通のメールを送信する可能ですので、本当に便利な機能です。
SendmailServlet.java
面白いゲームFieldRunnerを紹介します
最近iPhone/iPod Touchゲーム―FieldRunner(TowerDefenseシリーズ)にはまっています、すごく面白いゲームなので、iPhone或はiPod Touchをお持ちの方にお勧めします。
GAE JCacheサンプル
Google App Engineはクラウドサービスであっても、プログラムの処理実行パフォーマンスは必ずしも早いとはいえません、特にデータストア(BigTable)へのアクセス処理はやや遅い感じです。この原因で、一部のよく使われてるデータをキャッシュしないといけないです、この記事でGAE JCacheサンプルを紹介します。
2010年4月5日月曜日
GAE Cronスケジューラ
GAEは指定時刻や繰り返しの間隔でジョブを実行する機能を説明します。
このサンプルではcron.xmlとcronServlet.java二つのファイルがあります。
まずは、cron.xmlファイルです。このファイルでジョブ実行ルールを定義します。
cron.xml
このサンプルではcron.xmlとcronServlet.java二つのファイルがあります。
まずは、cron.xmlファイルです。このファイルでジョブ実行ルールを定義します。
cron.xml
<?xml version="1.0" encoding="UTF-8"?>
<cronentries>
<cron>
<url>/cron/cron1</url>
<description>Test mail send every 1 minutes</description>
<schedule>every 1 minutes</schedule>
</cron>
</cronentries>
<cronentries>
<cron>
<url>/cron/cron1</url>
<description>Test mail send every 1 minutes</description>
<schedule>every 1 minutes</schedule>
</cron>
</cronentries>
Oracle常用コマンド
●Oracleキャラクタ・セット:
select * from nls_database_parameters
select nls_charset_id('JA16SJIS') from dual;
select nls_charset_name(832) from dual;
●Oracleデータベースバージョン:
select * from v$version;
●ユーザ名の取得:
select user from dual
select * from nls_database_parameters
select nls_charset_id('JA16SJIS') from dual;
select nls_charset_name(832) from dual;
●Oracleデータベースバージョン:
select * from v$version;
●ユーザ名の取得:
select user from dual
2010年4月2日金曜日
GAE JDOサンプル
この記事でGEAデータストーレージの利用サンプルを紹介します。
GAEでデータストアの API 標準としてサポートされているのは、JDO(Java Data Objects)と JPA(Java Persistence API)の 2 つです。これらのインターフェースは、複数の Java 永続性標準のオープン ソース実装である DataNucleus Access Platform で、App Engine データストア用のアダプタを使って提供されます。
このサンプルでは、JDO インターフェースを使用して、簡単なデータ処理を説明します。
GAEでデータストアの API 標準としてサポートされているのは、JDO(Java Data Objects)と JPA(Java Persistence API)の 2 つです。これらのインターフェースは、複数の Java 永続性標準のオープン ソース実装である DataNucleus Access Platform で、App Engine データストア用のアダプタを使って提供されます。
このサンプルでは、JDO インターフェースを使用して、簡単なデータ処理を説明します。
2010年4月1日木曜日
Eclipse開発環境の文字インコードを設定する方法
Eclipse Javascriptプラグイン-JSEclipse
Adobe社出品したEclipse Javascriptプラグイン-JSEclipseを試しました。ハイライト表示やコードアシスト等の多い機能が揃っていますので、本当に便利です。
紹介ページ:
http://www.interaktonline.com/Products/Eclipse/JSEclipse/Overview/
インストール/更新URL:
http://download.macromedia.com/pub/labs/jseclipse/autoinstall/
紹介ページ:
http://www.interaktonline.com/Products/Eclipse/JSEclipse/Overview/
インストール/更新URL:
http://download.macromedia.com/pub/labs/jseclipse/autoinstall/
GAEログ出力方法
この記事からGoogle App Engineを略称して、GAEと言います。
このトピックでGAEログ出力方法を説明します。まずログ出力手順を纏めてリストしておきます。
①ログ出力レベルを設定します
②Loggerクラスを宣言します
③ログレベルによりログ出力をコーディングします
このトピックでGAEログ出力方法を説明します。まずログ出力手順を纏めてリストしておきます。
①ログ出力レベルを設定します
②Loggerクラスを宣言します
③ログレベルによりログ出力をコーディングします
2010年3月31日水曜日
GoogleとAdobe、WebブラウザChromeのFlash統合で協力
米Googleと米Adobe Systemsは米国時間2010年3月30日、AdobeのFlashアプリケーション実行ソフトウエア「Flash Player」と米GoogleのオープンソースWebブラウザ「Google Chrome」の統合に関して協力すると発表した。Googleは協業の第一歩として、開発者向けチャネル「Dev channel」を通じてFlash PlayerをバンドルしたChromeの提供を同日開始した。
Chromeのダウンロードと同時にFlash Playerの最新版を受け取るので、個別にインストールする必要はない。Chromeの自動アップデート機能を通じて、Flash Playerも自動的に更新される。内蔵版Flashを利用可能にするには、コマンド・ラインに「--enable-internal-flash」を追加する。Googleは今後、できるかぎり早く全Chromeユーザーに対してFlash統合を提供する計画だとしている。
またAdobeとGoogleは、米Mozillaなどと協力し、Webブラウザとプラグインのやりとりを向上するための新たなAPIを開発する。あらゆるOSとWebブラウザで安定した動作を提供しつつ、ブラウザとのより密な連携を可能にする柔軟性を備えたAPIを目指す。サンドボックスなどのセキュリティ機構やセキュリティ技術と容易に統合できるようにする。
Chromeのダウンロードと同時にFlash Playerの最新版を受け取るので、個別にインストールする必要はない。Chromeの自動アップデート機能を通じて、Flash Playerも自動的に更新される。内蔵版Flashを利用可能にするには、コマンド・ラインに「--enable-internal-flash」を追加する。Googleは今後、できるかぎり早く全Chromeユーザーに対してFlash統合を提供する計画だとしている。
またAdobeとGoogleは、米Mozillaなどと協力し、Webブラウザとプラグインのやりとりを向上するための新たなAPIを開発する。あらゆるOSとWebブラウザで安定した動作を提供しつつ、ブラウザとのより密な連携を可能にする柔軟性を備えたAPIを目指す。サンドボックスなどのセキュリティ機構やセキュリティ技術と容易に統合できるようにする。
登録:
投稿 (Atom)