タグ

しっくりくると開発に関するt1mvverrのブックマーク (9)

  • 0063 号 巻頭言

    DDD を理解したいあなたのための DDD 入門以前 Rubyist Magazine 63 号をお届けする。 突然のお知らせで恐縮だが、日 Ruby の会の主たる事務所が東京から北海道に移転した。それもあってあまりまとまった時間がとれず、11 月のうちに書くはずだったのが気がつくと 12 月も半ばを過ぎていたので、今回は以前書きかけていた文章を発掘してお茶を濁したい。 Ruby とは直接関係がなくて恐縮だが、Ruby に限らずソフトウェア開発では現在でもちょくちょく話題になることがある、DDD についての話である。 ドメイン駆動設計こと DDD は 2020 年代のソフトウェア開発でもよく話題にされるが、率直に言うとストレートにポジティブな評価が行われているとは言い難い。 どちらかというと、ある種マニアックで、対象分野が制限されており、また初心者にはとっつきにくいところがある手法と思わ

  • Software Design連載 2021年9月号 「テストが無い」からの脱却 - MonotaRO Tech Blog

    こんにちは、鈴木です。 「テストが無い」状態を脱却しました。 「いつの時代かよ!」と突っ込まれるかもしれませんが、モノタロウは創業から 20 年ほど EC をやっています。昨日書いたコードも、15 年前に書いたコードも、元気にビジネスを支えています。 記事ではモノタロウの EC を支える API の話をします。「テストが無い」状態がスタートラインでした。そこから、CI を導入して、ローカル開発環境の整備して、テストコードを書いて、リリースマネジメントを導入しました。 目新しいことは書きません。長寿の大規模システムであっても、愚直に数年取り組むことで、「前進できる!」「変えられる!」という実例を書きます。 ※記事の初出は、 Software Design2021年9月号「Pythonモダン化計画(第2回)」になります。第1回の記事は「Software Design連載 2021年8月号

    Software Design連載 2021年9月号 「テストが無い」からの脱却 - MonotaRO Tech Blog
  • ドメイン駆動設計に関する何か - 日々常々

    2020-03-13追記: 「ドメイン駆動設計」のハードルを上げる意図はありません。そもそもそんな特殊技能でもないと思っています。「ドメイン駆動設計が合っているか」を測る材料になるかも?くらいの気持ちで読んでいただけると幸いです。 何度目か知りませんがDDDがまたブームを迎えているようで。DDD難民と言う言葉が出た頃を思うと感慨深いですね。実際難民になったわけではないので肌感覚で知らないのが残念なところですが、これはどうでもいい。 DDD、日語ではドメイン駆動設計となりますが、DDDを冠していてもドメインが語られることは少ないようです。 数ある書籍もドメインモデリングの話ではなく、ドメインモデルをいかに実装に落とし込むかにフォーカスしていると感じています。 これはこれで仕方ないと言うか、ドメインの話って広く語れないんですよね。 ドメインは領域で境界があって範囲が限定されています。特定ドメ

    ドメイン駆動設計に関する何か - 日々常々
    t1mvverr
    t1mvverr 2020/03/11
    「完全に理解した」→「何も分からない…」に意識をシフトさせてくれる良い記事だった。
  • 組織の問題も解決するアーキテクチャ BackendsForFrontends

    PIXTAは2007年にサービスを開始し、年々サービスとシステムの規模が大きくなっおり、それに伴い、組織的な規模も大きくなってきました。 今回はPIXTAにおいて規模が大きくなるシステムと組織をつなぐためのアーキテクチャとしてBackendForFrontend(以下BFF)の導入検討を始めているので、BFFの概要やユースケースを紹介し、ピクスタが抱える問題をどのように解決するかについて、まとめた資料です。 BFFは世の中にで初めてから日が浅く、そこまで認知が行き渡ってないのではないかと思うので、今回話のメインはBFFそのものに焦点を当てて紹介します。 この内容はWeb現場Meetup#4の発表資料です。Read less

    組織の問題も解決するアーキテクチャ BackendsForFrontends
    t1mvverr
    t1mvverr 2020/01/22
    ユースケース活用例がそれぞれ1ページに収まってて、分かりやすくて、良い。
  • プログラミング言語「Blawn」は普及しそうですか?

    回答 (3件中の1件目) 言語が普及するのに必要な条件は明確になっておらず、どの言語が普及し、どの言語が普及しないのか事前に予測することは困難です。 Blawnを構成する技術要素のひとつひとつはたいへん光るものがあります。そのような言語は(潜在的)ユーザーにとって魅力的に見えるでしょうから、ユーザーを集め、コミュニティが構築される可能性があります。コミュニティは言語普及には必須の要素のように思われます。 Blawnは生まれたばかりの言語ですから、まだまだ(仕様が)不安定ですが、言語の成長フェーズを考えると逆にそこが魅力と言えます。今後、仕様・実装が練り込まれて成長していくことも普及の...

    プログラミング言語「Blawn」は普及しそうですか?
    t1mvverr
    t1mvverr 2019/10/27
    ”Blawnが普及するかどうかは、作者が今後飽きてしまわないかどうかにかかっているように思います”
  • プログラマーを30年間やってきた経験から学んだことまとめ

    プログラマーにとって「どうすればより効率よくプログラムを組み上げられるのか」は常に頭を悩まし続ける問題の1つとなっていますが、その道のエキスパートであるエンジニアのジュリオ・ビアソンさんが30年間ソフトウェア開発に携わってきた経験から学んだことについてブログにまとめています。 Julio Biason .Net 4.0 - Things I Learnt The Hard Way (in 30 Years of Software Development) https://blog.juliobiason.net/thoughts/things-i-learnt-the-hard-way/ ビアソンさんは多数ある「学んだこと」を以下の3つに大きくわけてまとめています。 ◆ソフトウェア開発について ◆チーム・仕事について ◆個人的なことについて これからプログラマーになろうとしている、あるいは

    プログラマーを30年間やってきた経験から学んだことまとめ
    t1mvverr
    t1mvverr 2019/07/10
    "プロジェクトを機能ごとでは無く、データタイプごとに整理する""自分のコンピューターで実行できない場合は生産性が落ちてしまう""認知的不協和がコードを読みにくくしてしまう"
  • 1日一つ強くなる戦略としての UCDDD (Udemy Course Development Driven Development)

    Udemy React Redux Course 割引適用のリンク Udemy React + Redux コース 私は「1日一つ強くなる」ということをスローガンとして掲げ、活動しています。 1日一つ強くなれば、昨日の自分よりも今日の自分の方が強いので、結果今日が最強です。そしてこれが死ぬまで続けば、死ぬ瞬間が、自分の人生において最強な訳です。最強になってどうするんだ…という問題は置いておくとして…非常にいい考え方だと思います。 これは私の尊敬する梅原大吾さん (プロゲーマーで特に格闘ゲームのストリートファイターとして有名な方です) の提言する最強になるための理論で、梅原さんの新書のタイトルにもなっています。 さて、1日一つ強くなれば最強になれるのはわかったので、次にどうやって強くなるか、ということについて考えてみると、一般的に以下のような方法が有効だと言われています。 アウトプット 自分

    1日一つ強くなる戦略としての UCDDD (Udemy Course Development Driven Development)
    t1mvverr
    t1mvverr 2019/04/15
    ”React と jQuery の間にあるのは、仮想DOMやJSX等のReact の理解よりも、 Babel 等を使ってトランスコンパイルする必要がある「新しい JavaScript 環境」による開発だと思っていました”
  • クックパッド基幹システムのmicroservices化戦略 〜お台場プロジェクト1年半の軌跡〜 - クックパッド開発者ブログ

    インフラストラクチャー部の青木峰郎です。 最近はDWH運用の傍ら、所属とまったく関係のないサービス開発のためのデザインスプリントをしつつ、 Java 10でgRPCサーバーを書きつつ、 リアクティブプログラミングを使った非同期オーケストレーション層を勢いだけで導入したりしています。 ですが今日はそれとはあまり関係なく、クックパッドの中核サービスであるレシピサービスの アーキテクチャ改善プロジェクト、「お台場プロジェクト」の戦略について話します。 これまで、お台場プロジェクトで行った施策について対外的に発表したことはあっても、 全体戦略について話したことはありませんでした。 その一番の理由は、正直に言って、プロジェクトオーナーであるわたしにもプロジェクト全体の姿が見えていなかったからです。 しかし現在プロジェクト開始から1年半が経過してようやく全貌が見えてきたので、すべてをお話ししようと思い

    クックパッド基幹システムのmicroservices化戦略 〜お台場プロジェクト1年半の軌跡〜 - クックパッド開発者ブログ
    t1mvverr
    t1mvverr 2019/03/10
    "データベースの切れ目が、システムの切れ目"これ良いな
  • 開発者が知っておくべきSOLIDの原則 | POSTD

    (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) オブジェクト指向プログラミングが、ソフトウェア開発に新しい設計を持ち込みました。 その結果、開発者は単一の目的を処理するために、全体のアプリケーションに関係なく、1つのクラスの中で、同じ目的や機能を持つデータを結び付けることができるようになりました。 しかし、このオブジェクト指向プログラミングで、分かりにくいプログラムやメンテナンスができないプログラムを防ぐことはできません。 そこで、5つのガイドラインがRobert C. Martinによって作り出されました。これら5つのガイドラインすなわち原則により、開発者にとって読みやすく、メンテナンスが可能なプログラムを作成しやすくなりました。 5つの原則は、S.O.L.I.Dの原則と呼ばれています(頭字語はMichael Feathereによって名付けられま

    開発者が知っておくべきSOLIDの原則 | POSTD
    t1mvverr
    t1mvverr 2019/02/28
    開放閉鎖の法則→「AnimalSound関数は、makeSound()があるクラスだけ、受け付けるよ」 インターフェイス(IF)分離の法則→「でかいIFを作ると無駄なメソッド作らないといけないよ。小さいIFを組合せて大きいIFを作ってよ」
  • 1