タグ

ブックマーク / blog.mmmcorp.co.jp (6)

  • ReduxをREST APIと使う時の命名のコツ|デロイト トーマツ ウェブサービス株式会社(DWS)公式ブログ

    概要 今回は、REST APIに対してReduxを使用する場合の命名のコツを書いていきたいと思う。 リソースにあわせてconstantsをつくる 前準備として、リクエストの状態を表すconstantsをつくっておく。 基的にREST APIを扱う時は、ロジック側はAPIリソースに合わせた命名にしておく。こうすることで、サーバーサイドの世界とコンテキストを切り替えることなく作業できて、混乱を避けることができる。例えば、ユーザー一覧を取得する/usersというエンドポイントがあれば、usersというオブジェクトで全体を設計してゆく。 Reduxで非同期な処理を扱う時は、リクエスト中 リクエスト成功 リクエスト失敗のような状態を持っておくと思うが、REST APIの場合、これにGET POST PUT DELETEなどがのってくるので、命名で混乱しないように、下記のようなヘルパーを作っておく。

  • 合計16時間の試験勉強でAWS認定ソリューションアーキテクト プロフェッショナルを取得した話

    合計16時間の試験勉強でAWS認定ソリューションアーキテクト プロフェッショナルを取得した話 2017.09.11 AWS AWS認定ソリューションアーキテクト, クラウド, 試験勉強 2017年ラストの川でのキャンプも無事終了し、格的に夏の終わりを実感しているMMM代表の国です。 昨今、AWSへの移行(マイグレーション)や、新規導入について商談の機会がますます増えつつあり、個人的に前々から取得を狙っていた『AWS 認定ソリューションアーキテクト – プロフェッショナルレベル』を2017年9月8日に無事?取得(合格)致しました。(晴れてAWS Certified Solutions Architect Professionalホルダーに) 資格取得を決意した2017年7月上旬より学習時間をざっくり記録していて、最終的にトータルで約16時間を要しましたが、簡単ではありますが、学習の方針や

    合計16時間の試験勉強でAWS認定ソリューションアーキテクト プロフェッショナルを取得した話
    clavier
    clavier 2018/01/12
  • RxJS(5.x)で行うテストファーストな機能開発|デロイト トーマツ ウェブサービス株式会社(DWS)公式ブログ

    小飼です。 『The Next Great Burger』にハマっています。 RxJS、使っていますか? 弊社では現在開発しているアプリケーションから、格的にRxJSを導入して使い込んでいっています。 イベントを配列のように操作できるという高度な抽象化の恩恵で、非常にリーダブルかつ簡潔に機能実装が出来るところが非常に良いですね。 学び始めた当初はReactive Programming的な考え方で実装を発想するということができず、非常に難解なイメージを持っていましたが、 半年くらい置いて改めて使ってみたところ、非常に使いやすいライブラリであるというイメージにガラッと変わりました。 これはRPっぽい発想の転換ができたことと併せて、TypeScriptでRxJSを用いることで、静的型解析の恩恵を受ける事ができた事も大きいと思っています。 (少なくともAPIの多さは問題にならなくなりました)

  • React+Reduxのテスト方針をまとめた|デロイト トーマツ ウェブサービス株式会社(DWS)公式ブログ

    概要 React.js Advent Calendar21日目の記事です。 Reduxというフレームワークがじわじわ広まっている。Reduxは、Fluxの概念を拡張したもので、アプリケーションでひとつの状態をもつと、クライアントでの状態管理がいろいろ便利になるよ、というコンセプトを持つ。詳細は以下の記事が詳しい。 人気のFluxフレームワークReduxをさわってみた - マルシテイアは月の上 Motivation | Redux 筆者は現在React+Reduxでアプリケーションをつくっているが、今回は、そのテスト方針を書こうと思う。 テスト環境 karma+jasmine+sinonでつくる。E2Eはいろいろと・・・なので・・・メインはユニットテストで実装している。JavaScript DOMをつかってSimulationすれば、最低限は担保できるかなと考える。 テスト方針 大きな方針と

  • Rx(JS)に入門する前に知っておきたいN個のこと|デロイト トーマツ ウェブサービス株式会社(DWS)公式ブログ

    ※この説明では関数型プログラミングの部分について触れていませんが、Rxへの入門の準備という目的をややこしくしてしまうと思ったので省いています。 (私はObservable Streamを外部状態に依存しない書き方で使うことで安定して綺麗なコードを書ける、みたいな理解の仕方をしています) 実装例 長々と個人的な解釈を書き連ねてきたので、この辺で実際のコードに落とし込んでみたいと思います。 ここではマークダウンエディタを実装している想定で、ユーザーのキーボード入力イベントから、`(逆クォート記号)で囲まれた文字列を spanタグで囲んだhtml文字列に変換するような処理を実装します。 ただし、変換したhtml文字列をその度に描画していると描画コストが掛かり過ぎてしまうという想定で、 500ms毎に最新のhtml文字列を検出したいという仕様があるとしました。 準備 まず、ユーザーのキーボード入力

  • Vue.jsにreduxを載せた話|デロイト トーマツ ウェブサービス株式会社(DWS)公式ブログ

    概要 先日とある案件でVue.jsを用いたアプリケーションを開発することとなりました。 一般に同種のフレームワークと比較してVue.jsは、学習コストが低く気軽にはじめやすいということがメリットとして語られています。 ただ、今回の案件のようにMVC系フレームワークを用いて開発する際にネックとなっていたのが、コンポーネント間のデータ共有についての最適解が見つけられていないと感じていたことでした。 もちろん、適切にモデルを設計すればコンポーネント間のやり取りに責任を持つ、親コンポーネントとでもいうべき層を実装することでこの問題は解決できると思います。 しかし実案件では往々にして親コンポーネント層の実装が個々人の裁量に陥りやすく、結果的にコンポーネント間データ共有の方式が統一出来ていないケースも出てきてしまいました。 コンポーネント間で共有したいデータ=アプリケーションの質となるデータは、もっ

  • 1