アジョブジ星通信

進捗が出た頃に更新されるブログ。

C#

新着順 人気順

主人公の好感度問題 完結編

遡ること 2017 年 4 月、「主人公の好感度問題」と題された、あの一大プロジェクトが、今日完結する……。 「主人公の好感度問題」とは 生まれて初めて買ったエロゲ―こと、ワガママハイスペック(以下ワガハイ)をプレイしていたときのこと。このゲームは、共…

私、ValueTaskは限定的でって言ったよね!

C#

メリークリスマス! みなさんは、見てないアニメをネタにするなんてしてませんよね? 私は「俺を好きなのはお前だけかよ」しか見てません。さて、並行並列プログラミングを愛し、スレッドプールに日々感謝を捧げているみなさんは、 ValueTask を活用している…

やはり ConfigureAwait のデフォルトはまちがっている。

C#

昨日の の TL について、 ConfigureAwait のデフォルトが true なのが気に入らないという話をブログにまとめておきます。まぁ所詮 C# 入門者の私の意見だし、いまさら仕様変更されることもないと思うので何言っても仕方ないんですけどね。

いまさら使う TPL Dataflow

C#

みなさん、並列処理、書いてますか? つらい、つらいよね、わかるよ。ある部分は高速化のために並列で実行し、ある部分は整合性を取るために直列で実行し、入力ジョブのキューが膨大にならないように流量を調節しながらジョブを入力して……。こんなプログラム…

さぁ fixed を捨てて Unsafe だ

C#

早すぎる最適化が好きな人のための C# 7 の有効活用ガイドです。ある構造体をそのまま byte 配列に突っ込みたくなるとき、ありますよね?構造体ならメンバーに名前がついていて書きやすい、でも相手が byte 配列だから 1 バイトずつ手書きするしかないのか………

ILSpyのエンジンで逆コンパイルしよう

C#

高校三年生になりました。降参です。以上です。とかいう話をしましたが、あのあともはや完全に 1 から作りなおしに近い形で大幅アップデートしました(といってももう 1 週間以上前の話ですが)。あの記事で挙げたこれからの予定ですが、まさかの「アイコン…

I/O待ちのためのTaskとバックグラウンド処理のためのTask

C#

ポエポエ~~I/O 完了待ちを行う OS 機能の抽象化としての Task とスレッドプールに積んだ処理の抽象化としての Task をごっちゃにしてて反省— 優勝したい (@azyobuzin) 2017年6月2日の一連のツイートのまとめでもしておこうかと。 I/O 待ちのための Task I/…

System.Stringのコンストラクタを許すな

C#

String のコンストラクタ、ありえてはいけない存在だよな— ウィンドウズ青山 (@azyobuzin) 2016年8月2日ということは、コンストラクタを FCall にするとあり得ない型のインスタンスをお返しすることができるわけですね!!— ウィンドウズ青山 (@azyobuzin) 2…

非同期処理のデータ伝達を楽にする System.Threading.Tasks.Channels

C#

corefxlab Advent Calendar 12 日目です。頓挫しかしてねえ!!!今回は System.Threading.Tasks.Channels の紹介です。また無駄に詳しくやっていこうと思います。(というかこれ紹介でも解説でもなくリファレンスマニュアルってやつでは)実をいうと、これ…

.NET 3.5 でも async / await

C#

実際需要ないと思うけど、残念ながら学校の PC は Windows 7 のほぼ初期状態に近いので、 .NET 4 なんてないし、そもそも Windows Update のアップデートが必要なレベルなので相当やばい。そんな環境で動かすアプリでも async / await 使いたいな、というと…

await 中の Task をキャンセルしてみる

C#

こんにちは。ゴールデンウィークになっても春休みの課題を終わらせていない azyobuzin です。最近また C# 関連記事が書けるようになってきました。……ええ、 Android の進捗ダメです。さて、なぜか Owner 権限を持っている CoreTweet プロジェクトで async に…

dot42 - Xamarin じゃない C# for Android

明後日からテストです。今日から本気出す予定(現在 23 時)です。今日は面白そうなものを見つけてきたので紹介。 Use .NET Framework API The most common part of the .NET Framework API is supported. .NET Framework types compile to a minimum amount…

NuGet.Protocol の使い方

テスト終わりました。色んな意味で。というわけで NuGet v3 を触るシリーズ続き行きます。NuGet では新たに NuGet.Protocol というクライアントライブラリを開発しています。 Visual Studio 2015 の NuGet Package Manager もこれを使用しています。 API v2,…

いちいちConcatとか書くの面倒だったから+,-でいじれるの作った

C#

今日Visual Studio Professionalをついに買ってしまったわけ(証拠)で、今日中にインストール終わるか不安だったけどなんとか終わったのでちょっとコード書いてました。 public class OperatableEnumerable<T> : IEnumerable<T> { public OperatableEnumerable(IE</t></t>…

adb logcatを楽にするかもしれないReactiveLogcat

Androidさんが糞すぎてJavaはエラー吐いて落ちるし、Scalaはパッケージングに失敗するしで全然進んでないので、せめてテスト作業を楽にしようと思って作ってみました。機能は adb logcat -v long を読んで色をつけて出力 YACQでフィルタリング といったとこ…

C# で StrConv を実装する

C#

C# Advent Calendar 6 日目です。ここまですごくハイクオリティだったのに空気壊すようでごめんなさい。さて、書くネタがもうn番煎じかわからないくらいたぶん既出です。というわけで VB のライブラリにある StrConv を実装してみました。 なんでこんなこと…

DNXでC#以外の言語をコンパイルしてみよう

目次 目次 DNXの可能性 よろしいならば実装(インプリメント)だ 完成品 IProjectCompiler を実装する IMetadataProjectReference を実装する 使ってみよう 終わり DNXの可能性 DNX で C# 以外の言語を使えるのかと思って調べていたところ、 F# を動作させる…

CoreFXで進化したLINQのお話

C#

昔々のお話 こんなライブラリを作った記憶があったのですが、最近 C# パフォーマンスヤクザ[要出典]になりかけている僕に、 IReadOnlyCollection<T> を使用することで、 リスト→LINQ→ToArray といった処理を効率化できるのではないだろうかと考えて、このライブ</t>…

MySQL Connector/.NET の TreatTinyAsBoolean のバグと Dapper

C#

MySQL Connector/.NET、長いので MySql.Data と呼びます。 バグについて MySql.Data の接続文字列で使用できるオプションとして、「TreatTinyAsBoolean」または「Treat Tiny As Boolean」というものがあります。これはデフォルトで有効になっていて、このオ…

ツイートの新構造対応のメモ

これです。 CoreTweet 0.6.3 で API の変更には対応したのでその使い方について説明を書いておこうと思います。 1. とりあえず tweet_mode=extended をつけておく 新構造のデータを受信するには tweet_mode=extended を指定する必要があります。 CoreTweet …

ツイートに含まれるURLを高速に抽出するライブラリ、つくりました

2016/03/13 お知らせ: このライブラリの内容を含めて twitter-text 完全互換のライブラリを作りました。こっちがメインになります。 お知らせ終わり。URI教の皆さんへ: Twitter が URL って言ってるからこっちに統一しました。許して。はい、タイトルの通り…

ASP.NET 5アプリをUpstartでデーモン化してnginxでリバースプロキシするお話

タイトルで内容が全部終わった。要するに「もう Hello, World だけして満足する時代は終わった。Linuxの本番環境に乗せるぞ」ということです。 dnu publish 合言葉は dnu publish --configuration Release --no-source --framework dnxcore50これで CoreCLR …

ICompileModule でメタプログラミングするやつ

あけましておめでとうございます。今週のお題「今年こそは」だそうですが、今年こそは強い人間になりたいですね。というのも最近どんどん挑戦することが嫌になってきて……。本題行きます。ASP.NET タグが指定してあることからわかるように、今回も DNX の話で…

System.Buffers.ManagedBufferPool を理解する

C#

corefxlab Advent Calendar 6日目です(大嘘)。昨日の記事の補足というか、こっちもちゃんと理解していないと無駄が多くなりそうということで書いておきます。 この記事の最終更新日は 2015/12/06 です。変化の多いリポジトリで、仕様も固まっていないこと…

無駄なく文字列生成! System.Text.Formatting の使い方と動作の流れ

C#

Advent Calendar の季節ですが、何にも参加していないので好き勝手書いていきたいと思います。さて、今回は .NET Core Lab プロジェクトで開発されている System.Text.Formatting について、主な使い方と、さらに深入りして使うには、ということで書いていき…

文化祭のためにつくったタイピングゲーム

文化祭お疲れ様でした。3年生なのでクラスの出し物もないので、初めて高校の文化祭をちゃんと回ってみました。今年は去年よりどこもクオリティが高かった印象です。我がコンピュータ部を除いて。今年はタイピングゲームを作りました。本当はタイピングしなが…

LINQPadのクエリと結果を一緒にGistにアップロードするツール

つくった。azyobuzin/lpgistHTML で出力する → Gist に上げる → bl.ocks.org で見れる → 最強

TwitterのOAuthバグを攻略

Twitter の API がクソであることは、数年前から既知の事実でしたが、まさか OAuth の仕様すら無視しているとは思ってもいませんでした。というのが 1 月あたりの話ですが、比較できるコードが書けたのでブログに書きます。

SearchGalleryQueryService と NuGet.Services.Search.Client

https://api.nuget.org/v3/index.json に書いてはあるけど実態がよくわかっていなかった SearchGalleryQueryService についての話。以前の検索 API の話と同じくソースコードは NuGet.Services.Search にあります。で、 SearchQueryService と SearchGallery…

NuGet パッケージ調査支援ツール NuGetCalc の web 版、できました

タイトル長い乙。というわけで「DockerでOWIN Self Hostアプリを動かす」のスクリーンショットに写っていた NuGetCalc の Web 版が(最小限の機能が)完成しました。ちゃんと Ubuntu の VPS 上で mono を使って動いております(Linux でビルドできるとは言っ…