WEB+DB PRESS Vol.130

今号の特集概要

特集1
イミュータブルデータモデルで始める
実践データモデリング

業務の複雑さをシンプルに表現!

良いデータモデルとは,モデリングの過程で,考慮されていない要求の穴やエッジケースの発見につながるものです。本特集では,データモデルを書くことを通して,顧客やチームとの対話をいかに進めていくかを解説します。

本特集では,データの更新に着目し,事実の記録は更新されないように整理・分類していくイミュータブルデータモデルという手法を紹介します。「更新」を手がかりに,分析の足りない箇所を洗い出し,堅牢なモデルになっていくさまを皆さんにも体験いただけたら幸いです。

特集2
いまはじめるFlutter
iOS/Android両対応アプリを開発してみよう

本特集はマルチプラットフォームフレームワークFlutterの入門記事です。2022年5月にはmacOSとLinuxにも正式対応し,モバイル,Webフロントエンド,デスクトップのアプリケーション開発効率を大きく変える存在になりました。iOS/Android両対応アプリの開発を体験し,導入の足がかりにしてください。

特集3
作って学ぶWeb3
ブロックチェーン,スマートコントラクト,NFT

近年,「Web3」という言葉が注目を集めています。ただ,誇大広告ともとれる話や,暗号資産(仮想通貨)絡みの詐欺的な活動も横行していて,懐疑的な目で見ている方も少なくないと思います。本特集では,Web3の技術的な側面にフォーカスして解説します。どのようなことができるのか,そしてどのようなことができないのか,Web3という技術の,現在の等身大の姿を見ていきます。

目次

特集1
イミュータブルデータモデルで始める
実践データモデリング

業務の複雑さをシンプルに表現!

  • 第1章:良いデータモデルの条件
    モデリングを通じて対話をし,要求を掘り起こす ……川島 義隆
  • 第2章:イミュータブルデータモデルとは何か
    複雑さを可視化し,変更の必要箇所を特定する ……川島 義隆
  • 第3章:イミュータブルデータモデルの基本
    変更日時をエンティティから追い出すようにモデルを書く ……川島 義隆
  • 第4章:イミュータブルデータモデルの実践
    事実を更新しないための解法パターンを習得する ……川島 義隆
  • 第5章:ドメインモデルへの応用
    複雑さに立ち向かうためにモデルを書く ……川島 義隆

特集2
いまはじめるFlutter
iOS/Android両対応アプリを開発してみよう

  • 第1章:Flutterのススメ
    開発環境を整える ……渡部 陽太
  • 第2章:Dart言語
    UI開発に最適化された言語 ……渡部 陽太
  • 第3章:Flutterの基本
    フレームワークの中心となるWidgetを学ぶ ……渡部 陽太
  • 第4章:はじめてのFlutterアプリ開発
    入力バリデーション,HTTP通信,JSON変換の実装 ……渡部 陽太
  • 第5章:Flutterアプリのアーキテクチャ
    メジャーなパッケージを導入して設計を改善する ……渡部 陽太

特集3
作って学ぶWeb3
ブロックチェーン,スマートコントラクト,NFT

  • 第1章:Web3への第一歩
    今日から始める新時代のWebサービス開発……栗林 健太郎
  • 第2章:ブロックチェーンの世界に触れてみよう
    基礎知識,接続と送金,注意事項……吉本 康貴
  • 第3章:スマートコントラクトを書いてみよう
    記述言語「Solidity」とWeb IDE「Remix」でNFTを作る……高岡 佑輔
  • 第4章:ブロックチェーンアプリケーションを開発してみよう
    RubyによるNFTの発行と閲覧……池田 昭仁,黒瀧 悠太
  • 第5章:ケーススタディ
    「Nouns DAO」から考えるWeb3の現在地……大和田 純

一般記事

  • OPA/Regoによるポリシーのコード化
    自動で違反を検出してみよう ……水谷 正慶

コラム

  • 池澤春菜のSF小説の歩き方 ──エンジニアリングの未来を描く名作たち
    【第1回】エンジニア出身の方が書く小説 ……「コードを書く」と「小説を書く」との共通点 ……池澤 春菜
  • サバンナ便り ── ソフトウェア開発の荒野を生き抜く
    【第2回】偽陽性と偽陰性 ……自動テストの信頼性をむしばむ現象を理解する ……和田 卓人
  • ちょっと気になる隣の技術畑
    【第7回】技術を伝えるドキュメンテーション術 ……堀越良子さん ……日高 正博
  • はまちちゃんとわかばちゃんのREADER'S FORUM ── 読者のページ
    【第81回】 ……はまちや2,竹原

連載

  • Perl Hackers Hub
    【第74回】正規表現の脆弱性「ReDoS」徹底解説 ……原理と対策から,Perlでの最適化まで ……藤浪 大弥 監修:牧 大輔,福本 貴之,松木 雅幸,大沢 和宏
  • Goに入りては…… ── When In Go...
    【第32回】Goワークスペースの活用方法 ……依存関係のあるモジュールどうしの開発を楽にする ……牧 大輔
  • Ruby 3標準添付ライブラリ紹介
    【第8回】コマンドライン引数を扱う ……GetoptLong/OptionParser ……西山 和広
  • PHPで複雑さに立ち向かう
    【第8回】トレイトでのコードの再利用とどう向き合うか……ユースケースと注意点や弱点,将来 ……五十嵐 進士
  • 現場のPython ── システム開発も! 機械学習も!
    【第14回】FastAPIによるWeb API開発 ……型ヒントを活用したAPI仕様中心の開発手法 ……石上 晋
  • フロントエンド コンポーネント駆動開発
    【第3回】UIコンポーネントのテスト ……表示,条件分岐,イベントハンドラ,インタラクション ……吉井 健文
  • SREで開発を加速させる ── class SRE implements DevOps
    【第2回】プロダクト開発に必要なモニタリングの始め方……SLOを定義し,SLIを実装しよう ……古川 雅大
  • Javaで考える脱炭素化 ── グリーンなソフトウェアをはじめてみよう
    【第3回】実装方法が消費電力をどの程度変えるのかを見てみよう……仕様どおりに動くだけではグリーンにならない? ……阪田 浩一