並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1713件

新着順 人気順

アーキテクチャの検索結果1 - 40 件 / 1713件

アーキテクチャに関するエントリは1713件あります。 設計開発architecture などが関連タグです。 人気エントリには 『要件定義~システム設計ができる人材になれる記事 - Qiita』などがあります。
  • 要件定義~システム設計ができる人材になれる記事 - Qiita

    ご要望が多かったので要件定義〜設計に関するUdemy講座クーポンをご用意しました。 ぜひご活用ください&高評価いただけると嬉しいです m(__)m ■入門編: ■応用編: はじめに 株式会社デジサク がお送りするプログラミング記事、 今回は要件定義・システム設計について扱っていこうと思います。 プログラミングを勉強していて、こんな事を感じた経験はないでしょうか。 「勉強してもプロダクトが作れない」 「そもそも開発ってどうやるの?」 「要件定義ってなに?」 その悩みを解決するために、まずは開発の全体感を理解しましょう。 下図『ソフトウェア開発プロセス』をご覧ください いつも勉強しているプログラミングは 『実装』 の部分に該当します。 つまり、プログラミングの実力を発揮する前に4つも壁が存在するのです。 そのため、本記事では実装(プログラミング)を開始する前に必要となる、 『企画~設計』 につ

      要件定義~システム設計ができる人材になれる記事 - Qiita
    • DevOps の能力  |  Cloud アーキテクチャ センター  |  Google Cloud

      デジタル トランスフォーメーションを加速 お客様がデジタル トランスフォーメーションに乗り出したばかりでも、あるいはすでに進めている場合でも、Google Cloud は困難な課題の解決を支援します。

        DevOps の能力  |  Cloud アーキテクチャ センター  |  Google Cloud
      • 「1Byteが8bitに決まったワケ」についての長い話 まずは「バベッジの階差機関」から

        いつものようにヘロヘロと仕事をしていると、突如担当編集の松尾氏からMessengerで「これに対するちゃんとした回答を書けるのは大原さんだなということで、また歴史物をお願いしたく」という依頼が飛び込んできた。 いやちゃんとした回答も何も、上のTreeで出題されたSEライダー氏が正解を出されているわけですが、歴史的経緯というか、ここに至るまでの話というのが長い訳で、その辺りを少し説明してみたいと思う。 ちなみに出題に少しだけ違和感がある(なぜ10bitがキリがいいと思うのか?)のは、筆者もこっち側の人間だからかもしれない。 回答の前に、その根底にある2進数採用の経緯 そもそも非コンピュータ業界の方からすれば、2進数がベースという辺りから違和感を覚えるのではないかと思う。実際、世界最初の計算機(≠電子計算機)とされる「バベッジの階差機関」(写真1)にしても、世界最初の電子計算機(※1)であるE

          「1Byteが8bitに決まったワケ」についての長い話 まずは「バベッジの階差機関」から
        • マイクロサービスにおける決済トランザクション管理 | メルカリエンジニアリング

          この記事はMERPAY TECH OPENNESS MONTHの15日目の記事です。 こんにちは。メルペイのPayment PlatformチームでPaymentServiceの開発を担当するエンジニアの @foghost です。 メルペイではマイクロサービスのアーキテクチャで決済システムを開発しています。その中でPaymentServiceは決済トランザクション管理の基盤サービスとして、下位層のサービス(外部サービスも含め)が提供する各種決済手段を利用して、上位層のサービス(メルカリ、NFC,コード払いなど)に必要な決済フローを共通APIとして提供しています。PaymentServiceが提供する決済処理に複数のサービスを跨いでお金の動きを正確に管理する必要があるので、作り始めた頃から決済トランザクション管理を最も重要な課題として、サービスを跨いでもデータの整合性が取れる仕組みを作ってき

            マイクロサービスにおける決済トランザクション管理 | メルカリエンジニアリング
          • 超凄いIPv6解説書(488ページ)を無料配布します!:Geekなぺーじ

            「プロフェッショナルIPv6 第2版」を無料配布します。2018年7月にプロフェッショナルIPv6初版を発売&無償配布開始しました(すごいIPv6本を無料配布)。初版発売開始から3年、さらにパワーアップした「プロフェッショナルIPv6 第2版」がついに完成しました! 本書を企画して、少しずつ文章を書き溜めはじめた2011年から10年近くかけて完成した488ページにおよぶ「プロフェッショナルIPv6 第2版」をお楽しみください。 プロフェッショナルIPv6第2版の構成 プロフェッショナルIPv6第2版は5部構成になっています。 第1部は「インターネットとIPv6の概要」というタイトルで、IPv6の視点からインターネット自体の仕組みを復習し、そのうえで、詳細の説明に入る前に把握しておくべきIPv6の概要として、次のような事項を解説しています。 従来のIPv4アドレスとは大きく異なるIPv6アド

            • 私がよく参考にしているサイトまとめ

              はじめに Twitter、Qiita、Zenn...といろんなところから情報収集するのはいいのですが、それぞれの有益な情報をそれぞれのサイトにお気に入りとして保存しているので、必要な情報を探すだけで一苦労です。 ここで一覧にしてまとめておくことにしました。 ただし、特定の言語に依存するような記事はあえて排除しています。 皆さんにとっても有益な情報があると、この記事を公開して良かったなと思います。 また、皆さんのオススメの記事がありましたら、コメントなどで教えてください。 コミュニケーション 質問 質問は恥ではないし役に立つ https://qiita.com/seki_uk/items/4001423b3cd3db0dada7 新卒からの質問をソシャゲっぽい仕組みにしたら捗った話 https://qiita.com/ysktsuna/items/fced3a9515c8f585ca50 会

                私がよく参考にしているサイトまとめ
              • 【翻訳】Googleのエンジニアがソフトウェア開発する時に必ず書くドキュメント「Design Docs at Google」 - BppLOG

                Googleでの「Design Docs」とは 2007年の Google Developer Day Tokyo での鵜飼氏のプレゼンによると「Google で必ず書くことになっているドキュメント」であり、「プロジェクト立ち上げ時の 1~2週間をかけて書く」ものです。 今回は Google のソフトウェアエンジニアである @cramforce 氏が自身のブログで「Googleでの Design Docs」について解説している記事を公開されていたため、氏の許可を得て翻訳しています。 原文: www.industrialempathy.com 関連書籍: Googleのソフトウェアエンジニアリング ―持続可能なプログラミングを支える技術、文化、プロセス オライリージャパンAmazon 読了目安:11分 (目次) デザインドキュメント の解剖学 文脈と範囲 目標と非目標 実際のデザイン システ

                  【翻訳】Googleのエンジニアがソフトウェア開発する時に必ず書くドキュメント「Design Docs at Google」 - BppLOG
                • プログラミング上達したい人に繰り返し読んで欲しい4冊|erukiti

                  プログラミング上達したいんだったら、四の五の言わずに、 ・クリーンアーキテクチャ ・レガシーコード改善ガイド ・アジャイル・サムライ ・リファクタリング 系のどれか を、全部最低5回読み返して欲しい。それでプログラマとしては圧倒的に成長できるんだから、マジで読んで — Next.js + Hasura 最速プロトタイピング本 @技術書典9 出す予定 (@erukiti) July 27, 2020 先日、こういうツイートをしたらバズってしまいまして。これらの本を理解できるまで読みこめばプログラマとして成長できますよーというもので、 ・ クリーンアーキテクチャ ・ レガシーコード改善ガイド ・ アジャイルサムライ ・ リファクタリング 系のどれか(例えばリファクタリング第二版) の4冊を挙げました。いろいろな人の感想を読んで、補足が必要そうだなと思ったので記事として書きなおしています。 追記

                    プログラミング上達したい人に繰り返し読んで欲しい4冊|erukiti
                  • 富士通の撤退する「メインフレーム」ってそもそも何?

                    はじめに 富士通がついに2030年にメインフレーム市場から撤退し、66年の歴史に幕を閉じるという話が出てきました。 富士通といえば国産大型コンピュータの先駆けであり、IBM互換機を作って巨人IBMに食らいついたベンダーでもあります。そんなわけで中々に歴史の転換点を感じる話題ではあるのですが 「ところでメインフレームって何? 」 という方も多いでしょう。という分けで名前は聞いたことがるけど実態が良く知らない「メインフレーム」 に関して少しだけ解説をする動画を作りました。 この記事は動画では話しきれなかった事も含めて、もう少し深堀した解説をしていきたいと思います。ちょっと長くなりましたが、前半が歴史の話で後半がアーキテクチャの話になるので好きな所にジャンプして読んでみてください。 メインフレーム? 汎用機? ホスト? メインフレームは他にも汎用機とかホスト機と呼ばれることもありますよね。Wik

                      富士通の撤退する「メインフレーム」ってそもそも何?
                    • ヨドバシの中の人が初めて語る、ヨドバシ.comを支える内製プライベートクラウドの中身

                      ヨドバシカメラが運営する国内の代表的なECサイトの1つである「ヨドバシ.com」は、同社が内製するプライベートクラウドによって支えられています。 そのプライベートクラウドはどのように作られ、どのような機能を備えているのかについて、クリエーションラインが主催し10月14日に開催されたオンラインイベント「Actionable Insights Day 2022」でその内幕がはじめて語られました。 この記事では、その内容をダイジェストで紹介します。 はじめて語られるヨドバシ.com を支えるプライベートクラウドの全容 株式会社ヨドバシリテイルデザイン サービスデプロイメント事業部 事業部長 戸田宏司氏。 ヨドバシリテイルデザインの戸田と申します。よろしくお願いいたします。「はじめて語られるヨドバシ.comを支えるプライベートクラウドの全容」というタイトルでお話をさせていただきます。 弊社は「いつ

                        ヨドバシの中の人が初めて語る、ヨドバシ.comを支える内製プライベートクラウドの中身
                      • バッチ処理 プラクティス

                        バッチ処理は既に先人の方々が多くのナレッジを公開してくれていますが、それでもなお難しさが変わらないテーマだと思っています。 この記事は、筆者がこれまでの開発経験で気づいたバッチ処理の実装ナレッジを整理し、体系化を目指して文章にしました。 ここでの内容が、より良い課題解決に貢献できれば幸いです。 自身の断片的な思考整理(メモ書き)の延長で内容を整理したため、一部書き振りが統一されておらず、読みにくいかもしれません。ご了承ください。🙏 バッチ処理の難しさバッチ処理は難しい。 人によっては簡単なテーマかもしれませんが、自分は難しいテーマだと思っています。 「難しさの根源は何か?」を考えると、1. 考慮点が多様にあること 2. 解決する課題によって答えが大きく変わること に整理できました。 この2点は、どのソフトウェア開発にも当てはまる項目ではありますが、ことバッチ処理においては顕著に現れます。

                          バッチ処理 プラクティス
                        • ソフトウェアアーキテクチャの歴史 - tasuwo's notes

                          改めて ソフトウェアアーキテクチャ GUI のアーキテクチャの歴史を調べてみたくなった。本来の MVC とは何か?何が正しくて何が間違っているか?も重要なのだが、それよりは、なぜそれが生まれたのか?何を解決しようとしたのか?どのような問題点が生まれて、それをどう工夫して解決・発展してきたのか?を知りたい。しかし、そういうことがまとまっている日本語の情報が少ないので、自分で色々かいつまんでメモしておく。 MVC の原点は 70 年代にまで遡り、実装としては Smalltalk-80 のクラスライブラリとして実装されたのが最初だと思われる。しかし、後世に大きな影響を及ぼしたポイントをいくつか持ちつつも、当時のアーキテクチャが現代においてそのまま利用されているケースはほぼないといっていい。したがって、単に MVC といった時には大抵最初期の MVC を指すことは少なく、区別するために最初期の M

                            ソフトウェアアーキテクチャの歴史 - tasuwo's notes
                          • アメリカの職場ではなぜドキュメントも無いのに人が去っても問題ないのだろう?|牛尾 剛

                            アメリカの職場にいると、日本にいるときよりも身近でレイオフだとか、職を変えるというのを頻繁に見かける。先日もそういう場面があったのだが昔日本で働いていた時のことを思い出した。 ドキュメントを書く理由 日本のソフトウェア企業にいたときは、「納品物であるから」という理由以外にも、「人がいなくなったときに会社が困るから」という理由でもドキュメントを書くことが推奨されていた。しかし、少なくとも今の職場ではそんな理由でドキュメントを書くのは推奨されていないのに、なぜ問題にならないのだろうとふと思った。 うちのマネージャは、バディ制ににして、みんな休暇できるようにしようとは言っているが、多分本当に退職対策ではないと思う。 チームのメンバーが抜けたときも、「とても残念で、ワークロードをどうしようという問題はあるけど、彼女の門出を祝福しよう」言っていた。つまり、こちらでも「工数」は問題になるけど、「引継ぎ

                              アメリカの職場ではなぜドキュメントも無いのに人が去っても問題ないのだろう?|牛尾 剛
                            • エンジニアリングマネージャ/プロダクトマネージャのための知識体系と読書ガイド - Qiita

                              本記事は、Engineering Manager Advent Calenderの1日目です。 はじめに エンジニアリングマネージャ(EM)と呼ばれる職務を設置する企業が増えてきました。 私たちの主催したイベントEOF2019でも700名近い方に参加していだき、また多くの方にご協力いただき成功裏に終わることができました。 EM Meetup/EM.FMなどのムーブメントの中心の一翼を担わせていただき、その高まりを感じる一方で不安も感じます。このエンジニアリングマネージャという職務は非常に多岐にわたるケースが存在していますし、必要だとされるスキルもまちまちです。そして、多くの場合、その企業のステージや状況ごとに求めるものは違います。また、求めていることを明文化することすらされていないケースも存在します。 このことから、エンジニアリングマネージメント自体が一時的な潮流として消費され、消えていっ

                                エンジニアリングマネージャ/プロダクトマネージャのための知識体系と読書ガイド - Qiita
                              • Webサーバーアーキテクチャ進化論2023

                                はじめに 最近プログラマーとしてのキャリアに一区切りつけようと思っており、これまでのプログラミングの勉強の集大成となるブログを書きたくなったので書く。初めてプログラミングをして、フロントエンド開発をして、サーバーから値が返ってきたときは「どういう仕組みで値が返ってきたんだ?」と疑問に思っていた。ずっと理解したくて理解できていなかった。だからずっと勉強していた。そして最近になってようやく自分の言葉で説明できるようになった気がしたのでブログを書きたい。 2015 年版が自分の原点であり、この記事を書くモチベーションになった このような記事は実は過去に存在している。 FYI: https://blog.yuuk.io/entry/2015-webserver-architecture その記事はサーバーがどういう仕組みで動いていて、どのように進化し、2015 年に至るかを解説してくれた記事だ。自

                                  Webサーバーアーキテクチャ進化論2023
                                • フロントエンドのデザインパターン

                                  本書は、Lydia Hallie 氏 と Addy Osmani 氏らによる Learning Patterns (https://www.patterns.dev/) の日本語訳です。原著は大きく 3 つのセクションに分かれていますが、本書は、その最初のセクションである Design Patterns を訳したものとなります。

                                    フロントエンドのデザインパターン
                                  • Reactベストプラクティスの宝庫!「bulletproof-react」が勉強になりすぎる件

                                    Reactアプリケーションのアーキテクチャの一例として公開されているGitHubリポジトリ「bulletproof-react」が大変勉強になるので、私自身の見解を交えつつシェアします。 ※2022年11月追記 記事リリースから1年ほど経過して、新しく出てきた情報や考え方を盛り込んだ続編記事を書いていただいているので、こちらも併せて読んでいただければと想います(@t_keshiさんありがとうございます!)。 ディレクトリ構造が勉強になる まずはプロジェクトごとにバラつきがちなディレクトリ構造について。 ソースコードはsrc以下に入れる bulletproof-reactでは、Reactに関するソースコードはsrcディレクトリ以下に格納されています。逆に言えば、ルートディレクトリにcomponentsやutilsといったディレクトリはありません。 たとえばCreate Next Appで作成

                                      Reactベストプラクティスの宝庫!「bulletproof-react」が勉強になりすぎる件
                                    • 大学に行かずにコンピュータサイエンスを学ぶときに優れている教科書や講義映像はどんなものがあるのか?

                                      急速なIT化の進行によってエンジニアが不足しており、情報系の学位を取得せずに独学やプログラミングスクールを通してエンジニアになる人も増えています。そうした人たちがコンピュータサイエンスを学ぼうとしたときにおすすめの分野や本・オンライン講義などが「teachyourselfcs.com」というサイトにまとめられています。 Teach Yourself Computer Science https://teachyourselfcs.com/ ◆コンピュータ・アーキテクチャ コンピュータが実際にどのように機能しているのかをしっかりとイメージできなければ、安定した抽象化を行うことはできません。この分野を学ぶのにおすすめなのは「コンピュータ・システム ~プログラマの視点から~」という本で、タイトルに「プログラマの視点から」とついている通り、高速で効率的で信頼性の高いソフトウェアを作成するという目的

                                        大学に行かずにコンピュータサイエンスを学ぶときに優れている教科書や講義映像はどんなものがあるのか?
                                      • みずほ銀行システム障害に学ぶ, 川口耕介のブログ

                                        みずほ銀行システム障害の調査報告書が公開されたのがニュースになって、Twitterなどで色々な人がコメントをしているのを見た。140文字しか書けない空間で他人の失敗談の揚げ足取りをするのは簡単だが、そこからは一時の爽快感以外に何も得るものがないので、僕はそういうのはカッコ悪いと思っている。 そこで、ちゃんと読んでみたら全く他人事でない部分も沢山あるし、非常に面白く勉強になったので、ブログにまとめてみる。 技術的な話 銀行のシステムがどのようになっているのか、全然イメージが湧いていなかったので、それがまず勉強になった(p.29)。 トラフィックのソースに応じて用意された色々なシステムから基幹システム「MINORI」の取引メインバスにトラフィックが流れ、そこから各種システムへとリクエストが送られていく。この辺はService Oriented Architectureらしい。開発当時としては(

                                          みずほ銀行システム障害に学ぶ, 川口耕介のブログ
                                        • プログラミング言語の入門が終わったら何の勉強をすればいいの? - きしだのHatena

                                          JJUG CCC 2022 Fallで「Javaの入門が終わったら何の勉強をすればいいの?」という内容で発表を行いました。 基本的なものが作れるようになったけども、イマイチプログラムが組めないというときに、何を勉強すればいいかをまとめました。 入門が終わって作りたいものがあれば作っていきましょう、業務で言われたものが作って行こう、でもなんだかちゃんとしたものが作れないな、もっとちゃんとしたものを作りたい、次のステップに進みたいというときに勉強していく感じです。 資料はこちらです とりあげた本についてまとめておきます。 開発作業について 概要 プログラミング言語 アーキテクチャ ミドルウェア ネットワーク デプロイ 理論 開発手法 開発プロセス まとめ フレームワークは入門でやってる前提です。Java入門書「プロになるJava」ではJavaの基本から簡単なDB操作、Spring Bootまで

                                            プログラミング言語の入門が終わったら何の勉強をすればいいの? - きしだのHatena
                                          • どうやってテクノロジーを追いかけていますか?ジュニアソフトウェア開発者として応募したときにCI/CD、クラウドコンピューティング、Dockerとか大量のことを要求されました。もういっぱいいっぱいです。

                                            回答 (2件中の1件目) 深呼吸しようか。そしてリストを3つ作れ。 1. 使い方を知っていて、最小限の調査で済むテクノロジー(例:「CI/CDパイプラインのセットアップの仕方を知っている」) 2. 企業のインフラで使われていることを知っているテクノロジー(例:「Dockerをいつ、何故使うかは知っている。だけどDockerfileは書いたことがない」) 3. 聞いたことはあるけど何者なのか見当がつかないテクノロジー(例:「Kubernetesというのは聞いたことがあるけど、何のために使うのか見当がつかない」) リスト (1) はコンフォートゾーンにあたる。履歴書のトップに書けて、これで...

                                              どうやってテクノロジーを追いかけていますか?ジュニアソフトウェア開発者として応募したときにCI/CD、クラウドコンピューティング、Dockerとか大量のことを要求されました。もういっぱいいっぱいです。
                                            • AWS Lambdaの裏側をなるだけ詳しく解説してみる - Sweet Escape

                                              AWS Lambdaの環境がどのようになっているか、ユーザが用意したLambdaファンクションがどんな感じで実行されるかってあたりを可能な限り詳しく説明したいと思います。 はじめに 大前提 コールドスタート/ウォームスタート コントロールプレーン/データプレーン アイソレーション AWS Lambdaのコンポーネント群 同期実行かつ初回呼び出し(コールドスタート)、もしくはスケーリング 同期実行かつ再利用(ウォームスタート) 非同期実行 スケールアップ エラーハンドリング リトライ その他 ネットワーク まとめ はじめに この投稿は2020年9月29日の21時から開催予定のイベント(ライブストリーミング)で話す内容です。 serverless-newworld.connpass.com もし間に合えば、かつ時間があればぜひライブ配信のほうにも参加ください。 (2020.09.30 upda

                                                AWS Lambdaの裏側をなるだけ詳しく解説してみる - Sweet Escape
                                              • 銀行の基幹系システムはなぜ複雑なのか?|つっちーさん

                                                おはよう人類。 インフラストラクチャーという言葉は、元々ラテン語に語源があり、inferus(下部の)という言葉とstructura(構造体)という二つの言葉を合成した言葉で、言葉の意味としても、社会構造の中で上部構造である政治基盤に対応する経済基盤としての使い方(主にマルクス経済学で用いられる)と、道路や橋だけででなく教育機関など公共性の高い社会基盤の意味で用いられる。特に、後者の意味が強いのだが、インフラストラクチャーの供給源というのは国や公共的な組織だけにとどまらず、電力会社や鉄道会社、金融機関のように私有なのだが、その性質上インフラストラクチャーとして扱われるものも多い。 こういった企業を(広い意味で)インフラ業と呼ぶことも多いのだが、その公共性の高さから私有にもかかわらず、その運営には様々な規制が加えられていることが多い。設立に免許や認可が必要で、運営に関しても一般の企業とは異な

                                                  銀行の基幹系システムはなぜ複雑なのか?|つっちーさん
                                                • アプリケーションにおける権限設計の課題 - kenfdev’s blog

                                                  日々権限設計で頭を抱えてます。この苦悩が終わることは無いと思ってますが、新しい課題にぶつかっていくうちに最初のころの課題を忘れていきそうなので、現時点での自分の中でぐちゃぐちゃになっている情報をまとめようと思い、記事にしました。 所々で「メリット」「デメリット」に関連する情報がありますが、そのときそのときには色々と感じることがあっても、いざ記事にまとめるときに思い出せないものが多々ありました。フィードバックや自分の経験を思い出しながら随時更新する予定です。 TL;DR(長すぎて読みたくない) 想定する読者や前提知識 この記事での権限とは 権限の種類 ACL(Access Control List) RBAC(Role-Based Access Control) ABAC(Attribute-Based Access Control) どの権限モデルを採用するべきか 権限を適用する場面 機能

                                                    アプリケーションにおける権限設計の課題 - kenfdev’s blog
                                                  • クリーンアーキテクチャ完全に理解した

                                                    clean_architecture.md 2020/5/31追記: 自分用のメモに書いていたつもりだったのですが、たくさんのスターを頂けてとても嬉しいです。 と同時に、書きかけで中途半端な状態のドキュメントをご覧いただくことになっており、大変心苦しく思っています。 このドキュメントを完成させるために、今後以下のような更新を予定しています。 TODO部分を埋める 書籍を基にした理論・原則パートと、実装例パートを分割 現在は4層のレイヤそれぞれごとに原則の確認→実装時の課題リスト→実装例という構成ですが、同じリポジトリへの言及箇所がバラバラになってしまう問題がありました。更新後は、実装時の課題リストを全て洗い出した後にまとめて実装を確認する構成とする予定です。 2021/1/22追記: パートの分割と、クリーンアーキテクチャという概念の定義について追記を行いました。大部分の実装例パートを中心

                                                      クリーンアーキテクチャ完全に理解した
                                                    • 7つの設計原則とオブジェクト指向プログラミング - ソフトウェア設計を考える

                                                      設計原則はよい設計をするための指針です。 では、よい設計とはなんでしょうか? もっとも重要なソフトウェア品質は発展性 ソフトウェアの発展性がビジネス価値を生む 発展性をうみだす7つの設計原則 モジュール化 モジュール化の2つのアプローチ 型によるモジュール化 手続き的なモジュール化 関心の分離 関心の4象限 入出力と計算・判断の分離 業務の関心と実装の詳細の分離 もっとも複雑な関心事(ビジネスロジック)の分離を徹底する カプセル化と抽象化 カプセル化 ビジネスロジックのカプセル化 抽象化 データ抽象 ビジネスロジックとデータ抽象 高凝集と疎結合 凝集度 結合度 隠された結合性の問題 定義の一点性 見た目が同じコード 7つの設計原則の学び方 コードの実装例 ドメインオブジェクト設計のガイドライン 実践ガイドとして使える本 設計の考え方を理解するための本 もっとも重要なソフトウェア品質は発展性

                                                        7つの設計原則とオブジェクト指向プログラミング - ソフトウェア設計を考える
                                                      • 架空企業「オニギリペイ」に学ぶ、セキュリティインシデント対策

                                                        架空企業「オニギリペイ」に学ぶ、セキュリティインシデント対策:徳丸浩氏が8つの試練を基に解説(1/3 ページ) ECサイトやWebサービスでセキュリティインシデントを起こさないためには何をすればいいのか。2019年12月に開かれた「PHP Conference Japan 2019」で徳丸浩氏が、架空企業で起きたセキュリティインシデントを例に、その対策方法を紹介した。 ECサイトやWebサービスを提供する会社で発生したセキュリティインシデントに関するさまざまなニュースが後を絶たない。どうすればこうしたインシデントは防げるのだろうか。 『体系的に学ぶ安全なWebアプリケーションの作り方』(通称:徳丸本)の筆者として知られる徳丸浩氏(EGセキュアソリューションズ 代表取締役)は、2019年12月に開かれた「PHP Conference Japan 2019」のセッション「オニギリペイのセキュリ

                                                          架空企業「オニギリペイ」に学ぶ、セキュリティインシデント対策
                                                        • ITエンジニアが投票した「ITエンジニア本大賞2020」ベスト10発表。「ドラゴンクエストXを支える技術」 「ダークウェブの教科書」など

                                                          ITエンジニアが投票した「ITエンジニア本大賞2020」ベスト10発表。「ドラゴンクエストXを支える技術」 「ダークウェブの教科書」など ITエンジニア本大賞は、ITエンジニアに読んでほしい技術書・ビジネス書を選ぶイベントです。 これまで正式名称が「ITエンジニアに読んでほしい!技術書・ビジネス書 大賞」で通称として「ITエンジニア本大賞」と呼ばれていましたが、今回から「ITエンジニア本大賞」が正式名称となりました。 「ITエンジニア本大賞」の主催は翔泳社ですが、対象となる書籍は出版社を問わず技術書、ビジネス書全般。刊行年も関係なく、この1年を振り返っておすすめしたい書籍となっています。 今回発表されたのは技術書部門ベスト10とビジネス書部門ベスト10です。このなかから特に投票の多かった技術書3冊、ビジネス書3冊について、同社が2月13日、14日に開催するイベント「Developers S

                                                            ITエンジニアが投票した「ITエンジニア本大賞2020」ベスト10発表。「ドラゴンクエストXを支える技術」 「ダークウェブの教科書」など
                                                          • Hiromitsu Takagi on Twitter: "この解説記事、解説だと思って読むと、サラッととんでもない新事実が書かれてる。1面スクープ並みの新事案発生じゃないの? https://t.co/4khOA7rsya https://t.co/TsLmEkT6LN"

                                                            この解説記事、解説だと思って読むと、サラッととんでもない新事実が書かれてる。1面スクープ並みの新事案発生じゃないの? https://t.co/4khOA7rsya https://t.co/TsLmEkT6LN

                                                              Hiromitsu Takagi on Twitter: "この解説記事、解説だと思って読むと、サラッととんでもない新事実が書かれてる。1面スクープ並みの新事案発生じゃないの? https://t.co/4khOA7rsya https://t.co/TsLmEkT6LN"
                                                            • 転職したらKubernetesだった件 - Qiita

                                                              TL;DR Kubernetes がどのように、人間の作業を自動化しているのかを、実際に Kubernetes がやっている作業を手作業で行なう ことで学びましょう。 このQiita の内容は、CloudNative Days Tokyo 2019 における発表の、「転職したらKubernetesだった件」を書き下ろし、実際にデモが行えるように修正を加えたものになります。 YouTube Speakerdeck この物語はフィクションであり、登場する団体名・会社名・人名等は架空のもので、実在する団体・会社・人物等とは、一切、関係がありません。 これまでのあらすじ ある日、某Z社に転職した稲津さんに与えられた仕事は、“Kubernetes の一員”になることだった!? 某Z社は、親会社からの依頼で Kubernetes クラスタを運用しなければならなくなりましたが、 「Kubernetes

                                                                転職したらKubernetesだった件 - Qiita
                                                              • 検索が爆速になるデータベース設計を公開します

                                                                こんにちは。エンジニアの谷井です。 フォルシアでは、Spookと呼んでいる技術基盤を用いて、主に旅行業界やMRO業界に対して、膨大で複雑なデータを高速検索できるアプリケーションを提供しています。 今回はその高速検索のノウハウのうち、特にDBの扱いに関連する部分について、ベテランエンジニアへのインタビューを通してそのエッセンスをまとめてみました。 一般的なベストプラクティスだけでなく、検索性能を高めることに特化しためずらしいアプローチもあるので、ぜひご覧ください。 フォルシアにおける検索DBについて まず前提としてフォルシアで扱うデータについて軽く説明します。 扱うデータの複雑さ たとえば、旅行会社向けのアプリケーションであれば、宿泊素材の情報としては ホテルの情報「〇〇ホテル」(~約2万件) プランの情報「朝食付き・ロングステイ△△プラン」(0~1500件/施設) 客室の情報(~100件/

                                                                  検索が爆速になるデータベース設計を公開します
                                                                • 10年モノのサービスをアーキテクチャから再設計─はてなブックマークがScalaとDDDを使う理由 - エンジニアHub|Webエンジニアのキャリアを考える!

                                                                  10年モノのサービスをアーキテクチャから再設計─はてなブックマークがScalaとDDDを使う理由 10年以上運用されているサービスには、さまざまな技術的な負債が発生しています。今後の継続的な改善のため、いったん新規開発を止めて4年かけて全面的なリニューアルを実施した「はてなブックマーク」の開発者に、プロジェクトの課題や解決する手法などを聞きました。 改善1つに数カ月かかるなら全てを書き換えられないか 2000年代にトレンドだった開発手法の負債 過去の開発意図を探る考古学的手法 データセンター移行も見据えて刷新しよう ドメインモデル設計とScalaとマイクロサービス化 コアロジックにはScalaを採用 きちんとしたドメインモデルによる設計と実装を継続したい 段階的なリリースとデータの移行という2つの大きな課題 求められる機能に沿ったデータベーススキーマに再構築 新旧の2システムを維持しながら

                                                                    10年モノのサービスをアーキテクチャから再設計─はてなブックマークがScalaとDDDを使う理由 - エンジニアHub|Webエンジニアのキャリアを考える!
                                                                  • テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話

                                                                    「悪い方が良い」原則をご存じだろうか? プログラミング言語「Common Lisp」の開発に携わったことでも知られるソフトウエア技術者リチャード・ガブリエル(Richard Gabriel)氏が1990年に発表した有名なエッセイ「The Rise of ``Worse is Better''」で主張したソフトウエア開発の考え方だ。 このエッセイでガブリエル氏は、美しく完全に設計・実装されるより、単純で雑に設計・実装されたソフトウエアの方が良いと説く。彼は前者を「正しいやり方」「MIT/スタンフォード式」、後者を「悪い方がよい原則」「ニュージャージー式」と呼び、ニュージャージー式がいかに優れているか様々な事例を挙げて説明する。 これは一見とても奇妙に聞こえる。 ソフトウエア開発では通常「美しい設計」や「美しいコード」が尊まれる。「車輪の再発明はするな」とか、「階層構造に分けて、要素をいつでも

                                                                      テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話
                                                                    • Dockerfile を書くためのベストプラクティス解説編

                                                                      Engineer / Technology Evangelist at SAKURA Internet, Inc.

                                                                        Dockerfile を書くためのベストプラクティス解説編
                                                                      • 世界一わかりやすいClean Architecture - nuits.jp blog

                                                                        本項は「C# Tokyo オンライン「世界一わかりやすいClean Architecture」他」による発表の登壇原稿となります。過去に発表した.NET版の記事はこちらにアーカイブしています。 本稿のサンプルコード・PPTはこちらで公開しています。 「CC BY-SA 4.0」で公開していますので、気に入っていただけたら営利目的含め、ライセンスの範囲で自由に利用していただいて問題ありません。 github.com また動画を以下で配信しています。よろしければご覧ください。 世界一わかりやすいClean Architecture はじめに まず初めに、クリーンアーキテクチャの誤解されがちな二つのことについてお話させていただきます。 その上で、クリーンアーキテクチャの本質とは何か?押さえておくべき、本当に重要だと考えている三つの事について、お話しします。 注意事項 さて本題に入る前に、少し注意

                                                                          世界一わかりやすいClean Architecture - nuits.jp blog
                                                                        • 2020年現在のNewSQLについて - Qiita

                                                                          Disclaimer 当記事はNewSQL開発ベンダの技術ブログや各種論文、その他ニュースサイト等の内容を個人的にまとめたものです。 そのため、理解不足等に起因する誤解・誤認を含む可能性があります。更なる理解が必要な方はリファレンスに挙げた各種文献を直接参照下さい。技術的な指摘は可能であれば取り込み修正しますが、迅速な対応はお約束できません。 NewSQLの解説は二部構成 当記事は前編でNewSQLの概要編となる。 全体の目次は下記である。 NewSQLとは何か NewSQLのアーキテクチャ NewSQLとこれまでのデータベースの比較 NewSQLのコンポーネント詳解 1章から3章までの内容を当記事で解説する。 4章はさらに詳細な技術的解説となり、後編の「NewSQLのコンポーネント詳解」で記述している。 こちらも合わせて一読いただきたい。 1. NewSQLとは何か NewSQLとは、海

                                                                            2020年現在のNewSQLについて - Qiita
                                                                          • SaaS アーキテクチャ概要

                                                                            SaaS をアーキテクトをするにあたって、どのような事を考えればよいのか?をまとめました。

                                                                              SaaS アーキテクチャ概要
                                                                            • 技術選定/アーキテクチャ設計で後悔しないためのガイドライン - Qiita

                                                                              はじめに 本稿は、ソフトウェア開発を進める際に直面する様々な技術的な意思決定やライブラリ・フレームワーク・XaaS等を選択し正しく活用していくのかについての考え方をサポートすることを目的としています。「すべてにおいてこのようなワークフローを通じて検討すべきである」という主張ではありません。読者の抱える問題領域に応じて、必要な箇所を取捨選択するための1種の考え方を提供するものです。 そもそもアーキテクチャ・技術選定に時間をかけるべきか まず第一に伝えておきたいことは、技術選定やアーキテクチャ設計に常に慎重であるべきではないということです。ソフトウェアの規模やライフサイクルに応じて、そもそも時間をさく必要がないということも多くあります。書き捨てのシェルスクリプトにも読みやすいコードを求めて書くことは非常に重要ですが、だからといって組織だって議論・検討するようなものでもないのです。一方で、5年も

                                                                                技術選定/アーキテクチャ設計で後悔しないためのガイドライン - Qiita
                                                                              • 20 年代のフロントエンド.md

                                                                                Clone via HTTPS Clone with Git or checkout with SVN using the repository’s web address. 明日の下書き これはなに 高円寺.dev #3 用の資料 https://koenji.connpass.com/event/160886/ フロントエンド専門じゃない人向けの、フロントエンドの最先端〜やや未来の話です このレイヤーでは Node.js を使うべき/使うと強いという部分がありますが、他言語を否定しているわけではありません。むしろ他言語でこのアーキテクチャを模倣してほしいという話です。 10 年代のフロントエンドのポストモーテム 10 年代まとめ IE が死ななかったので各種ポリフィル、メタ言語からのトランスパイルが発達。しかしモダンとレガシーの乖離が深刻に。 node と npm エコシステムの成立

                                                                                  20 年代のフロントエンド.md
                                                                                • 電子情報学特論:Chromiumのアーキテクチャを解き明かす

                                                                                  電子情報学特論: Chromium のアーキテクチャを解き明かす 〜 EEIC の授業が生きるプロダクトの世界〜 Kentaro Hara 2020 April (๑>ᴗ<๑) * * * *

                                                                                    電子情報学特論:Chromiumのアーキテクチャを解き明かす

                                                                                  新着記事