eakmのブックマーク (583)

  • 何となく便利だなあと思ってた機能がDIという名前だった話 - いいねのお勉強ノート

    Spring Frameworkで何となく使っていた 、 使いたいインスタンスの初期化・設定をcontext.xmlに従って自動で行う機能があるんですが この仕組みはDI(Dependency Injection)というデザインパターンらしい。 気になったので少しお勉強。 DIとは Dependency Injection 依存性の注入 クラスの使われるであろうオブジェクトを、外部から注入する仕組み。 注入するオブジェクトをDIコンテナにまとめることもある。 DIのメリット 1. 単体テストができるようになる。 クラス内で使いたいインスタンスを生成すると、テスト結果がインスタンスに影響を受ける。(結合テストになってしまう) DIをすることで、インスタンス部分をモック化し、単にクラスの振る舞いのみをテストすることができる。 2.コードがシンプルになる インスタンス生成文でコードの行数を使わな

    何となく便利だなあと思ってた機能がDIという名前だった話 - いいねのお勉強ノート
    eakm
    eakm 2023/05/15
  • DI(Dependency Injection)に関するメモ - Shin x Blog

    PHPの現場 にて、DI 談義を行うので、頭を整理しておくためのメモです。 DI についてきちんと知りたいのであれば、参照に挙げたリンク先に有用な記事があるので、そちらを参考にして下さい。 PHP を念頭に置いてますが、Java など他言語でも大枠は同じだと思います。この内容は、いずれ整理するかもしれませんし、そのままかもしれません。 DI という言葉 「DI」が差す意味合いが、依存オブジェクトの注入だけなのか、DI コンテナによる注入を含んでいるのか、DIP まで意識しているのかが、人やコンテキストによって違っていそうで、そこを揃えてから議論しないと。— Masashi Shinbara (@shin1x1) May 19, 2017 DI について話す時に、何を差すのかが異なると話が噛み合わない。そこで、それぞれに名前を付ける。 DI パターン = 依存オブジェクトを注入することを差す

    DI(Dependency Injection)に関するメモ - Shin x Blog
    eakm
    eakm 2023/05/15
  • 若手エンジニアに伝えたい設計の三つのノウハウ | Offers Tech Blog

    はじめに こんにちは。 プロダクト開発組織・人材を対象に、開発パフォーマンス・生産性の最大化インフラ Offers MGR と副業転職プラットフォーム Offersを運営する株式会社 overflow のエンジニアの藤井です。 みなさま、実装の前にきちんと設計のドキュメントを作成していますでしょうか? 昔、私が働いていた大手 SIer の現場では、 ・・・といったように、じつに事細かな設計工程が組まれておりました。 しかし事業会社の開発組織で、このような工程を採用している現場は稀でしょう。 特にスタートアップの、ごく少人数でビルド&スクラップを繰り返す製品のローンチ段階では、"<b>実装こそ仕様! ドキュメントなどない!</b>"というストロングスタイルが必要だったりします。 そのため、その後もドキュメントを残す文化が根付きづらい、という話もよく聞きます。 (その点、弊社はドキュメンテーシ

    若手エンジニアに伝えたい設計の三つのノウハウ | Offers Tech Blog
    eakm
    eakm 2023/04/18
  • 【設計手法】ドメイン駆動設計(DDD) is 何? 【初心者にも分かりやすく】 - Qiita

    初めに DDDって言葉自体は定期的に聞きますよね。 ドメインについて知識をつけましょう、みたいなことはよく言われますが 「ドメインってIPアドレスをURLにしたものだよね〜」 くらいの理解しか去年まではありませんでした。 ドメイン知識やDDDとか聞いても、「プロジェクト全体のルーティングの理解かな」って感じで半年くらい前までは恥ずかしながら間違った理解で解釈してました😇 聞いたことはあるけど、詳しくは知らないという方は沢山いると思います。 自分自体ふんわりとした理解しかなかったので、今回勉強を兼ねてまとめさせて頂きます。 そもそもでドメインって? ここでいうドメインとは専門領域のことであったり、ドメイン知識のことを分かりやすくいうと業務知識のことになります。 請求書系アプリで例えると締め作業や簿記の知識等ですね。 余談ですが、学生時代に取得した簿記やFPの知識もエンジニアになってからも役

    【設計手法】ドメイン駆動設計(DDD) is 何? 【初心者にも分かりやすく】 - Qiita
    eakm
    eakm 2023/03/28
  • 流行りのテキストからのAI画像生成 (Midjourney, DALL-E 2, StableDiffusion, DiscoDiffusionなど) について、歴史、仕組みから試し方までまとめる

    はじめに 9/10から開催の 技術書典13 で記事としてまとめるための、調査、素材置き場です。まず、日語で界隈を概観するには以下記事がおすすめ。 (8/22) もうすぐ来ると言われるStableDiffusionのモデル配布の衝撃について。 その根拠の一つである、Eman Mostaque氏 (Founder of Stability.ai) の、意味深なカウントダウンツイート。 (8/23) 公開されました。 Colaboratoryでの試し方をnpakaさんが公開しています。 さらにtuningが可能なColab notebookをpharmapsychoticさんが公開しています。 ローカルで動かす方法は、koyoarai_さんのZennより。 無償、英語・日語で試せるWebアプリをshi3zさんほかが公開しています。 目次 各Text-to-Imageの試し方 Prompt E

    流行りのテキストからのAI画像生成 (Midjourney, DALL-E 2, StableDiffusion, DiscoDiffusionなど) について、歴史、仕組みから試し方までまとめる
    eakm
    eakm 2022/08/22
  • 無料で商用利用やトレースOKな写真素材がてんこもりな絵師のための「Blank Phostock」レビュー

    イラスト漫画を描くときに「こういう参考写真が欲しい……!」となってもなかなか自分で撮影するのは難しく、インターネットで参考画像を探すのも時間がかかります。「Blank Phostock」はそんなクリエイターのためのストックフォトで、面倒な会員登録はなく、カテゴリやタグから目当ての画像をサクッと見つけてダウンロード可能、ウェブサイトの素材として使用したりイラストの背景としてトレースしたりし放題とのことなので、実際に使ってみました。 Blank Phostock – 無料ストックフォト、テクスチャ配布サイト_ブランクフォストック https://blankcoin.com/photo/ 絵師による絵師のための無料写真素材サイト『Blank Phostock』(ブランクフォストック)公開! – BLANK COIN https://blankcoin.com/?p=5569 Blank Pho

    無料で商用利用やトレースOKな写真素材がてんこもりな絵師のための「Blank Phostock」レビュー
    eakm
    eakm 2021/02/19
  • 3Dモデリングソフト「Blender」の操作を0から学べる1,400ページの解説書が無償公開/ダウンロード・インストールから基本的な操作、アニメーションの作成までを細かく解説

    3Dモデリングソフト「Blender」の操作を0から学べる1,400ページの解説書が無償公開/ダウンロード・インストールから基本的な操作、アニメーションの作成までを細かく解説
    eakm
    eakm 2021/01/26
  • 萌え絵の参考書を20冊近く買ってきたけど正直pixiv講座で十分満足出来るよって話 - 宇宙時代より(旧)

    Amazon.co.jp: 萌え絵の教科書 (三才ムック vol.385): refeia: イラストに金払わずともネットで十分説を検証します。 こうは言ってる僕もイラスト描き始めてから一年経たないぐらいの時期はやたらとイラスト欲しかった。 まあ右も左も分からなかったし取り敢えず買ってみるかみたいな単純な気持ちでイラストを三冊ほど買いました。 手っ取り早く見たいなら目次から3番のメリット・デメリットまとめにGO 初心者僕、イラストに大満足 買った当初は「いや~いい買い物したわ」ってずっとイラスト見てました。 ルーズリーフにひたすら得た知識を実践してました。晴耕雨読の日々でした。嘘。 正直、何の知識も持たず、女性の裸体もろくに見たこともない僕が「女の子のエッチな絵描くお!」とかふざけた話だったんですよ。舐めてんのか 取り敢えずの方針が決まる 上記に書いたように絵を描き始めた頃は

    萌え絵の参考書を20冊近く買ってきたけど正直pixiv講座で十分満足出来るよって話 - 宇宙時代より(旧)
    eakm
    eakm 2020/06/18
  • Dockerとはどういったものなのか、めちゃくちゃ丁寧に説明してみる - Qiita

    お詫びと訂正 おまけ2 の内容に関して誤りの情報を記載していたので、修正いたしました。(2020/6/6 22:55) またコメントで大変丁寧にご指摘&アドバイスをくださった@souchi00さん、ありがとうございます🙇‍♂️ 追記(コンテナについて)(2020/6/8 11:10) @inductorさんがコンテナに関するわかりやすい資料を紹介してくださいました! https://www.slideshare.net/zembutsu/what-isdockerdoing コンテナについてより詳細を知りたい方は是非ご覧になってください ### 追追記(2020/6/8 12:30) 記事で何点か誤った表記があったので、コメントで指摘くださった方々のアドバイスの元修正しております。(文中でも修正しておりますが、コメント欄を見ていただければより詳細がわかると思います。) 以後このような

    Dockerとはどういったものなのか、めちゃくちゃ丁寧に説明してみる - Qiita
    eakm
    eakm 2020/06/07
  • Docker入門:Docker概要,基本操作,マウント,Dockerfile,マルチステージビルド - Qiita

    最近ちょっとDockerを入門しました。 アウトプットも兼ねて、ハンズオンっぽくまとめてみたので公開したいと思います。 まだ「Dockerを触ったことない」という方の入門に使って頂けたら幸いです。 ※出力結果のすべては記載できていません。(ハンズオンで一緒に操作して確認しながら進める想定だったため) 目次 事前準備(環境構築) Docker概要 ハンズオン1:基操作 ハンズオン2:マウント ハンズオン3:Dockerfile ハンズオン4:マルチステージビルド おわり 事前準備(環境構築) 公式ドキュメントなど参考に構築してください。 Docker Documentation - Get started with Docker Docker Hubアカウントをお持ちであれば、Play with Dockerが便利です。 インストールなしでDockerを試すことができます。Login、St

    Docker入門:Docker概要,基本操作,マウント,Dockerfile,マルチステージビルド - Qiita
    eakm
    eakm 2020/01/14
  • 今なぜHTTPS化なのか?インターネットの信頼性のために、技術者が知っておきたいTLSの歴史と技術背景

    【変更履歴 2018年2月15日】当初の記事タイトルは「いまなぜHTTPS化なのか? 技術者が知っておきたいSEOよりずっと大切なこと ― TLSの歴史技術背景」でしたが、現行のものに変更しました。現在GoogleではWebサイトのHTTPS対応と検索結果の関係を強調しておらず、記事の趣旨の一つにも来は独立した問題であるSEOとHTTPS化を関連付けるという根強い誤解を解くことがありますが、当初のタイトルではかえってSEOとHTTPSを関連付けて読まれるおそれがあり、また同様の指摘もいただいたことから変更いたしました。 HTTPとHTTPSは、共にTCP通信上で動作します。したがって、いずれもTCPハンドシェイクで通信を開始します。 HTTP通信の場合には、このTCPハンドシェイク直後に、HTTPリクエストとレスポンスのやり取りが始まります。このHTTPのやり取りは平文通信であり、途

    今なぜHTTPS化なのか?インターネットの信頼性のために、技術者が知っておきたいTLSの歴史と技術背景
    eakm
    eakm 2019/06/22
  • カプセル化とは?~安全なシステムを作る為の配慮~|オブジェクト指向プログラミング(OOP)をおさらいしよう(4) - GiXo Ltd.

    カプセル化とは?~安全なシステムを作る為の配慮~|オブジェクト指向プログラミング(OOP)をおさらいしよう(4) 処理をカプセル(小箱)に分ける。そしてカプセルを「見せる」OR「隠す」 こんにちは。技術チームの岩谷です。連載ではオブジェクト指向プログラミング(OOP)をおさらいする連載を書かせていただいています。今回は第四回として「カプセル化」について説明します。まず、いささか冗長ですが「カプセル」という単語そのものの意味を振り返らせてください。以下はウィキペディアからの引用です。 カプセル(Capsule、ドイツ語:Kapsel)とは、「小箱」を意味するラテン語の capsula に由来し、何かをつめておくための容器のことを表す。一般には大きさを問わず筒状の物の両端を球状にして密閉した形の物を指す。 引用元:ウィキペディア 小箱…。なるほど、プログラミングにおいてのカプセル化も処理を適

    カプセル化とは?~安全なシステムを作る為の配慮~|オブジェクト指向プログラミング(OOP)をおさらいしよう(4) - GiXo Ltd.
    eakm
    eakm 2018/04/04
  • 「WebLogicってなんなの?」をWebLogic初心者向けに説明する - Qiita

    この記事の目的 WebLogicとは何か?について、WebLogic初心者(プログラマー、システムエンジニア、営業さん)向けに解説します。 次の言葉を自分なりに説明できる状態を目指します: WebLogic Java EE アプリケーションサーバー 私(システムエンジニア)が入社一年目、これらの言葉が全くわからなかった経験があるので、同じような境遇の方の助けになればと思います。 また、少しばかり営業さん向けとして、製品の具体名を挙げるようにしています。 競合製品の把握などで参考にしてください。 先輩「WebLogicの代わりにGlassFishJava EE開発の練習しといて」私「…?」 新人研修を終えて現場配属になった私に、WebLogicとの出会いは突然訪れました。 OJT担当の先輩から告げられたのは次のような言葉でした: ここの案件ではアプリケーションサーバーとしてWebLogic

    「WebLogicってなんなの?」をWebLogic初心者向けに説明する - Qiita
    eakm
    eakm 2018/04/03
  • Weblogicをデバックモードで起動する - A Day In The Life

    アプリサーバにWeblogicを使っているとEclipseでステップ実行ができません。 ログをはいてコツコツデバックしないといけなくて大変です。 Weblogicをデバックモードで起動できればステップ実行できて便利です。 デバックモードで起動するにはstartWebLogic.cmdに以下の1行を追加してやればOKです。 set JAVA_OPTIONS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8453後はEclipseから実行するときにDebug AsからDebug on Serverを選択してやればステップ実行ができます。 もっと早く知ってれば楽やったのになぁ...。

    Weblogicをデバックモードで起動する - A Day In The Life
    eakm
    eakm 2018/04/03
  • Eclipseでリモートデバッグ - yomamaのdev日記 (from jemomo)

    いつもローカルデバッグばっかりで、何年かぶりにリモートデバッグやったら手こずったのでメモ。 WebLogic9.2での話。 WebLogicのドメイン直下の「startWebLogic.cmd」の適当なところに以下を追記(ドメイン/binの「startWebLogic.cmd」は体という感じなのでドメイン直下の「startWebLogic.cmd」のほうがいいでしょう) set JAVA_OPTIONS=%JAVA_OPTIONS% -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9999 これでWebLogicを起動すると以下のようなログが出る Listening for transport dt_socket at address: 9999 ということで、WebLogicはポート9999でデバッグ接続

    Eclipseでリモートデバッグ - yomamaのdev日記 (from jemomo)
    eakm
    eakm 2018/04/03
    “ 「デバッグ」クリック デバッグパースペクティブのデバッグビューで接続されたことを確認 ”
  • Java新機能メモ(Hishidama's Java up-to-date)

    S-JIS[2008-07-07/2024-03-23] 変更履歴 Java新機能(Javaの変更点) Javaのバージョンによる変更点。 JDK1.4 [/2013-12-20] JDK1.5 [/2019-12-08] JDK1.6 [/2017-06-10] JDK1.7 [/2017-09-30] JDK1.8 [/2022-10-22] JDK9 [/2021-03-21] JDK10 [/2018-06-02] JDK11 [2018-10-01] JDK12 [/2020-09-29] JDK13 [2019-09-22] JDK14 [/2021-03-16] JDK15 [/2020-11-08] JDK16 [2021-03-21] JDK17 [2021-09-19] JDK18 [2022-03-23] JDK19 [2023-09-23] JDK20 [2023-

    eakm
    eakm 2018/03/26
  • 統計学の教科書から起業マニュアルまで、すごい「無料」コンテンツ集めました - グローバル経営の極北

    ネットには「無料」で貴重な情報がたくさんある。統計学の教科書から、戦略コンサルによる「変革」の指南書まで、様々なコンテンツをまとめてみた。 OpenIntoro - 統計学の教科書 436ページの統計学の教科書が無償ダウンロード(PDF)可能。Openintroという米大学の教員などが「オープンソース」の試みとしてまとめた仕事で素晴らしい。編者の一人のミシガン大の教員によるCourseraの講座もある。 PDFファイルはこちら BCG - 「企業変革」の手引き 戦略コンサルのBCGによる「変革」の指南書。167ページのPDFが無償でダウンロード可能で、Kindleファイルも提供されています。かなり包括的に整理されており非常に参考になります。トップコンサルファームのこういった資料も無料で提供されるというのは当にいい時代です。 PDFファイルはこちら Kindleファイルはこちら SaaS

    統計学の教科書から起業マニュアルまで、すごい「無料」コンテンツ集めました - グローバル経営の極北
    eakm
    eakm 2018/03/24
  • Web漫画  胎界主

    Web漫画 総天然色長編『胎界主』一部二部完結。全頁無料公開中。内容はダークファンタジー。第三部<翻訳儀典>を毎週金曜日に連載。

    eakm
    eakm 2017/02/23
  • DAOとかDTOとかVOとかEntityとか

    Strutsを使っていたときにこのへんすごく迷った。SAStrutsでもでてきたのであらためて調べ直しておさらいしてみる。 VO vs DTO vs DAO vs Entity VOは不変でなければならないので、MVC間でやりとりされるオブジェクトは、DTOといったほうがいいらしい(参考:OZACC.blog: VOとDTOの違い)。 WikipediaのDTOをみると「過去、VOとも呼ばれていた」とある。よって、藤原はVOをもう使わないようにします(会社で使ってるな・・・)。 DAOはSelectとかInsertとか、DBにアクセスしてくれる人のこと。結果としてEntityを返してくれたりする。 Entityはレコードを表現する。DTO(VO)っぽいけど、DAOみたいなこともしやがるらしい(参考:DAOとかVOとかDTOとか – 人生全て暇つぶし) DTOは、EntityからDTOが作ら

    DAOとかDTOとかVOとかEntityとか
    eakm
    eakm 2017/02/13
  • 【JavaBeans】BeanとDTOとEntityとVOとFormの違いって何?- Javaプログラマーのはしくれダイアリー

    色んなシステムに携わっていると、様々なJavaのクラス名に遭遇する。 ○○Beanとか ○○DTOとか ○○Entityとか ○○VOとか ○○Form。 ここらへんって 「MVCのModelのデータ部分にあたるって意味で同じだし」 とか 「ゲッター/セッターがあるクラスで意味的に一緒じゃない?なんで色々名前つけてんの?」 って思いませんか? ってことで、今回はそれぞれの定義を改めて考えてみようと思う。 とりあえずはそれぞれの意味から ・Bean 総称はBean。あえて言うならJavaBeansの略。 Javaの初心者でも知っている。 あまりに有名すぎるが、Oracleのサイトのガイドを見ながらパクってまとめてみた。 ・Sun Microsystems社のJavaBeans仕様に準拠した再使用可能なソフトウェア・コンポーネント。 ・最低限、クラスにはプロパティが必要。 ・プロパティはメソッ

    【JavaBeans】BeanとDTOとEntityとVOとFormの違いって何?- Javaプログラマーのはしくれダイアリー
    eakm
    eakm 2017/02/13