生成的開発プロセス・パターンランゲージ by James O. Coplien 目次 訳者による補足説明 概要 はじめに
生成的開発プロセス・パターンランゲージ by James O. Coplien 目次 訳者による補足説明 概要 はじめに
更新情報: 2013/11/19: 初版公開 2021/01/08: 訳文見直し、追記 こんにちは、hachi8833です。今回は、自分が知りたかった、Active Recordモデルのリファクタリングに関する記事を翻訳いたしました。1年前の記事なのでRails 3が前提ですが、Rails 4以降でも基本的には変わらないと思います。リンクは可能なものについては日本語のものに置き換えています。 なお、ここでご紹介したオブジェクトは、app以下にそれぞれ以下のようにフォルダを追加してそこに配置します。 注記: 以下は使われそうなフォルダを列挙しただけであり、実際にはこの一部しか使いません。 Value Object Service Object Form Object Query Object View Object Policy Object Decorator ⚓ 肥大化したActive
Stack OverflowのTDD Anti-patterns catalogueというスレがとても面白かったので訳してみた。 Stack Overflowのvoting機能でアンチパターンへの投票を行っている感じ。 上から投票の多い順になっている。 得票数はこの記事執筆時点(2013.7.9)のもの。 SQLアンチパターンっぽく、パターン名はそのまま片仮名にしてみた。 また、内容がかなり被っているとか、状況がかなりレアじゃないかと思うものは、一部省略しました。 (ブコメで訳間違ってるよ、って教えてもらったので、一部修正しました 2013.7.10) フリーライド (テストのただ乗り) 50pt 新しいテストケースを書くのではなく、他の機能のテストに新しいアサーションを追加して既存のテストケースに乗っかる。 セカンドクラス シティズン (二等市民) 47pt プロダクションコードのように
Reuse, recycle, but don’t reinvent the wheel unless necessary. by Brian Christiansen at UI Engineering. Via. This collection captures findings of consistent, unique or interesting interfaces and design flows from across the web. Please note that the content of these sets is not representative of all of the patterns I've captured. I tend to use tags more religiously and recommend that you look ther
User Interface Design patterns are recurring solutions that solve common design problems. Design patterns are standard reference points for the experienced user interface designer. Product Insights at your fingertips. Our confidence-boosting product tools for business growth are practical guides and strategies that will immediately amplify the expertise of you and your team.
Common practices to make your gem users’ and other developers’ lives easier. Consistent naming Semantic versioning Declaring dependencies Loading code Prerelease gems Consistent naming There are only two hard things in Computer Science: cache invalidation and naming things. -Phil Karlton File names Be consistent with how your gem files in lib and bin are named. The hola gem from the make your own
In software engineering, a design pattern describes a relatively small, well-defined aspect (i.e. functionality) of a computer program in terms of how to write the code. Using a pattern is intended to leverage an existing concept rather than re-inventing it. This can decrease the time to develop software and increase the quality of the resulting program. Notably, a pattern does not consist of a so
Table of ContentsPrefaceIntroductionSolving Integration Problems using PatternsIntegration StylesFile TransferShared DatabaseRemote Procedure InvocationMessagingMessaging SystemsMessage ChannelMessagePipes and FiltersMessage RouterMessage TranslatorMessage EndpointMessaging ChannelsPoint-to-Point ChannelPublish-Subscribe ChannelDatatype ChannelInvalid Message ChannelDead Letter ChannelGuaranteed D
最近、昔作ったTest Doubleの解説資料を参照・引用してくれる方がちらほら出ていて恐縮しているのですが、見直してみると結構わかりにくい資料なので今回文章としてまとめたいと思います。内容は世間一般的に言われているMock、Stub、Fake、Dummyといった言葉の定義になります。 Test Doubleとは Test Doubleとは、テスト実行時に、テスト対象が依存しているコンポーネントと置き換わるものです。「テスト代役」と訳されることもあります。世の中でMock、Stub、Fake、Dummyなどと呼ばれているものの総称に位置づけられます。 簡単な例を以下に示します。このコードでは、テストメソッド「テストコード()」がメソッド「テスト対象()」をテストしています。また「テスト対象()」は、中でメソッド「外部メソッド()」を実行しています。なお「外部メソッド」はテスト対象でないとし
1. リッチクライアント 時代のWebアプリケーション アーキテクチャ パターンについて考える Next Generation Web Application Architecture. 2012-02-21 Ruby Sapporo Night vol.14 アップルストア札幌 日本Rubyの会 Ruby札幌 しまだ こうじ SHIMADA Koji 2012年2月23日木曜日 2. ...はるかな彼方の昔、ある場所で、何もなく無菌状態の空間 を漂っていた、でたらめに集まった原子の小さな集合に、そ れは深刻な外傷を与えた。そして、異常な、とてもありそう もないパターンで原子たちを離れないように結びつけてし まった。このようなパターンは自分自身をコピーするという ことを早いうちに覚えてしまい(これはパターンが非凡なもの であることの一面を示している) 、パターンが漂うすべての 惑星で、塊状
MVC is a phenomenal idea. You have models, which are nice self-contained bits of state, views which are nice self-contained bits of UI, and controllers which are nice self-contained bits of … What? I’m certainly not the first person to notice this, but the problem with MVC as given is that you end up stuffing too much code into your controllers, because you don’t know where else to put it. To fix
この授業では、創造・実践のための言語として「パターンランゲージ」を取り上げ、その考え方と方法を学びます。パターンランゲージは、創造・実践の経験則 を「パターン」という単位にまとめ、それを体系化したものです。かつて、建築家のクリストファー・アレグザンダーは、建物や街の形態に繰り返し現れる関係性をパターンとしてまとめました。その後この考え方は、ソフトウェア開発の分野に応用され、成功を収めました。SFCでは、「SFCらしい学び」のパターン・ランゲージとして、「学習パターン」(Learning Patterns)が制作・配布されています。この授業では、パターンランゲージの考え方を学びながら、創造的コラボレーションや社会デザイン、ものづくりなど、新しい分野において、自らパターン・ライティングできるようになることを目指します。
The Nature of Order メモ 最終更新日 : 2011/4/13 (2011/4/7 より執筆開始) 下滝 亜里 <asatohan at gmail.com> 内容に関するコメント(感想、提案、書き間違いの指摘)は歓迎します。 アレグザンダーは何をしようとしたの? My aim in this book is to create a scientific view of the world in which this concept -- the idea that everything has its degree of life -- is well-defined. その他。 [...] The key idea in this book is that life is structural. [...] その他。 As I use it, the term "li
Essential JavaScript And jQuery Design Patterns - A Free New Book November 14, 2010 Hey guys. Today I'm happy to announce the release of a free book I've written called 'Essential JavaScript & jQuery Design Patterns For Beginners'. Design patterns are reusable solutions to commonly occurring problems in software development and are a very useful tool to have at your disposal. I wanted to write thi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く