de:code2018 に行ってきた

技術や情報、ヒトとモノ、行きかう出会う触る知る、「お土産」は物質だけじゃないから、この手のイベントはやめられないw あ、会場を着物でウロウロしていたのが私ですw

Microsoftさんとこのイベント、de:code2018 今年もアプリ提供で色々と捗りました。

https://www.microsoft.com/ja-jp/events/decode/2018/

Screenshot_20180524-184756Screenshot_20180524-184814

行ったセッションはこんな感じ。

アプリケーション開発(デスクトップ&.NET)を中心にして、興味ある分野(CSIRTとか、オンプレとか)つまみ食い。

体調と相談しながらだったからフル参戦はできなかったorz

今はチマチマと自己満足ライブラリ作ってたり、ときどきコンサルしたり、翻訳したり、だから、べったり開発者です的な活動はしていないけれど、こういったイベントで「何か」を得ること、それは知識や出会いや再会や10%引きの関連書籍やノベルティとかかもしれないけど、私の言葉でいう「お土産」をもって帰ること、はとても大事っていつも思う。

セッションの終了には「Ask the speaker」ってのがあって、セッションしてくれた人と一対一で話せるし、DAY1の最後にはパーティがあって、偶然同じテーブルになって一緒に乾杯して大盛り上がりしちゃうかもしれない。袖すりあうも、で、名前きいたら、知ってるコミュニティの人だったり、とある書籍の作者だったりするかもしれない、掲示板で質問に答えてくれていた人かもしれない、それでいいと思うんだ。市場調査、知識吸収、それぞれの目的があるし、その目的のためにイベント参加もあると判る一方で、きっとそれ以上の「お土産」があるのが「イベント」であり、「勉強会」だと私は思う。その「お土産」に自分の資産(時間とお金)をどこまで使えるのか、最後はそこに尽きるけどw

システム屋って、案外、孤独な時ってあるんよね。私みたいに、おひとり様情シスとか、Sierもどきとか、いろんな業種業界業態で、時には全く異世界な環境でITやってたりとかしてるとね、そんな気持ちをもったりすることあるんだ。そんなとき、そんな大変さを知っている人たちと知り合いでいる、ってことはとても支えになったりすることある。大変さを知らなくても「大変な人もいるんだ」と生で知ることも、きっと、そうならないための試金石になれるし、反面教師にもなれる。私としては、「同じ轍は踏んでほしくない」っていつも思うし。だから、「お土産」を何か持ち帰ってほしいなぁと、その「お土産」に私がちょっとでも手伝えていたらいいなぁ、と思ったりもする。こういうところに現れる時にはねv

といっても、アプリにはまだまだ改善点があるし、会場動線の問題、休憩できる場所が少ない&わかりづらい、とかあるけれど、

んなことはとりあえず置いといて、

今回も、たくさんの「お土産」をありがとう。

.NET Standard のライブラリのテストにNunit 3.x を使ってみた

Console.WriteLine は正義。「ステップができない」「あんなの飾りです! 偉い人にはそれが分からんのです!」

参考サイト:https://docs.microsoft.com/ja-jp/dotnet/core/testing/unit-testing-with-nunit

上記のところのネタは .NET Core なのでGUIでもテストできる、つか、テストエクスプローラからいけるんだけれども、.NET Standard を対象にしたNUnit3.xの実行時はテストDLLの作成先パスの問題で動作失敗するので、テストエクスプローラでの実行、デバッグは不安定で動かないことままあり。まぁパス変更してそこに対してロードできるようにすればいいんだろうけど、いろいろごにょるくらいならシンプルでサイクル回せるつくりの方が楽だって思うのよね。

だって、CUIでできるんだもん。GUIなんて飾りですw

まずはソリューションにテストプロジェクト作成。

いきなりですが、ここですでにGUI(Visual Studio)を離れますw

image

ソリューションの右クリックからコマンドプロンプト起動w

> dotnet new -i NUnit3.DotNetNew.Template

まずはテンプレを追加。

そのあと、テストプロジェクトとなるディレクトリを作成。これはmkdirでOK。

mkdirできたら、そのディレクトリにカレントを移動して

> dotnet new nunit

ここまで作ったら、いったんVisualStudioに戻って、作成したテストプロジェクト(.csproj)をソリューションに追加。

追加が正常終了したらすぐにプロジェクトをアンロード。

そのまま右クリックで、テスト用のcsprojを編集。ItemGroupのPackageReferenceを推奨バージョンにセット。

<ItemGroup>
  <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
  <PackageReference Include="NUnit" Version="3.9.0" />
  <PackageReference Include="NUnit3TestAdapter" Version="3.9.0" />
</ItemGroup>

編集し終わったら、プロジェクトを再読み込み。

そしてテスト対象のプロジェクトをここから参照。

> dotnet add reference <相対パスで対象のcsproj を指定>

いつもどおりにテストコードを書いたら、テストプロジェクトの右クリックからコマンドプロンプト起動

> dotnet test –logger:trx

でテスト実行。

image

image

ちゃんとレッドグリーンで結果が表示されるんだよw そこ、大事。

テスト結果は、Visual Studio のテストプロジェクトのTestResultsフォルダにあるので、そのままVisualStudioで確認できるよ。

もちろん、レッドグリーンでねv

PS.ここまで来ちゃえば、こうしてもいいと思うの。

image

これで、コマンドプロンプト移動しなくてよくなるw

image

てな感じで、かなり自動w ただ、レッドグリーンの色変えがVisualStudioの出力にはないので、寂しいけどね。

.NETCore とか .NETStandard とかで使う dotnet コマンドを動かしてみた

さよならGUI、おかえりCUI、きっとそんな風に普通に感じるのは Consoleアプリ好きでそれが自分の基本だから、きっとそうw

dotnetコマンドってのがいるの。

image

これは .NET Coreとか .NET Standardとかで使うことになるコマンド(まぁ .NETFramework でも使えるけどさw)。できることは、VisualStudio内でソリューションつくって、プロジェクト作ってといった操作をコマンドラインでできるようにしたもの。GUIだとうまくいかないことがあったりするんだけど、CUIから手順を踏めば地雷原をある程度避けられるっぽい。

場所は、「C:\Program Files\dotnet」

インストールしたときにパスに追加しておいてくれるから、そのままどこからでも起動OK。というかそうでないと困るのよ実はdotnetコマンドは動作させるソリューションやプロジェクトのパスで実行しないと想定した結果を作ってくれない

無いって人が入れたいときは、ここから → https://docs.microsoft.com/ja-jp/dotnet/core/tools/?tabs=netcore2x

いっぱいできることあるんだけど、とりあえず覚えたコマンド。

  • dotnet new ほげほげ
  • dotnet sln add ほげほげ
  • dotnet add refference ほげほげ
  • dotnet test

まぁソリューション作ってプロジェクトつくって参照させてテストして、的なひととおりの部分なんだけど、.NET Core とか .NET Standard とかは新参者?というか、ヴィジュアル系でないというか、やりたいことがGUIからではできなかったり、GUIで作ってもそれじゃ足りなかったりして後から設定変えたりとか面倒ごとを抱えたりする。なのにいてくれないと困る系なもんだから、そういうのを避けるためにこっちでやっとくと吉。

Windows PC に Android NDK を入れてみた

Android Studio さくっと入れただけ、だと NDK って入れ忘れるよねw

で、後からでも入れておかないと、

image

Visual Studio あげるたびに Xamarin さんが Not Found ってログ吐いて鬱陶しい。なので黙らせるw

image

まずは、Android Studio のメニューの Configure から SDK Manager をたちあげて、SDK Tools 選んで

image

NDK にチェックして「OK」でインストール開始。あとは頑張ってくれる。

入れ終わったら、 NDK のパスを Visual Studio の Xamarin の設定に入れて終わり。