最近はAWS Lambdaの関数をNode.jsで書いているので、その設計を紹介しようと思う。 目次 Serverless Frameworkで気をつけたこといくつか ローカルCLIを使用する Credentialsを容易に追加 yarnコマンドで統一する stageを切り分ける テスト JavaScript側の設計 webpack+Babel AVA Flow Lint State管理 まとめ […]
最近Lambda+nodeを頑張っている、長です。最近mysqljsと言うものを使用したので、使い方とテストについて紹介したいと思います。 まずはインストール npm install mysql 使い方 import mysql from 'mysql'; const connection = mysql.createConnection({ host: 'localhos […]
昨年、React VRがプレリリースされた。 Introducing the React VR Pre-Release | Oculus VR開発に興味はあるものの、なかなか手を付けられなかったが、とりあえずしらべてみることにした。 React VRとは? Oculusのブログを読むのが手っ取り早いが、WebVRをつかって、ブラウザ上でVR体験を可能にするには、平面での開発とは勝手が異なり、3Dや […]
エンジニアは常に学習していく職種ということで、自分で学習の計画をたてられることは重要だと考える。今回は、Soft Skillsという本で、独学の方法について触れていたので、それを少し整理してみようと思う。 学習の10ステップ あげられていた10のステップは以下だった。 Get the big picture Determine scope Define success Find resources […]
この記事はJavaScript Advent Calendar 2016の記事です。 今回は、2017年、新規にJavaScriptを書くならどんな設計をするか、というテーマで書いてみようと思います。2017年といっても、しばらくはこんな感じのアーキテクチャでやってきましたので、どんな構成でJavaScriptを設計してきたかという方が正しいかもしれません。基本的にはSPAをベースとしています。 […]
これはフロントエンドエンジニア Advent Calendar 2016の第7日目の記事です。 今年はほぼずっとTypeScriptでコードを書いていたので、気分を変えてFlowでコードを書く時の環境について調べてみました。 私は普段Visual Studio Codeでコードを書いているのですが、特に助かっているこの辺りの機能を踏襲した環境を基準にしてみます。 エディタ内で型エラーを表示 何か間 […]
NativeScriptでプッシュ通知を実装したので、大まかな流れだけ書いてみようと思う。なお、BaaSには、Reproというサービスを使用した。 iOS 実装の流れ CSRファイルの作成 開発用証明書(.cer)の作成 AppIDの作成 端末の登録 プロビショニングプロファイルの作成 APNs用証明書(.cer)の作成 APNs用証明書(.p12)の作成、Reproへのアップロード Reproの […]
RxJSは非同期処理を高度に抽象化するので、煩雑な手続きをシンプルに書ける場面が多く、その辺にRxJSのユーザがこのライブラリにのめり込んでいく要因があるように思います。 一方、実地で使っていないとこういったメリットは、説明されてもピンとこないということがあるかも知れません。 そこで本稿では、実際に遭遇した『RxJSを使っていたから楽だった』コードをベースに、RxJSのメリットを紹介したいと思いま […]
先月あたりに読んだレガシーコード改善ガイドが面白かったので、その内容をメモしてみる。様々なテクニックが紹介されていたが、それをひとつひとつ書いていると長くなってしまうので、概要やコンセプトをメインに書こうと思う。 Amazon.co.jp: レガシーコード改善ガイド レガシーコードの変更手順 レガシーコードの変更手順は以下の様なものだ。これを基本として、様々な手法や例を交えて、章が進んでいく。 変 […]
小飼です。 TypeScriptの2系が正式に公開されました。 多数の機能追加・改善がありましたが、中でも目玉の一つはstrictNullChecksではないでしょうか。 今まで曖昧だった、『ある型がnull/undefinedを取り得るか?』ということを、型レベルで厳密に検査・検出することができるようになる機能です。 実行時エラーになるバグの多くが、不用意なundefined/nullへのアクセ […]