Future Tech Blog
フューチャー技術ブログ
Home
Tags
設計
設計
タグの記事
31
投稿
16
著者数
6516
総シェア数
1513
Twitter
14
Facebook
3184
はてブ
1805
Pocket
署名付きURLを利用したファイルアップロードWeb API設計の勘所
現代のWebアプリケーションにおいて、ユーザが写真や動画などのファイルをアップロードする機能は、しばしば求められます。本記事では、ファイルアップロードを実現するための一手段として、「署名付きURL」を利用した方式を取り上げ、その設計について詳しく解説します。
2024.07.05
設計
WebAPI
署名付きURL
ファイルアップロード
ツイート
シェア
260
101
OpenAPI Specification v3.0.3のコーディング規約を公開しました
フューチャーの有志メンバでOpenAPI Specification(OAS) v3.0.3に対応したコーディング規約を作成しました。
2024.07.02
OpenAPI
コーディング規約
設計
チーム開発
ツイート
1
30
12
ぼくのかんがえたさいきょうのキャッシュ戦略
動作が遅いサービスはストレスがたまるので利用したくないですよね。例えばネットショッピングする際に商品ページの表示が遅かったり検索してもすぐに結果が表示されないとそのサービスを利用するのをやめてしまいたくなります。
2024.01.24
設計
Redis
キャッシュ
CDN
memcached
ツイート
シェア
5
5
設計ドキュメント腐る問題、Git管理で運用してみた結果
設計ドキュメントをGit管理して腐らせないようにがんばってみた話をします
2023.11.01
ドキュメント
設計
Git
ツイート
13
459
199
フューチャーのSwagger(OpenAPI 2.0)規約の紹介
フューチャーの有志メンバーでSwagger(OpenAPI Specification Version 2.0)のコーディング規約を作りました。
2023.07.25
OpenAPI
コーディング規約
Swagger
設計
チーム開発
ツイート
シェア
35
16
リアクティブプログラミングについて考える
前回のエントリーで、コンポーネント単位のステートをがちゃがちゃ更新していくという、オブジェクト指向型(オブジェクトの境界がコンポーネント)の考え方から、より小さな状態のインタラクションになっていくよ、という話を紹介しました。ビジネスロジックのアーキテクチャとしては、DDD本には以下の2つが書かれています。
2023.06.29
設計
リアクティブプログラミング
Recoil
ツイート
シェア
70
74
ソフトウェア設計のトレードオフと誤りを出版しました
オライリージャパンから「ソフトウェア設計のトレードオフと誤り」の翻訳をフューチャーのメンバーと一緒に出版いたしました。好評なようで、発売一カ月ほどで増刷も決定いたしました。
2023.06.16
出版
書籍
設計
翻訳
ソフトウェア設計のトレードオフと誤り
ツイート
シェア
169
80
データライフサイクルとトレードオフ
ソフトウェアの中身を大きく2つに分解すると、プログラムとデータに分かれます。データの表現にもいくつもの方針があって、それによるトレードオフがあるな、というのはもやもやと考えていたので、その考えをまとめて文章にしてみました
2023.03.17
アーキテクチャ
設計
ソフトウェア
224
シェア
143
80
データベースと向き合う決意
「中間層を増やして柔軟性を高めるのがソフトウェアの歴史」これは大学時代に2つ上の先輩が言っていた言葉です。例えばマシン語を直接書くのではなく、アセンブラで書けば、変換(コンパイル)の手間はかかりますが、他のCPUへの移植はしやすくなります。
2022.11.11
アーキテクチャ
技術選定
設計
ORM
ソフトウェア
エッセー
DOA
639
シェア
286
208
DynamoDB利用時の書き込みスキュー(Write Skew)の回避
一般的に複数のトランザクションが並行して同じオブジェクトに対してアクセスを行う場合には、トランザクションの分離レベル(SERIALIZABLE/REPEATABLE READ/READ COMMITTED/READ UNCOMMITTED)によって様々な問題が発生します。DynamoDBは2018年にトランザクションがサポートされましたが、本記事ではファントムリードによる書き込みスキューの問題とその対応について取り上げたいと思います。
2022.09.06
DynamoDB
設計
Transaction
37
シェア
5
11
ソフトウェアのバージョンと開発スタイルの関係について
バージョンという言葉を身近に聞いたり、体感することは多いのではないでしょうか?ソフトウェア開発においてもバージョンは決して避けて通ることはできません。しかし、プログラムにバージョンをつける側に立ってみると、そもそもバージョンとは何なのでしょうか?ふわっと考え出すとわりときりがないと思います。
2022.04.26
設計
バージョン管理
ソフトウェア
17
シェア
7
18
Class Widgets vs Functional Widgets
FlutterでWidgetを開発するとき、Stateless WidgetやStateful Widgetを継承したクラスを作成することが一般的だと思います。一方でクラスを定義せずとも、Widgetを返却するFunctionを定義することで同様のことが実現できるのでは?と考えたことはないでしょうか。
2022.03.16
設計
Flutter
29
シェア
4
5
Project Haystackに関する備忘録
IoTに関するデータモデル標準化に用いられるProject Haystackについて調べる機会があり、日本語でまとめられている文献が少なくて理解するのに若干苦労したため、備忘録も兼ねて調査した内容を簡単にまとめておきます。Project Haystack は、ファシリティ・機器などの IoT に関するデータモデルを標準化する取り組みです。ビルシステムとそれに関連するデバイスのモデルを様々なツールで解釈できるようにするため...
2022.03.08
データモデル
設計
Haystack
6
シェア
はてな
3
A5:SQL Mk-2に回帰した話
みなさま、ER図を作成するとき、どんなツールを使っていますか?タイトル通りの出オチですが、数度の輪廻転生を経て私はA5:SQL Mk-2(以下A5M2)を使用しています。ツールをお勧めする記事は多数ありますが、意外と現場のリアルな事情を踏まえた投稿は見当たらなかったので、経験を踏まえてER図作成ツールの比較検討していきたいと思います。
2022.02.25
SQL
データモデル
設計
ER図
便利ツール
a5m2
DB設計
A5:SQLMk-2
20
シェア
9
19
PlantUMLのテーマ(思わぬ展開)
PlantUMLで使えるテーマについてのご紹介です。以前、チームで機能設計するためのPlantUML標準化の記事でも書かせていただきましたが、PlantUMLのデフォルトカラーって少しドライですよね。色の好みは人それぞれで、あれはあれでカッコよさはありますが、複雑な図は少しでも可愛く描きたい・楽しく見たいものです。
2021.11.08
OSS
設計
PlantUML
UML
165
シェア
346
128
マルチクラウドを考えてみた
私は、企業へのクラウドのアーキテクチャ方針を考えたり、デザイン、構築などの仕事を主にしています。その際によくマルチクラウドの導入をしたい!という要望を最近受けることが多くなった気がします
2021.11.02
ベンダーロックイン
設計
Anthos
マルチクラウド
5
シェア
5
11
Terraformerとしてコードを書いて思うこと
ここ最近はほぼ1からコード設計をして運用まで持っていくこともあり、「より腐りにくい、より息の長いコード」というものを考えるようになりました。Terraformだからこその「定期メンテを簡易にするためには」「より簡単に変更するためには」をひたすら突き詰めていった結果、アツい気持ちが生まれ、今回は筆を取っています。
2021.10.29
IaC
可読性
Terraform
設計
62
シェア
165
74
OpenAPIにおけるundefinedとnullの設計
OpenAPI仕様に則ってREST APIの設計をする際に、値が存在しないという状態をどのように表現するかというお話です。まずはじめに、ここで`undefined`と言っているのは、OpenAPIの仕様において、リクエスト/レスポンスのデータ型を定義するSchema Objectのプロパティの1つである`required`が指定されていない状態を指します。
2021.10.28
OpenAPI
Swagger
設計
jsonschema
12
シェア
76
59
「リアクティブコントローラ」導入がもたらすかもしれないウェブフロントエンド設計の変化
フロントエンド連載2日目のエントリーです。あまり話題になっていないような気がしますが、Web Componentsを実装するためのフレームワークのLit-Element v3がバージョンアップして、ついでにリブランディングしてLit v2.0となりました。ロゴも変わり、ウェブサイトも新しくなりました。
2021.06.15
フロントエンド
WebComponents
設計
リアクティブプログラミング
38
シェア
60
48
Goの構造体の使われ方の設計
Goで構造体を設計する場合、オブジェクト指向的な「型ごとの責務の分担」以外に、「どのように使われるものか」を考える必要があります。 ポインタで扱うのか?値として扱うのか?両方許可するのか?値として扱える場合にimmutable(変更不可能)なオブジェクトとするのか...
2021.05.25
Go言語
設計
70
シェア
87
57
HTTP検索条件、GETにするか?POSTにするか?
RESTfullとかRESTishな方針でWebAPIの横断検索を設計する際にチーム内で方針について議論したやり取りの備忘記事です。
2021.05.18
Web
HTTP
設計
WebAPI
125
シェア
306
94
Goのフラットパッケージについて登壇しました
TIG真野です。2021/3/19に「Future Tech Night #7 〜フューチャーの開発事例と共に学べるGo勉強会〜」を開催しました。トップバッターでGoの開発構成・アプリアーキテクチャについて話したので報告します。
2021.04.27
Go言語
登壇レポート
設計
TechNight
10
シェア
8
21
GCPで構築するサーバーレスデータレイク①
GCPで構築するサーバーレスデータレイクの連載第1弾の記事となります。GCPでデータレイクを構築する場合のポイントについて連載形式でご紹介していければと思います。
2021.02.24
GCP
データレイク
ETL
要件定義
設計
サーバーレス
BigQuery
ツイート
シェア
1
9
Go 1.16のsignal.NotifyContext()
Go 1.16リリース記念連載の最終回はsignal.NotifyContextです。ご存知のように、Go 1.7でcontext.Contextが入ってから、少しずついろいろなAPIがContext対応になりました。
2021.02.12
Go言語
設計
Go1.16
12
シェア
51
26
GoのWebアプリ開発でフラットパッケージにした話
1年弱ほどGo言語でWebAPIアプリケーション開発を行っていますが、かなり割り切った構成・テスト方針を採用しました。そろそろ1年弱になり機能開発も比較的落ち着き、保守運用フェーズの割合も徐々に増えてきた頃合いなので、やったこと・学び・反省といった振り返りを共有します。
2020.11.09
Go言語
設計
25
シェア
105
75
1
2
Next