タグ

wazlyのブックマーク (318)

  • props のバケツリレーって何が悪いんだっけ - fsubal

    #React やってて、props のバケツリレーを何か嫌がる人たまにいるんだけど、自分は props のバケツリレーそのものをそんなに悪いと思ったことがない。 「バケツリレーがつらい」ように見えるコンポーネントの大半はそもそも props の設計がおかしい場合が多く、当の問題はそっちにあると思っている。 たとえば、次のようなバケツリレーはつらいかもしれない。ここでいう Body はサイドバーとしてフォロワーの一覧を表示し、メインコンテンツとしてフィード一覧を表示するみたいなものを想像して欲しい。フォロワー一覧の中で使う props とフィード一覧で使う props を混ぜて1つの親に渡している状況だ。

    props のバケツリレーって何が悪いんだっけ - fsubal
    wazly
    wazly 2021/09/25
  • PHPの文と式 - Qiita

    このスライドは突発で開催されたPHPerKaigi Online(仮)でしゃべるために用意されたものです。 前回のあらすじ コードを自在に操るためのPHP文法入門 PHPのソースコードを正確に検査したり、ソースコードの一部を書き換えたいと思ったことはありませんか? PHPにはPHP-Parserという構文解析ライブラリがあり、静的解析ツールのPHPStanやリファクタリングツールのRectorはPHP-Parserをベースにしたプラグインでソースコードを検査したり、ソースコードを書き換えたりすることができます。 しかしながら、構文木を操作するには普段何気なくPHPコードを書く以上のプログラミング言語についての知識が求められます。この発表では構文木を取り扱う前提となるプログラミング言語についての知識、PHP-Parserの構造、PHPStanとRectorそれぞれの拡張方法と実例についても紹

    PHPの文と式 - Qiita
    wazly
    wazly 2021/09/25
  • GitHub - microsoft/playwright: Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - microsoft/playwright: Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
  • React Hooks 大喜利 Advent Calendar 2018 - Qiita

    The Qiita Advent Calendar 2018 is supported by the following companies, organizations, and services.

    React Hooks 大喜利 Advent Calendar 2018 - Qiita
    wazly
    wazly 2021/09/25
  • how to delete a git tag locally and remote

  • Electron を試す 12 - IPC を contextBridge へ移行する - アカベコマイリ

    私はこれまで Electron における Renderer プロセスからの IPC は window.require で参照した ipcRenderer により実行していた。しかしこの方法は BrowserWindow で nodeIntegration: true にする必要があり、安全性の面から好ましくない。そのため今後の推奨である contextBridge による設計へ移行してみる。 サンプル プロジェクト akabekobeko/examples-electron 参考記事 contextBridge | Electron Electron(v11.0.3現在)の IPC 通信入門 - よりセキュアな方法への変遷 - Qiita webPreferences はじめに Main プロセスにおける BrowserWindow の webPreferences を定義。これまでの実装

  • go mod完全に理解した

    はじめに go mod周辺を理解してないとGo言語使った開発辛いと思うんですが、ネットの日語情報少なくないすか? 最近はGOPATH使わないと思うんですが、古い情報が引っかかってきて、検索するのが辛いです。GOPATH使う時とgo mod使うときの比較情報も、あたらしくGo言語やる人的にはいらないと思うし。変更点は良いから、最新版の体系的な情報をくれよ、ってなってました。 新しく環境作るとき、自信ないままやってるんで、調べながらすこしまとめてみました。自信ないのはあんまり変わってませんが。。。 ちなみに、僕は、Go言語に入門して半年くらいで、なんとなく、3冊くらいGo言語の読んだ状態です。goroutineとかわからん。 基的には、ここらをなんとなく読んだ知識を整理してます。 Tutorial: Get started with Go - The Go Programming Lan

    go mod完全に理解した
    wazly
    wazly 2021/09/25
  • Goの静的解析ツールをgolintからstaticcheckに移行した話 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、@ueokandeです。 つい先日Go 1.16がリリースされましたね。 サイボウズではGoで書かれたプロダクトやツールなどが数多く存在しており、GitHubで公開しているものも多数あります。 自分の所属するYakumoチームでも、Kubernetes上にデプロイしているサービス、AWS Lambda、開発者向けのツールなどをGoで実装しています。 日は、Goの静的解析ツールをgolintからstaticcheckに移行したお話をします。 x/lint: freeze and deprecate Goコードの静的解析ツールとして、Yakumoチームではgolintを採用していました。 golintGoの静的解析ツールとして、長らくデファクトスタンダードとされており、サイボウズ社内でも多くのチームで利用していました。 しかしgolintの開発チームから今後はメンテナンスされな

    Goの静的解析ツールをgolintからstaticcheckに移行した話 - Cybozu Inside Out | サイボウズエンジニアのブログ
  • Go 1.13時代のエラー実装者のお作法 - Qiita

    Goアドベントカレンダーその2の3日目のエントリーです。 Goではエラー処理の方法としてはプリミティブな方法しか提供しておらず、他の言語のユーザーからやいのやいの言われてきました。Go2でそれを改善するぞからプロポーザル募集でいろいろ意見を募っては二転三転みたいな感じで、Go 1.13ではだいぶおとなしい感じに機能拡張されました。基的な方向性としてはgithub.com/pkg/errorsから少し機能を取り込んだ感じです。 すでに、数多くのエントリーやらプレゼンテーションやらでGo 1.13の利用者視点でのerrorsの変更点については触れられてきましたので詳しくはそちらをご覧ください。サマリーとしては下請けのパッケージで出てきた詳細なエラーをラップして扱うための便利な機構がいろいろ追加された感じです。 これらでは主にアプリケーションコードの実装者というかライブラリの利用者向けの説明が

    Go 1.13時代のエラー実装者のお作法 - Qiita
    wazly
    wazly 2021/09/25
  • ハンガリアン記法 - Wikipedia

    ハンガリアン記法(ハンガリアンきほう、英: Hungarian notation)あるいはハンガリー記法(ハンガリーきほう)とは、プログラマがプログラムのソースコードを書く際に変数名やクラス名などの識別子に特別な接頭文字ないし接尾文字をつけることで、他の人がその識別子を見たときに識別子の使用方法・データ型情報・スコープなどが分かるようにするための命名法である。 ハンガリアン記法という名称は考案者チャールズ・シモニーがハンガリー出身であることに由来する[1][2]。 二種類のハンガリアン記法[編集] 来、シモニーの考案したハンガリアン記法とは、変数の意味や使用目的から接頭辞を決定することであり、型では区別できない情報を変数名に付与することで、紛らわしい変数の意味を明白にし混同をさけるためのものであった[1]。たとえば、論理座標とデバイス座標、X軸とY軸、ドルと円などで、これらは単純に型によ

  • Go1.17における go get の変更点 | フューチャー技術ブログ

    The Gopher character is based on the Go mascot designed by Renee French. TIGの辻です。 Go 1.17連載の5日目の記事です。記事ではGo1.17の go get に関するアップデートの詳細をお伝えします。 go get に関する変更点サマリ モジュール外からの go get におけるコマンドインストール時に、警告を出力する go get の -insecure フラグは使えなくなった、代わりに環境変数 GOINSECURE を使う モジュール外からの go get におけるコマンドインストール時に、警告を出力するgo get 時の警告Go1.16のリリースノートでも、コマンドのインストールで go get を使うのは非推奨、とお知らせがありましたが、Go1.17では、モジュール外からコマンドのバイナリを go

    Go1.17における go get の変更点 | フューチャー技術ブログ
    wazly
    wazly 2021/09/25
  • TypeScriptにはanyが4種類、undefinedが3種類、……

    このツイートの解説をします。 TypeScriptにはanyは4種類、undefinedは3種類、nullは2種類、trueは2種類、falseは2種類、neverは5種類あるのか。普通に使ってる分にはわからないが…… TypeScriptでは表面上は同じ名前でも内部的に異なる型が割り振られている場合がいくつかあります。そのようなもののうち、プリミティブな型についてまとめました。 対象TypeScriptバージョンは4.1.3です。 2021-01-09 update: 数え方を見直しました。 any が4種類から6種類に増えました。 注意 ここに書かれていることを知らなくても、TypeScriptプログラミングにおいて全く困りません。あくまでコンパイラの機微を楽しむつもりでお読みください。 前提知識 any, undefined, null, true, false, never 型につ

    TypeScriptにはanyが4種類、undefinedが3種類、……
  • GraphQLでバックエンドのコードをすっきりさせた話 - LayerX エンジニアブログ

    こんにちは!LayerXの mosa_siru (榎) です。 LayerX インボイスでは、もともと github.com/go-swagger/go-swagger を利用してREST APIを開発していましたが、最近開発したワークフロー機能 のコンポーネントではGraphQLを取り入れました。 GraphQLには様々なメリットがあり、RESTとの比較記事は多くありますが、なぜ僕らは移行したのか、その結果どうなったのかを紹介していきます。 GraphQLのメリット GraphQLのメリットは、様々な箇所で語られています。例えばこの記事によれば、 強力に型付けされたスキーマであること アンダーフェッチとオーバーフェッチがないこと(後述) Apollo, Relayなどの、クライアントライブラリにより、フロントエンド開発が迅速になること 複数のGraphQL APIからの統合が可能 強力

    GraphQLでバックエンドのコードをすっきりさせた話 - LayerX エンジニアブログ
  • Rustで書かれた、既存のソフトウェアの代替一覧を作った

    Rustで既存のソフトウェアを再実装することは「Rewrite It In Rust」と言われたりしますが、 最近はfindの代替である fd やlsの代替である exa などといったUnixコマンドのRust実装がよく見られます。 このようなUnixコマンド以外にも、Goで書かれたコンテナランタイム runc のRust実装である youki や既存のNodeバージョンマネージャーである nvm よりも200倍速い[1]とされている fnm や Lemmy というRustで書かれた reddit の代替などがあります。 また、僕自身もRubyのバージョンマネージャーである rbenv のRust実装である frum を作ったりしています。 作ったもの 今回は、こういったRustで書かれた、既存のソフトウェアの代替の一覧を作ってみました。 RustでOSSを作る際にこういった一覧があると、

    Rustで書かれた、既存のソフトウェアの代替一覧を作った
    wazly
    wazly 2021/09/25
  • proto定義や成果物の管理用レポジトリを構築した話 - Kyash Product Blog

    こんにちは、Fundsチームの @convto です。Kyashでは銀行入金やコンビニ入金などの残高の入出金に関わる部分の開発をしています。 Fundsチームではその業務の性質上多数の外部ベンダとやり取りをしています。 それぞれベンダごとに仕様なども異なるため、その接続部分のいくつかはマイクロサービスとして切り出されています。 Fundsチームの管理しているサービス間の通信でgRPCを導入する際、今後の社内の別サービスなどにも汎用的に使えるようなproto管理レポジトリを構築したのでその紹介をしたいと思います。 proto管理レポジトリで満たしたい要件について はじめに、他社の事例も参考にしつつ、自分たちがprotoを管理するにあたってどのような要件を満たせれば良いのか整理しました。 他社の事例を調査したところ、以下のような構成が多かったように思います。 名称は app-proto や p

    proto定義や成果物の管理用レポジトリを構築した話 - Kyash Product Blog
    wazly
    wazly 2021/09/25
  • Goでの並行処理を徹底解剖!

    並行処理をうまく使うのは難易度が高めです。 それゆえに、go文とチャネルについて基的な文法書で知った後「並行処理ちゃんとできる!」の段階まで自力でたどり着くのは大変でしょう。 このは、 *「並行処理ってやって何が嬉しいの?」 *「ゴールーチンとかチャネルとかって一体何者?」 *「ゴールーチンやチャネルを使ったうまいコードの書き方が知りたい!」 *「Goランタイムで並行処理をどううまく処理しているか知りたい!」 といった要望にお答えする、「Goでの並行処理」に関連した事柄について網羅的・徹底的に書きまくったものです。

    Goでの並行処理を徹底解剖!
    wazly
    wazly 2021/09/25
  • よくわかるcontextの使い方

    Goの標準パッケージにはcontextパッケージというものが存在します。 このパッケージは、net/httpやdatabase/sqlのような現実の事象と対応している何かが存在するようなパッケージではないため、初学者にとっては使い道がわからない、となってしまいがちです。 しかしcontextパッケージは、複数のゴールーチンを跨いだ処理を実装する際には非常に強力な力を発揮する、とても便利なパッケージなのです。 このでは、「contextとは何か?」というところから「どのように使えばいいのかわかる」ところまでたどり着けるように、Goのcontextまわりのことを解説しました。

    よくわかるcontextの使い方
  • 64.1%が「車のナンバープレートに関する新ルール」を知らない どう変わる?

    64.1%が「車のナンバープレートに関する新ルール」を知らない どう変わる?:10月1日から(1/2 ページ) 【訂正:2021年9月21日午前10時30分 初出で「64.1%が「新基準について知らない」」と記載しておりましたが、35.9%が「新基準について知らない」に訂正いたします。文とタイトルを修正しました】 【訂正:2021年9月22日午後0時28分 エイチームライフスタイルの発表内容に変更があったため、タイトルを再度変更、グラフを差し替えました】 中古車査定サイトを運営するエイチームライフスタイル(名古屋市)は、10月1日から適用される「ナンバープレートの表示に関する新基準」について調査を実施した。調査から、64.1%が「新基準について知らない」と回答したことが分かった。 新基準の対象は、2021年10月1日以降に初めて登録などを受ける自動車。 ナンバープレートの従来のルールは「

    64.1%が「車のナンバープレートに関する新ルール」を知らない どう変わる?
    wazly
    wazly 2021/09/22
    記事に掲載されているナビクルのアンケート結果だと「知っている」が64.1%なんですが… 魚拓 https://gyo.tc/1SELK
  • 「丁目、番地が全角しか入力できない」「何の入力チェックでエラーが出ているのかわからない」みんながネットでイラつく#クソ入力フォーム選手権 開催中

    米村歩@日一残業の少ないIT企業社長 @yonemura2006 ・丁目、番地が全角しか入力できない ・電話番号が全角しか入力できない ・建物名が全角しか入力できない ・生年月日がカレンダーで果てしなきページ送りを要求される ・何の入力チェックでエラーが出ているのかわからない ・入力チェックエラーになると入力内容が全部消える #クソ入力フォーム選手権 2021-09-06 22:44:39

    「丁目、番地が全角しか入力できない」「何の入力チェックでエラーが出ているのかわからない」みんながネットでイラつく#クソ入力フォーム選手権 開催中
    wazly
    wazly 2021/09/09
    ヨドバシ通販で「全部ポイントで支払う」で確定したら同じフォームにあるクレカの有効期限バリデーションチェックに引っかかった
  • 「Electron」と「WebView2」はどう違う? ~「Electron」の開発チームが解説/Windowsならば「WebView2」は魅力だが、「Electron」にまだ一日の長。使い分けも重要に【やじうまの杜】

    「Electron」と「WebView2」はどう違う? ~「Electron」の開発チームが解説/Windowsならば「WebView2」は魅力だが、「Electron」にまだ一日の長。使い分けも重要に【やじうまの杜】