質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.54%

  • C#

    7073questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Android

    6505questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • iOS

    3980questions

    iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

  • Xamarin

    496questions

    Xamarin(ザマリン)は、iPhoneなどのiOSやAndroidで動作し、C# 言語を用いてアプリを開発できるクロスプラットフォーム開発環境です。Xamarin Studioと C# 言語を用いて、 iOS と Android の両方の開発を行うことができます。

  • .NET Framework

    455questions

    .NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

Xamarinの学習方法

解決済

回答 4

投稿

  • 評価
  • クリップ 1
  • VIEW 3,452

majo

score 8

 Xamarinの学習方法

会社でXamarinを使用した開発プロジェクトが計画されています。
そこで、私は今から3ヶ月以内に仕事で使える程度にXamarinを覚えなければなりません。
iOS/Androidの新規開発案件です。

そこで、未経験の私がどのようにしてXamarinを学習したら良いか、アドバイスを頂きたいと思います。

状況は以下の通りです。

  • 期限は今から3ヶ月
  • Xamarin未経験
  • iOS、Androidアプリ開発未経験
  • そもそもiPhoneは触ったこともない。Macも持ってない
  • 普段はC#/WPFで開発。Web系の開発ならいくつか経験あり。
  • 学習は定時後or土日。残業多すぎて平日はほとんどできないかも。
  • 英語はかなり苦手。例えばStackOverflowではコード部分以外理解できないレベル

…というかなり厳しい状態ですが、やらないわけにはいきません。
そこで、少しでも効率よく学習をしたいと思っています。

まだ、どのテキストを読んでどのサイトを参考にして…というところも調べきれていない状態ですが、
良い学習方法を教えていただきたいと思います。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 4

+8

残業が多く休日しか勉強できない状態で、3ヶ月で仕事に使えるレベルで覚えろ、ってかなりの修羅場では?
短期間でもXamarinの熟練者を雇った方が良いように思えます。Xamarinを勉強するから仕事を減らしてくれ、って会社に要求しましょう。必要なハードウェアは会社に買わせましょう。
切れやすい人なら上司に辞表をたたきつけるかも?
10分間で分かった気になれるXamarin概要
Xamarin 学習用リソースまとめ
Xamarin の開発環境を整理しよう
Xamarin 日本語情報

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/03/07 11:23 編集

    >短期間でもXamarinの熟練者を雇った方が良いように思えます。Xamarinを勉強するから仕事を減らしてくれ、って会社に要求しましょう。必要なハードウェアは会社に買わせましょう。
    そもそも論、ここが不可能な状況ならその仕事を受けるのは避ける方がよい、って判断できそうですしね。。。
    もしくは、一からでもいいからやりながら覚えてほしい、ということ?

    まずは、上司さんに状況確認からした方がいいかもしれないですね。
    3か月で残業マックスなので勉強する時間すら取れない、という報告も併せて。

    キャンセル

  • 2017/03/07 19:16 編集

    ankoankoさん、元質問者氏の会社はかなりブラックなにおいがしますね。
    上司や経営側がシステム開発の経験のない人たちですと、コンピュータ言語をひとつ知っていたら他の言語も簡単に覚えられるでしょう、などととんでもないことを平気で言ってのける人もいる(経験者談、笑)ので、、、以下略
    有料か無料かわりませんが、セミナーも。
    https://eventdots.jp/tag/xamarin

    キャンセル

  • 2017/03/08 10:39

    リプライありがとうございます。

    >上司や経営側がシステム開発の経験のない人たちですと
    経営側はまあ、、、お金を使って人を雇えば成れてしまうので、別ですが、
    なぜ上司になれるかは甚だ疑問ではあります。笑
    何が評価されたのか、、、

    と、本筋とは関係ない話ですので、この程度にとどめておきます。
    失礼しました。

    キャンセル

+6

Orlofsky さんが紹介された概要レベルの知識をまず得る必要はあります。
時間が限られていると感じるならば、「分かっている知識」を突破口にするのがよいと思います。
幸い WPF の知識はあるとのことですので、XAMLなどの考え方が似ている「Xamarin.Forms」は、とっつきやすいでしょう。
テキストは、

が良いでしょう。

重要なことは、

  • なるべくたくさんのサンプルプログラムを書いてみること
  • Xamarin.FormsとXamarin.Android、Xamarin.iOSの違いを知ること

です。

Xamarin.Androidは、JavaでのAndroidの開発知識が必要になります。
Androidの情報は陳腐化が激しいので、出版日が新しめの入門用書籍を何か買って読む、Android Studioで書いてみるのがよいでしょう。

Xamarin.iOSは、SwiftでのiOSの開発知識が必要になりますが、実機やmacOSもないとのことなので、この際捨てましょう。書籍だけ何か購入してパラパラ読む程度にしましょう(それしかできないので)。

職場に、
「あと3ヶ月しかないのに、MacもiOS端末も提供されないなら、十分な事前学習はできないですよ。」
と予防線を張るのはよいでしょう。

楽しむことができれば3ヶ月は十分な期間だと思います。
ここ、Facebook、Twitterを活用してください。

環境構築はハマりやすいので、早めに潰しておくとよいでしょう。
(Visual Studio 2017など、出たばかりのツールは、既存の開発環境に影響を及ぼすのでしばらく様子を見た方がよいでしょう。)

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

checkベストアンサー

+3

大筋amay077さんと同意見です。
先のお二人が触れていないところで、ぜひ目を通してもらいたい文献を追加しておきます。

Xamarin(ザマリン) とはなんぞや

Xamarin for Visual Studio の環境構築については、はまり処が色々あります。
こちらを参考にされると良いと思います。
Xamarinインストール・事前作業手順書

最低限、初めて構築される方は認証プロキシ環境外で構築されることを強くお勧めします。
どうしても認証プロキシ内で構築されたいという場合はこちらそ参考にしてください。
認証プロキシ環境でXamarin for Visual Studioをインストールする方法

情報が古い可能性がありますので、その場合は、こちらにお返事ください。

WPFの経験がお有りという事で、スタートアップは結構すんなり入れて楽しいかもしれません。
ただし、そのあとAndroidやiOSの知識不足には悩まされると思いますので、そこは…頑張ってください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

Web系の開発ならいくつか経験あり

ということなら、いわゆるガワだけアプリ(WebView等を利用)にして、アプリの本当の処理の部分はWEB表示で実現するというのも有りかもしれません。
WebViewの利用とあと起動時のスプラッシュや設定ぐらいなら短期間で作れないことはないかも。(利用するものだけに絞って情報を入手して、少しでも開発期間を短縮する)
当然ですがWEB側のスクリプトも作成が必要ですが、PC上のChromeなどで確認しながら取り敢えずは作れますし、経験があるということで先が読みやすいでしょう。

ただ、どういうアプリなのかわからないので、そもそもWEB表示で間に合うのかは何とも言えませんが・・・。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.54%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • C#

    7073questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Android

    6505questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • iOS

    3980questions

    iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

  • Xamarin

    496questions

    Xamarin(ザマリン)は、iPhoneなどのiOSやAndroidで動作し、C# 言語を用いてアプリを開発できるクロスプラットフォーム開発環境です。Xamarin Studioと C# 言語を用いて、 iOS と Android の両方の開発を行うことができます。

  • .NET Framework

    455questions

    .NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。