タグ

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

  • Smartyでテンプレートエンジンの威力を知る(1/3) − @IT

    テンプレートが果たす役割 改まったビジネス文書や手紙の作成にはしばしば、テンプレートが利用されます。テンプレートに差出人や相手方の情報を入力するだけで、気の利いた季節のあいさつや丁寧な結びの句を織り交ぜた文書を簡単に作成することができます。 さて、PHPHTMLタグとPHPコードが共存できることを特徴とし、多くの利用者を獲得してきました。しかしPHPコードが冗長になるにつれ、HTMLの記述が複雑になり、デザインの修正が難しくなる傾向があります。 そこでPHPにおいても、文書テンプレートのアイデアを取り入れた「テンプレートエンジン」が利用されます。 テンプレートエンジンを利用すれば、PHPコードで作られたロジックが吐き出す値を、HTMLデザインを分離したテンプレートに埋め込むことが可能になります。この結果、ロジックを作成する作業と、HTMLデザインを編集する作業を分担して行うことが可能にな

    Smartyでテンプレートエンジンの威力を知る(1/3) − @IT
  • 連載:C#入門 第17回 処理を委譲するdelegate

    delegateとは何か 「delegate」は日語では「委譲」と訳されることが多い。委譲という言葉が分かりにくいと思うなら、「代表者」と考えてもよい。何かの処理を実行させたいときに、直接処理機能を持つメソッドを呼び出すのではなく、代表者に処理を求めるのである。代表者は処理機能自体は持っていないが、それを処理できる適切なメソッドを知っており、そのメソッドに処理要求を渡す。 最も単純な状況を考えてみよう。「クラスA」の「メソッドa」は自分では何も処理せず、常に「クラスB」の「メソッドb」に処理をゆだねるとしよう。このような場合、「メソッドa」の中に「メソッドb」を呼び出すコードを書けばよいので、特別な機能は何も必要がない。しかし、このように常に処理をゆだねる相手が決まっているとは限らないし、相手が常に1つとも限らない。このような状況に対処するために、C#のdelegate機能が存在するわけ

    chorinsky
    chorinsky 2011/12/17
  • シェルスクリプトはエレガントでなければならない

    /bin/shの実体としてはash(dash)、bash、kshの採用例が多い。どのシェルもBourne shellの機能に加えて、拡張機能を提供する。 FreeBSDなどの*BSD系のOSは、ashを/bin/shとして使っている。ashはPOSIX.1(POSIX:2008)にいくらかのBSD拡張機能を取り込んだシェルだ。メモリをあまり消費せず、高速に動作し、ほかのライブラリに依存することが少ない。従って、rootやレスキューシステムのインタラクティブシェル、システムのシェルスクリプトといった場面で採用されている。 Mac OS Xはbashを/bin/shに採用している。FedoraやopenSUSEなどのLinuxディストリビューションもbashを/bin/shに採用している。LinuxディストリビューションでもUbuntuやDebian、Linux Mintなどは、高速に動作する

    シェルスクリプトはエレガントでなければならない
  • OpenGL ESが大変な3Dアプリ開発を楽にするUnity

    しかし、初めてOpenGL ESを触る人には、結構とっつきにくいのではないでしょうか? iPhoneで面白いアイデアを思い付き、ゲームアプリを開発したいと思ったときに、プログラマであっても、OpenGL ESを独学で習得することは、多少ハードルが高いことも事実です。 そこで、連載最終回である今回は、まず新規プロジェクトのテンプレートをカスタマイズしていくことで、ピラミッドを描くプログラムを作ってみましょう。 また、デザイナやFlash開発者にとっても、OpenGL ESの習得には大幅な時間がかかることが予想されます。そんな人々にとって有用であるゲーム開発プラットフォーム「Unity」も紹介し、その説明(画面構成やメニューなど)をしながら、簡単なサンプルを作成し、実機のiPhoneにインストールして動かします。

    OpenGL ESが大変な3Dアプリ開発を楽にするUnity
  • Xcode/Interface BuilderでUI設計+イベント処理

    連載第1回の「いまさら聞けないiPhone/iPadアプリの作り方の基礎」では、iPhone/iPadアプリ開発における環境構築や開発ツールであるXcodeについて簡単に触れました。今回から、いよいよアプリの具体的な作成方法について説明していきます。 さて話が変わりますが、皆さんはお腹のぜい肉が気になったりしていないでしょうか? 今回作成するサンプルアプリは、下記のような「BMI(肥満度)計算」アプリです。1画面だけのシンプルなアプリですが、この制作を通してiPhone/iPadアプリの画面の作り方や、画面をタッチしたときのイベント処理の基について学んでいきましょう。

    Xcode/Interface BuilderでUI設計+イベント処理
  • いまさら聞けないiPhone/iPadアプリの作り方の基礎

    【A】ツールバー 実装モード/デバッグモードの切り替えや、[ビルドと実行]などのアクションボタンがある。ここにあるボタンは、カスタマイズ可能 【B】[グループとファイル] Xcodeプロジェクトが保持しているファイルを一覧表示。クラスファイルや設定ファイルなどの成果物は、すべてこのエリアに格納していく 【C】情報表示エリア 選択されているファイルの詳細情報や、プロジェクト内のファイル検索などが行える(頻繁に使うエリアではないので、実装時にはツールバーの[エディタ]ボタンで非表示にしてしまい、テキストエディタを広く使うのも1つの手) 【D】テキストエディタ [グループとファイル]で選択したファイルを実際に編集するエリア。ソースコードや設定ファイルを記述するので、開発時はこの部分を常に見続けて作業をすることになる Xcodeプロジェクトとは これまでに作成したXcodeプロジェクトは、アプリを

    いまさら聞けないiPhone/iPadアプリの作り方の基礎
    chorinsky
    chorinsky 2011/11/27
    ショートカットが便利
  • ファイルを結合するには

    splitコマンドで分割したファイル(ファイルを分割するには参照)を、元通りに結合するには、catコマンドを使用する。通常、catコマンドはファイルの中身を画面に表示するときに使用するが、来は複数のファイルを連結するためのコマンドなのだ(catの名前はconcatenateから付けられた)。一般的には、ワイルドカードを使用して以下のように結合する。

    chorinsky
    chorinsky 2011/11/23
    catはconcatenateの意味
  • iPhoneアプリ開発入門 − @IT CORE

    iOS(iPhoneiPad・iPod touch)・Apple Watchアプリ開発をこれから始めたい初心者向けの@IT記事一覧。iOS SDK/Xcodeのインストールや環境設定、Mac/OS Xや役立つツール・ライブラリなど必要なものの使い方、開発言語Swift/Objective-Cの基文法・コード例リファレンス、デザイン・テスト、アプリビジネス・マーケティング記事などが満載です。

  • Flash Builder 4.5でAndroidアプリを作ってみた - @IT

    Flash Builder 4.5でAndroidアプリを作ってみた ~Flashアプリ開発ツールのスマホ向け新機能を試す~ @IT編集部 2011/5/11 2011年5月9日、アドビ システムズは「Flash Builder 4.5」の日語版の提供を開始しました。Flash Builder 4.5は、バージョン3まで「Flex Builder」と呼ばれていた、「Flex」フレームワークを用いて、FlashのSWFファイルやAdobe AIRアプリケーションを開発するためのIDE(統合開発環境)の最新版です。「Flash Professional」と違い、業務向けのアプリケーションを構築する、データを扱ったりロジックをコーディングするためのツールという位置付けでEclipseベースで作られています。 その主な新機能は、スマートフォン向けアプリの開発機能です。Androidアプリを作成す

  • いまさら聞けないiPhone/iPadアプリの作り方の基礎

    いまさら聞けないiPhone/iPadアプリの作り方の基礎:SDKで始めるiPad/iPhoneアプリ開発の勘所(1)(1/4 ページ) 初めてiPhone/iPadアプリ開発に挑戦する人が、迷わず短時間でアプリを作れるように、数多くの情報の中から要点をグっと絞った開発の勘所を紹介する入門連載です 迷わず短時間でiPhone/iPadアプリを作れるように 皆さんのお気に入りのiPhone/iPadアプリは何でしょうか。筆者は、Googleカレンダーと同期してくれるスケジュール管理アプリがお気に入りです。いまでは目的のアプリを探すのも大変なほど、日々多くのiPhone/iPadアプリが登場しています。 6月8日にはiPhone 4の発表があり、マルチタスクやモバイル広告ネットワーク、ゲーム開発など、iPhone OS改め、iOS 4で実現できる機能がたくさん追加され、さらに魅力的になりました

    いまさら聞けないiPhone/iPadアプリの作り方の基礎
  • @IT Linux Square「LFSで作って学ぶLinuxの仕組み」

    【 pidof 】コマンド――コマンド名からプロセスIDを探す (2017/7/27) 連載は、Linuxのコマンドについて、基書式からオプション、具体的な実行例までを紹介していきます。今回は、コマンド名からプロセスIDを探す「pidof」コマンドです。 Linuxの「ジョブコントロール」をマスターしよう (2017/7/21) 今回は、コマンドライン環境でのジョブコントロールを試してみましょう。X環境を持たないサーバ管理やリモート接続時に役立つ操作です 【 pidstat 】コマンド――プロセスのリソース使用量を表示する (2017/7/21) 連載は、Linuxのコマンドについて、基書式からオプション、具体的な実行例までを紹介していきます。今回は、プロセスごとのCPUの使用率やI/Oデバイスの使用状況を表示する「pidstat」コマンドです。 【 iostat 】コマンド――I

  • DB設計の神ツール「ERMaster」なら、ここまでできる

    DB設計の神ツール「ERMaster」なら、ここまでできる:ユカイ、ツーカイ、カイハツ環境!(11)(1/3 ページ) 無料のEclipseプラグイン「ERMaster」とは データベースのテーブル設計を行うときに皆さんは、どのようにしているでしょうか? いくつかの無料で利用できるツールが提供されているので、筆者はそれらを利用していましたが、最近「ERMaster」と呼ばれるEclipseプラグインの存在を知りました。 ERMasterは、ほかのツールに比べ、直感的で分かりやすいUI(ユーザーインターフェイス)に、カスタマイズ可能な、Excelで出力できるテーブル定義書、辞書機能など痒いところに手が届くERモデリングのツールです。稿では、このERMasterについてご紹介します。 ERMasterの主な特徴、8つ ERMasterには、主に次のような特徴があります。 【1】直感的で使いや

    DB設計の神ツール「ERMaster」なら、ここまでできる
  • 国語力とプログラミング力の関係 解説編

    2009年1月、Cyan設計者 林拓人氏とLispの伝道師 竹内郁雄氏との対談「Cyanを設計した高校生、5カ月で5つの言語を習得」が大きな反響を呼んだ。その原因の1つは、竹内氏が発したひと言「わたしの持論ですが、国語ができる(=日語できちんとした文章が書ける)人じゃないとプログラムは書けない」だ。これについてネットでは同意する意見が多かったものの、記事中で根拠が明らかにされていなかったため議論が紛糾した。そこで編集部は竹内氏に詰め寄り、「わたしの持論」について詳しく説明してもらうべく寄稿をお願いした。国語力とプログラミング力には当に相関関係があるのだろうか。 事のいきさつ~Cyan設計者 林くんとの対談で発してしまったひと言が思わぬ反響を呼ぶ Cyan言語で経済産業大臣賞を受けた開成高校の林拓人くんと対談(「Cyanを設計した高校生、5カ月で5つの言語を習得」)しているうちに、つい調

    国語力とプログラミング力の関係 解説編
  • DNSの仕組みの基本を理解しよう

    いきなりだが、2001年はDNSDomain Name System)にとっては、当たり年ともいえる年だった。ニュースなどでも取り上げられているが、「日語」や「多言語」ドメインという大きな構造変化がシステム全体に押し寄せ、ブロードバンド環境の広がりは、個人がドメインを取得して運用するための足掛かりともなった。 連載では、ドメインの運用など、これからDNSと付き合おうとしている方々を対象に「DNSの概念や運用の考え方」を明らかにしていこう。ただし「BIND」など、DNSに関する具体的な製品の設定方法については触れない。詳しくは以下の記事もぜひ参考にしてほしい。 DNSはなぜ必要か? 最初に、「DNSとは何か」を説明するために、「なぜDNSが必要になるのか」を考えてみよう。それには、歴史的経緯から考えるのが分かりやすい。 DNSはご承知のとおり、IPアドレスホスト名をマッピングして相互

    DNSの仕組みの基本を理解しよう
  • Windowsでファイルの内容をバイナリダンプで確認する

    ファイルの内容を正確に16進数表示でダンプ出力させて調査するには、Windows OS付属のdebugコマンドが利用できる。ただしMS-DOS時代のデバッガなので制約が多い。ダンプ出力には[d]コマンドを繰り返し実行する。 解説 システムのトラブル・シューティングや各種設定の確認作業などにおいて、ファイルの内容を正確に確認したいことがある。例えば、アプリケーションが出力したデータ・ファイルの内容が一部化けていたり、欠落していて正しく読めない、バイナリ・データが含まれている、サイズが期待したものとはわずかに異なる、何かおかしな文字コードや制御コードが入っているようだなど、といった場合、その内容を正確に調査するには、ファイルの内容を16進数でダンプ(出力)できるとありがたい。 しかしWindows OSには、ファイルの内容を表示するツールとしてはテキスト・エディタ(メモ帳)ぐらいしか用意されて

    Windowsでファイルの内容をバイナリダンプで確認する
  • 文字数を正確にカウントするには?(サロゲート文字対応)[C#、VB] - @IT

    文字列の長さを取得する場合、基的には「TIPS:文字列の長さを取得するには?」で紹介しているように、文字列オブジェクト(=System名前空間のStringクラスのオブジェクト)のLengthプロパティを利用すればよい。 しかし、「文字列の長さ」と「文字数」は必ずしも一致しない可能性がある。というのも、Windows Vistaの登場などにより、Unicodeのサロゲート文字が(エンド・ユーザーにより)入力される可能性が出てきているからだ。 サロゲート文字(もしくはサロゲート・ペア文字)とは、通常「1文字=2bytes」のところが、「1文字=4bytes」となることがある文字のことだ。そのような「1文字=4bytes」のサロゲート文字の「文字列の長さ」を、先ほどのLengthプロパティを使って取得すると、「2」になる。正確な文字数は「1」なのに、文字列の長さは「2」と判定されてしまうのだ

  • 連載:.NET実践プログラミング - @IT

    第2回 簡潔なコーディングのために (2017/7/26) ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21) Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基の「キ」をマスターしよう 第1回 明瞭なコーディングのために (2017/7/19) C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える Presentation Translator (2017/7/18) Presentation TranslatorはPowerPoint用のアドイン。プレゼンテー

  • 連載:.NETでWindowsアプリを作ろう 第2回 サムネイル画像コントロールを作ろう(1/4) - @IT

    連載では、全4回にわたりWindowsアプリケーションであるWeb画像検索ツール「WebImageSearch」を.NETで作っていきます。このアプリケーションの使い方やダウンロードについては前回で紹介しました。また前回では、Googleイメージ検索で検索を行い、その結果を返すGoogle用のプラグイン部分を作成しました。 第2回となる今回は、検索により見つかった画像を一覧表示する部分を作成していきます。これは以下の図の赤枠で囲んだ部分です。 今回は、サムネイル(thumbnail:アイコン・サイズに縮小された小さな画像)を一覧表示するこの部分を「独自コントロール」として作成します(独自コントロールについては後述)。稿ではこれを「サムネイル画像コントロール」と呼ぶことにします。 サムネイル画像コントロールでは、アプリケーション体側より追加された画像からサムネイルを作成して表示します。

  • .NET TIPS 複数の行を含む文字列から1行ずつ読み出すには? - C# VB.NET - @IT

    このような改行コードによる文字列分割を行う場合には、StringReaderクラス(System.IO名前空間)のReadLineメソッドが便利だ。このメソッドは、文字列中に含まれる改行コードが上記3種類のいずれであっても、その文字列から1行ずつ読み出すことができる。読み出した行には改行コードは含まれない。 StringReaderクラスでは、そのコンストラクタで対象となる文字列(複数行を含む)を指定してインスタンス化する。また、ReadLineメソッドは読み出す行がなければnull(VB.NETの場合にはNothing)を返す。 以下にStringReaderクラスを利用したサンプル・プログラムを示す。 // strreader.cs using System; using System.IO; public class ReadLineFromString { static void

  • サウンドを鳴らすには

    Linuxでは、OSS(Open Sound System)というサウンド機能がサポートされている。Linux(のカーネル)に組み込まれているOSSはフリー版であり、サポートする音源ボードの数が少ないので音が鳴らないケースも多い。インストール時に音源ボードが自動認識され、音が鳴っているならそれでいいのだが、そうでない場合は自分で設定をしなければならない。音源ボードの認識などはsndconfigコマンドで行うが、認識されるもののなぜか音が鳴らないということも多い。 そのような場合は、OSS互換のALSA(Advanced Linux Sound Architecture)を使うといい。ALSAは、サポートする音源ボード(実際には音源チップ)の数がOSSより多く、性能もしのぐといわれている。 まず最初に、使用しているPCの音源チップにALSAが対応しているかどうかを確認する。音源チップを調べる