並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 19 件 / 19件

新着順 人気順

packwerkの検索結果1 - 19 件 / 19件

  • Rails: モジュール化強制ツール"Packwerk"の導入を振り返る(翻訳)|TechRacho by BPS株式会社

    概要 原著者Chris Salzbergさんの許諾を得て翻訳・公開いたします。 英語記事: A Packwerk Retrospective | Rails at Scale 原文公開日: 2024/01/26 原著者: Gannon McGibbon、Chris Salzberg 日本語タイトルは内容に即したものにしました。また、一部のパラグラフを分割しています。 CC BY-NC-SA 4.0 Deed | 表示 - 非営利 - 継承 4.0 国際 | Creative Commons Rails: モジュール化強制ツールPackwerkの導入を振り返る(翻訳) 2020年、ShopifyのチームはPackwerkという名前のRuby gemをリリースしました(関連記事)。Packwerkは、Railsアプリケーション内で境界を強制的に定めてモジュール化するツールです。Packwerk

      Rails: モジュール化強制ツール"Packwerk"の導入を振り返る(翻訳)|TechRacho by BPS株式会社
    • Packwerk でスパゲッティな Rails のコードをソーメンぐらいにさっぱりさせる

      はじめに Shopify から面白そうな gem がオープンソースとして公開されました。 Shopify/packwerk: Good things come in small packages ドキュメントを読みながら動かしたところ、結構便利に思えたので紹介します。 課題と Packwerk による解決方法 理想的なコードの条件として、一般的に高凝集 (high cohesion) と疎結合 (loose coupling) が挙げられます。 こちらは Packwerk のリポジトリにあった図で、視覚的にとても分かりやすいと思ったので転載しました。 (※ここでの package とは、オートロードされたコードを含むフォルダー) a) は package 内が high cohesion (高凝集) で、package 間は public な api を使って loose coupling

        Packwerk でスパゲッティな Rails のコードをソーメンぐらいにさっぱりさせる
      • Enforcing Modularity in Rails Apps with Packwerk

        Opens in a new windowOpens an external siteOpens an external site in a new window On September 30, 2020 we held ShipIt! presents: Packwerk by Shopify. A video for the event is now available for you to learn more about our latest open source tool for creating packages with enforced boundaries in Rails apps. Click here to watch the video. The Shopify core codebase is large, complex, and growing by t

          Enforcing Modularity in Rails Apps with Packwerk
        • GitHub - Shopify/packwerk: Good things come in small packages.

          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

            GitHub - Shopify/packwerk: Good things come in small packages.
          • 週刊Railsウォッチ(20201005前編)Ruby 2.7.2がリリース、Shopifyのモジュラー化gem「packwerk」、stimulus_reflexほか|TechRacho by BPS株式会社

            2020.10.05 週刊Railsウォッチ(20201005前編)Ruby 2.7.2がリリース、Shopifyのモジュラー化gem「packwerk」、stimulus_reflexほか こんにちは、hachi8833です。皆さまもKaigi on Rails STAY HOME Editionをエンジョイされましたでしょうか。スポンサーおよび関係者の皆さまありがとうございました&お疲れさまでした!🙇 アーカイブ動画も今後順次配信されるようです!ありがとうございます🙇。 先行して @toshimaru_e さんの動画をアップしました!他のセッションも順次公開していきますのでお楽しみに! #kaigionrailshttps://t.co/duhoF1Xu1S https://t.co/y3PRYVRlO8 — Kaigi on Rails (@kaigionrails) Octob

              週刊Railsウォッチ(20201005前編)Ruby 2.7.2がリリース、Shopifyのモジュラー化gem「packwerk」、stimulus_reflexほか|TechRacho by BPS株式会社
            • A Packwerk Retrospective

              In September, 2020, our team at Shopify released a Ruby gem named Packwerk, a tool to enforce boundaries and modularize Rails applications. Since its release, Packwerk has taken on a life of its own, inspiring blog posts, conference talks, and even an entire gem ecosystem. Its popularity is an indication that Packwerk clearly filled a void in the Rails community. Packwerk is a static analysis tool

                A Packwerk Retrospective
              • マイクロサービスは不要、noteとタイミーは「Packwerk」でモジュラーモノリス導入

                「マイクロサービスは今の自社には必要ない」。今回は、このように判断してモジュラーモノリスの導入を進めている2社の事例を紹介する。文章やマンガなどのクリエーター向けにメディアプラットフォームを提供するnoteと、単発アルバイト(スキマバイト)のマッチングサービスを提供するタイミーだ。 2社とも、システムの開発にWebアプリケーションフレームワーク「Ruby on Rails(以下、Rails)」を利用している。それに加え、カナダShopify(ショッピファイ)が提供する「Packwerk(パックワーク)」というツールを利用してモジュラーモノリスを導入している。 Packwerkでモジュラーモノリス化を行う手順は大きく2つに分かれる。まず、モジュール(Packwerkでは「パッケージ」と呼ぶ)として分離したい機能ごとにディレクトリーをつくり、その機能に関連するファイルをアプリ本体から移動して、

                  マイクロサービスは不要、noteとタイミーは「Packwerk」でモジュラーモノリス導入
                • Ruby on Railsのモジュラーモノリス化 ~PackwerkとPacksRailsの導入~ - M3Career Techblog

                  こんにちは。エムスリーキャリアでエンジニアをしているakitoshigaです。 近年、疎結合なアーキテクチャの選択肢としてモジュラーモノリスに注目が集まっていますが弊社では保有するプロダクトの1つであるM3Career Primeでモジュラーモノリス化に取り組んでいます。 今回はモジュラーモノリスの概要や採用に至った背景、モジュラーモノリス化における具体的な取り組みの1つであるPackwerkとPacksRailsを導入した話について紹介したいと思います。 M3Career Primeとは M3career Primeとは、弊社で保有するプロダクトの1つであり医療機関を対象にした医師の採用支援SaaSです。 enzine.m3career.com モジュラーモノリスとは 疎結合なアーキテクチャの1形態であり、単一のコードベースで構成されていますが内部的には機能やビジネスコンテキストの単位で

                    Ruby on Railsのモジュラーモノリス化 ~PackwerkとPacksRailsの導入~ - M3Career Techblog
                  • マイクロサービスは不要、noteとタイミーは「Packwerk」でモジュラーモノリス導入

                    出典:日経クロステック、2024年2月14日 (記事は執筆時の情報に基づいており、現在では異なる場合があります) 「マイクロサービスは今の自社には必要ない」。今回は、このように判断してモジュラーモノリスの導入を進めている2社の事例を紹介する。文章やマンガなどのクリエーター向けにメディアプラットフォームを提供するnoteと、単発アルバイト(スキマバイト)のマッチングサービスを提供するタイミーだ。 2社とも、システムの開発にWebアプリケーションフレームワーク「Ruby on Rails(以下、Rails)」を利用している。それに加え、カナダShopify(ショッピファイ)が提供する「Packwerk(パックワーク)」というツールを利用してモジュラーモノリスを導入している。 Packwerkでモジュラーモノリス化を行う手順は大きく2つに分かれる。まず、モジュール(Packwerkでは「パッケー

                      マイクロサービスは不要、noteとタイミーは「Packwerk」でモジュラーモノリス導入
                    • 週刊Railsウォッチ: Packwerkの詳しい解説書『Gradual Modularization for Ruby and Rails』ほか(20221101前編)|TechRacho by BPS株式会社

                      #46197のコメント(bensheldon)より 「元の振る舞いがアプリケーションのコードで当てにされていたりするでしょうか?」「同じレコードインスタンスを2回destroyすることは普通ないかなとも思ったけど、アプリのつくりによっては削除ボタンを連打したりすると起きる可能性もありそうですね」「なるほど」 🔗 ErrorReporterで複数のエラークラスを扱えるようになった PR: Allow ErrorReporter to handle several error classes by spickermann · Pull Request #46299 · rails/rails 動機/背景 ErrorReporterは、以下のようなエラーハンドリングコードの定型文を置き換えるのが目的。 begin do_something rescue SomethingIsBroken =>

                        週刊Railsウォッチ: Packwerkの詳しい解説書『Gradual Modularization for Ruby and Rails』ほか(20221101前編)|TechRacho by BPS株式会社
                      • タイミーはどのようにしてモジュラモノリス化を進めたか packwerkの導入と、悩んだ2つのポイント

                        「【ハイブリッド開催】Rubyで追求するモジュラモノリスの可能性」は、バックエンドにRubyを採用している株式会社タイミー、hacomono社、ワンキャリア社が、Rubyにおけるモジュラモノリスの可能性や良い点、悪い点を共有する勉強会です。ここで株式会社タイミーの須貝氏が登壇。続いて、タイミーがどうやってモジュラモノリス化を進めているかについて話します。前回はこちらから。 タイミーが抱えていた課題 須貝俊 氏:続いて、タイミーがどうやってモジュラモノリス化を進めているかというところをより具体的に話していきたいと思います。 (スライドを示して)課題としてはスライドに示したようなものがあって、コード上で何が何に依存しているのか把握しきれない状態になっていました。上記に伴う変更による影響範囲がわからない。また、エンジニアの増加に伴ってチームも増えていくため、チームの責任範囲を明確にしていく必要が

                          タイミーはどのようにしてモジュラモノリス化を進めたか packwerkの導入と、悩んだ2つのポイント
                        • RailsエンジンとPackwerkによるコード分割を進行中|noteエンジニアチームの技術記事

                          Railsでサービスを開発 / 運用をしていると、コードの肥大化に伴うモノリシック化に悩まされることも多いはず。2014年のサービス開始からRailsで進めてきたnoteも今まさにその壁に立ち向かっている最中です。 Railsアプリケーションを分割しようと考えたときに、マイクロサービス化や別言語でのフルリプレイスなどを検討することもあるはずです。 様々な選択肢がある中で、弊社ではPackwerkの導入とRailsエンジン化による分割を進めることにしました。(※ packwerk:Shopifyが作成したgem。依存関係をパッケージによって整理することができる) Railsエンジンを採用した大きな理由としては以下が挙げられます。 すばやく小さく問題を切り分けることを優先 マイクロサービス化はアーキテクチャから考慮する必要があり時間がかかる 将来的なマイクロサービス化の下準備として進めることが

                            RailsエンジンとPackwerkによるコード分割を進行中|noteエンジニアチームの技術記事
                          • packwerkに入門してみた

                            はじめに packwerkは、Shopifyがオープンソースで提供しているモジュラモノリスを支援するgemです。 Shpifyがモジュラモノリスに移行した理由やpackwerkが作成された背景については、下記の記事で紹介されています。 packwerkのUSAGE.mdを読むだけでは中々理解が進まなかったのですが、下記の「Gradual Modularization for Ruby and Rails」という本が非常に参考になりました。 この記事では、packwerkの基本的な使い方について確認します。 簡易なサンプルアプリケーションをモジュール化する、という流れでイメージを掴んでいきたいと思います。 この記事で作成したコードは下記のリポジトリで確認することができます。 事前準備 scaffoldを用いて、簡易なサンプルアプリケーションを作成します。 rails new sample_p

                              packwerkに入門してみた
                            • 週刊Railsウォッチ: Ruby 3.2.0 Preview 2とRack 3.0リリース、packwerkでアプリコードの境界を強制ほか(20220920)|TechRacho by BPS株式会社

                              こんにちは、hachi8833です。RubyKaigi 2022お疲れさまでした。来年5月は長野県松本市ですね。 RubyKaigi 2023: May 11-13, 2023; See you in Matsumoto! #rubykaigi — RubyKaigi (@rubykaigi) September 10, 2022 週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙏 TechRachoではRubyやRailsなどの最新情報記事を平日に公開しています。TechRacho記事をいち早くお読みに

                                週刊Railsウォッチ: Ruby 3.2.0 Preview 2とRack 3.0リリース、packwerkでアプリコードの境界を強制ほか(20220920)|TechRacho by BPS株式会社
                              • packs-rails + packwerkでファットモデルを安全に分割する

                                はじめに こんにちは。リンクウェルクリニックDX支援システムチームの山本です。 皆さんが普段開発しているサービスの1stコミットはいつでしょうか?私が主に担当しているサービスは2018年から開発されており、今まで経験したRailsプロジェクトの中でも比較的大規模のものとなっております。 長期間開発が続けられているRailsのサービスでよくある問題として、ファットモデル・ファットコントローラーが挙げられます。その名の通り1つのファイルのサイズや役割が大きくなってしまう問題です。 我々のサービスでは診察の「予約」を担当するReservationモデルの肥大に悩まされています。この問題に対し、packs-rails と packwerk というライブラリを利用して解決する方法を検証しました。今回はこのライブラリを利用し、モデルを適切に分割し、ドメインの境界を容易に検知する仕組みをご紹介します。

                                  packs-rails + packwerkでファットモデルを安全に分割する
                                • A Packwerk Retrospective

                                  Opens in a new windowOpens an external siteOpens an external site in a new window This article was originally posted on the Rails at Scale blog. In September, 2020, our team at Shopify released a Ruby gem named Packwerk, a tool to enforce boundaries and modularize Rails applications. Since its release, Packwerk has taken on a life of its own, inspiring blog posts, conference talks, and even an ent

                                    A Packwerk Retrospective
                                  • Ruby on Rails modularization with Packwerk Episode II

                                    In the second episode of our Ruby on Rails modularization with Packwerk we will take a close look at the concept of application as an package. Application as a package The approach to modularize our application consists in converting the entire application into a package. Create the structure First, we need to create app/packages folder where we will place all our packages. In order to isolate our

                                      Ruby on Rails modularization with Packwerk Episode II
                                    • 認可ロジックのパッケージ化 - モジュラーモノリスを採用してpackwerkを導入した話 - coincheck tech blog

                                      はじめに こんにちは。アプリケーション基盤グループでエンジニアをしている草間です。 SECによるビットコイン現物ETF承認や、ビットコイン半減期の接近などの大きなテーマにより、暗号資産市場は盛り上がりを見せているように感じます。そんな中コインチェックでは、「新しい価値交換を、もっと身近に」のミッションに基づき、2024年に入ってからも実現損益チェッカーやCoincheckリワード、Coincheck OnRampなど、数々の新しいサービスをリリースしてきています。 コインチェックでは2014年に暗号資産取引サービスを開始して以来、様々なサービスが誕生してきました。多くのプロダクションコードが生まれ、段々と規模の大きいコードベースとなっていくに連れて、成長に伴う技術的負債も積まれてきているのが現状です。 私が在籍するアプリケーション基盤グループは2023年9月に発足しました。各事業部の開発速

                                        認可ロジックのパッケージ化 - モジュラーモノリスを採用してpackwerkを導入した話 - coincheck tech blog
                                      • packwerk + graphwerkでRailsアプリの依存グラフを眺めて見よう

                                        こんにちは。エンジニアのMasaruTechです。 最近、packwerkが気になっているので触ってみていました。 その中でpackwerkのREADME.mdにgraphwerkという依存グラフを描画してくれるライブラリが紹介されているのを見つけました。 そのgraphwerkを使っていろいろなRailsアプリで描画して眺めていたらおもしろいなと感じたので、今日はそれの紹介をしたいなと思います。 packwerk導入とgraphwerkでのグラフ描画手順 packwerk,graphwerkをGemfileに追加してインストール ※graphwerkはGraphvizを利用してます。ここではすでにインストールされている前提で書いてます $ vi Gemfile ---追加--- gem 'packwerk' gem 'graphwerk', group: %i[development t

                                          packwerk + graphwerkでRailsアプリの依存グラフを眺めて見よう
                                        1