2017年8月18日金曜日

Visual Studio Online (VSO) でソースを管理しよう

こんばんは。よーです。2回目の投稿です!
今回は前回よりはちょっと?かなり??メジャーな情報だと思いますがVisual Studio Online (VSO) でのソース管理(バージョン管理)についてお話ししたいと思います。

いきなり質問ですが、開発拠点が複数(離れている)場合、ソースの受け渡しやバージョン管理をどのように行っているでしょうか?
私は今までVisualStudioで作成したソリューション、プロジェクト、ソースの一式をZIP圧縮してメールに添付していることが大半でした。
で、送られてきたZIPファイルを解凍し、こちらにあるソースとマージ⇒ビルドエラーがないことを確認⇒マージ後のソースをZIP圧縮⇒メール添付とするたびに「何かもっと効率的な方法はないかなぁ・・・」とよく思っていました。

そんなとき、インターネットで調べ物をしていると、「クラウド上でソースを管理できて、しかも5ユーザーまでは無料(*1)」なるものを見つけました。
 *1・・・一部課金や機能制限があるようです。
それが今回の「Visual Studio Online」。
これがどんなものか知りたくてイチから調べることにしました。

・・・と前置きが長くなりましたが、今回は「クラウド上にソースをチェックイン!」まで一気に実現したいと思います。

  • 兎にも角にもクラウド上に場所がなければ始まらない
まずはマイクロソフトさんに場所を提供してもらいましょう。
「Visual Studio Team Services」の「無償利用の開始」をクリック。

えっ?「Visual Studio Team Services」?「Visual Studio Online」ではないの?
ここの説明は少しややこしいので本家マイクロサイトや他サイトにお譲りしますが・・・
簡単に言うとこういうことです(こういうことだと理解しています・・・)

  ・Visual Studio Team Services ・・・自社にサーバーを立ててソースを管理する(オンプレミス)
  ・Visual Studio Online    ・・・インターネット上でソースを管理するサービス(クラウド)

まぁ難しい話は追々理解するとして(笑)。先に進めましょう。

自分だけの場所を作るために世界中でユニークな名前(早い者勝ちです)
Manage code using はお好みで♪。入力したら「Continue」をクリック。
すると、クラウド上に場所を作成してくれます。

はい!クラウド上にソースを管理する場所が出来ました。ほら、かんたんかんたん♪
  • サンプルソースは定番の「Hello World」
次にVSOにチェックインするサンプルソースを作成します。
言語は何でも良いので、C#でサクッと作成したいと思います。
あくまでサンプルです。期待しないでください。
「Hello World」ボタン押すと、「Hello World」とメッセージが表示されるだけですので。。。

  • いざ、チェックイン!

サンプルソースが出来れば、Visual Studio 2015 の「チーム」->「接続の管理」をクリック。
チーム エクスプローラーの「接続...」をクリック。


新しく接続先を設定するので、「サーバー」をクリック。
「追加」をクリック。
初回はログイン確認があるので、VSO登録時のアカウントでログイン。

VSOアカウント登録⇒接続と続けて行うとエラーが発生するかもしれません。
VSOアカウント登録後は、一度ブラウザを閉じる等しておいた方がよさそうです。
(今回、VSO接続まで続けて行うとエラーが発生し上手くつながりませんでした・・・)
(そのため、色々試した挙句、最後の手段。PC再起動でなぜかあっさり接続できました。ナゼだろう。。。)

気を取り直し。VSOに接続出来れば選択し「閉じる」をクリック。
VSOに接続できれば、チームエクスプローラから「ソース管理エクスプローラー」をクリック。

今回チェックインするフォルダを追加するため、ソース管理エクスプローラーで右クリック「新しいフォルダー」をクリック。
コメント入力して、いったんチェックイン。
さきほど作成したソースをローカルパスにコピー。
再びVisual Studio2015を起動し、ソリューションの右クリック「チェックイン」をクリック。
コメント入力して、チェックイン!

クラウド上の「Code」ページを確認すると・・・
結果!クラウド上にソースを管理できましたさ。めでたしめでたし。

2017年8月12日土曜日

Unityで1日ゲーム制作

お久しぶりです。
夏休みの宿題は最終日にする派のやっまむーです。

夏季休暇に入る直前に懐かしい記事を見つけました。

「テトリスを1時間強で作ってみた」動画の投稿者にインタビュー──「プログラミングの楽しさ伝えたい」

今から8年前のものですが、わずか1時間でテトリスを作る、その手際の良さに非常に衝撃を受けたことを記憶しています。

さて、この記事に触発されまして、Unityで1日で何かアプリを作れないものかと挑戦しました。
以下はその記録になります。

インベーダー風シューティングゲーム

できるだけシンプルなものを!ということで、某インベーダーゲーム風のものを作りました。
所要時間…約5時間

一先ず基本的なことは一通りやってみました。
  • キー入力
  • 当たり判定
  • 弾の生成
  • 敵の移動制御
  • シーンのリロード

ただし時間の都合でエフェクトやサウンドはパスしています。

色々と調べながらのため1時間では無理でした。
もう少し知識をつければスピードアップできそうですので、
今後も頑張っていこうと思います。

では今回はこのあたりで。

2017年8月4日金曜日

GoでAndroidアプリを作成 ~環境構築(on Windows)~

どうも

もりもりです。

GoでAndroidアプリを作りたいと思ったので今回も環境についてです。

Androidの環境はSDKもNDKも既に入っています。
OSはWindows10です。

gomobileのインストール

まずはgomobileをインストールします。

$ go get golang.org/x/mobile/cmd/gomobile

次はgomobileで必要なツールをインストールします。

$ gomobile init -v

※「-v」を付けて進捗を確認できます。

ちなみに、環境変数に「ANDROID_HOME」をセットしておかないと
NDKが見つからないと怒られます。
(そらそうですよね。。。)
元々NDKは入ってたので、initして別のところにNDK入るのかなと気になり
ソースを見ていて発見しました。
下記サイトにも書かれてありますし、
ソースを見てもAndroidのパスを見ているところがありました。

<サイト>
https://godoc.org/golang.org/x/mobile/cmd/gomobile
<ソース>
$GOPATH\src\golang.org\x\mobile\cmd\gomobile\init.go

サンプルアプリのビルド

さぁ、これでビルドできます。

$ gomobile build -target=android golang.org/x/mobile/example/basic

サンプルアプリのインストール

さて、Android端末でサンプルを動かしてみましょう。

$ gomobile install golang.org/x/mobile/example/basic
Success

Successと出たので成功です。

Android端末を見てみると。。。

目がチカチカしますが動きました。



今日はこのへんで。

ではまた~。

2017年7月28日金曜日

C#7.0の新機能を使ってみた 第1回

こんにちは!


C#7.0で新しい機能が増えたので、早速使ってみました。
何回かに分けて、少しずつ紹介していきたいと思います。


out変数


out変数を使用する際、呼び出す前に、変数宣言をする必要がありました。





しかし、C#7.0では変数宣言と呼び出しが同時にできるようになりました。




地味に嬉しい機能です!



ローカル関数


下図のように、ある関数で、その中でしか使わない関数を定義し、呼び出すことができます。
  









もちろんこの書き方でもOKです。

書ける場所は限られますが、普通の関数と同じ感覚で使えるので使いやすいと思います。

2017年7月21日金曜日

Webアプリ初心者が学ぶRuby

みなさん、初めまして。
ひっくと申します。

まずは簡単に私の自己紹介から。

普段主にC#を使用して開発しています。Webアプリに関しては実はほぼ初心者。

でも以前からWebアプリの作成に興味があったということ、もりもりさんみたいに他の言語も勉強してみようということで
今回Rubyを学ぶことにしました。

さて、まずは開発環境からですね!

さっそく用意していきましょう。

今回はCloud9という、クラウドIDEを使用します。

Cloud9とは



https://c9.io/

Webブラウザから使える統合開発環境です。
Rubyだけでなく、GoやPython等多数の言語に対応しており
登録さえすればすぐに使えます!便利!
(ただ、動作は少し遅い...)

登録するための方法は、調べたら結構出てきますので
今回は割愛します。

Workspaceを作成する


登録が終わると、以下のような画面が表示されます。

画面中央の「+」を押下すると、画面が遷移します。
いくつか入力、選択して作成(「Create workspace」ボタンを押下)!

今回は次のようにしてみました。


コードを実行する


開発環境が整ったので、早速コードを実行してみようと思います。

左に表示されたフォルダ上で右クリック。
「New File」を選択し、ファイルを作成します。(ファイルの拡張子は「.rb」)

作成したファイルをダブルクリックすると、画面中央でタブが表示されます。
以下を入力します。

puts "hoge"


「Runボタン」を押下して実行!


「hoge」が表示されましたね。

Command入力欄に表示されているファイルが、実行対象になるようです。

Runnerでは、実行言語を変更できるみたいです。
失敗するのは明白ですが、RunnerをC言語に変更して、再度「Runボタン」を押下!


やっぱり失敗しました。
Runnerの選択候補に「Ruby1.9」と「Ruby2.1」が存在したので、
バージョン違いのコード動作確認とかもできるような気がします…

何はともあれ、環境は整ったのでこれから色々触ってみようと思います!

とりあえずのところ、今回はここまで。
ではまた!

2017年7月15日土曜日

アプリのUIデザインに参考になるサイト!


お久しぶりです。ありかわです。

今回は僕がアプリ開発でUIをデザインするときに、参考にしているサイトを紹介したいと思います。


MOBILE PATTERNS


海外のサイトですが、カテゴリ毎に色々なアプリのUIを見ることができます。


http://www.mobile-patterns.com


pttrns


こちらも海外のサイトでカテゴリ毎に色々なUIを見ることができます。
さらにiPad, Apple Watch等ハード毎にも分かれているので参考にしやすいです。



https://www.pttrns.com


色彩センスのいらない配色講座


このスライドすごく参考になりました。
配色って大事です。
https://www.slideshare.net/marippe/ss-9003317


それじゃまた。

2017年7月7日金曜日

Visual Studio で複数プロジェクトの対象フレームワークを一括で変更したい

はじめまして。初投稿です。ざわです。
先日、Visual Studio の対象フレームワークを[4.5.2]から[4.6.2]に変更したのですが、
ソリューション内にプロジェクトが30個ほどあり、
プロジェクトのプロパティを1つ1つ開いて変更するのはなかなか手間だなと思い
一括で変更してくれる機能はないものかとしらべてみました。











まず、標準機能では存在しないんですね。

次に見つけたのがVisual Studio の Marketplace にある「Target Framework Migrator」というツール。
しかし、ユーザーレビューをみると、ほんとうによいツールだ!という人もいればエラーがでたとか、プロジェクトが壊れたとのコメントも、、、😓

他にはPowerShellなどで自作スクリプトつくっている人もいましたが、
要は、対象フレームワークの情報はcsprojファイルに書き込まれているので

ソリューションの全csprojファイルを検索して<TargetFrameworkVersion>タグのバージョン部分を置換するというものでした。

であれば、Grep置換機能のあるテキストエディタを使って一括で置換するのが
一番簡単な方法なのでしょう。

ということで、サクラエディタの「Grep置換」を使って試してみました。
(サクラエディタのGrep置換はバージョン2.2.0.0以降から使える機能のようです)














こんなかんじで設定して置換すれば終わり。
  ①置換前
    "<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>"
  ②置換後
    "<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>"
  ③ファイル(※)
    "*.csproj"
  ④ソリューションのパスを指定
  ⑤[置換]実行

  ※ここではcsprojファイルをサンプルに載せていますが、
  対象フレームワークの情報は app.configなどにも設定されているので
  同様に変更が必要になると思います。