タグ

locke-009のブックマーク (35,543)

  • MVVMに適した方法で、DIでMessageBoxをサービスにし、テストもする。 - Qiita

    課題 Dependency Injection(DI・依存性の注入・依存オブジェクト注入)は、MVVMに必須ではないのですが、MVVMと相性がよく、使わないと不便な場合も多いです。 典型的なのが、MessageBoxを表示する処理です。 ModelやViewModelで を行うとしましょう。 この場合の課題は、 これは、Viewを表示する処理。従って、MVVMとしては不適。という考え方があります。 UnitTestを実行しても、ここで処理がストップするので、UnitTestができない。 以上の課題を、まるっと解決するのが、DIコンテナでMessageBoxの表示をサービス化する方法です。 サンプルプロジェクト .NET 8 この記事は、次のMessageBox for WPF の仕組みの解説を兼ねています。 サービス化の方法 ここでは、DIコンテナに、CommunityToolkit.Mv

    MVVMに適した方法で、DIでMessageBoxをサービスにし、テストもする。 - Qiita
  • ASP.NETでのDI登録を自動化する方法 - Qiita

    ASP.NETにおけるDIのおさらい 例えば以下のようなインターフェースとその実装クラスを考えてみます。 namespace Hoge.Services.Sample { public interface ISampleService { void Fuga(); } public class SampleService : ISampleService { public SampleService() { } public void Fuga() { // do something } } }

    ASP.NETでのDI登録を自動化する方法 - Qiita
  • パスワードマネージャーは必要か? そしてなぜKeeperか? - Qiita

    総当たりする所要時間を考えると、9桁以下や10桁でも文字の組み合わせに記号がないと、危険ですね。 尚、同ガイド「インターネットの安全・安心ハンドブック」には、第6章でパスワードに関することのみにフォーカスした章があり気になる方にはおススメです。 パスワードの使い回し禁止の人力は現実的? パスワード長く記号も使おうはわかったよと、そして次の節が「使い回しはだめよ」です。使い回しがだめなら単に最後の文字だけ変える、これもだめです。 それが、だめなのはわかるのですが、わかりますが長くて複雑かつ使い回さないものは覚えられないですよね、私は電話番号という数値のみの10~11桁をよく使うものなら覚えられ、それ以上は厳しいです。 覚えられないパスワードは保管して、適時利用することが推奨されます。次の節でその方法について説明します。 「ノートに書く」? 必要に応じてノートを開く、そこに複雑な文字列がある.

    パスワードマネージャーは必要か? そしてなぜKeeperか? - Qiita
  • iOS 18で一番気に入った音楽を「感じる」機能 | ライフハッカー・ジャパン

    著者Jake Peterson – Lifehacker US [原文]翻訳春野ユリ 2024.09.22 lastupdate iOS18で私が個人的に気に入ったのは「ミュージックハプティクス」機能です。 この機能はいたってシンプルです。iPhone 12以降で有効にすると、iOSが再生中の曲のビートに合わせて振動を発生させ、リスナーに音楽を「感じる」体験を提供します。 私が試してみたところ、ほぼすべてのジャンルの音楽で機能することがわかりました。ロック、ラップ、クラシック、ジャズなど、はっきりとしたビートがあれば、iPhoneがそれにあわせて振動します。 「ミュージックハプティクス」はどういう機能?この機能は、iPhoneのTaptic Engineによる触覚振動を利用しているため、iOSは、微妙なスタッカートから長く持続する残響音まで、さまざまな異なるタップや振動を採用することができ

    iOS 18で一番気に入った音楽を「感じる」機能 | ライフハッカー・ジャパン
  • スタートアップファイナンス:Excel事業計画(財務モデル)の基本・作り方【入門編】

    資料は、主にスタートアップや成長期の企業が事業計画を立て、財務モデルを構築する際の実践的なガイドラインを提供します。ビジネスアイデアの定量化からファイナンス戦略まで、幅広い観点からExcel事業計画の作成方法を解説していきます。 <主なトピック> 1. Excel事業計画の目的と重要性 2.…

    スタートアップファイナンス:Excel事業計画(財務モデル)の基本・作り方【入門編】
  • なるほどTCPソケット ― Rubyで学ぶソケットプログラミングの基礎 | snoozer05.org

    ダウンロードPDF(2MB)書について『Working with TCP Sockets』の翻訳版を、原著者であるJesse Storimerの許可を得て島田浩二が公開するものです。 翻訳版の書名は、同シリーズの先行書『なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 - 達人出版会』に揃えて『なるほどTCPソケット ― Rubyで学ぶソケットプログラミングの基礎』としました。 翻訳版も原書と同様、無料でお読みいただけます。 翻訳版の原稿は、10年ほど前に刊行を目指して翻訳したものとなっています。もし現在のRubyで動かない箇所や注釈が必要な箇所があれば、snoozer.05@gmail.com まで連絡ください。 公式ハッシュタグ:#naruhotcp 改訂履歴2024-09-23: 公開謝辞Jesse Storimer Original Author@takahashim

  • データベースのデッドロックについて学んだこと - Qiita

    背景 こんにちは。エンジニアのKennieです。 以前、SQLを学習中にトランザクションについて初めて知りました。その際に注意すべきデッドロックについて学んだので、ここにまとめてみます。 トランザクションとテーブルロック データベースは、データの整合性を保つため、トランザクション中のデータ操作にロックをかけます。 テーブルロック: トランザクションが特定のテーブル(例えば、customersテーブル)に対して書き込みを行う際、そのテーブルがロックされます。 ロックの効果: テーブルがロックされている間、他のトランザクションはそのテーブルに対して書き込みを行うことができません。 例えば、トランザクションAがcustomersテーブルをロックしている場合、トランザクションBはそのテーブルにデータを追加したり、更新したりすることができません。 トランザクションの終了: トランザクションが正常に終

    データベースのデッドロックについて学んだこと - Qiita
  • 要件定義|3分で読める非機能要件について - Qiita

    はじめに エンジニアのみなさま、日々の学習当にお疲れ様です! また記事まで足を運んでいただき当に感謝です。 約3分程度で読めるので最後まで読んでもらえると幸いです。 要件定義関連の記事の投稿をしました。時間あればぜひ読んでみてください。 今回は「非機能要件」の 可用性 性能・拡張性 運用・保守性 移行性 セキュリティ システム環境・エコロジー の6項目について理解を深めてアウトプットしようと思います。 非機能要件|6項目について 1. 可用性 システムが継続して利用可能な状態を維持する能力を指します。『稼働率』 で表現されます。システムは定期メンテナンスや予期しない障害により、一時的に利用できなくなることがあります。可用性は、稼働している時間と停止から復旧までの時間の割合で決まります。たとえば、Amazonの「Amazon ECS」サービスは 『99.99%』 の稼働率を保証しており

    要件定義|3分で読める非機能要件について - Qiita
  • ユニコードで文字数を数える方法 (1/2)

    ユニコードでは複数の絵文字を結合させて 別の絵文字を表現することもある Unicodeが一般的になって、日語を含めて、さまざまな言語の文字を自由に使えるようになったが、「文字」を取り出す、あるいは数えるのが面倒になったのも確かだ。というのも、1つの文字が必ずしも1つのコードポイントで表現されるとは限らないからだ。 たとえば絵文字では、複数の絵文字をゼロ幅接合子(Zero Width Joiner:ZWJ、U+200D)で結合することで、別の絵文字を表現することがある。たとえば、「🐦 鳥(bird)」(U+1F426)と「🔥 火」(U+1F525)をゼロ幅接合子でつなげたものは、「🐦‍🔥フェニックス」(Unicode Emoji 15.1で定義)の絵文字になる。 コードだと「U+1F426」「U+200D」「U+1F525」なのだが、表示上は1つの文字に見える。なお、こうした組み合

    ユニコードで文字数を数える方法 (1/2)
  • 私がマージンをできるだけ使いたくない理由 - Qiita

    はじめに 突然ですが、皆さんはCSSのmargin(マージン)をよく使いますか? 私はマージンを多用しないように気をつけています。というより、あまりマージンと関わりたくないと思っています。今回の記事では、「どうして避けているのか」について自分なりの考えをまとめてみたいと思います。 あくまでも個人の意見なので、こういう考えの人もいるのだなと捉えていただけますと幸いです。もっとこうしたら良くなるのに!というご意見は大募集しているので、どんどん教えてください。 マージンを使いたくない理由 マージンを使いたくない一番の理由に、スタイルが崩れるというものがあります。「崩れる」と一言で言っても、わかりずらいと思うので落ち着いて考えをまとめてみました。その結果、下記の2パターンに分かれるという結論に行きつきました。 マージンが不可解な挙動をする コンポーネントとして使い回しずらい この二つの観点から、マ

    私がマージンをできるだけ使いたくない理由 - Qiita
  • iOS 18、あまり知られてなくても超便利な4つの新機能はコレ!

    iPhone 16発売に合わせて、iOS 18が登場。今回、新しいiPhoneを購入しない人でも、たくさんの新機能を使えるようになりました! そんな新機能の中でも、ホーム画面のカスタマイズのようには目立ってないけど、これは「超便利!」という4つを厳選して紹介します! バッテリー充電の最大値が80~100%の間で5%刻みで設定可に iPhoneを使っていくうちにどうしても劣化が進んで徐々に容量が減っていくバッテリー。満充電状態では化学的に不安定なこともあり、充電の上限を80%にする設定がiPhone 15シリーズで可能になりました。 でも、80%の充電ではギリギリ1日持たないよ、という人もいたかも。iOS 18では80~100%まで5%刻みで、上限を設定できるようになりました。この機能が使えるのはiPhone 15と16のみです。 なお、iPhone 14以前でも利用できる「バッテリー充電の

    iOS 18、あまり知られてなくても超便利な4つの新機能はコレ!
  • あなたの飲酒を見守る アルコールウォッチ

    ※純アルコール量10グラムを1ドリンクとしています。 ※10グラムの純アルコールが体から排出されるのにかかる時間は約2.5時間です。 ※分解完了時間には個人差があります。 あくまで目安としてお考えください。

    あなたの飲酒を見守る アルコールウォッチ
  • 飲んだお酒を入力するとアルコール分解時間を計算 厚労省がWebツールを公開

    関連記事 それでも「酒は百薬の長」と言い続けるワケ カナダの研究者らが飲酒量と死亡リスクの関係を分析 カナダのビクトリア大学などに所属する研究者らは、107件の研究を対象とした分析を実施し、アルコール消費と全死因死亡率の関連性を詳細に調査した研究報告を発表した。 “ビールは冷やす”となぜうまい? 中国の研究者らが調査 アルコール度数と温度の関係に迫る 中国科学院や中国の白酒メーカーである五粮液などに所属する研究者らは、異なるアルコール度数や温度によって味わいなどが変化するメカニズムを解明するために検証した研究報告を発表した。 「お酒のエナジードリンク割りは危険」農水省が注意喚起 原因はYouTuber? 問い合わせ相次ぐ お酒とエナジードリンクを一緒に飲むとカフェインの過剰摂取による健康被害につながりかねないとして、農林水産省が注意喚起している。5月8日に問い合わせが相次いだことを受けての

    飲んだお酒を入力するとアルコール分解時間を計算 厚労省がWebツールを公開
  • 半信半疑で初めて試したリカバリーウェア。VENEX『リカバリームーヴ』の本当の効果とは

    “リカバリーウェア”なるジャンルの存在を初めて知ったのは数年前。大きなアウトドアショップの衣類コーナーだった。 僕はその頃、リカバリーサンダルを愛用していたので、その字面が意味するところはすぐに理解できた。 ■胡散臭い? 眉唾もの? すぐには飛び付けなかったリカバリーウェア クッション性能が高いソールで地面から伝わる衝撃を軽減したり、柔らかいフットベッドで土踏まずを刺激したりすることで、疲れた足を癒す効果のあるリカバリーサンダル。 リカバリーウェアも同様に、何らかのスペシャルな仕様によって、疲れた体を癒してくれる衣類なのだろう。 でも、どうやって? サンダルのように、歩くたび体重がかかる足に力学的な作用を及ぼすものなら分かりやすいが、ただ身にまとうだけの洋服で、どうすればそうした効果が出せるのだろうか。 多くの人が同様の疑問を持つのだろう。 店頭のリカバリーウェアには、効果を詳しく説明する

    半信半疑で初めて試したリカバリーウェア。VENEX『リカバリームーヴ』の本当の効果とは
  • AWS LambdaにおけるARM64とx86_64の性能比較 - Qiita

    はじめに AWS Lambdaは、ARM64(Graviton2)とx86_64の2種類のアーキテクチャで動作します。ARM64はモバイル向けや低消費電力が特徴のRISCアーキテクチャで、一方x86_64はサーバー向けに広く使われるCISCアーキテクチャです。 今回は、AWS LambdaでARM64とx86_64のパフォーマンスを、I/Oバウンド処理、CPUバウンド処理、並列処理の観点で比較しました。Pythonを用いたサンプルコードを実行し、メモリサイズごとの処理時間を測定しました。 サンプルコード 次のPythonコードをAWS LambdaでARM64とx86_64の両方で実行しました。このコードは以下の3種類の処理を行います。 I/Oバウンド処理: ファイルの読み書きでI/O性能を測定。 CPUバウンド処理: 浮動小数点演算を大量に行うことでCPUの性能を測定。 並列処理: スレ

    AWS LambdaにおけるARM64とx86_64の性能比較 - Qiita
  • 新卒が要件定義からタスクを任された話 - Qiita

    はじめに 入社して 2 ヶ月目の 5 月末頃に,プロダクトの追加機能についての案件オーナーとして開発タスクをやらせてもらいました.このプロダクトには,集計したデータを PDF 形式のレポートとして出力する機能があり,このレポートの内容を英語で出力する要望に応えるための案件でした.要件定義がそもそも何かをわかっていない状態から,リリースまでやり遂げた際に学んだこと・振り返りなどを記録します. 要求・要件定義編 ユーザーストーリーについて考える 当たり前ではありますが,プロダクトは誰かに使ってもらうために作っています.そのため,どのような人に向けて作るのか,どのような課題を解決するために作るのかを要求定義の形でまとめます. PdM(プロダクトマネージャー)が来この部分を担当するのですが,せっかくの機会というのもあり,書かせてもらいました.ここでの学びは,ユーザーの立場から考えることが大切であ

    新卒が要件定義からタスクを任された話 - Qiita
  • Amazonのダンボール簡単解体。カッター1本で紐縛りまで完結【今日のライフハックツール】 | ライフハッカー・ジャパン

    ネット通販でなんでも買えるようになって便利な反面、ダンボール箱の処理が面倒なことになっている人は多いでしょう。 ダンボールの解体作業は、普通のカッターだとムダに力がいるし危険。ゴミ出しのルールで、「紐で結束してまとめて出す」というのが意外と難儀します。つぶしたダンボールの幅はまちまちなので、うまく結束できないですよね。 そうした作業が億劫だからと、部屋の片隅に不要なダンボール箱をためこんでいませんか? 今回は、ダンボール箱の処理を劇的にラクにしてくれるグッズ「ダンボール貫通カッター」を紹介します。 【関の刃物「ダンボール貫通カッター」はこんな人にオススメ!】 ネットショッピングが好きだが、捨てるのが面倒でダンボール箱を家に溜めがちダンボール専用の刃物を持っておらず、素手や普通のハサミなどでダンボールを処理している

    Amazonのダンボール簡単解体。カッター1本で紐縛りまで完結【今日のライフハックツール】 | ライフハッカー・ジャパン
  • 汚いコードの害を伝えたいだとか

    汚いコードはよくない (2024.9.22 追記:続編を具体的にかきました!) コードを書くと、コードは増える プログラムは、ソースコードと呼ばれる文字列を記述する事で作成されます。このことを、単にプログラムを書く、コードを書く、などと言ったりします。 ほとんどの場合、プログラムを書くときには、その目的があります。 なにかの目的を達成するために、ソースコードと呼ばれる文字列を記述します。 この記述方法にはいろいろなものがあり、同じ目的を達成するにも無数の方法が存在します。 どの方法を選ぶかは作者に任されている、という言い方もできます。 ところで、ソースコードを記述していき、プログラムで実現できる事が細かくなるにつれて、文字の数はだんだんと増えていきます。 コードの増え方にもいろいろある この文字が増えていく様子を比喩的に表現することを考えます。例えば書類を積み上げることや、積み木を積み上げ

    汚いコードの害を伝えたいだとか
  • Youtube プレイヤー上で、↑ ↓ キーは常に音量調整、← → キーは常にシークとして機能させる Chrome 拡張機能 & Firefox アドオン「YouTube Control Fix」

    今日は、Youtube プレイヤー上で矢印キーのアクション内容を固定化させる Google Chrome 拡張機能 & Firefox アドオンYouTube Control Fixを紹介しようと思います。 YouTube Control Fix(Chrome 拡張機能) YouTube Control Fix(Firefox アドオン) 「YouTube Control Fix」は、YouTube プレイヤー上で方向キーのアクション内容を固定させることができる拡張機能です。 通常、YouTube プレイヤー上では、“ 最後にどこのパーツを触っていたか ” により、方向キー( ↑ ↓ → ← )の挙動内容が変わるようになっています。 たとえば、シークバーを最後に触っていた場合は、→ ← キーでも ↑ ↓ キーでも早送り / 巻き戻し が行われるようになっており、音量バーを最後に触っていた時

    Youtube プレイヤー上で、↑ ↓ キーは常に音量調整、← → キーは常にシークとして機能させる Chrome 拡張機能 & Firefox アドオン「YouTube Control Fix」
  • 「Copilot」をただの検索AIにしないコツとは? 楽しく便利なコンシェルジュにしよう/【使ってわかるCopilot+ PC】

    「Copilot」をただの検索AIにしないコツとは? 楽しく便利なコンシェルジュにしよう/【使ってわかるCopilot+ PC】