タグ

ブックマーク / atmarkit.itmedia.co.jp (27)

  • @IT:Javaのヒープ・メモリ管理の仕組み

    GC前、Eden領域の消費サイズは「1834928」バイトであった GC後、Eden領域の消費サイズは「0」バイトであった(つまり全オブジェクトが移動もしくは破棄された) GC後、Eden領域のサイズは「3670016」バイトであった 「survivor」とは、From領域とTo領域両方を指します。ここでもし、上記ログのようにGC後のFrom/To領域の消費サイズが「0」となった場合は注意が必要です。これはすなわち、オブジェクトがFrom領域とTo領域の間を行き来せず、すぐにOLD領域に移動してしまっていることを表します。このような状況では、OLD領域は短命なオブジェクトですぐに埋まり、Full GCが頻発してしまいます。これはオーバーフローと呼ばれ、MaxTenuringThreshold値の低い状態で一連のGCが発生している状況を見つけることで検出できます。 NEW領域のサイズ調節 M

    @IT:Javaのヒープ・メモリ管理の仕組み
  • 誰にでも分かるSEのための文章術

    「提案書」や「要件定義書」は書くのが難しい。読む人がITの専門家ではないからだ。専門用語を使わず、高度な内容を的確に伝えるにはどうすればいいか。「提案書」「要件定義書」の書き方を通じて、「誰にでも伝わる」文章術を伝授する。

    誰にでも分かるSEのための文章術
  • 読みやすい文章の極意は「修飾語」にあり

    「提案書」や「要件定義書」は書くのが難しい。読む人がITの専門家ではないからだ。専門用語を使わず、高度な内容を的確に伝えるにはどうすればいいか。「提案書」「要件定義書」の書き方を通じて、「誰にでも伝わる」文章術を伝授する。 第5回「ドキュメントの質を確実に上げる6つの文章作法」に続き、顧客に伝わる文章を記述するためのポイントを紹介します。今回は、修辞句や用語など、「より具体的な表現方法」について説明します。なお、前回同様に、まず「分かりにくい例文」を取り上げてどこが分かりにくいのかを解説し、その後に分かりやすい文章へと修正していきます。 「修飾語を適切に使う」ことが、読みやすい文章を作るコツ 分かりやすい文章を書きたいなら、「修飾語」に着目しましょう。修飾語を使うときは、以下のような点に注意します。 長い修飾語は前に、短い修飾語は後に置く 文章を書く際は、句や文節を使った長い修飾語を前に、

    読みやすい文章の極意は「修飾語」にあり
  • iOS端末ハードウェアの歴史と近接センサアプリ開発(2/2)- @IT

    稿のアプリ作成では、以下を利用しています。 端末:iPhone 4 OS:iOS 5.0.1 IDE:Xcode 4.2.1(「Storyboard」を使用) また今回作成するアプリは、エミュレータでの動作確認ができないため、実機で試すには「iOS Developer Program」への登録(有料)が必要です。登録の仕方や実機テストの仕方は、少し古いですが以下の記事を参照してください。 ここが大変だよiPhone実機テスト+OS 3.0の新機能 ここが大変だよiPhone開発(4) 作成したアプリをiPhone/iPod touchの実機で動かす手順を説明し、iPhone OS 3.0で追加された気になる機能とサンプルも紹介します なお稿では、「Storyboard」を利用したレイアウトなどは割愛し、センサを使う実装のみ説明します。 腕立て伏せアプリの実装 まずは起動時の処理です。近

  • iOS 4の新機能13選&AssetsLibraryで作る画像ビューア

    「AssetsLibrary」で画像ライブラリを自由自在に iOS 4で追加された「AssetsLibraryフレームワーク」を使ってフォトライブリから写真を読み込み、付加情報を付けて保存をする方法について解説します。連載第5回の「Core Graphicsで作るiPad向けお絵かきアプリの基礎」で作成したお絵かきアプリに対して、これらの機能を追加していきましょう。 AssetsLibraryフレームワークでできること 第5回記事では、「UIImageWriteToSavedPhotosAlbum」関数を用いてアプリ内からフォトアルバムへ写真を追加する方法を解説しました。ここまではiOS 4以前でも可能でしたが、新しく追加されたAssetsLibraryフレームワークを使用すると、以下のことが可能になります。 AssetsLibraryフレームワークのインポート それでは、お絵かきアプリの

    iOS 4の新機能13選&AssetsLibraryで作る画像ビューア
  • 加速度センサとジャイロで体の動きを感じるアプリを作る(3/3)- @IT

    今回作成する腹筋アプリは以下の仕様を満たすものにします。 デバイスを縦向きの状態で手で持って腹筋をすることによって、腹筋の回数をカウントできる デバイスの位置は胸の中心に当てた状態、もしくは顔の前に掲げた状態である スタートボタンをタップするとカウントが始まり、ストップボタンをタップすると、カウントが止まってリセットされる 腹筋は体を起こした状態からスタートする 体を起こしている状態から体を寝かし、再び起こした際にカウントが1回増える ■ CMDeviceMotionのオイラー角を使う 腹筋の回数をカウントするために利用するデバイスの姿勢の情報は、モーションデータである「CMDeviceMotion」の「attitude」プロパティに「CMAttitude」型で格納されています。CMAttitudeには、以下の3つの方式でデバイスの姿勢の情報が格納されています。 オイラー角 回転行列 四元

  • Facebook Graph API活用iPhoneアプリ開発入門

    Facebook Graph API活用iPhoneアプリ開発入門:書籍転載:Facebook SDK for iOSアプリ開発ガイド(1)(1/3 ページ) Facebookのソーシャルグラフを扱うiOSアプリを作る 「Facebook SDK for iOS」は、iOS(iPhoneiPad、iPod touch)用のSDKで、Objective-Cで書かれています。企画では、iOSアプリケーションにFacebook連携機能を盛り込むことを想定し、前後編にわたり、以下の方法を解説します。 iOSアプリを使ったログイン Facebook Graph API(以下、Graph API)を利用した情報の取得 Graph APIを利用した投稿 Legacy REST API(「Old REST API」という呼称も使われている)やFQLの利用 ダイアログを使った投稿 企画は、アスキー・メ

    Facebook Graph API活用iPhoneアプリ開発入門
  • iOSからFacebook APIを使ってWallに投稿するには

    Graph APIの利用――Wallに投稿する 前編の「Facebook Graph API活用iPhoneアプリ開発入門」では、Facebook SDK for iOS利用をするための準備を行い、OAuthのAPIを使ってログインし、ログインができたらGraph APIを使ってユーザーのプロフィールを取得するという簡単なアプリケーションを作ってみました。今回は、Graph APIでPOSTを行う例として、自分のWallへの投稿を行います。 まずは、コードをざっとご覧ください。太字の部分が、最初の例からの変更点です。 UITextFieldを設置し、そこに入力した文字を自分のWallに投稿し、投稿に成功したら、作成されたオブジェクトのIDをアラートするというものです。 #import <UIKit/UIKit.h> #import "Facebook.h" #import "FBLogin

    iOSからFacebook APIを使ってWallに投稿するには
  • iOS 4のSDKで、Twitterを使ったiPhoneアプリを作る

    iOS 4のSDKで、Twitterを使ったiPhoneアプリを作る:SDKで始めるiPad/iPhoneアプリ開発の勘所(4)(2/4 ページ) 非同期通信を行う「NSURLConnection」クラス まずは、Twitterにアクセスしてデータ取得を行います。Cocoa Touchフレームワークには、「NSURLConnection」という通信用のクラスが用意されており、このクラスは「同期通信」「非同期通信」という2種類の通信が可能です。 同期通信では、NSURLConnectionを呼び出した側が通信完了まで次の処理に遷移できません。この間は、ユーザーの画面操作にも反応できないため、画面が固まってしまいます。 一方、非同期通信ではNSURLConnectionを呼び出した側は通信完了を待たずに、次の処理に移ります。タイミングをずらして後から返ってくる通信結果を受け取る仕組みを作る必要

    iOS 4のSDKで、Twitterを使ったiPhoneアプリを作る
  • impress.jsでド派手なスライドをつくろうぜ!

    HTML5アプリ作ろうぜ!”連載がスタートしました! デジタルハリウッドの現役アプリクリクリエイター専攻講師が、最近はやりの「HTML5・JavaScriptライブラリ・CSS3・API」の紹介、またそれらを組み合わせた「sampleアプリケーションの紹介と解説」を厳選し執筆していきます。 最近、セミナーでこの「impress.js」を利用する機会が多いのですが、その際に参加者から評判が良いので、まずはこれを紹介します。 impress.jsとは? CSS3を活用したオープンソース(ライセンスMIT)のプレゼンテーションJavaScriptライブラリです。 対象ブラウザ Safariブラウザが現状では最もスムーズに動作します。一応、Chromeも推奨ブラウザです。 特徴 【1】ド派手なスライド動作 最大の特徴は派手でイケイケなスライド。始めてみた人は必ず見入ること間違いありません。シンプ

    impress.jsでド派手なスライドをつくろうぜ!
  • 誰でもAndroid開発できるApp Inventorの基礎知識

    誰でもAndroid開発できるApp Inventorの基礎知識:App Inventorでアプリ開発はどこまでできるのか(1)(1/3 ページ) プログラミング未経験でも手軽にAndroidアプリが作れるApp Inventor。連載では、App Inventorでアプリを作り、使用しているコンポーネントに関して実際にJavaAPIと比較して、できることを検証していきます。 「コードが書けない」人を救う「App Inventor」とは 「App Inventor for Android」とはGoogle Labsで公開されているAndroidアプリを作成ツールです。通常Androidアプリ作成/開発を行うには「Eclipse」というツールを使用し、プログラミング言語はJavaで開発するものと決まっていました。 しかし、このApp InventorではEclipseもJavaのコードも

    誰でもAndroid開発できるApp Inventorの基礎知識
  • App Store登録もOK!JavaScriptで作るiPhoneアプリ

    App Store登録もOK!JavaScriptで作るiPhoneアプリ:これ、俺ならこう使う(5)(3/4 ページ) DashCodeとPhoneGapで「Coco Twitter」を作ってみた いくつかあるフレームワークの中から、今回はPhoneGapを使ってアプリケーションを開発してみました。選択の理由は、ライセンスが比較的緩かったこと、すでにApp Storeでの販売実績があること、そしてコードがシンプルであることです。 今回作ったもの いまいる場所でつぶやかれた言葉をTwitter.comから検索するiPhoneアプリケーション「Coco Twitter」を作ってみました。 起動すると、GPS経由で取得した現在位置の情報から、近隣の「駅名」一覧を取得、駅名を基にTwitter.comを検索します。取得したポストは、ローカルストレージにキャッシュとして保存され、次回起動時の高速化

    App Store登録もOK!JavaScriptで作るiPhoneアプリ
  • スマホ用JavaScriptフレームワーク5つ+1を徹底研究(1/5) - @IT

    スマホ用JavaScriptフレームワーク5つ +1を徹底研究 jQuery Mobile、iUI、jQTouch、 Sencha Touch、Wink toolkit、PhoneGapとは アシアル株式会社 鴨田健次 2011/6/22 スマートフォン向けJavaScriptフレームワーク/ライブラリを使うと、スマートフォンアプリっぽい見た目のページデザイン、UI(ユーザーインターフェイス)パーツやページ遷移アニメーションを簡単に実装できます。多くは、おのおののフレームワークのルールにのっとったHTMLを書くことで、それらの機能を実現します。 稿では、jQuery Mobileを筆頭として、いくつか発表されているスマートフォンサイト向けJavaScriptフレームワークを紹介します。 ■ PCサイト向けJavaScriptフレームワークについて PCサイト向けJavaScriptフレー

  • iOS 4のSDKで、Twitterを使ったiPhoneアプリを作る

    iOS 4のSDKで、Twitterを使ったiPhoneアプリを作る:SDKで始めるiPad/iPhoneアプリ開発の勘所(4)(1/4 ページ) 初めてiPhoneiPadアプリ開発に挑戦する人が、迷わず短時間でアプリを作れるように、数多くの情報の中から要点をグっと絞った開発の勘所を紹介する入門連載です 連載第3回「iPhoneiPadアプリ作成の仕上げ・国際化・デバッグ」では、完成したアプリの仕上げ作業や、開発時のデバッグ方法などを紹介しました。これまでの連載で、アプリ開発の基礎については一通り解説しました。今回からは、開発環境をiOS 4のSDKに更新し、さらにさまざまな機能の実装について紹介していきたいと思います。 今回は、Twitterアプリの作成を通し、Webサービスと連携したiPhoneiPadアプリの作成方法について解説します。 サンプルTwitterクライアントの概

    iOS 4のSDKで、Twitterを使ったiPhoneアプリを作る
  • iPhone向けWebアプリを作ろう(4/4) - @IT

    CSS3のプロパティ iPhone版Safariでは、デスクトップ版のSafariと同様に、CSS3のプロパティのいくつかを先行的にサポートしています(ただし、Webブラウザ依存のプロパティとして独自の表記となる)。例えば、webkit-border-image(ボーダーに画像を使う)や、webkit-border-radius(角丸)などが可能です。 ・ 文字サイズの自動アジャスト iPhone版Safariの独自機能の1つに、文字サイズの自動アジャストというものがあります。これは、表示されたテキストの1行分の文字数や、ページ内での相対的な関係などに応じて、文字のサイズを自動的に調整してくれるというものです。 例えば、ある程度横幅の広いブロックにテキストが流し込まれている場合(つまりそのままだと文字が小さ過ぎて読みにくい)に、中の文字が自動的に少し拡大されて、いくらか読みやすくなりま

  • OAuthでバーコード情報をTwitterに投稿するiPhoneアプリ作成

    ちなみにTiBarは、iPhoneプラットフォーム専用の拡張モジュールです。Android版については、次回記事で扱います。 基的にTitanium自体は1つのソースコードでiOSでもAndroidでも動くアプリに変換できますが、拡張モジュールによっては、プラットフォーム別の場合があるので、注意が必要です。 TiBarを使うには、開発環境にモジュールのインストールが必要です。手順は、以下のとおりです。 TiBarプロジェクトページからモジュールのコードをダウンロード 「ターミナル」アプリケーションを開き、「/Library/Application\ Support/Titanium」ディレクトリで、上記のZIPファイルを展開 「/Library/Application\ Support/Titanium/mobilesdk/osx/1.4.0/iphone/iphone」を開く Tita

    OAuthでバーコード情報をTwitterに投稿するiPhoneアプリ作成
  • Drizzleプロジェクトの目指すもの、その先を読む(1/3) - @IT

    クラウドコンピューティング環境のような“massively concurrentな世界”で使えるデータベースを目指すDrizzle。その開発の方向性からこれからのWebシステムで求められるデータベースのあり方が見えるかもしれない。一足先にDrizzleに触れてみよう(編集部) Drizzleとは Drizzle とは、MySQLのもともとの目標である、使いやすさ、信頼性、そしてパフォーマンスに重点を置いたMySQLの派生プロジェクトで、Brian Aker氏(米サン・マイクロシステムズ CTO/Labs:元MySQL Director of Architecture)によって立ち上げられました。 MySQLと比較して機能面におけるDrizzleの大きな違いは、サーバアーキテクチャをマイクロカーネルにすることで、サーバ(MySQLでいうmysqld)には必要最小限の機能しか搭載せず、代わりに

  • 強力なSSOを実現するXML認証・認可サービス(SAML)

    「第1回 Webサービスセキュリティ概要」ではWebサービスセキュリティのフレームワークについて、「第2回 XMLデジタル署名とXML暗号」ではXML署名とXML暗号について述べた。「第3回 XML鍵管理サービスとXMLプロトコル」は鍵情報の登録と検証を外部のサービスに依頼する仕組みであるXKMSと、これらの情報を伝達するためのXMLプロトコルSOAPについて述べた。 今回はシングルサインオン(SSO)や、それに続いて属性情報やアクセス制御情報を伝達するプロトコルSAML(Security Assertion Markup Language)について述べる。SAMLは連携した企業間のWebサービスのSSOを目指して最近策定されたLiberty Allianceの仕様や、マイクロソフトの.NET Passportに用いられる基的な技術として注目されているものである。さらにSAMLの上で

    強力なSSOを実現するXML認証・認可サービス(SAML)
  • 2.TCPのオープンとクローズ処理 @IT:連載 基礎から学ぶWindowsネットワーク 第15回 信頼性のある通信を実現するTCPプロトコル(2)

    第15回 信頼性のある通信を実現するTCPプロトコル(2):基礎から学ぶWindowsネットワーク(3/3 ページ) さてそれでは、実際のTCP接続の詳細について見てみよう。TCP接続の概要についてはすでに前回述べているので繰り返さないが、簡単に復習しておくと、「データを送信したら、それに対する応答(ACK)を必ず確認する」ということである。一見複雑そうに見えるTCP通信の内容も、この原則さえ分かっていれば容易に理解できる。そしてこの原則は、コネクションのオープンやクローズ時にも徹底されているのが分かるだろう。 TCP接続のオープン UDPによる通信と違って、TCPでは実際の通信に先立って、いろいろな準備が必要である。この準備のことをオープンといい、逆に通信が終了するための処理のことをクローズという。 TCPによる通信ではシーケンス番号に基づいた送受信確認が大事な役割を担っているが、オープ

    2.TCPのオープンとクローズ処理 @IT:連載 基礎から学ぶWindowsネットワーク 第15回 信頼性のある通信を実現するTCPプロトコル(2)
  • 配列とループ処理を理解しよう

    NSArrayクラス Objective-Cの最も基的な配列クラスは「NSArray」です。このクラスは、一度生成すると中身を変更することはできません。以下に、NSArrayの利用例を示します。 #import <Foundation/Foundation.h> int main(void) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; //(1)配列の生成 NSArray *array = [NSArray arrayWithObjects:@"abc", @"def", @"ghi", @"jkl", nil]; //(2)配列の要素数を取得 int arrCount = [array count]; //(3)配列の要素を取り出す id obj01 = [array objectAtIndex:2]; i

    配列とループ処理を理解しよう