developer's diary

最近はc#のエントリが多いです

超訳 Xamarin の概要

Microsoftのページって個人的に理解する為に、ワンクッションおくことが多いです。

色々読みながら、で結局どうなの?ってのにたどり着くまで結構時間かかること多いんですよね。。。

これは、単純に筆者のスキルレベルのせいだと考えてます。

なので、筆者的に理解した翻訳を残しておこうというメモ。的なエントリです。

今回訳してみたページ

docs.microsoft.com

Xamarin の概要の超訳。

Xamarin.Forms は、iOS、Android、Windowsで動くプログラムを作成するときの一つの選択肢。

という1行にまとまりました。 このドキュメントから私が理解できたことは。この1行です。

ドキュメントに記述されている概要

Xamarin.Forms は、iOS、Android、ユニバーサル Windows プラットフォーム アプリ間で共有可能なネイティブ ユーザー インターフェイス レイアウトを効率的に作成するための、開発者向けクロスプラットフォーム UI ツールキットです。

キーワードの略を記述

キーワード 意味
iOS iPhoneのOS(オペレーティングシステム)
Android スマホのOS(オペレーティングシステム)のこと
ユニバーサル Windows プラットフォーム(UWP) 異なるデバイス向けに提供されるMicrosoft Windows用のアプリケーションソフトウェアを共通の基盤上で動作させることのできる、統合されたプラットフォーム
ネイティブ ユーザー インターフェイス レイアウト iOS向け、andorid向けにそれぞれUI(ユーザーインターフェース)を構築するコンポーネントがあるが、これらコンポーネントを利用して作成したレイアウトのこと
クロスプラットフォーム 異なるプラットフォーム上で、同じ仕様のものを動かすことが出来るプログラムど土台のこと
UI ツールキット UIを構築するための道具一式のこと
ユーザーインターフェース 機械、特にコンピュータとその機械の利用者との間での情報をやりとりするためのインタフェース(入出力部分)
プラットフォーム システム・サービスを動かすための基盤(土台となる環境)
Xamarin .NET を使用して、iOS、Android、Windows 向けのアプリケーションをビルドするためのオープンソースのプラットフォーム
オープンソース・ソフトウェア ソースコードを商用、非商用の目的を問わず利用、修正、頒布することを許し、それを利用する個人や団体の努力や利益を遮ることがないソフトウェア

英語ドキュメントを翻訳

Xamarin.Forms is a cross-platform UI toolkit that allows developers to efficiently create native user interface layouts that can be shared across iOS, Android, and Universal Windows Platform apps.

DeepLでの翻訳

Xamarin.Forms は、iOS、Android、Universal Windows プラットフォームのアプリ間で共有できるネイティブのユーザーインターフェイスレイアウトを効率的に作成するためのクロスプラットフォーム UI ツールキットです。

Googleでの翻訳

Xamarin.Formsは、開発者がiOS、Android、およびユニバーサルWindowsプラットフォームアプリ間で共有できるネイティブユーザーインターフェイスレイアウトを効率的に作成できるようにするクロスプラットフォームUIツールキットです。

Wikipediaを覗いておく

XAMLベースのクロスプラットフォームなGUIアプリケーションフレームワーク。

感想

Xamarin.Formsって割と嫌われてる?

よくあるネットの意見

  • 原因の切り分けが難しそう。
  • Xamarin.Forms自体のバグを踏みそう。

iOS7 betaのままでアクティベーションできなくて困ってたけど解決。と手順メモ。

問題発生。

今日の夕方頃か、気づいたらiPhoneがこんな事に。

f:id:mitsugi-bb:20131006211701j:plain

そしてメールアドレスとパスワードを入力するものの・・・

f:id:mitsugi-bb:20131006211711j:plain

原因

iOS7 betaを入れっぱなしにしていた事が原因のようです。 (その有効期限が切れた?)

解決方法

iOSの最新版をダウンロード https://developer.apple.com/devcenter/ios/index.action#downloads

f:id:mitsugi-bb:20131006205302p:plain

モデル番号は背面カバーに記載されてます。

iTunesでオプションキーを押しながらアップデートボタンを押す

f:id:mitsugi-bb:20131006205518p:plain

ダウンロードしたファイルを選択

f:id:mitsugi-bb:20131006205611p:plain

アップデートを選択

f:id:mitsugi-bb:20131006205712p:plain

アップデート中

f:id:mitsugi-bb:20131006205811p:plain

上の手順で完了。iPhoneが再起動されて、wifiの設定して再びアクティベーションを求められますが、上手くいきました。

「秋の京都で MobiRuby をつつく会 in はてな」に参加した時を思い出しメモ

MobiRubyの勉強会に参加して内容をブログに書こうとしていたんだけれども、下書きのままでした。なんだか気持ち悪いので、まとまりないけれども公開します。

参加した勉強会:http://atnd.org/events/33550

その時につぶやいた自分のtwitterをまとめながらメモする。

id:ninjinkun さんのプレゼンの途中から参加しました。アプリの開発という内容。電車のなかで、リーン・スタートアップを読んでいたのでちょっとびっくり。

  • iPhoneアプリ開発で、PhoneGap利用した
  • ネイティブだとイテレーションが長くなるので、ピボット(方向転換)しにくい。
  • HTMLベースのアプリだとイテレーションのサイクルを短くできるので、UIが固まっていない場合はWEBベースのほうが向いている。
  • アップストアもWEBベースみたい。リンク切れがあったり。
  • Facebookアプリがネイティブに移行したのは、HTML5でUIを固めることができたからかもしれない。

続いて@masuidriveさんの MobiRuby 。

  • rubyでiPhoneアプリ開発できる→実際にアップストアにsamegameを公開
  • MIT Licese
  • ネイティブ関数は呼べる

  • rubyがISO/IEC 30170になったことで、mrubyをまつもとゆきひろさんが作った。
  • 組込向けのため、メモリ使用量が減った
  • ソースコード一人でもなんとか追いかけれる量?

  • POSIXなOSでなくても動く
  • c99のみで作られてる