タグ ソフトウェア設計
人気順 10 users 50 users 100 users 500 users 1000 usersソフトウェア設計と認知科学的アプローチ - 電通総研 テックブログ
こんにちは、Xイノベーション本部の米久保です。 こちらは、電通総研テックブログ アドベントカレンダー2024の12月10日の記事です。 はじめに 認知負荷 認知負荷理論 ソフトウェア設計と認知負荷理論 認知バイアス エラー まとめ 参考文献リスト はじめに ITエンジニア同士で会話するときに、「メンタルモデル」や「認知... 続きを読む
Golang開発者のためのクリーンアーキテクチャ
はじめに クリーンアーキテクチャは、ソフトウェア設計の分野で非常に重要な概念です。 しかし、その理解は容易ではなく、明確な正解が存在するわけではありません。 多くの人が異なる解釈を持ち、他の設計思想と混在していることもあります。 この記事では、自分なりの視点からクリーンアーキテクチャを解釈し、その整... 続きを読む
「ソフトウェア設計」のドメイン - 「データモデリングでドメインを駆動する」を読んで
2024.05.28 『データモデリングでドメインを駆動する』読書感想会 https://kichijojipm.connpass.com/event/315276/ 続きを読む
【ソフトウェア設計】例外処理を考える
はじめに 最近書いてるソフトウェア設計シリーズです。今回は例外に関して。以前、以下のような記事を書いたのですが、もう少し深堀して書いてみました。 ちなみにソフトウェア設計シリーズは他には以下を書いています。 モジュールになぜ分けるのか? モジュール、依存、そしてカプセル化 モジュールをどう分割するのか... 続きを読む
設計の知識と技能で駆動するソフトウェア開発
Object Oriented Conference 2024 登壇の機会をいただいたので、ここ数年、設計について考えていることを、言語化してみました。 はじめに 設計と開発プロセスの関係性 ソフトウェア設計の知識と技能 ① ソフトウェア設計の基礎知識 a. 基本課題 b. 解決のアプローチ c. モジュール化:基本となる4つの技法 ② モジュール... 続きを読む
【ソフトウェア設計】モジュールをどう分割するのか?
はじめに 前々回や、前回に引き続き、ソフトウェア設計の指針に関する話をしたいと思います。 関数やクラス、そしてサービスなどシステムの塊の単位をモジュールと呼び、モジュールを作る事で、認知負荷を下げ複雑性と戦うという話をしてきました。では、モジュールは「いつ」分割するのが良いでしょうか? また、他に... 続きを読む
プラットフォームの上に劣化版のプラットフォームを作成してしまうアンチパターン「内部プラットフォーム効果」とはどういうものなのか
「ソフトウェア設計におけるアンチパターンの中に特にひどいにも関わらず文書化されていないものがある」として、ソフトウェア開発のためのハウツーガイドを提供するサイト「The Daily WTF」の設立者であるアレックス・パパディムーリスさんが「内部プラットフォーム効果(Inner-platform effect)」について投稿していま... 続きを読む
TypeScriptで学ぶ!SOLID原則
はじめに 皆さんこんにちは、株式会社エムアイ・ラボのエンジニアです! 今回はソフトウェア設計のSOLID原則について学習したので、弊社のメインの開発言語であるTypeScriptのサンプルコードを使って共有できればと思います。 SOLID原則は、オブジェクト思考プログラミングにおいて、ソフトウェアがメンテナンスしやすく... 続きを読む
【訃報】プログラミング言語「Pascal」の開発者ニクラウス・ヴィルト氏が89歳で死去、ソフトウェア設計のパイオニアとして複数のプログラミング言語を考案し1984年にチューリング賞を受賞
プログラミング言語「」の開発者であるニクラウス・ヴィルト氏が2024年1月1日に亡くなりました。89歳でした。 RIP: Software design pioneer Niklaus Wirth • The Register https://www.theregister.com/2024/01/04/niklaus_wirth_obituary/ We lost a titan of programming languages, programming methodology, softwa... 続きを読む
【訃報】プログラミング言語「Pascal」の開発者ニクラウス・ヴィルト氏が89歳で死去、ソフトウェア設計のパイオニアとして複数のプログラミング言語を考案し1984年にチューリング賞を受賞
プログラミング言語「Pascal」の開発者であるニクラウス・ヴィルト氏が2024年1月1日に亡くなりました。89歳でした。 RIP: Software design pioneer Niklaus Wirth • The Register https://www.theregister.com/2024/01/04/niklaus_wirth_obituary/ We lost a titan of programming languages, programming methodology, ... 続きを読む
「Real World HTTP」著者・渋川よしき氏が「最新情報は追わない」と断言する理由
フューチャーアーキテクト株式会社 シニアアーキテクト 渋川 よしき 本田技術研究所、DeNAを経て現職。技術書の執筆や翻訳も手がけ、「実用Go言語」「Real World HTTP」「Goならわかるシステムプログラミング」の執筆、エキスパートPythonプログラミングの翻訳などを行う。2023年5月に翻訳書「ソフトウェア設計のトレー... 続きを読む
分岐を丁寧に扱わなければならない理由とその方法
はじめに この記事ではソフトウェア設計において 分岐を雑に扱うとどうなるのか 分岐を丁寧に扱うため方法とは 分岐を丁寧に扱うと何が得られるのか についてまとめました。 分岐を雑に扱うとどうなるか?? まずはこちらのコードをご覧ください。 ❌分岐がネストになって読みづらいclass DeliveryUseCase { fun deliver... 続きを読む
『ソフトウェア設計のトレードオフと誤り』を読んで、”日付や時刻”を扱うことの難しさについて考えた - Magnolia Tech
ソフトウェア設計のトレードオフと誤り ―プログラミングの際により良い選択をするには 作者:Tomasz Lelek,Jon SkeetオライリージャパンAmazon ソフトウェア開発経験の最初の段階で「一つの機能には複数の選択肢が有って、メリット・デメリットがそれぞれ有り、それらはトレードオフの関係に有り、容易には決めることがで... 続きを読む
ソフトウェア設計のトレードオフと誤りを出版しました | フューチャー技術ブログ
すでに多くの方々にお手に取っていただいておりますが、オライリージャパンから「ソフトウェア設計のトレードオフと誤り」の翻訳をフューチャーのメンバーと一緒に出版いたしました。好評なようで、発売一カ月ほどで増刷も決定いたしました。みなさまご購入いただき、ありがとうございます。初版をお買い求めになられた... 続きを読む
『ドメイン駆動設計』の5つの基本アイデア - ソフトウェア設計を考える
エヴァンス氏の『ドメイン駆動設計』の背景にある基本アイデアは何かという私の捉え方のメモ書き。 ドメイン駆動設計にはいろいろな側面がある。また書籍『ドメイン駆動設計』は体系だった設計方法論ではなく、設計の考え方とやり方を経験則として言語化してみた、と捉えている。 その経験則(100%ではないが多くの場合... 続きを読む
ソフトウェア設計のトレードオフと誤り
「プログラムを設計するときに行った技術的な判断や選択が、後日大きな制約となる」これはプログラマなら誰しも経験したことのあることでしょう。本書は、そんなプログラミングにおける各種の設計上の選択について、トレードオフの内容やそれがどのような誤りを招きうるのかという点を踏まえて紹介する書籍です。 コード... 続きを読む
5月新刊情報『ソフトウェア設計のトレードオフと誤り』
『ソフトウェア設計のトレードオフと誤り ―プログラミングの際により良い選択をするには』 Tomasz Lelek、Jon Skeet 著、渋川 よしき、山田 智子、本田 健悟、辻 大志郎、宮永 崇史、小橋 昌明、柏木 祥子、岸本 卓也、後藤 玲雄、棚井 龍之介、原木 翔、山本 力世 訳 2023年5月25日発売予定 472ページ(予定) ISBN97... 続きを読む
ソフトウェア設計についてAIと壁打ちしたら良い体験でした(準中級者〜中級者向け) | DevelopersIO
くらにゃんの人格が憑依したAI相手になぜなぜ分析・・・ではなく「にゃぜにゃぜ」と問答をしていたらあっという間に時間が過ぎました。自分がある程度勉強している分野の壁打ち学習には良いかもしれません。 こんにちは。AWS事業本部コンサルティング部に所属している今泉(@bun76235104)です。 ソフトウェア設計・クラ... 続きを読む
ちょうぜつ改め21世紀ふつうのソフトウェア設計
それできみ、 そのSOLIDとやらは なんの役に立つのかね ~オブジェクト指向の原則 パッケージ編~ 続きを読む
CTO から見た,なぜスタートアップ 初期のソフトウェア設計は壊れがちなのか
Title: why the application design is breaking sometimes at a startup company? - a CTO explains the reason. Forkwell Library #14 続きを読む
『ドメイン駆動設計』の解説記事を書きました - ソフトウェア設計を考える
本日(1/18)発売された、Software Design誌 2023年2月号の第一特集で「ドメイン駆動設計入門」を書きました。 執筆の意図と記事の概要を簡単にまとめておきます。 Software Design 2023年2月号|技術評論社 執筆の意図 特集のサブタイトルにある通り「設計力を磨きたい」読者が、ドメイン駆動設計の基礎を知ることで「設... 続きを読む
本の紹介『読みやすいコードのガイドライン』 - ソフトウェア設計を考える
はじめに 良い本です。コードを書く人であればだれでもが気づきと学びがあるでしょう。 特に、コードの規模が大きく長期間にわたってさまざまな関係者が読むことになるプログラムを書く人にはぜひ読んでほしい本です。 gihyo.jp この本から学べるのは、どちらかというと「やり方」よりも「考え方」です。 書き方の具体例... 続きを読む
【続】ソフトウェア設計についてtwada技術顧問と話してみた 〜 A Philosophy of Software Design をベースに 〜 - NTT Communications Engineers' Blog
はじめに 本記事は前回の記事である「ソフトウェア設計についてtwada技術顧問と話してみた 〜 A Philosophy of Software Design をベースに 〜 - NTT Communications Engineers' Blog」の続編です。 前回の記事の内容がベースとなっていますので、「APoSD って何だっけ?」という場合はぜひ前回の記事をご覧になってから... 続きを読む
設計の学び方:自分流のススメ
BPStudy#178〜成長し続け、変更を楽に安全にできるソフトウェア設計とは 株式会社ビープラウドが主催するIT勉強会 2022年6月30日 設計を学ぶのは自分のため 「正しい」学び方があるわけではない 設計の学びに特定の到達点はない 何を学ぶのか 設計の学び方 上達する:練習して変化する 成長する:時間をかけて変化する... 続きを読む
GoogleのDesign Docsから学ぶソフトウェア設計 - Qiita
概要 Design Documentと聞くと何を想像しますか? 一般的にDesign Documentが指すのは設計書であることが多いのではないでしょうか。 設計書、簡単に説明するのであればソフトウェアを「どうやって作るの?」を説明したドキュメントです。 Googleではソフトウェアエンジニアリング文化における重要な要素として、今回お... 続きを読む