ブックマーク / fortee.jp (2)

  • 20年ものの巨大レガシープロダクトをPHP 8.0にアップデートした際の対策と得られた知見

    サイボウズのGaroon(ガルーン)は今年で20周年を迎えるグループウェアです。 このセッションでは、20年にわたって開発が続いている巨大なレガシープロダクトのPHPバージョンを7.4から8.0にアップデートした際に得られた知見についてお話しします。 Garoonはさまざまな組織を支えるグループウェアであり、お客様の業務にまつわるデータをお預かりする性質上、セキュリティの確保が重要な課題です。 そのため毎年欠かさずにPHPのメジャー/マイナーアップデートを行い、常に最新のセキュリティ更新を取り込める状態を保っています。 しかしGaroonはPHP4系の時代から脈々と開発が続いているため、コードベースは巨大でありレガシーなコードが多分に含まれています。 さらにPHP体にパッチを当てて自前でビルドしていることもあり、PHPのバージョンに対する依存度も高いです。 今年はPHP7.4からPHP8

    20年ものの巨大レガシープロダクトをPHP 8.0にアップデートした際の対策と得られた知見
    t_f_m
    t_f_m 2022/07/20
  • React Nativeにおける状態管理サバイバルガイド

    エンジニアに「状態管理うまくいってますか」という言葉を投げつけるのは、心に深い傷を刻む結果になると一般に知られています。 宣言的UIの流行により、GUIアプリケーションにおける支配者は状態(データ)となり、表示コンポーネントは状態の落とす影に過ぎない存在となりました。これにより「開発者は状態管理だけをうまくやればいい」という仕組みが出来上がるのですが、我々は次の現実に直面することになります。そもそも状態管理をうまくできない、と。 私がウェブ技術を17年間触れてきた中で、状態管理というのは最も難しい技術に分類されると感じています。そしてウェブ技術をベースにしているReact Nativeではその問題が直撃します。 密結合にすると変更に対して硬直化する、疎結合にすると流れが把握できなくなる、綺麗にするために状態管理ライブラリを入れたのに逆に散らかってきた、公式サイトに書いてある方法でやっても改

    React Nativeにおける状態管理サバイバルガイド
    t_f_m
    t_f_m 2021/06/05
  • 1