pixivのフィード

https://zenn.dev/p/pixiv

https://www.pixiv.co.jp/

フィード

記事のアイキャッチ画像
キミにも作れるPHPStan拡張
pixivのフィード
こんにちは! PHPStanを活用していらっしゃいますでしょうか。PHPStanは今日では言わずと知れた静的解析ツールですが、プラグイン機構を備えており、型付けのためのさまざまな機能を提供しています。PHPStanはできるだけコードを書かずPHPDocによる記述だけで多くのケースには型をつけられるようになっていますが、残念ながら本稿執筆時点のPHPStan 1.10系ではPHPDocだけですべてのニーズを満たすことはできないため、より深くPHPStanを利用するにはプラグインの理解が必要になります。プラグイン機構は外部パッケージによる拡張だけでなく、PHPStan本体に組み込まれてい...
1ヶ月前
記事のアイキャッチ画像
RFC 3339 を拡張する日付時刻形式 Internet Extended Date/Time Format (IXDTF)
pixivのフィード
背景2023年10月に RFC 3339 を拡張する新たな日付時刻形式を定める RFC Draft: Date and Time on the Internet: Timestamps with additional information が IESG によって承認されました。https://mailarchive.ietf.org/arch/msg/ietf-announce/g_JdmxVWPKhV_GYYcSKVUk5czjE/これは TC39 で標準化が進められている ECMAScript Temporal において、生成する文字列形式にタイムゾーンなどの追加情報を入...
3ヶ月前
記事のアイキャッチ画像
ECMAScript Module Harmony
pixivのフィード
Module Harmony とは現在 TC39 で多くのモジュール機能を追加する提案が進行しています。かつてはそれぞれの提案が無秩序に進行していましたが、2023年5月に Module Harmony として整理されました。この記事ではそれら提案についてまとめようと思います。https://docs.google.com/presentation/d/1mZrAHHimtM_z_8fM9L3DUXFz5bjlJPxx8VrwsC68hmk/edit#slide=id.pモジュール提案仕様の依存関係 インポートフェーズ修飾子モジュールの読み込みがフェーズに分けられ、それ...
4ヶ月前
記事のアイキャッチ画像
Stage 3 Iterator Helpers におけるハッキーな Break the Web 解決策
pixivのフィード
Stage 3 Iterator Helpers による Break the Web2023年12月現在 Stage 3 Iterator Helpers という提案が進行中です。https://zenn.dev/pixiv/articles/062461b79e0d8fさて、この Iterator Helpers で残念なことに Break the Web が起きてしまいました。その原因が複雑で、なおかつその解決策もハッキーで面白いものだったため解説しようと思います。https://github.com/tc39/proposal-iterator-helpers/issu...
5ヶ月前
記事のアイキャッチ画像
DOM Observable は Push ストリームのデファクトスタンダードになるか?
pixivのフィード
変更情報【2024/01/25】記事の構成を変更Observer が SubscriptionObserver にリネームされたのに追随し更新Firefox のプロトタイプ実装が始まったことに言及【2023/12/01】Observable#subscribe にそのまま函数を渡せるようになったのに追随し更新subscriber.addTeardown についての記述を追記【2023/11/21】Observable#subscribe へ AbortSignal の渡し方が変わったのに追随し更新RxJS を使ったことがある方は Observab...
7ヶ月前
記事のアイキャッチ画像
PHP Early Days (誕生から4まで)
pixivのフィード
この記事は何か某社の某雑誌に寄稿しようと思って書いた記事の初稿… だったのですが、テーマじゃないところに紙幅を割きすぎて本来のテーマを大幅に逸脱した上に、書いてから三年ほど置いてしまったものです (執筆自体はまだ諦めてません)。ちょうど「LLイベント」ことLearn Languages 2023というイベントで「PHPの20年とこれから」としてPHPの歴史を話したので、せっかくなのでこの期に公開してましょう。https://ll.jus.or.jp/2023/!なお筆者(tadsan)自身の体験としてはPHPをまともに触りはじめたのは2010〜2012年くらいから、バージョ...
8ヶ月前
記事のアイキャッチ画像
PHPStanクイックガイド2023
pixivのフィード
PHPStan (PHP Static Analysis Tool)はコードを実行せずに検査できるツールです。本稿では業務アプリケーションにPHPStanを導入するまでに押さえておきたい事柄を記述します。!この記事の初出はPHPerKaigi 2023のパンフレット原稿です。 導入PHPStanは本稿記述時点の1.9.x系において、PHP 7.2以降で実行できます。PHPStanは composer require --dev phpstan/phpstan でのインストールが基本です。プロジェクトルートの phpstan.dist.neon に、以下のように記述してくださ...
8ヶ月前
記事のアイキャッチ画像
R.swiftでアクセス修飾子を指定する
pixivのフィード
R.swiftのREADME.mdを読むと.target( name: "Example", dependencies: [.product(name: "RswiftLibrary", package: "R.swift")], plugins: [.plugin(name: "RswiftGeneratePublicResources", package: "R.swift")])と書いてありますが、実はR.swiftのプラグインは次の2つがあります[1]。RswiftGeneratePublicResourcesRswiftGenerateInt...
9ヶ月前
記事のアイキャッチ画像
Emacsで . を打ったときにいい感じにする
pixivのフィード
プログラミング言語の構文が野暮ったいからといって、人間様がそれにつきあってキーボードで愚直にカチカチと丹精込めて入力して差し上げる必要はない。たとえば、JavaやRubyに慣れた人にとってはPHPのオブジェクトアクセスの->は、とても野暮ったく見えるだろう。PHPの.演算子は文字列結合だというのも罠だ。!もしこれらのキーワードで混乱しない自信があったとしても、PHPのオブジェクト指向で頻出の$this->の入力にストレスを感じていないとしたら、不便に飼い慣らされています。 前段: Smartchrを使うsmartchr.elという拡張パッケージがある。これはキー...
10ヶ月前
記事のアイキャッチ画像
PHPからのHTTPリクエスト (2016年版)
pixivのフィード
これは2016年にWEB+DB PRESS Vol.92掲載のPHP大規模開発入門連載『PHPからのHTTPリクエスト ファイル操作関数、curl関数、Guzzleライブラリ』として寄稿した原稿を改稿したものです。ベースは2016年に書かれた記事ですが、PHPからHTTPリクエストを発行するための基礎について押さえられる内容が含まれており、2023年6月にPHPカンファレンス福岡2023で発表予定の『【令和最新版】開発者フレンドリーなHTTP SDK作るには』の前提となる議論も含まれるため、この機会に公開します。!この記事の内容はMarkdownで執筆した著者最終稿をベースにWeb...
1年前
記事のアイキャッチ画像
【俗・】Deno に“守り”のコントリビュートをしてきた話
pixivのフィード
Deno に“守り”のコントリビュートをしてきた話の続編です。読んでない方はまずそちらから御覧ください。 primordials.js についてDeno が提供している API は多くが JavaScript で実装されています。もし何も考えずに単純な JavaScript のコードで API を実装してしまっていた場合、ネイティブのプロトタイプメソッドが変更されてしまったときに影響を受けてしまいます。この問題を回避するため Deno の内部コードでは primordials.js というものが用意されてあります。https://zenn.dev/pixiv/articles/...
1年前
記事のアイキャッチ画像
DataplexのデータリネージAPIを使って、対象のテーブルに依存しているテーブルをスクリプトで列挙する
pixivのフィード
なぜこの記事を書くのか?DataplexのデータリネージAPIを有効にすることで、BigQueryのテーブル間の依存関係を簡単に可視化することが出来る。https://cloud.google.com/data-catalog/docs/concepts/about-data-lineage?hl=ja特定のテーブルを参照しているテーブルが少ないうちはGUIを使うだけで問題ないが、よく参照されるテーブルの依存関係を把握する際に辛い部分もある。こういった作業を容易にするために、APIから情報を取得することで簡単にデータを取れるようにした。このAPIから情報を取得、一覧として表...
1年前
記事のアイキャッチ画像
正規表現を豊かにする ES2024 RegExp v (unicodeSets) フラグ
pixivのフィード
変更情報【2023/05/17 変更】2023年5月の TC39 会議で Stage 4 になったため、タイトルを変更HTML Standard の pattern 属性に取り込まれたので修正 ES2024 RegExp v (unicodeSets) フラグES2024 に RegExp v (unicodeSets) フラグというものがあります。これは既存の u (unicode) フラグを改善して置き換え、機能追加することを目的としています。https://github.com/tc39/proposal-regexp-v-flag詳しい内容については V8...
1年前
記事のアイキャッチ画像
非標準な Headers.prototype.getAll を通じて見る JavaScript ランタイムの違い
pixivのフィード
Headers についてHeaders は WHATWG の Fetch Living Standard で定義されている HTTP リクエスト/レスポンスヘッダーを扱う JavaScript のクラスです。const headers = new Headers();headers.append("Content-Type", "application/json");console.log(headers.get("Content-Type")); // => "application/json"https://developer.mozilla.org/ja/doc...
1年前
記事のアイキャッチ画像
TypedArray のサイズが可変になる Stage 3 Resizable ArrayBuffers
pixivのフィード
現状の ArrayBuffer の問題現状 JavaScript の ArrayBuffer はサイズが変わることを想定していません。そのためサイズを変える必要がある API の仕様を作るとなると ECMAScript サイドではなく、その API サイドでの対応が必要な状況になっています。例えば WebAssembly.Memory を見てみましょう。https://webassembly.github.io/spec/js-api/#memories[LegacyNamespace=WebAssembly, Exposed=(Window,Worker,Worklet)]...
1年前
記事のアイキャッチ画像
PHPer vs モナド
pixivのフィード
こんにちは! モナド書いてますか? 私は書いてません!関数プログラミングにはモナドがつきものということで、近年はScalaやF#のような言語でもモナドや類似の概念が愛用されています。ところで筆者はRubyやLispのような動的言語でのダイナミックなプログラミングが大好きです。Lispも関数型言語と呼ばれることがありますが、基本的にはモナドのモの字も出てきません。そんなこんなで長期間にわたって関心を払いつつ、完全マスターしようと本を読んでも10年以上経ってもしっくりこないままです。今回の記事の目的は、そのよくわからない概念をPHPに再現することで理解を試みることです。!強い警告:...
1年前
記事のアイキャッチ画像
Deno に“守り”のコントリビュートをしてきた話
pixivのフィード
!この記事は Deno の内部コードについて述べています。一般的な JavaScript アプリケーションでは考慮しなくていい内容がほとんどを占めます。ご注意ください。 primordials.js についてDeno が提供している API は多くが JavaScript で実装されています。もし何も考えずに単純な JavaScript のコードで API を実装してしまっていた場合、ネイティブのプロトタイプメソッドが変更されてしまったときに影響を受けてしまいます。この問題を回避するため Deno の内部コードでは primordials.js というものが用意されてあります...
1年前
記事のアイキャッチ画像
PHPStanをどうやってインストールするか
pixivのフィード
PHPStanはPHPの静的解析ツールです。現代のPHPerはみんな使ってるよ。……ところで、みなさんはPHPStanをどうやってインストールしているのでしょうか。PHPStan開発者のOndřej Mirtesは次のように述べています。https://twitter.com/OndrejMirtes/status/1541771569735036928多くの場合において、Ondřejの言う通りcomposer require --devが最善のインストール方法です。この記事では、なぜそれが推奨のインストール方法だと言えるのか、どのような場合に別の選択肢が候補に挙がるのかを解説...
2年前
記事のアイキャッチ画像
PHP式プログラミング入門
pixivのフィード
式、書いてますか? 私は書いています。この記事を書いているみなさまも、おそらく書いているのではないでしょうか。本稿では私が大好きな式プログラミングというスタイルのコーディングテクニックについて紹介します。初めに申し上げたいのは、この記事の内容をお読みいただくことでPHPやプログラミング言語についての知識をある程度まで理解することはできますが、この記事が目指すポイントはある種のパズルであり、非実用的なテクニックでもあります。しかし、私は思うのです。実用的なテクニックとは日常と過剰の間のどこかにあるのではないかと。この記事の初出はPHPerKaigi 2021のパンフレットに寄稿し...
2年前
記事のアイキャッチ画像
プロトタイプ汚染周りの提案と primordials.js
pixivのフィード
はじめにこの記事では TC39 のプロトタイプ汚染周りの提案、そしてグローバルやプロトタイプのプロパティ変更に耐えるためのコードである primordials.js について紹介します。 プロトタイプ汚染とはJavaScript はプロトタイプベースの言語です。どのオブジェクトもプロトタイプ([[Prototype]] 内部スロット)を持っており、それを辿ることで継承を表現します(プロトタイプチェーン)。https://developer.mozilla.org/ja/docs/Web/JavaScript/Inheritance_and_the_prototype_cha...
3年前