Septeni Engineer's Blog

セプテーニ・オリジナルのエンジニアが綴る技術ブログ

The Elm Architectureの構成とデータフロー

こんにちは、丸山です。

前回フロントエンドの状態管理を考える一つの方法としてFluxを見てみました。 今回はThe Elm Architectureについて見ていきたいと思います。

The Elm Architectureとは

公式ガイドによればThe Elm Architectureは関数型プログラミング言語であるElmでアプリケーションを構築する際に使われるパターンで、 モジュール性やコードの再利用性、テストのしやすさなどに優れているということです。 Fluxの時と同じように、まずThe Elm Architectureの要素を見ていきます。

Model

アプリケーションの状態

Update

状態を更新する方法

View

HTMLとして状態を閲覧する方法

The Elm Architectureは以上の3つの要素から構成されます。
次に実際にコードを見て、これらがどう使われているのかを見ていきます。

続きを読む

Fluxの構成とデータフロー

こんにちは、丸山です。
最近業務でVue.jsの状態管理ライブラリであるVuexを触る機会が多くありました。
VuexはFlux、Redux、The Elm Architectureの影響を受けています。
これらを理解していくことはVue.jsのみならずフロントエンドにおける状態管理を考える助けになるのではないかと思います。
そこで今回はまずFluxの考え方をまとめてみました。

Fluxとは

FluxはFacebookが提唱している状態管理パターンです。 以下の図はFluxのデータフローを表しています。

f:id:to_maruyama:20190319183205p:plain

Fluxの特徴はデータフローが単方向という点です。 常にデータが同じ流れで処理されるので、管理しやすく不整合が起きにくくなります。

Fluxには主に4つの要素があります。それを以降で説明します。

続きを読む

Ansible + GitLab Runner で作るデプロイジョブ

中途三年目、堀越です。

Ansible で GitLab CI/CD 上にデプロイジョブを実装しましたのでそのアウトプットです。

www.ansible.com

はじめに

もともとSSHしつつポチポチとシェルを叩いて Play Framework をデプロイしていたのですが、自動化しましょうという話を開発チームでしました。

Ansible とか使ったら便利そうという意見があり、以前から関心があったということで便乗して担当させていただく運びとなった次第です。

続きを読む

新宿 Geek Lounge#7 SRE Meetup を開催しました

中途三年目、堀越です。

3/12(火)に弊社のトークイベント、新宿 Geek Lounge を開催しました。
今回のトークテーマは最近社内でもそよそよと風が吹いている SRE です。

当日の模様について簡単にレポートしていきたいと思います。

shinjuku-geek-lounge.connpass.com

続きを読む

良い組織の良いチームで良い仕事をするために、何が必要だったのか

東です。もう入社して三年目も終わろうかという頃です。早いものです...

今回は技術のことについてはお話しません。目新しいことに触れる機会は減ったし、技術者として極まった人たちは他に沢山いらっしゃるので、僕は僕の書きたいことを書いてみることにします。 チームについて書いたことですが、僕は今のチームを批判する目的で書くわけではないことを先に断っておきます。尊敬できる人達で構成されたチームだけど、もっと良くなりたい。この記事を書くモチベーションとして明確にしておきます。

あと、以下からは語り口が違いますが、僕にとっての地の文なのでご容赦ください。

続きを読む