クラウドワークス エンジニアブログ

日本最大級のクラウドソーシング「クラウドワークス」の開発の裏側をお届けするエンジニアブログ

jQueryからVue.jsに乗り換えて良かった点・悪かった点をまとめてみた!

今年の3月からクラウドワークスで働き出した高梨です!

さっそくですが、
最近、jQueryで書いていたJavaScriptをVue.jsに変えていくということをやりました!

「がっつりcomponent化して、API用意して、SPAにして・・・」

みたいな感じではなく、
最低限jQueryでやっていた表示・非表示の処理だったり、金額を計算するといった処理を
そのままVue.jsに置き換えていくという感じですね。

実際、Google Trendを見ても
ここ数年でVue.jsの人気が急激に伸びているのは事実です。
(実はReactにも大差をつけている)

Google Trend JS比較】
https://trends.google.com/trends/explore?date=today%205-y&q=vue.js,react.js,angular.js

ここでは、実際に実装してみて感じた良かった点や悪かった点を
簡単に2つずつお話しさせていただきたいと思います。

すでにがっつりVue.jsを使っているという方には物足りない内容かと思いますが、
「脱jQueryを考えている」
「Vue.jsなどの他のライブラリに興味を持っている」
といった方はぜひ参考にしていただけると幸いです。

基本、コードの例を交えてお話ししていきたいと思いますが、
説明不足の箇所はVue.js公式ドキュメントで該当する箇所のリンクを貼っていますので、
「詳しく理解したい!」
という方は是非利用してみてください!

ここでのお話を聞いて
「Vue.jsいい感じじゃん!」
と思っていただけた方は最後に公式のチュートリアルのリンクも
載せておきましたので、
是非そちらからVue.jsの世界に踏み込んでいただけると幸いです。

目次

  • 目次
  • 良かった点
    • その1. イベントバインドさせる処理を一掃できる!
    • その2. HTML側の値とJavaScriptの処理が勝手に連動してくれている!
  • 悪かった点
    • その1. 初期表示が崩れがち...
    • その2. jQueryの便利メソッドが使えない...
  • まとめ
続きを読む

ペアプログラミング + メンタースイッチを組み合わせてやってみた!

テーマ:ペアプロ

こんにちは、今年4月に入社した新人プログラマの@flatbaです。クラウドワークスでは、開発手法にペアプログラミングペアプロ)を取り入れています。

今回、既存メンバーが新人(僕)を新たにチームに受け入れるにあたって、

  • 既存チームへ新メンバーのスムーズな受け入れ

  • 新メンバーと既存メンバーとの早期の相互理解

  • スキルアップ

を目的としてチーム内で ペアプログラミング + メンタースイッチ を導入して実感したメリット、実践するなかで出てきた課題とその解決の様子、 を今回のブログのテーマにします。

目次

続きを読む

Terraformプロバイダから動的に型定義情報を取得するtfschemaというツールを作った

Terraform職人の @minamijoyo です。

クラウドワークスではAWSのインフラ構成管理にHashiCorpの Terraform を利用しており、 日々Terraformの設定ファイルを書いてるわけですが、 コード書いてると、リソースタイプの名前がうろ覚えとか、属性値の名前のスペルに自信がないとか、この属性値って必須項目だっけ? とか、なんだかんだで公式ドキュメントを見ながらコードを書いてることが多いです。

Vimのプラグインで補完してくれるやつがあるのは知ってるんだけど、 あらかじめリストファイルを持っているアプローチだと、バージョンに合わせてリストファイルの更新しないといけなくて、仕組み上の限界があるし、サポートされてない自作プロバイダとかだとそもそも使えない。

なんかもっといいかんじにできないかなぁと思って、趣味でTerraformのソースコードを読んでたら、最近入ったGetSchema APIというのを見つけて、欲しかったのはこれだよ感で早速試してみたらバグってるし。まじかよ。で、バグ報告修正に協力したり、AWSプロバイダにも修正を取り込んでもらったり、なんやかんやあって、結果的にTerraformプロバイダから動的に型定義情報を取得するtfschemaという俺得ツールができたので、テラフォーマーズの皆さんの役に立つかなーと思って紹介します。

github.com

続きを読む

© 2016 CrowdWorks, Inc., All rights reserved.