MOSA Multi-OS Software Artists

MOSAはソフトウェア開発者を支援します

  • iPhone/iPod touch アプリ紹介
  • MOSA掲示板
  • 活動履歴
  • About MOSA(English)

MOSA Developer News[MOSADeN=モサ伝]第326号

2009-1-13

目次

  • 「Wonderful Server Life」    第84回   田畑 英和
  • 小池邦人のCarbon視点でiPhone探求
  • ターミナルの向こうから      第39回  海上 忍 

「Wonderful Server Life」  第84回  田畑 英和

〜「新春」編〜

 皆様明けましておめでとうございます。アップルが参加する最後のMacWorldではサーバ関連の発表はなにもありませんでしたが、17インチMacBook ProやiLife ’09、iWork ’09などの発表がありました。
 さて、今回は今年初めての連載になるわけですが、いつもとは少しおもむきを変えてみたいと思います。新しい年を迎えると1年の目標をたてたりするわけですが、サーバ管理もぜひなにか目標をたててスキルアップをしたいものです。そこで資格取得を目指してみてはいかがでしょうかというのが今回のテーマです。

◇Apple技術者認定資格
 ご存じない方も多いかと思いますが、技術者を認定するAppleの資格制度があります。認定資格にはPro App系のものもありますが今回ご紹介するのはいわゆるIT系の認定資格になります。IT系の認定資格は次の3つがあります。

・Apple Certified Support Professional 10.5(ACSP)
・Apple Certified Technical Coordinator 10.5(ACTC)
・Apple Certified System Administrator 10.5(ACSA)

 資格の名称にはそれぞれバージョン番号が付いていますが、OSのバージョンアップとともに資格もバージョンアップしています。まず最初のACSPですが、こちらはMac OS Xのユーザをサポートするヘルプデスク担当者向けの資格です。ACTCはサーバ管理者向け、ACSAはより上級のサーバ管理者向けの資格になっています。
 資格を取得することのメリットなのですが、資格を取得したことで自分のスキルを客観的にアピールできるといったことももちろんあります。ですがそれ以上に、資格取得のために学習したことで自分自身のスキルを向上できることが一番のメリットであると思います。

◇認定試験
 では資格を取得するにはどうすればよいかですが、認定試験に合格することにより資格を取得できる仕組みになっています。IT系の認定試験は全部で5種類あり、資格と試験の対応は次のようになっています。
 
・ACSP 10.5取得に必要な認定試験
   Mac OS X Support Essentials v10.5(90問、73%)
・ACTC 10.5取得に必要な認定試験
   Mac OS X Support Essentials v10.5(90問、73%)
   Mac OS X Server Essentials v10.5(90問、69%)
・ACST10.5取得に必要な認定試験
   Mac OS X Server Essentials v10.5(90問、69%)
   Mac OS X Directory Services v10.5(74問、68%)
   Mac OS X Deloyment v10.5(64問、70%)
   Mac OS X Advanced System Admin v10.5(90問、70%)
※括弧内は出題数と合格ライン

 つまり資格によっては複数の試験に合格する必要があるということです。それぞれの試験の内容は次のようになっています。

・Mac OS X Support Essentials v10.5
  Mac OS Xのシステム管理、インストールからトラブルシューティング
  までを幅広くカバー
・Mac OS X Server Essentials v10.5
  Mac OS X Serverのシステム管理、インストールや主要サービスの管理
  方法について
・Mac OS X Directory Services v10.5
  Macのディレクトリサービスについて、Active Directoryなど他の
  プラットフォームとの連携についても含まれる
・Mac OS X Deloyment v10.5
  Macを効果的に導入するための管理手法について
・Mac OS X Advanced System Admin v10.5
  システム管理に関する様々なトピックについて

 これらの試験をどこで受験できるかですが、全国的に受験可能な会場としては、様々な資格試験を提供しているプロメトリックで受験することができます。ただし1つ大きな問題がありまして、Tiger(10.4)の認定試験は日本語でも受験できたのですが、残念ながら現時点ではまだプロメトリックではLeopard(10.5)の認定試験は英語でしか受験できず、Support EssentialsとServer Essentialsの2種類の試験しか受験することができません。また受験料金もTigerのころと比べると値上がりしており1回の受験料が23,100円(税込み)となっています。

・プロメトリックでのApple関連の試験一覧
https://www1.prometric-jp.com/exam_list/exam_list.asp?client_top_no=AE&client_no=AE

 こういった状況ですので、受験するにはまず英語というハードルがあるわけですが、認定資格や試験に関する情報もまたAppleの英語ページでないと確認できません。

・Training and Certification(英語)
http://training.apple.com/certification/macosx

 すべて英語の情報ということになってしまうのですが、出題の傾向を解説したドキュメントやサンプルテストを入手することができます。また各認定試験に対応した解説書(またまた英語です)がPeachpitという出版社から出版されています。PDFで販売されている書籍もあり、この出版社は他にもMac関連の書籍を多数出版しています。
・Apple Training Series: Mac OS X Support Essentials, 2nd Edition
   http://www.peachpit.com/store/product.aspx?isbn=0321489810
・Apple Training Series: Mac OS X Server Essentials, 2nd Edition
   http://www.peachpit.com/store/product.aspx?isbn=0321496604
・Apple Training Series: Mac OS X Directory Services v10.5
   http://www.peachpit.com/store/product.aspx?isbn=0321509730
・Apple Training Series: Mac OS X Advanced System Administration v10.5
   http://www.peachpit.com/store/product.aspx?isbn=032156314X
・Apple Training Series: Mac OS X Deployment v10.5
   http://www.peachpit.com/store/product.aspx?isbn=032150268X

 書籍はPeachpitのサイトで注文することもできますし、一部は日本のAmazonでも取り扱っています。これらの書籍にはシステム管理を行うにあたって非常に役に立つ情報が満載ですので、認定資格や試験には興味はないけれどもという方でも手元に揃えておくと有益なリソースとなることでしょう。
 というわけで試験も情報も書籍も英語だということになってしまうのですが、なにせアメリカ生まれのMacのわけですし、英語が苦手だという方でもこれを機会にチャレンジしてもるよもよいと思います。そうすれば今年の目標に英語力Upまでもれなくついてくるというわけです。もちろん英語が得意な方はぜひこれらのリソースを有効活用してください。

◇それでもやっぱり日本語
 なかなか英語まではという方もご安心ください。ようやく日本語でも認定試験を受験できる環境が整ってきました。アップル公認トレーニングセンターでもあるマイクロメイツでSupport EssentialsとServer Essentialsが日本語でも受験できます。また英語でもかまわなければすべてのLeopardの認定試験を受験することもできます。会場は東京になるのですが日本語で受験できるというのはメリットが大きいかと思います。
 またマイクロメイツではSupport EssentialsとServer Essentialsに対応したオリジナルのトレーニングコースも開催しています。

・マイクロメイツ
http://www.micromates.co.jp/05/4_school_tokyo/46_apple/463_test.html

 というわけで今回は認定資格についてご紹介しました。次回からはLeopardServerの新サービスPodcast Producerについて解説していく予定です。
次回へつづく                             

小池邦人のCarbon視点でiPhone探求(2009/01/09)

〜 Xcodeのプロジェクトを準備する 〜

前回の宿題「iPhone用しんぶんしの開発には、どのテンプレートを使うか?」ですが、とりあえず「Navigation-Based Application」が向いているだろうと結論付けました。途中で何か問題が発生したら、その時点で対策を講じる事にして開発をスタートしたいと思います。

さっそくXcode(最新バージョンは3.1.2)を起動し、ファイルメニューから「新規プロジェクト…」を選びます。表示されたテンプレート選択ダイアログの左側からは「iPhone OS」直下の「Application」を、右側からは「Navigation-Based Application」を選び「選択…」ボタンをクリックします。続いてプロジェクト名を入力するのですが、「しんぶんし」ではワールドワイドをターゲットとするiPhoneアプリケーションには似つかわしくないので(笑)今回からは「Symmetry」という新名称(少々イージーですが…)に変更したいと思います。この時に入力したプロジェクト名が、とりあえずのアプリケーション名(後で変更可能)となります。

この一連の作業により指定場所に「Symmetry」フォルダが作成され、その中に開発に最低限必要なソースコードファイルやnibファイルなどが保存されます。クラス定義のヘッダファイル(.h)やObjective-Cのソースコードファイル(.m)は「Classes」フォルダに保存されています。MainWindow.xibと RootViewController.xibはユーザインターフェース・オブジェクトが定義されているnibファイルです。こちらをダブルクリックするとInterface Builderを起動することができます。そうした中のひとつ、薄い青色アイコンの「Symmetry.xcodeproj」というファイルがXcodeのドキュメントです。次回からは、このファイルをダブルクリックすることでXodeが起動し、開発関連のファイル一覧を表示したプロジェクトウィンドウをオープンできます。

プロジェクトウィンドウには、フォルダ内に保存されている各種ファイルや開発で使うFrameworkなどが「Classes」「Others Sources」「Resources」「Frameworks」「Products」といったグループ(フォルダのアイコン)別に登されています。こうしたグループは、Xcodeのプロジェクトメニューの「新規グループ」で新しく追加することもできます。一覧リストに表示されているファイル名をダブルクリックすると、目的に応じてその内容がオープンする仕組みとなっています。ソースコードならテキストエディターが、nib(.xib)ファイルならInterface Builderが、Info.plistファイル(XML)ならProperty List Editorが起動します。

このプロジェクトウィンドウの形状ですが、Xcodeメニューの「環境設定…」の「全般」で切り替える事ができます。3種類のレイアウト「デフォルト」「コンデンス」「オールインワン」からひとつを選択できますが、私は昔からの習性(笑)で「コンデンス」を使っていますので、この連載も「コンデンス」レイアウトを対象とした解説となります。ご了承ください。環境設定でのレイアウト切り替えは、ひとつでもプロジェクトファイルがオープンされていると実行できませんので(ハイライト表示のまま)御注意ください。レイアウトを変更し「摘要」ボタンをクリックすれば、次回からオープンされるXcodeプロジェクトの内容は、そのレイアウトのプロジェクトウィンドウに表示されます。

プロジェクトフォルダ内に保存されている開発関連ファイルは、一般的なMac用のCocoaアプリケーションのテンプレートとよく似ています。 main.mやSymmetry_Prefix.pchファイルの役割もMac用とまったく同じです。両者の違いとしては、Mac用テンプレートの方は、リソース関連ファイルが「English.lproj」フォルダにまとめられていますが、iPhoneアプリ用のテンプレートでは、そうしたファイルがフォルダにまとめられていないことでしょう。その代わりに、クラス定義用ヘッダファイルやObjective-Cソースコードファイルの方は「Classes」フォルダにまとめられています。

Mac用テンプレートの「English.lproj」フォルダは、アプリケーションのローカライズを考慮した時に英語用リソース(nibファイルや文字列ファイル)を保存しておく場所となりました。これと同じiPhoneアプリケーションの英語用リソースフォルダは「en.lproj」となります。ちなみに、日本語用フォルダ名は「ja.lproj」です。もし多言語に対応したiPhoneアプを作成する場合には、
先んじてこうした国別フォルダを用意し、その中に各国語対応のリソースファイルを保存しておく必要があります。今回、そうした作業は開発終了時(最後)に実行することにしますので、とりあえずは「ja.lproj」フォルダだけを用意し、そこに関連リソース(日本語用)を保存することにします。

Finderで「Symmetry」プロジェクトフォルダ内に「ja.lproj」フォルダを作成し、そこへnibファイルのMainWindow.xibとRootViewController.xibを移動します。この状態で、Xcodeのプロジェクトウィンドウのファイルリストを調べてみると、両方の名称が赤色に変化していることが分かります。これは、ファイルの保存場所を変更したためプロジェクトに登録されているファイルのリンク情報(ファイルパス)が切れ、Xcodeがそれらのファイルを発見できなくなったことを示しています。まずは両方のファイル名を選択して、Deleteキー(編集メニューの削除)を押してプロジェクトウィンドウのリストから外します。

続いてドラッグ&ドロップで「ja.lproj」フォルダ内の両ファイルを、プロジェクトウィンドウの「Resources」グループ内に登録します。この操作により、MainWindow.xibRootViewController.xibの左側に小さな「三角形マーク」が表示されるようになります。クリックしてみると、ひとつ深いレベルに「ja」という名称が表示されます。この「ja」をダブルクリックすることで、Interface Builderを起動させ、対応するnibファイルを編集することが可能になります。英語用のnibファイルを作成してプロジェクトへ登録した場合には、このレベルに「en」という名称が表示されます。英語用のnibファイルをInterface Builderで編集する場合には、こちらをダブルクリックすることになります。

ところで、プロジェクトフォルダには「Info.plist」というXMLファイルも保存されていますが、これはiPhoneアプリ自身の環境設定(プロパティ)ファイルのようなものです(Macアプリの場合とまったく同じ)。この中には、バージョン番号やディフォルトで利用する言語、iPhoneに表示されるアプリケーション名、最初に読み込まれるnibファイル名などが定義されています。例え
ば、Info.plistに以下様なタグを追加すると、iPhoneのホームに表示されるアイコンの表示形態が切り替わることになります。

 

UIPrerenderedIcon
 


この設定は、iPhoneアプリのアイコン表示に光沢やベベルエフェクトを付けるかどうかをブール値で指示しています。デフォルトのプロパティはfalseです。こうしたエフェクトをアイコン表示に追加しない場合は、値をtrueに設定します。例えば、iPhoneアプリの「計算機」や「メモ」は、上記と同じ指定がされています。Info.plistファイルはローカライズのために複数作成する必要はありません。

さて次回は、このinfo.plistをもう少し詳しく調べてみることにします。また最初の仕事として「Symmetry」アプリのアイコン画像(PNG画像ファイル)を作成し、プロジェクトウィンドウに登録してみます。

ターミナルの向こうから      第39回  海上 忍

〜 いま敢えて学ぶTerminalのイロハ(6) 〜

・初期化ファイルとは
 CocoaやCarbonを利用する一般的なアプリケーションは、各種設定を行うための画面(環境設定パネル)を備えています。多くの場合、設定情報はユーザごとに用意されているPreferencesフォルダ(~/Library/Preferences)以下に保存され、起動時に読み取り/終了時に上書きされますが、ユーザはその存在を意識する必要がありません。
 シェルの場合、CUIということもあり設定パネルという概念は存在しません。その代わり、「初期化ファイル」などと呼ばれるプレインテキストファイルを用意し、そこへ設定情報を記述しておくと、シェルの起動時に読み込まれます。性格も機能も異なりますが、ある程度コンピュータ歴が長い方ならば、MS-DOSの「CONFIG.SYS」のようなもの、といえばピンとくるかもしれません。
 初期化ファイルは、おもにエイリアス(コマンドの別名)や環境変数を設定する目的で利用されます。たとえば、第38回で「パス」の設定方法を紹介したとき、PATH環境変数の定義(例:export PATH=$PATH:/sw/bin)を行いましたが、そのコマンドラインをシェル(bash)の初期化ファイルに記述しておけば、シェル/Terminalの起動にあわせて環境変数を自動設定できることになります。

・初期化ファイルの種類
 シェルの初期化ファイルは、1つとはかぎりません。ホスト全体に適用されるもの、ユーザ別に用意されるもの、シェルの起動方法により使い分けられるもの、互換性維持を目的に使用されるものといった具合に、複数の初期化ファイルが存在します。以下、bashで使用される初期化ファイルについて説明します(「~/」はユーザのホームディレクトリを意味します)。

1) /etc/profile
 ログイン時(Terminalの起動時)に1度だけ読み込まれる、システムワイドな初期化ファイルです。Mac OS X Leopardの場合、/usr/libexec/path_helperコマンドで「パス」を設定したあと、他の初期化ファイル(/etc/bashrc)を読み込むよう記述されています。なお、全ユーザに適用される初期化ファイルであり、/etcディレクトリ上のファイルを編集する場合には管理者権限が必要になるため、シェル環境のカスタマイズには使用されません。

2) ~/.bash_profile
 ユーザ別の初期化ファイルで、bashがログインシェルとして起動されたとき1回だけ読み込まれます。先頭が「.」で始まるファイル(ドットファイル)のため、Finder上には表示されません。

3) ~/.bash_login
 ユーザ別の初期化ファイルで、~/.bash_profileが存在しないときに読み込まれます。

4) ~/.profile
 ユーザ別の初期化ファイルで、~/.bash_profileと~/.bash_loginが存在しないときに読み込まれます。

5) /etc/bashrc
 シェルがプロセスとして起動された場合に読み込まれる初期化ファイルです。システムワイドな初期化ファイルであり、シェル環境のカスタマイズには使用されません。Mac OS X Leopardの場合、/etc/profileが処理される過程で読み込まれます。

6) ~/.bashrc
 シェルがプロセスとして起動された場合に読み込まれる初期化ファイルです。環境変数の定義などシェル環境のカスタマイズを行う場合、通常はこのファイルを利用します(後述)。

・初期化ファイルの優先順位
 bashの初期化ファイルには、優先順位が設けられています。まず、ユーザがログインすると、システムワイドな初期化ファイル「/etc/profile」が読み込まれます。次に、「~/.bash_profile」を読み込みますが、存在しない場合には「~/.bash_login」が読み込まれます。「~/.bash_profile」と「~/.bash_login」の両方とも存在しない場合は、「~/.profile」が読み込まれます。

 bashの場合、シェル環境のカスタマイズを目的とした日常使用の初期化ファイルは、本来「~/.bash_profile」が使用されます。ただし、ユーザのログイン後新たにシェル(bash)を起動したとき — シェル上から子プロセスとしてbashを起動したとき — には「~/.bashrc」が読み込まれます。 この問題は、両者を個別に管理するのではなく、「~/.bash_profile」の中に「~/.bashrc」を読み込むための命令を書き加えることで対処できます。つまり、カスタマイズ目的の初期化ファイルには「~/.bashrc」を使用し、「~/.bash_profile」には以下のコマンドライン1行を用意しておけば、初期化ファイルの準備は万端です。

- - - - -
source .bashrc
- - - - -


 次回は、この「~/.bashrc」に書いておくべき内容について説明します。

◇MOSAからのお知らせと編集後記は割愛します◇

 

 MOSA Developer News   略称[MOSADeN=モサ伝]
        配信停止 mailto:mosaden-ml@mosa.gr.jp
 記事内容に関するご意見 mailto:mosaden-toukou@mosa.gr.jp
      記事投稿受付 http://www.mosa.gr.jp/?page_id=850
Apple、Mac OSは米国アップル社の登録商標です。またそのほかの各製品名等
はそれぞれ各社の商標ならびに登録商標です。
このメールの再配信、および掲載された記事の無断転載を禁じます。
特定非営利活動法人MOSA  http://www.mosa.gr.jp/
Copyright (C)2009 MOSA. All rights reserved.