タグ

eduと設計に関するkoma_gのブックマーク (11)

  • 今さら聞けないログの基本と設計指針 - Qiita

    ログの出力場所 ログは、開発者や運用担当者が見つけやすい箇所に出力することを原則としましょう。ファイルに出力する場合は、logディレクトリなどを作成しておくことをお勧めします。基的に、出力先は以下の4つが想定されます。 ・ファイルに出力する コンソール外で起動するアプリケーションに使用される方法です。 ・標準出力 コンソールから起動するアプリケーションで使用されます。途中経過などを出力するための出力方法です。 ・外部ログ管理ツールのファイルに出力 外部のログ管理ツールを用いることが可能な場合は、専用のログ記録場所に出力することを推奨しています。 ・外部システムへ出力 開発者・運用者の作業やコミュニケーションを円滑に行うために、Slackなどのチャットツールに出力するケースもあります。ただし、稼働率に注意する必要があり過度なログの出力は控えるようにしましょう。 基的に、外部ログ管理システ

    今さら聞けないログの基本と設計指針 - Qiita
  • テスト設計チュートリアル/Test Design Tutorial

    高品質と高スピードを両立させるテストアプローチ/Test Approach that Improves Quality and Agility Together

    テスト設計チュートリアル/Test Design Tutorial
  • リーダブルコードの要点整理と活用例まとめ

    はじめに 最近コードレビューの機会が増えてきたので、「リーダブルコード」を読み直しました。 リーダブルコードを読んでいく中で要点を整理し、実務の現場でコードを書いたりレビューをする際にどのように活用していくべきかを自分なりにまとめてみました。 この記事を読むことで、リーダブルコードの要点の把握と実際の活用例を学ぶことができます。 この記事の主な対象者 リーダブルコードの要点をサクッと知りたい人 初級~中級者(実務歴1~3年目)の人 コードレビューの機会が増えてきた人 これまで我流でコードを書いてきた人 リーダブルコードについて リーダブルコードはあくまで「こう書きなさい」と押し付け口調ではなく「こう書いた方がもっとよくなるよ」といった丁寧な語り口で書かれています。 それを前提として要点や活用方法をまとめていきます。 1章 理解しやすいコード 優れたコードについて リーダブルコードで優れたコ

    リーダブルコードの要点整理と活用例まとめ
  • 防御的プログラミングと契約プログラミング - よしたろうブログ

    1. 猜疑心か相互信頼か、防御的か契約に基づくか 防御的プログラミングと契約プログラミングについて、後述する勉強会で疑問を持ち、勉強会内で説明されていること深堀りしてみました。 asken.connpass.com すべてが勉強になる話だったのですが、こちらの記事でフォーカスするのは「クラス設計スタイル」におけるふたつの選択肢 トランザクションスクリプト方式 ドメインモデル方式 に登場する「防御的プログラミングと契約プログラミング」になります。 トランザクションスクリプト方式が「防御的プログラミング」 ドメインモデル方式が「契約プログラミング」 増田さんのお話ではクラス設計において変更容易性を実現するには「ドメインモデル方式」選択すべきというお話でした。 記事では、実装フェーズにおいて、各クラスがどのレイヤー以降なのか?によって、防御的・契約どちらのプログラミングを行うべきか異なる。とい

    防御的プログラミングと契約プログラミング - よしたろうブログ
  • AWS Well-Architected フレームワーク - AWS Well-Architected フレームワーク

    要約 このホワイトペーパーでは、AWS Well-Architected フレームワークについて説明します。書は、お客様が AWS 環境の設計、提供、メンテナンスを行う際にベストプラクティスを適用できるようにするためのガイダンスを提供します。ここでは Well-Architected フレームワークの柱とされる 6 つの概念領域における一般的な設計の原則と、特定のベストプラクティスおよびガイダンスを紹介します。 はじめに 定義 アーキテクチャ 一般的な設計の原則 フレームワークの 6 の柱 運用上の優秀性 セキュリティ 信頼性 パフォーマンス効率 コスト最適化 持続可能性 レビュープロセス まとめ 寄稿者 注記 お客様は、この文書に記載されている情報を独自に評価する責任を負うものとします。書は、(a) 情報提供のみを目的とし、(b) AWS の現行製品と慣行について説明しており、これ

  • ソフトウェア設計の学び方を考える

    25. 計算が主役、入出力がわき役 Javaの言語、標準ライブラリ、フレームワークを例に 計算ロジックの記述 入出力の記述 かつては、java.io, java.net, java.sql … 今はフレームワークに隠蔽されている さまざまな実証済の設計パターンの登場 かつては、int, boolean, BigDecimal, Calendar, collection 今でも、int, boolean, BigDecimal, java.time, collection, … かつては、if文, switch文, enum, … 今でも、if文, switch文, enum, … 構造と秩序を生み出すための 設計の主たる関心事ではなくなりつつある 複雑さと戦い、構造と秩序を生み出すための 設計活動の主戦場 2019/6/23 25

    ソフトウェア設計の学び方を考える
  • 役割駆動設計で巨大クラスを爆殺する - Qiita

    大量のメソッドを保有し、数千、数万行単位にぶくぶく膨れ上がった巨大クラス。別名「神クラス」とも「大きな泥団子」とも呼ばれる、長大で複雑で密結合で極めて変更が困難なアイツ。 そんな巨大クラスの退治に有効な、ドメイン駆動設計を基思想とする「役割駆動設計」を紹介致します。 解決したい課題、狙う効果 数千、数万行単位の巨大クラスの登場を抑止する。 小さくシンプルな構造に落とし込み、堅牢で変更容易性の高い設計へ昇華させる。 例1:筆者をモデリング 分かりやすくなるよう、まず私を例にモデリングしてみます。私は以下のような特徴があります。 IT企業の従業員 家族がいる(, 子供) 趣味ゲーム制作している ダメな設計 何も考えずに人クラスとして設計すると、よく以下のような構造になりがちです。 従業員として仕事をする、父親として家族サービスする、趣味としてゲーム制作する、それぞれのメソッドが備わってい

    役割駆動設計で巨大クラスを爆殺する - Qiita
  • 作りたいWebアプリのアイディアを迷走せずに作る方法。まず、エディターを閉じることから始めよう - Make組ブログ

    何かを作りたいときは、エディターをいきなり起動してはいけません。 エディターを閉じて、まずはイメージをまとめることに集中しましょう。 なぜこの文章が必要か なぜ何かを作る前にイメージをまとめる必要があるのでしょうか? 頭の中には完璧な作りたいもののイメージがあることでしょう。 であれば今すぐにでもプログラミングを始めるのが賢明なように思えます。 ですがそうしてはいけません。理由は「作りたいもののイメージは単なる幻想だから です」。 頭のなかにあるイメージはとても素晴らしいものですが、多くの場合は曖昧で、触れられない、価値を検証できないものです。 それを一旦書き出して、まとめていく方法を知っておきましょう。 まとめていく中で作るものがより明確になり、自分でも気づかない価値を発見できます。 作るものをまとめて検証することで、作り始めた後の手戻りを防ぎます 作るものをまとめて明確にすることで、作

    作りたいWebアプリのアイディアを迷走せずに作る方法。まず、エディターを閉じることから始めよう - Make組ブログ
  • 初心者でもDB設計やデータモデリングについて学べる7つのサイトと本 - paiza times

    Photo by Samuel Mann こんにちは。谷口です。 「SQLは何となく書けるけど、DB設計はしたことない…」「DB設計について一度ちゃんと学んでおきたい…」という人は多いですよね。 DB設計とは、DBのデータモデル(DBの構成など)を作成する作業です。 DBを一から作ったり、テーブルを追加したりする際は、当然ですが「今あるデータが何となく格納できればそれでOK」ではありません。 テーブルは正規化できていないといけませんし、データの整合性も取れないといけません。また、効率よくデータが取れる構造になっているかどうかも重要です。 一から設計に取りかかるようなケースは少ないかもしれませんが、DBを取り扱うことがあるなら、こうしたDB設計の基は知っておいて損はありません。むしろ自分が扱うDBの構造はきちんと知っておかないと、「なんか適当にSQL投げたらデータ取れたけど、正しく取れてる

    初心者でもDB設計やデータモデリングについて学べる7つのサイトと本 - paiza times
  • 毎日が越境だ!

    エンジニアの学習と成長◆古い設計スタイルの呪縛を解く4つの合言葉◆「だいたいわかっている」の壁を突き抜ける5つの学習パターン

    毎日が越境だ!
  • 慣れるUIをつくる 事例編|UXマン / プロダクトデザイナー, UXリサーチャー

    前回のおさらい 「慣れを生むデザイン」は難易度が高いですが、慣れによる体験を無視することは出来ません。 ユーザーが触るものを作るデザイナーであれば、慣れるUIを作ることやそのためのデザイン方針について考えを巡らせる必要があります。 前回は、このUIに慣れてもらうためのデザイン方針の1つとして、「寛容さ」を提案しました。 目次 4. 世界で最も使われているカラシニコフの話5. カラシニコフの教訓 世界で最も使われているカラシニコフの話ここでひとつ、ユーザーの間違いやコンテクストに寛容だったことで大成功しているプロダクトの例を挙げましょう。 世界で最も利用者の多い銃のひとつに、「カラシニコフ」という銃があります。正式名称「AK-47」という、とても有名な銃です。 この銃が世界中に拡散したのには、明確な理由がありました。 それは、保守・管理性がよく、トラブルが起きづらい、多少手荒に扱っても大丈夫

    慣れるUIをつくる 事例編|UXマン / プロダクトデザイナー, UXリサーチャー
  • 1