
みなさんこんにちは。 今日は、Google ChromeとPivotal Tracker-PIROの開発について説明します。 順番に始めましょう。
PivotalTrackerは、「柔軟な」方法論を使用してソフトウェアプロジェクトを管理するためのサービスです。
Habréのこの記事からより詳細に学ぶことができます。 トラッカー自体は優れていますが、作業中に特定の問題が発生しました。
- 複数のプロジェクトで作業する場合、プロジェクトを切り替えるのは不便です
- どのプロジェクトのタスクがあなたのために作成されたのか、あなたが他の人のために作成したタスクのステータスを見つけるのは難しい
- 突然複数のPivotalTrackerアカウントで作業している場合は、ログインを使用するか、別のブラウザー(そのように回転している)の各アカウントで切り替えが発生します
少し反映して、私は袖をまくり、PivotalTrackerのソリューションを書き始めました。 作業の過程で、私はそれを人々に見せ、彼らはつながり、その実装を助けてくれました。 したがって、プロジェクトの最後に、彼らはそれをオープンソースにすることを決めました:)
拡張サイト:
http :
//piro.railsware.com/ソースコード:
https :
//github.com/railsware/piroスクリーンショット:




プログラミングのトピックは私に近いので、このプロジェクトの開発の技術面についてお話しします。
開発
データ保存
私は長年にわたってWeb開発に携わってきたため、私のソリューションはHTML / CSS / JSで記述され、ソリューションはシンプルである必要があるため、それに限定されます。 データストレージにはストレージが必要でした。 localStorage、sessionStorage、WebSQL、およびIndexDBがあります。 WebSQL-非推奨、IndexDB-開発中、sessionStorage-ブラウザーが閉じられるまでデータを保存します。 残ったlocalStorage。 この拡張機能で使用されます。
Javascript
すべてのコードはJavaScriptで記述されています。 この言語は優れていますが、その上にいくつかの構造を書くのが便利でない場合があります。 考え直すことなく、すべてのJSを
CoffeeScriptで書くことにしました。 この言語に慣れていない場合は、読むことをお勧めします。
Javascriptテンプレート
これまで、コード内でHTMLコードが生成される複雑なJavaScriptアプリケーションを記述することは根本的に間違っています。 このために膨大な量のJavaScriptテンプレートが開発されました。 最も人気のあるのは、
Mustache.js 、
Handlebars.js 、
Hogan.jsなどです。 Twitter(および私は確信している)が優れたテンプレートレンダリング速度を約束するため、拡張機能にHogan.jsを使用します。
Javascriptライブラリ
それらのない明確なビジネスはどこにもありません。 使用済み:
ここにRubyがあるのはなぜですか?
リポジトリでRubyを見つけることができます。 疑問が生じる-なぜ? 私の手で毎回javascriptでcoffescriptをコンパイルしないように、ruby c
guard gemを使用しました。これにより、ファイルシステム上のファイルを監視し、変更時に特定のアクションを実行できます。 ここでは、コンパイルのために
asset / javascriptsディレクトリのコーヒーファイルの変更を追跡する開発、
およびjavascriptsディレクトリのタスクでrakeファイルを難読化する開発で使用されます。
それだけです
この拡張機能については以上です。 多くのチームが他のプロジェクト管理システムを使用しているため、多くの人にとっては役に立たないことがあります。 しかし、おそらく拡張コードに興味があるでしょう(さらに、PivotalTrackerを使用するためにドラッグすることもできます)。 すでにPivotalTrackerを使用している場合-この拡張機能を使用して彼と一緒に作業することをお勧めします。
使用して参加:)