- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2024-02-18T02:41:11+09:00","default:irrp","irrp")
#author("2024-04-03T12:44:59+09:00","default:irrp","irrp")
→上流工程一般
→基本設計
→アーキテクチャ
→ドキュメント作成
→アルゴリズム
#contents
*サブトピック [#u62b575e]
-オブジェクト指向
*設計・デザイン一般 [#n6914895]
-[[フロントエンドのデザインパターン>https://zenn.dev/morinokami/books/learning-patterns-1]] 2022.10
-[[どうしてあなたの共通化は間違っているのか:目次 #デザインパターン - Qiita>https://qiita.com/wolfmagnate/items/73c3770cf036eada630d]] 2024.3
-[[詳細設計の書き方 #初心者 - Qiita>https://qiita.com/k-kimu/items/300a631e7599453fb4e3]] 2024.2
-[[オブジェクト指向の複雑性を軽減する、データ指向プログラミング入門>https://zenn.dev/chillnn_tech/articles/e78a76f94ad45a]] 2023.10
-[[概念モデリングや設計原則は進化しているのか: プログラマの思索>https://forza.cocolog-nifty.com/blog/2023/10/post-9c7f0d.html]] 2023.10
--概念モデリングや設計原則は以前よりも変化していないように思う。
-[[Iframeを使いこなそう。~ EC決済のセキュリティ対策に関連して ~ - GMOインターネットグループ グループ研究開発本部>https://recruit.gmo.jp/engineer/jisedai/blog/iframe/]] 2023.10
-[[クレカ決済にみる外部システム連携する際の堅牢な設計 - GMOインターネットグループ グループ研究開発本部>https://recruit.gmo.jp/engineer/jisedai/blog/robust-design-with-credit-card/]] 2023.10
-[[今さら聞けないログの基本と設計指針 - Qiita>https://qiita.com/tadashiro_ninomiya/items/19c774898c68add6185e]] 2023.9
-[[いいねとその通知機能をDynamoDBで設計したら思ったよりムズい - エムスリーテックブログ>https://www.m3tech.blog/entry/2023/08/25/110000]] 2023.8
-[[『ソフトウェア設計のトレードオフと誤り』を読んで、”日付や時刻”を扱うことの難しさについて考えた - Magnolia Tech>https://blog.magnolia.tech/entry/2023/07/16/150521]] 2023.7
-[[TOCTOUを忘れずに設計・実装する>https://zenn.dev/kittybbit/articles/dfd7284f5ff10a]] 2023.5
--TOCTOU(または TOCTTOU)は、Time of check to time of use.の略で、チェックのタイミングと使用のタイミングに、ズレがあると発生する問題
-[[読みやすいコードを書くためのガイドライン>https://zenn.dev/arsaga/articles/ba9ec8c004511c]] 2023.4
-[[【React】「困難は分割せよ」―― 複雑な画面は小さな機能に分けて実装しよう。 - Qiita>https://qiita.com/honey32/items/2e6206c7dc1974b9bf9a]] 2023.1
-[[Pub/Sub とは  |  Cloud Pub/Sub ドキュメント  |  Google Cloud>https://cloud.google.com/pubsub/docs/overview?hl=ja]] 2023.1
-[[「ビジネスロジック」とは何か、どう実装するのか - Qiita>https://qiita.com/os1ma/items/25725edfe3c2af93d735]] 2021
-[[防御的プログラミングと契約プログラミング - Qiita>https://qiita.com/yoshitaro-yoyo/items/bb8cc631276380b68c13]] 2022.10
-[[The Art of Logging. In order to get the most of the logs… | by Jaouher Kharrat | Sep, 2022 | Medium>https://medium.com/@JaouherK/creating-a-human-and-machine-freindly-logging-format-bb6d4bb01dca]] 2022.10
-[[「JavaとJavaScriptは別だからw」と言いながら、CみたいにJavaを書く人々への処方箋 - Qiita>https://qiita.com/470_aaa/items/847312bd218ccd6d86f4]] 2022.6
-[[system-design-primer/README-ja.md at master · donnemartin/system-design-primer · GitHub>https://github.com/donnemartin/system-design-primer/blob/master/README-ja.md]] 2017
-[[デザインの現場で絶対に必要になる基礎知識7選 | DevelopersIO>https://dev.classmethod.jp/articles/design_basis_beginner/]] 2022.4
-[[なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】>https://qiita.com/mskmiki/items/544149987475719e417b]] 2021.12
-[[とある契約の備忘目録。契約による設計(Design by Contract)で信頼性の高いソフトウェアを構築しよう。>http://zecl.hatenablog.com/entry/20100131/p1]] 2010.1
-[[意外と知られていない構造化プログラミング、あるいは構造化プログラミングはデータも手続きと一緒に抽象化する、あるいはストロヴストルップのオブジェクト指向プログラミング史観>http://www.tatapa.org/~takuo/structured_programming/structured_programming.html]] 2014.1.23
-[[ソフトウェア設計とは何か 〜 設計にはプログラミング経験が必要か否か>http://kuranuki.sonicgarden.jp/2013/01/post-109.html]] 2013.1.22
-[[バッチ処理について考える>https://qiita.com/koduki/items/e90ee1fea5aa75071d95]] 2020.1
-[[バッチ処理を再考する>http://d.hatena.ne.jp/okachimachiorz/20121125/1353844235]] 2012.11.25
-[[Modeling With Data>http://modelingwithdata.org/about_the_book.html]]
-[[設計と実装の狭間で>http://d.hatena.ne.jp/okachimachiorz/20121111/1352600604]] 2012.11.11
-[[エンジニアが一からUX/UIデザインを学ぶのに役立つ記事まとめ11個 >http://it-ch.net/t/49]] 2012.8.1
-[[なぜ状態遷移表を使うと、品質の良い開発ができるのか>http://monoist.atmarkit.co.jp/mn/articles/1205/23/news001.html]] 2012.5.23
-[[設計ミスをなくそう!現場を救うレビューの秘訣>http://itpro.nikkeibp.co.jp/article/COLUMN/20100714/350316/]] 2010.7.27
-[[読み方”を知って、レビューをもっと効果的に>http://www.atmarkit.co.jp/im/carc/serial/review/03/01.html]]
-[[智慧カード>http://triz.sblo.jp/archives/20070814-1.html]]
-[[フローチャートの悪夢,ふたたび>http://d.hatena.ne.jp/JavaBlack/20161224/p1]] 2016.12
-[[フローチャートがダメな3つの理由>http://blog.livedoor.jp/dankogai/archives/51083212.html]] 2008.7.19
--表現力がしょぼい
--人間はフローチャートのようには考えない
--フローチャートには実は重要な利点が一つある>プログラマーでなくとも理解できる
-[[設計文書のうまい書き方>http://www.hyuki.com/yukiwiki/wiki.cgi?HowToWriteAnEffectiveDesignDocument]]
-[[仕様記述言語>http://ja.wikipedia.org/wiki/%E4%BB%95%E6%A7%98%E8%A8%98%E8%BF%B0%E8%A8%80%E8%AA%9E]]
--Z言語
--VDM
--LOTOS
--SDL
--OBJ
--CafeOBJ
--SpecC言語
--UML
-[[汎用グラフィカルモデリング言語SysML:http://www.atmarkit.co.jp/im/carc/serial/redge49/redge49b.html]]
*アスペクト指向(AOP) [#ie71cf20]
-[[Spring Bootで、独自アノテーションを目印にAOPを行う方法 - エキサイト TechBlog.>https://tech.excite.co.jp/entry/2023/12/06/100456]] 2023.12
-[[今こそ知りたいSpring DI x AOP #jsug | ドクセル>https://www.docswell.com/s/MasatoshiTada/Z818E5-spring-di-aop-for-every-developers]] 2020.12
-[[アスペクト指向のバリエーション解説>http://www.atmarkit.co.jp/farc/rensai/aspect01/aspect01.html]]
--アスペクトは「様相」「側面」「視点」といった言葉に訳されているが、要するにソフトウェアのさまざまな「様相」や「側面」に注目するパラダイムがアスペクト指向なのである
--「アスペクト」とは、さまざまな角度、視点から “物事” を見た際の「様相」や「側面」のことである。
-[[.NET開発者のためのDI&AOP入門>http://www.atmarkit.co.jp/fdotnet/special/seasarnet02/seasarnet02_01.html]]
-[[アスペクト指向@IT:http://www.atmarkit.co.jp/farc/rensai/aspect01/aspect01.html]]
-[[アスペクト指向@MSDN:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/AOPArticle.asp]]
→[[S2AOP]]
*UI [#qe6364ad]
-[[何故、エンジニアはUIのセンスがないか。>http://www.milkstand.net/fsgarage/archives/001834.html]] 2012.5.15
-[[団塊〜シニア層向けのWeb設計 やっちゃいけない10のUI>http://www.future-planning.net/x/modules/news/article.php?storyid=1833]]
-[[ユーザビリティのヒント>http://www.atmarkit.co.jp/fwcr/rensai/usabilitytips01/01.html]]
-[[ダメなユーザーインターフェイス講座:http://www.geocities.co.jp/SiliconValley-Oakland/8192/]]
*MVCモデル [#ica11c1e]
-[[MOVEは望まれなかった子>http://ugaya40.net/architecture/dis_mov.html]] 2012.7.5
-[[MVCは死んだ。MOVEするときがきた>http://d.hatena.ne.jp/nowokay/20120704#1341366107]] 2012.7.4
-[[全裸で学ぶMVC事始め>http://yusukebe.com/archives/20120306/061542.html]] 2012.3.6
-[[Web Applicationを綺麗に設計するためのMVACという考え方>http://d.hatena.ne.jp/shiba_yu36/20110303/1299123350]] 2011.3.3
--データソースやロジックを扱う「Model」、表示・出力を管理する「View」、複数のModelとControllerをつなぐApplication、ユーザのリクエストなどを受け取りViewやApplicationを制御する「Controller」の4つの要素を組み合わせてシステムを実装する方式。MVCをさらに抽象化した方式。id:secondlife
-[[WebアプリのMVC設計まとめ>http://d.hatena.ne.jp/p4life/20091014/1255532618]] 2009.10.14