2021/01/19 の Forkwell Engineer Career Study の資料です
以下の文章は、Martin Fowler の「Inversion of Control Containers and the Dependency Injection pattern」を、かくたにが翻訳したものです。原著者の許可を得て翻訳・公開しています。 翻訳にあたっては、kdmsnr さんにご協力をいただきました。ありがとうございます。公開後の改訂履歴を記事の最後に記述しています。 Java コミュニティでは軽量コンテナが花盛りである。 軽量コンテナは、異なるプロジェクトのコンポーネントをひとまとまりのアプリケーションとして組み立てることを支援する。 このようなコンテナの根底には、コンポーネントの結び付け方についての共通したパターンがある。 そのパターンのコンセプトは「Inversion of Control(制御の反転)」と、まことに包括的な名前で呼ばれている。 本記事では、このパタ
はじめに サムザップ #1 Advent Calendar 2019 の12/2の記事です。 株式会社サムザップの尾崎です。Unityエンジニアです。 内容 Unityでサービスロケーターの活用について紹介します。 サービスロケーターとは サービスロケーターはプログラムを特定の実装に依存させずに動作させたいときに用いる実装手法の一つです。 柔軟性のあるプログラムを作成できます。 用語 本記事ではサービスをシステムと表現しています。 システムはいろんなクラスから呼び出される共通的なプログラムのことを表しています。サブシステムや基盤と呼ばれることもあります。 例えばゲームでは外部リソースやログを扱うクラスなどが該当します。 背景 newでオブジェクトを生成したり、staticやシングルトンでアクセスすると特定のクラスに依存することになります。 その依存したクラス内で外部環境を扱う処理を行ってい
会社にて「Service Locator パターン」という単語を聞いて「?」となったので、戒めも含めて調べてみたメモ。 いきなり結論 結論から言うと、Service Locator パターンも Dependency Injection (いわゆる DI )と同じようにクラス間の密結合度を緩和するためのものと考えてよさそう。 というか、こちらに超参考になる記述があるので、これを備忘録として残しておく。 概要 DDDとかの Repository パターンで DI を使用することがあるが、それと同じような目的で使用できる。 なんちゃってサンプルコード ここでは、ドメイン層がインフラ層に依存しないように Repository パターンを使用する場合の、 DI 版と Service Locator 版をそれぞれ考えてみる。 DI 使用したときの Repository パターン // アプリケーション
これは、 G* Advent Calendarの15日目の記事です。 昨日は @int128 さんの Gradle Slashプラグインをリリースしました #gadvent でした。 明日は @tyama さんです。 はじめに Gradle 便利ですよね。便利すぎて Ant や Maven には戻れないです。 なにが良いって、設定ファイルである build.gradle の記述量が、 Ant の build.xml や Maven の pom.xml と比べると非常に少なくて済むのが良いです。 build.gradle は、設定ファイルと言いつつも、その実体は Groovy で書かれたスクリプトファイルです。 Gradle は、 Groovy の持つメタプログラミング機能や省略記法などを利用して、設定を簡潔に記述できるようになっています。 これはメリットなのですが、一方で Groovy の
この記事についてUnity 2019.4から Unity2020.2でProfiler周りも更新が色々とありました。 今回の記事はその点について紹介したい思います。 主な更新としては下記になります。 1.Job Flowが確認可能に 2.Unity.Profiling.LowLevelのAPIとUnity Profiling Core API パッケージ 3.DrawCallやメモリ状況などが取得可能になりました 4.独自のカウンターを追加することが可能になりました 5.Metadataを付けたSamplerがC#から発行出来るようになりました 6.Profiling.RecorderのGPU対応 他にもProfilerだけが別ProcessになったStandalone Profilerとか、Editor Iteration Profilerなどもあるのですが… この辺りはEditor上で
ローカル環境でもHTTPS通信したいという要望があり、ちょうど最近仕事でやる機会があったのでQiitaにもまとめたいと思います。 環境 Mac Laravel環境 https://github.com/ucan-lab/docker-laravel v.2.1.0 最強のLaravel開発環境をDockerを使って構築する【新編集版】 $ git clone git@github.com:ucan-lab/docker-laravel.git $ cd docker-laravel $ mkdir -p src $ docker compose up -d $ docker compose exec app composer create-project --prefer-dist laravel/laravel . $ docker compose exec app php artisa
A better way to collect, search and organize your design files in a logical way and all in one place.
発掘,史上初の純国産ビデオゲーム! HITAC 10で開発され,1973年にお披露目されたゲームと,それが後年に与えた影響とは ライター:hally 12→ 1973年7月,一般的に“日本初のビデオゲーム”とされるタイトーの「エレポン」や,セガ・エンタープライゼスの「ポントロン」が発売された。しかし,これらはあくまでAtariの「PONG」をコピーしたものであり,開発の面からすれば本当の意味で“日本初”であるとは言い難い。 では“日本人が自ら考案・設計した最初のビデオゲーム”とは,いったい何なのだろうか? その答えが,意外なところで見つかった。調査によって,1973年の11月に,岩手大学の大学祭で「電子パチンコ」および「電子ボーリング」なるビデオゲームが,学術用ミニコンピュータ・HITAC 10をプラットフォームとして公開されていたことが明らかになったのだ。現在探しうるうちでは,これが恐ら
Elastic社のブログをきっかけに、最近見かける新しいライセンスについて個人的に調べてみた。私は専門家ではないので要注意。公開情報も隅々まで追えているわけではないし。 なお一部ライセンスはOpen Source Initiative (OSI)による承認を受けていないので、ここではオープンソースライセンスではなく単に「ライセンス」と書くことにする。 新しいライセンスが誕生している背景 従来のオープンソースライセンスが再頒布以外の利用をあまり想定していなかった。 Open-core modelないし完全オープンソース戦略を採る企業が自衛策を必要とした。 既存のライセンスが難解なため、理解しやすいライセンスが求められた。 OSS活動を収入に繋げるためのモデルが試行錯誤されている。 新しいライセンスを導入しているプロジェクト(一例) プロジェクト ライセンス Elastic SSPLと独自ライ
はじめに 公式に例を参考にして、既に作ったWebアプリをデスクトップアプリ化してみました。公式チュートリアルで作ったものを例にして書いていきたいと思います。 とりあえずデスクトップアプリ化するのいう感じで、そのまま機能を全部使えるとは限らず、追加で色々な実装が必要になると思いますが、少しでも役立てたら嬉しいです。 参考:with-electron-typescript 今回は下の画像のようにsrcディレクトリにpagesやcomponentsディレクトリが入っている構成でやっていきたいと思います。 作成したリポジトリ:https://github.com/NozomuTsuruta/my-blog 導入 まず、以下のコマンドで必要なpackageをインストールします。 ## npm npm install electron-is-dev electron-next npm install
先日、私のツイッターアカウントにて投稿した内容が とても好評だったのでブログにまとめようと思う。 東京ではじめた事業が上手くいき、地方に展開したいと思ったとき、 そのほとんどの場合、上手くいっていない。それはなぜか? いい商品やサービスが東京で売れるからといって、 地方でも売れるとは限らない。それはなぜか? その逆もまた然り。 それは「あること」を双方に理解していないからだ。 これから、地方に生まれ地方で育ち、 東京で起業し、日本全国をこの脚で歩き、 「地方に強いサービス」を生み出すことができた私が、 その「あること」の秘密について公開しようと思う。 そこには「東京脳」と「地方脳」の違い とも言うべき感覚の相違があり、 お互いにこれを理解し受け入れない限り 「噛み合わないコミュニケーション」 をやっているようなもので、 いつまで経っても相容れない状態が続いてしまう。 東京側(と一部の地方都
Screen Capture API 現在 Windows には画面をキャプチャする方法が 3 通りくらい用意されている。一番速いのはどれなのか?それぞれ検証してみたい。(他にも非公開の API があるらしいが、ここでは触れない) なお、記事中のソースは説明のため色々省いている。一通り動作するものはこちら。 https://github.com/i-saint/ScreenCaptureTest GDI 石器時代の API だが、今でも機能するしお手軽。 注意すべき点として、GetSystemMetrics() や GetWindowRect() を使う場合、Visual Studio 上のプロジェクトの設定、"Manifest Tool" にある "DPI Awareness" を "Per Monitor High DPI Aware" に設定しておくべきである。これを怠ると、該当 A
はじめに私達そらまめゲームスは、スマートフォン向け脱出ゲームアプリ『謎と記憶のラビリンス』を開発中の夫婦サークルです! 今回、講談社が企画した「講談社ゲームクリエイターズラボ」に申し込み、二次選考で落選という結果になりました。 この記事では、一次選考を通過した際に提出した企画書の制作過程を全て公開させて頂きます! もし記事の内容に価値があると感じて頂けたら、Twitter等でRTして頂けると嬉しいです! 講談社ゲームクリエイターズラボとは?講談社によるインディーズゲーム開発者向けの支援企画です。年間1000万の資金援助や広告支援をして頂けるという内容です。 なぜ企画書の制作過程を公開するのか?私達の方針は、ノウハウを極力公開することです。 今回、二次選考で落選という形にはなりましたが、講談社の方と面談した際に一次選考の企画書は高く評価を頂きました。 しかしこの企画書は、自分たちの力だけで作
はじめに UnityのLinearワークフローとGammaワークフローについて、軽くまとめてみようと思います。 環境 Unity2020.2.0f1 Universal RP 10.2.2 問題 突然ですが、ここで問題です。 フラグメントシェーダーで 0.5 ( RGB = (128, 128, 128 ) ) という色を返した場合、 画面にはどんな色が表示されるでしょうか? (Linearワークフロー) fixed4 frag (v2f i) : SV_Target { return 0.5; } 答え RGB = (188, 188, 188) が表示されます。(明るく表示されます) 表示色が異なる理由はLinearワークフローにあります。 Linearワークフロー 通常のUnityでは、Linearワークフローが採用されており、以下のような計算を行います。 シェーダー内では色の計算を
Blender アセット Blender アドオン プラグイン&アドオン-Plugin&Addon THE MEGA FLEET - Blender向けの最大級の自動車モデルコレク... 2024-05-02 3D CGI StudioによるBlender向けの最大級の自動車モデルコレクションアドオン『THE MEGA FLEET』がリリースされました! 続きを読む Blender アドオン プラグイン&アドオン-Plugin&Addon Step Loop Select Ver1.4 - 1列飛ばしで連続面ループ選択... 2024-05-01 KKS氏(@kksabnormal)による1列飛ばしでループ選択を可能にするBlenderアドオン『Step Loop Select Ver1.4』が無料公開されています! 続きを読む
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く