「プログラミング」に関する日記(9)

プログラミング関係の話題。プログラミングコーナーを更新したとか、プログラミングの内容に踏み込んだ話とか。

<前 次>

PA-APIとTwitter API

うちのサイトにPA-API 4.0がまだ残っていると連絡が来ています。
もう全部滅ぼしたはずなんですが…。

https://developer.twitter.com/en/docs/tweets/timelines/api-reference/get-statuses-mentions_timeline
メンションのタイムライン?

スーパーカービィハンターズとSameSite

スーパーカービィハンターズ

ゲーム記にページを作りました。
何か解説でもしようかと思ったけど、解説できるような写真が全然撮れなかったので、ほぼ自分の進捗を書くだけのページになりました。
で、その進捗はと言うと、ストーリークリア済みで、後はジェムリンゴ集めてクリア後要素に挑むだけなので、書くことがあまりないという…。
時期を外した感があります。

SameSite

Chrome 80が密かに呼び寄せる地獄 ~ SameSite属性のデフォルト変更を調べてみた - Qiita
クッキーのデフォルト値が変わって、ドメインをまたいだクッキーの利用が難しくなるということです。
もろに影響を受けるのは、主にWeb広告で、うちだと、Amazonのアフィリエイトが当てはまります。
対応しなければいけないのはクッキーの発行側なので、私の方では何もできることはないのではありますが。

WellKnownUriParser

DLLで提供されるライブラリにドキュメントコメントを反映させるテストも兼ねて、アップデートしました。
今回は、何もプログラムには手を付けず、本当にドキュメントだけの更新です。

必要だった設定は、csprojファイルに以下の1行。
<GenerateDocumentationFile>true</GenerateDocumentationFile>

NeoMupl

データや設定によってはループが全然完璧じゃなかったので、修正していました。
先走ってすぐリリースしてしまわなくてよかった。

それから、次期バージョン以降だけど、ループポイントをいい感じに設定するための技術情報調査中。
NAudioの作者が波形を表示するライブラリを作ってくれているみたいなので使えるかも。

WellKnownUriParserとドラゴンクエスト10とニコニコ動画

WellKnownUriParser

テスト作りました。
CIツールに組み込むのはまた今度。
で、今はテンプレート化の方に挑戦しています。
GitHubの方にはすでにIssueを作っていますが、T4(Text Template Transformation Toolkit)を使うつもりです。

ドラゴンクエスト10

ァォィョッュのメインストーリー進行。
ゼドラ洞から戻ってきておっさんから鍵を託されたところまで。

ニコニコ動画

サムネイル差し替え終わりました。
妥協したものもありますが、元のサムネイルとほぼ同じものを付けられたと思います。
しんどかった…作業量的にも…精神的にも…。

WellKnownUriParser

プレリリースですが、公開しました。
NuGetに登録すること自体が初めてだったので、お試しがてらにプレリリースバージョンとしていますが、機能的にはすでにAccessAnalyzer.RefererAnalyzerと同等のものを持っています。
テストとかサンプルとかをちゃんと用意するのと、あと、対象サイトの追加が結構単純作業なので、テンプレート化できないかなとか、考えています。
TGWS側での配布は…コンセプト的に、しなくてもいいかな。

WellKnownUriParserとドラゴンクエスト10

WellKnownUriParser

ナマライザ自身の変更ではなく、使用している部品を独立させてライブラリ化しようと考えています。
今でもAccessAnalyzerと言うライブラリの一部として「RefererAnalyzer」という名前で作ってありますが、うまく機能に分かれていないのと、.NET Coreに対応していないのと、一般的過ぎて中身を表していない名前なのが気に入らなかったので、新たに作り直します。
そして、ここからが一番やりたかったことなのですが、NuGetに登録して、パッケージマネージャを通じて、現代的な「普通」のやり方で導入できるようにしようと思います。
毎回バイナリをコピーとか、一度ビルドしたはずのものを使用者側でもまたソースコードからビルドとか、そういうのはもうやめたいのです。

AccessAnalyzerのもう一つの片割れ「LogReader」も、設計ひどいし超メモリ喰いだし、切り分けてまともにしたいのですが、何せ設計のひどい巨大クラスなもので、すぐには無理かな、と言うところです。

ドラゴンクエスト10

別のこのゲームに限った話じゃないんですが、毎日繰り返し遊べる微妙な稼ぎ要素ってのがあるんですね。
本編もちゃんと終わらせてないのに、目指したいものもないのに、ずっと同じ繰り返し。
ドラクエ10では、ここ何年か、花の水やり以外ほとんどやっていません。
これじゃ何も進まないし、栽培で得た資金も使い道がありません。
水やりをやめてがっつりストーリーを進めるような気合はないけど、せめて水やりのついででも、一区間走るだけでもいいから、ゲームの進行をしたい。
ということで、今日は、ァォィョッュで、グランゼドーラ城からゼドラ洞への一区間を走りました。
ゼドラ洞入り口のルーラ地点を記憶しておいたので、次回はこの続きからできるって寸法なのです。

ドラゴンクエスト10とミフミンのDQ10メモとPHP

ドラゴンクエスト10

ばにら
以前から作ろうとしていたけど期間限定イベントの都合で完成できなかった、アンパンマンのバニラ姫コスプレ装備が完成しました。
デザートスプーンがバトルロード限定で、不定期開催だったんですよね。

ミフミンのDQ10メモ

写真置き場にもっと楽にたくさん写真を置けるように、アップロード・重複判定周りを賢くしていました。
その副産物で、写真置き場の検索結果を拡張子「.json」を付けることでJSON表示できるようになりました。
私以外、使う人はいないと思われます。

PHP(Today I Learned)

ファイルのアップロード数の上限は設定項目max_file_uploadsで変更できるけど、プログラム内のini_setやディレクトリの.htaccessでは変更できない。
これを爆増させることができれば、写真置き場に全部の写真をまとめてぶち込めるようになるはずだったんですけどね。
レンタルサーバーの悲しい宿命です。
まあ、この件に限っていえば、もしかしたらもしかするかもだけど、原則はアップロード作業を楽にしてこまめにアップできるようにする方が運用としては良さそう。

アンパンマンDB

PA-API v5でうまく情報取れてないなと思ったら、使っているライブラリのバージョンの齟齬があって、ライブラリの奥深くで、使えない機能を使おうとしていたようでした。
ライブラリが使おうとしたけどなかった機能を、実際に使える機能にバイパスするコードを書いて対処しました。

ドラゴンクエスト10とAmazpn PA-API

ドラゴンクエスト10

くじ買った。
ァォィョッュのレベル上限解放90→93。

Amazon Product Advertising API

いつの間にかバージョン5ですと…?
しかも移行期限が2月まで…。
バージョン4には辟易していたので移行の意欲は強いけど、どのくらい良くなっているんだろうか。
そもそも、これまでできていたことは引き続きできるのだろうか。

Today I Learned

TILが案の定三日坊主になってしまっていたので久々に。
https://qiita.com/rana_kualu/items/50f9f5735321fe995ff5
PHP7.4の新機能。うちはまだしばらくは7.3にとどまるけど。
??=あたりはPHP3あたりで入っていればもっと喜ばれただろうなという印象。今時なら初期値はフレームワークがどうにかしてくれるしイミュータブルを好む風潮もある。
プリローディングはauto_prepend_fileの親玉みたいなやつかな。auto_prepend_fileはPHPだけで完結できないのが嫌でやめたんだけど、VPSでPHP使うときは利用を検討したい。
引数アンパックは便利そう。

日記のにぎやかしにもなるし、一度見てなるほどと思った情報をすぐ忘れてしまわないようにもできるし、習慣化したいね。

マジッククォート

古のPHPの負の遺産、magic quotes。
昔作ったページにいくつか残っていたので滅ぼしました。
一応動作テストはしておきたいので、後日アップすることになるかと。

.NET Core 3.0

正式版がリリースされたようなのでインストール。
Windows Formsは作れるけどデザイナがないのでまともに開発はできなさそう。

Change Risk Anti-Patterns (CRAP) Index

またPHPUnitの話題だけれども、CRAPインデックス。
コードの複雑性を評価したもので、でかいほどヤバい(悪い意味で)。
で、これの大きいメソッドをコードカバレッジのダッシュボードから見ることができるんだけれども、実際見てみたら、触れたくないカオスなコードが…。
気合いのあるときになんとかしよう。

PHP

無名関数のアロー表記が将来のバージョンで出るとか何とか…。
うちは今PHP7.3への移行途中なんでまだ関係はないのですが、微妙に長ったらしくて面倒だった部分が改善しそうです。
$f = function($x) { return $x * $x; } // 古い表記
$f = fn($x) => $x * $x; // 新しい表記
$y = $f(10); // 関数が実行されて100という結果が得られる

<前 次>