タグ

設計に関するanatofuzのブックマーク (7)

  • サブスクリプション機能制御の設計における勘所 - inSmartBank

    こんにちは、スマートバンクでアプリエンジニアをしている ロクネム です。 弊社では B/43という家計簿プリカアプリ を提供しており、つい先日サブスクリプションサービス「B/43プラス」をリリースしました。 このようなサブスクリプションを提供するサービスにおいては、そのサブスクリプションを利用しているユーザーのみが特定の “機能” を使用できるように “制御” する必要があるかと思います。 このサブスクリプションの機能制御を実装するにあたって、「サブスクリプションが有効ではない場合は機能を制限する」という設計では実は不十分で、その他にもさまざまな要件を考慮した上でより柔軟な設計を行う必要があります。 記事では、このようなサブスクリプション機能制御の設計における勘所について、B/43プラスを例にご紹介します。 ※ 記事は B/43 Tech Talk 〜 Fintech×サブスクリプショ

    サブスクリプション機能制御の設計における勘所 - inSmartBank
  • 設計/コードレビューで"常に"心がけるポイント - little hands' lab

    株式会社ログラスの松岡(@little_hand_s)です。 little-hands.hatenablog.com ↑の記事でドメインオブジェクトの設計方針を書きましたが、それ以外の全般的な設計/レビュー観点について書きます。 非常に汎用性のある内容なので、数多くのプログラミング原則を覚えるより、まずこの観点でチェックできるようにすると即効性が期待できます。 前提として、階層化されたアーキテクチャ(オニオンアーキテクチャなど)を採用しているものとします。 ①レイヤーの責務違反の実装をしていないか ②高凝集/低結合になっているか 高凝集 クラスに関して メソッドに関して 低結合 ③ユニットテストを書きやすいか 合言葉 筆者執筆書籍 現場での導入で困ったら ①レイヤーの責務違反の実装をしていないか 例として、「ユースケース層にドメイン層のルール/制約に関わる実装をしている」場合はNGです。

    設計/コードレビューで"常に"心がけるポイント - little hands' lab
  • 宣言的UIはReact Hooksで完成に至り、現代的設計論が必須の時代になる - Qiita

    この記事は、ある程度以上の規模のGUI開発において、React Hooks以後の宣言的UIにより、大規模開発に用いられる設計論に完全に対応できるようになり「ビジネスロジックの変更や追加」に対応するコストを低く保つこと(技術的負債の抑制)ができるようになったことを解説するものです。 技術的負債の抑制には、技術的負債の原因となりがちな「広範囲の密結合」と「適切な疎結合を保つ仕組みの欠如」が欠かせません。それをカバーするのが、大規模開発をクリーンに行える設計論(ここでは「現代的な設計論」とよぶもの)です。クリーンアーキテクチャなんかでGUIによく適用されるHumble Object Patternのようにプレゼンテーションとビューを分離する必然性が無くなるでしょう。 ポイントは ある程度以上の規模で開発するなら設計論をうまく使い設計しないと、技術的負債を抱え込む(ビジネスロジックの変更や追加に対

    宣言的UIはReact Hooksで完成に至り、現代的設計論が必須の時代になる - Qiita
  • クラスなど設計するときに分けて考えるべきことのメモ - Lambdaカクテル

    最近良い設計について考えているので,そのメモです. 分けて考えるべきこと どれを処理するのかという知識と,実際にそれを選別する処理 e.g. どのイベントをハンドルするかと,ハンドルするイベントをフィルタする処理 ハンドラ自体がイベントをフィルタする必要はない 車が燃料一覧からガソリンや軽油を選択するのはまちがっている.それはスタンド店員の責務であって,車はガソリンを受理することだけ知っていればよい. 同じ場所で行っている似たような処理 実は共通部分として切り出せることがある e.g. イベントハンドラで,通常のハンドリングのそばに特殊なイベントを処理する場合を書いているが,実は特殊なイベントの処理はどのハンドラでも共通なので呼び出す側で処理できた is-a関係になっていると継承できるが,子クラスが大きくなりすぎてはいけない気がする,子になんでも書いていいというわけではない is-a関係に

    クラスなど設計するときに分けて考えるべきことのメモ - Lambdaカクテル
  • Data Models

    Data Models: A Comprehensive Guide to Structuring Information for Optimal Insights and Decision-Making In the realm of data management, the use of effective data models plays a pivotal role in organizing and representing information in a structured and meaningful way. Data models serve as the blueprint for databases, facilitating efficient data storage, retrieval, and analysis. This article delves

    Data Models
  • Gyazo の Web API の設計変更 - r7kamura - Medium

    業務委託として現在 Nota 社の Gyazo のサーバサイドの開発をお手伝いさせてもらっているのですが、その中でやっていることについて幾つか紹介したいと思い、今回は開発環境で全面的に Docker を使うようにしたという話について書こ… ここでは、Web ブラウザやその他のクライアントから HTTP を介して利用し、JSON などのデータフォーマットでクライアントアプリケーションとやり取りを行うようなエンドポイントのことを Web API と呼んでいます。 Jbuilder からの移行これまでのコードでは、JSON を生成するために Jbuilder というライブラリを使っていました。これは DSL を用いて JSON を生成するライブラリで、Rails の場合は ActionView と協調して動きます。 Jbuilder からの変更の理由は幾つかあるのですが、主要な理由を挙げると、以

  • API デザイン : URL には名前と識別子のどちらを使うべきか | Google Cloud 公式ブログ

    ウェブ API の設計に携わっている方であれば、API で使う URL のスタイルに統一的な考え方がないことも、選択した URL スタイルが API の使いやすさや寿命に大きな影響を与えることも、よくご存じでしょう。Google Cloud の Apigee チームは、社内だけでなくお客様とも協力しながら、API の設計について長く検討を行ってきました。稿では、私たちが設計の現場で実際に使用している URL のデザイン パターンと、それを使う理由についてシェアしたいと思います。 著名なウェブ API をご覧になれば、いくつかの異なる URL パターンがあることに気づかれるはずです。次に示すのは、極端に異なる考え方に基づいた 2 つのスタイルの具体例です。 https://ebank.com/accounts/a49a9762-3790-4b4f-adbf-4577a35b1df7 htt

    API デザイン : URL には名前と識別子のどちらを使うべきか | Google Cloud 公式ブログ
  • 1