はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    新内閣発足

『ploeh blog』

  • 人気
  • 新着
  • すべて
  • Alternative ways to design with functional programming

    3 users

    blog.ploeh.dk

    A catalogue of FP solutions to a sample problem. If you're past the novice stage of learning programming, you will have noticed that there's usually more than one way to solve a particular problem. Sometimes one way is better than alternatives, but often, there's no single clearly superior option. It's a cliche that you should use the right tool for the job. For programmers, our most important too

    • テクノロジー
    • 2025/04/08 08:32
    • Compile-time type-checked truth tables

      8 users

      blog.ploeh.dk

      With simple and easy-to-understand examples in F# and Haskell. Eve Ragins recently published an article called Why you should use truth tables in your job. It's a good article. You should read it. In it, she outlines how creating a Truth Table can help you smoke out edge cases or unclear requirements. I agree, and it also beautifully explains why I find algebraic data types so useful. With languag

      • テクノロジー
      • 2023/08/22 16:36
      • Haskell
      • プログラミング
      • Programming
      • あとで読む
      • Semigroup resonance FizzBuzz

        5 users

        blog.ploeh.dk

        An alternative solution to the FizzBuzz kata. A common solution to the FizzBuzz kata is to write a loop from 1 to 100 and perform a modulo check for each number. Functional programming languages like Haskell don't have loops, so instead you'd typically solve the kata like this: isAMultipleOf :: Integral a => a -> a -> Bool isAMultipleOf i multiplier = i `mod` multiplier == 0 convert :: (Integral a

        • テクノロジー
        • 2020/01/01 06:14
        • Haskell
        • プログラミング
        • Functional architecture is Ports and Adapters

          5 users

          blog.ploeh.dk

          Functional architecture is Ports and Adapters by Mark Seemann Functional architecture tends to fall into a pit of success that looks a lot like Ports and Adapters. In object-oriented architecture, we often struggle towards the ideal of the Ports and Adapters architecture, although we often call it something else: layered architecture, onion architecture, hexagonal architecture, and so on. The goal

          • テクノロジー
          • 2017/12/29 18:22
          • haskell
          • Architecture
          • あとで読む
          • From design patterns to category theory

            10 users

            blog.ploeh.dk

            How do you design good abstractions? By using abstractions that already exist. When I was a boy, I had a cassette tape player. It came with playback controls like these: Soon after cassette players had become widely adopted, VCR manufacturers figured out that they could reuse those symbols to make their machines easier to use. Everyone could play a video tape, but 'no one' could 'program' them, be

            • テクノロジー
            • 2017/10/05 12:23
            • 数学
            • IT
            • Service Locator is an Anti-Pattern

              4 users

              blog.ploeh.dk

              Service Locator is a well-known pattern, and since it was described by Martin Fowler, it must be good, right? No, it's actually an anti-pattern and should be avoided. Let's examine why this is so. In short, the problem with Service Locator is that it hides a class' dependencies, causing run-time errors instead of compile-time errors, as well as making the code more difficult to maintain because it

              • テクノロジー
              • 2016/03/15 05:31
              • Layers, Onions, Ports, Adapters: it's all the same

                5 users

                blog.ploeh.dk

                Layers, Onions, Ports, Adapters: it's all the same by Mark Seemann If you apply the Dependency Inversion Principle to Layered Architecture, you end up with Ports and Adapters. One of my readers, Giorgio Sala, asks me: In his book "Implementing DDD" mr Vernon talks a lot about the Ports and Adapter architecture as a next level step of the Layered architecture. I would like to know your thinking abo

                • 学び
                • 2016/01/15 20:25
                • ddd
                • architecture
                • ploeh blog

                  3 users

                  blog.ploeh.dk

                  A difficult task may be easier if done sooner. You've probably seen a figure like this before: The point is that as time passes, the cost of doing something increases. This is often used to explain why test-driven development (TDD) or other agile methods are cost-effective alternatives to a waterfall process. Last time I checked, however, there was scant scientific evidence for this curve. Even so

                  • テクノロジー
                  • 2016/01/10 10:40
                  • Interfaces are not abstractions

                    3 users

                    blog.ploeh.dk

                    One of the first sound bites from the beloved book Design Patterns is this: Program to an interface, not an implementation It would seem that a corollary is that we can measure the quality of our code on the number of interfaces; the more, the better. However, that's not how it feels in reality when you are trying to figure out whether to use an IFooFactory, IFooPolicy, IFooPolicyFactory or perhap

                    • テクノロジー
                    • 2015/10/26 14:12
                    • programming
                    • Less is more: language features

                      4 users

                      blog.ploeh.dk

                      Many languages have redundant features; progress in language design includes removing those features. (This post is also available in Japanese.) There are many programming languages, and new ones are being introduced all the time. Are these languages better than previous languages? Obviously, that's impossible to answer, since there's no clear measurement of what constitutes a 'better' programming

                      • テクノロジー
                      • 2015/04/14 01:23
                      • 10 tips for better Pull Requests

                        12 users

                        blog.ploeh.dk

                        Making a good Pull Request involves more than writing good code. The Pull Request model has turned out to be a great way to build software in teams - particularly for distributed teams; not only for open source development, but also in enterprises. Since some time around 2010, I've been reviewing Pull Requests both for my open source projects, but also as a team member for some of my customers, do

                        • テクノロジー
                        • 2015/01/17 03:45
                        • Pull Request
                        • code
                        • git
                        • review
                        • GitHub
                        • development
                        • REST lesson learned: Avoid 204 responses

                          4 users

                          blog.ploeh.dk

                          Avoid 204 responses if you're building a HATEOAS application. This is a lesson about REST API design that I learned while building non-trivial REST APIs. In order to be as supportive of the client as possible, a REST API should not return 204 (No Content) responses. From the service's perspective, a 204 (No Content) response may be a perfectly valid response to a POST, PUT or DELETE request. Parti

                          • テクノロジー
                          • 2014/04/14 15:47
                          • REST
                          • SOLID: the next step is Functional

                            6 users

                            blog.ploeh.dk

                            If you take the SOLID principles to their extremes, you arrive at something that makes Functional Programming look quite attractive. You may have seen this one before, but bear with me :) The venerable master Qc Na was walking with his student, Anton. Hoping to prompt the master into a discussion, Anton said "Master, I have heard that objects are a very good thing - is this true?" Qc Na looked pit

                            • テクノロジー
                            • 2014/03/11 06:33
                            • Content moved

                              4 users

                              blog.ploeh.dk

                              This page has moved to /2012/05/25/Designpatternsacrossparadigms.

                              • 世の中
                              • 2012/05/25 21:57

                              このページはまだ
                              ブックマークされていません

                              このページを最初にブックマークしてみませんか?

                              『ploeh blog』の新着エントリーを見る

                              キーボードショートカット一覧

                              j次のブックマーク

                              k前のブックマーク

                              lあとで読む

                              eコメント一覧を開く

                              oページを開く

                              はてなブックマーク

                              • 総合
                              • 一般
                              • 世の中
                              • 政治と経済
                              • 暮らし
                              • 学び
                              • テクノロジー
                              • エンタメ
                              • アニメとゲーム
                              • おもしろ
                              • アプリ・拡張機能
                              • 開発ブログ
                              • ヘルプ
                              • お問い合わせ
                              • ガイドライン
                              • 利用規約
                              • プライバシーポリシー
                              • 利用者情報の外部送信について
                              • ガイドライン
                              • 利用規約
                              • プライバシーポリシー
                              • 利用者情報の外部送信について

                              公式Twitter

                              • 公式アカウント
                              • ホットエントリー

                              はてなのサービス

                              • はてなブログ
                              • はてなブログPro
                              • 人力検索はてな
                              • はてなブログ タグ
                              • はてなニュース
                              • ソレドコ
                              • App Storeからダウンロード
                              • Google Playで手に入れよう
                              Copyright © 2005-2025 Hatena. All Rights Reserved.
                              設定を変更しましたx