2016-03-22 7 views
0

この質問には、ワークフローと.css構造が含まれます。CSSの機能/リファクタリングの「ソフト」リリースを行う方法は?

TL; DR

私は別のチームがなく、サイトには、他のチームのためにどのように見えるかに影響を与えることなく、同じファイルを使用できるように、私のCSSをリファクタリングしてreestructureすることがベストプラクティスを探しています。深度説明

私は大きな「電子商取引」部門(1K +従業員)と大企業で働いています。私はここで働く最初のWebdesignerです。私は5年以上Java Developer's CSSを継承しています。私たちは3つの大きなチームが同じCSSをウェブサイトの各地域で使用しています。

私はeCommソリューションのすべての領域に同じ外観と感じを持たせるために雇われました。これは、コードの多くをリファクタリングしなければならないことを意味します(私は約90%を推測します)。

<table class="company-table team-table static-table"></table> 

これは、私の仕事は、CSSを本当に難しいものにしています。私はちょうどのテーブルを要約したいと思います。 "静的"テーブルをすべてのチームに使用します。私はすべてのテーブルを見てみると、クラス

static-table

このアプローチの問題は、このクラスは、テーブルに変更を加えたすべてのチーム、によって、他のクラスと組み合わせて使用​​されていることであるでそれらをリファクタリングできリファクタリングされたクラスをオーバーライドする可能性もあります。

各チームには異なるスプリントとリリースがあり、同期していません。チームに私の仕事を同期させるよう依頼することができました。しかし、それは起こりません。

私の考えは、例えば、完全に新しいクラスを作ることです。この新しいクラスで

company-static-table

私はテーブルのすべての属性を置く:

.company-static-table {border-radius: 0.5em; padding: 1em; ... } 

私は、言うことができますチームには新しい静的テーブルクラスがあり、新しいクラスを実装するための(たとえば)5回のスプリントがあるということです。この方法で、私は彼らが彼らに最も合ったときに変更を加えることができます。

テーブルが永遠に、どこでも同じように見える場合は、これはうまくいくはずです。しかし、サイトの領域(別のチーム)に別のパディングが必要な場合があります。私のソリューションは、次のようになります。

.company-static-table { ... 
 
     .team-a-table { 
 
     padding: 0.5em; 
 
     } 
 
    }

...まあ、これは再び問題で始まります。 1つでリファクタリングできる4つ以上のCSSクラスを持つオブジェクトが存在するので、少し上手くいくでしょう。こうすることで、クラス数を最大2に減らすことができます。

私はワークフローを変更できません。私は各チームにCSSを提供したいとは思っていません。

これは私にとって大きなチャレンジです。ウェブデザイナーである同僚や上司とは2年以上の経験があります。私はすでにコードをリファクタリングしようとしている要素の多くを壊しました。

何か助けてもらえますか?私はほぼ20k行(コンパイル時)のCSSをリファクタに持っています。私は、任意の入力のための

おかげ

+0

あなたは1つのチームに集中することを考えましたか?彼らと一緒に「会社」のCSSを開発し、それと一緒に提供し、必要に応じてcssを進化させるために協力して、それぞれの新しいチームを移行しながら、すでに流通しているチームとの互換性を維持します。 – forsvarir

+0

ご返信ありがとうございます。しかし、これは不可能です。 私は他のチームのために開発を止められません。さらに、これは互換性のないスタイルに対処しなければならないという問題に対処しません。主な問題は、チームとの互換性を維持することです。私はこれをどうするか考えていない... = \ –

答えて

0

最高これに応じて(とも私がやったが)で見ることができる...唯一のそれは悪い考えであったことを確認するために、特定のメソッドを起動する必要はありませんこのビデオ:

https://www.youtube.com/watch?v=iDhj92tPjYU(24:25から開始)

要するに:しばらくのサイド・バイ・サイドのために生きるの並列リリースを作り、対応するために新しいバージョンを変更するにはCSSファイルを使用して同じ古い構造を維持しながら変化する。

この回答が他の人に役立つことを願います。

関連する問題