It's presented how classical OOP approaches and design patterns can be used for modern JavaScript applications.
It's presented how classical OOP approaches and design patterns can be used for modern JavaScript applications.
こんにちは。kintone開発チームの天野 (@ama_ch) です。 最近はJavaScriptのテストツールが著しく進歩し、日々新しいツールが登場しています。kintoneの開発もこれらのツールによって支えられています。 kintone開発チームでは、昨年末頃からテスト環境の改善に取り組み、モダンなツールセットに乗り換えました。今回は、現在のkintoneのJSユニットテスト環境について紹介します。 kintoneとJSユニットテスト 数年前からユニットテストと自動化の仕組みはあったのですが、ごく一部のユーティリティ関数に書かれているのみで、普段の開発には活用されていませんでした。 ここ1,2年ほどで テストスケルトンを生成するジェネレータスクリプトを作る テストの書き方をまとめたドキュメントを用意する MTGで「ユニットテストを書かなくていいのは小学生まで」などと煽る コードレビュー
1 pixel|サイバーエージェント公式クリエイターズブログ サイバーエージェントのクリエイターの取り組みを紹介するオフィシャルブログです。最新技術への挑戦やサービス誕生の裏話、勉強会やイベントのレポートなどCAクリエイターの情報が満載です。 はじめまして。 アメーバ事業本部 クロスイノベーション室のグンタ(@gunta85)と申します。 今回はフロントエンド開発用の、 ありとあらゆる依存関係を簡単に解決してくれる、 WebPackというスグレモノをご紹介します。 導入経緯大きなアプリを開発するにあたり、依存関係を解決してくれるものを探していました。 その中で、RequireJSやBrowserify、Componentなども候補に挙がりましたが、 諸々の理由でWebPackを選びました。 特徴の違いについては「WebPack vs Browserify」等で検索してみると良いかと思います
HTML5 Experts.jpでエンタープライズ特集が組まれたことは承知だと思います。やはり注目すべきところはJavaScriptフレームワークの見解ではなかったかと思います。JavaScriptフレームワークについては人それぞれ考えがありますので、一概にこれとは言えませんが、私が感じているところを記載したいと思います。 世の中の動向と以前の判断 Googleトレンドを見る限りではAngularJSのひとり勝ちのように思えますが、身の回りの案件ではBackbone.jsが多いのではないかと思えます。1年半前にHTML5プロジェクトを行ったときに選定で残ったのが Backbone.js AngularJS Sencha Ext JS でした。最終的に利用したのはBackbone.JSだったのですが理由がjQueryベースで入り易かったということが上げられます。AngularJSは独特な記法
Backbone.jsの開発をしていると、(経験がないうちは)しばしばinitialize()のところでelとか$elとかeventsとか何がどうなってるのかわからなくなるのですが、ソースを読むと非常にシンプルな流れなのでざっと見ておくと参考になるのではないかというエントリーです。 コンストラクタ //github.com/jashkenas/backbone/blob/b9665843568c922f6249be2fc3538b7d52ba514c/backbone.js#L1037 var View = Backbone.View = function(options) { this.cid = _.uniqueId('view'); options || (options = {}); _.extend(this, _.pick(options, viewOptions)); thi
(150522追記)本稿の続編としてAngularJSモダンプラクティスを掲載しました。本稿は2014年9月に執筆し、情報がかなり古くなっています。続編では、AngularJS 1.4やAngular 2に関する情報をまとめ、入門者への新鮮なチュートリアル、熟練者の移行手引として作成しました。どうぞご覧ください。 この記事は記録のため残します。 AngularJS歴1年の筆者による個人的なAngularJSアンチパターン集です。自分のための戒めとメモを兼ねています。個人差があると思いますので、参考程度に。 また、筆者はTypeScriptで書いています。 Components ComponentsのDI数が6以上になる 危険度★★★ angular.module('myApp') .service('FooService', [ '$q', '$resource', '$rootScope
cheet.js easy easter eggs in the browser cheet('↑ ↑ ↓ ↓ ← → ← → b a', function () { alert('Voilà!'); }); cheet('i d d q d', function () { alert('god mode enabled'); }); cheet('o n e a t a t i m e', { next: function (str, key, num, seq) { console.log('key pressed: ' + key); console.log('progress: ' + num / seq.length); console.log('seq: ' + seq.join(' ')); }, fail: function () { console.log('sequen
WebJars are client-side web libraries (e.g. jQuery & Bootstrap) packaged into JAR (Java Archive) files. Explicitly and easily manage the client-side dependencies in JVM-based web applications Use JVM-based build tools (e.g. Maven, Gradle, sbt, ...) to download your client-side dependencies Know which client-side dependencies you are using Transitive dependencies are automatically resolved and opti
この資料では、JavaScript でオブジェクト指向プログラミングを行う際に備えておくことが望ましい、基礎知識や概念について解説します。 【対象者】 ・JavaScript でアプリケーションを構築できる方 ・JavaScript におけるオブジェクト指向プログラミングの 実現手法や原理への理解を深めたい方 ・Java 的なクラスベースの言語との違いに違和感や混乱を 感じてらっしゃる方Read less
今、一番熱いMVVMフレームワーク、Vue.jsのガイド、(http://vuejs.org/guide/)を訳してみました。 シンプルさ、美しさに驚愕せよ、と言いたい。 基本はGoogle翻訳ですので、まだ日本語としておかしいところあるかもしれません。Google翻訳のストレートな機械翻訳よりは読みやすいと思います。 はじめに Vue.jsは、インタラクティブなWebインターフェイスを構築するためのライブラリです。 技術的には、 Vue.jsはMVVMパターンのビューモデルの層に焦点を当てています。双方向のデータバインディングによって、ビューとモデルを接続します。実際のDOM操作と出力フォーマットはディレクティブとフィルタにより抽象化されます。 Vue.jsの哲学は、目標は可能な限り単純なAPIとMVVMデータのデータバインディングの利点を提供することです。モジュール性とコンポーザビリテ
The introduction to Reactive Programming you've been missing (by @andrestaltz) This tutorial as a series of videos If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming. So you're curious in learning this new thing called Reactive Programming, particularly its varia
Marionette.jsのView周りについてを中心にSingle Page Applicationを作るときの話
※本サイトではアフィリエイト広告を利用しています。記事内および商品リンクにはプロモーションが含まれる場合があります。 こんにちは、星影(@unsoluble_sugar)です。 11月30日に開催された「HTML5 Conference 2013」の発表スライドや動画などの講演資料をまとめました。 HTML5 Conference 2013 ※リンクミスや追加情報などありましたら、コメントまたは@unsoluble_sugarあてにお知らせいただけるとありがたいです 基調講演 次世代Web、深まる。広がる。 関連記事村井純教授。IT戦略は前倒しで実現される。7年先の夢を語ろう! HTML5 Conference 2013招待講演 Webのモバイル対応には、Webが社会に定着する上での真の問題や課題が隠されている。HTML5 Conference 2013基調講演 2000人のイベント開催に
今まではなんとなくtestemを使っていたのですが、Karmaを検討する必要があったので試してみました。 サンプルの設定などは↓で見ることが出来ます。 https://github.com/koba04/backbone-boilerplate testem to karma これまでは業務でもtestemを使っていて、テストの数が少ないうち(1000以下)は問題なかったのですが、 段々テストが増えてくるとCPU100%になってテストが走るブラウザが固まることが増えてきて辛い感じになってきました。 そんなときに下記の記事を見て同じような現象だなと思いKarmaを試してみることにしました。 http://developer.cybozu.co.jp/tech/?p=7089 Installation インストールはnpm install karmaするだけです。 globalでkarmaのコ
.load1 .loader, .load1 .loader:before, .load1 .loader:after { background: #ffffff; -webkit-animation: load1 1s infinite ease-in-out; animation: load1 1s infinite ease-in-out; width: 1em; height: 4em; } .load1 .loader { color: #ffffff; text-indent: -9999em; margin: 88px auto; position: relative; font-size: 11px; -webkit-transform: translateZ(0); -ms-transform: translateZ(0); transform: translateZ(0
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く