Yate:Yandex.Mailは新しいテンプレートエンジンに切り替えました

画像 少し前に、ブラウザでデータテンプレートを使用するYandex.Mailに新しいインターフェイスが登場したことを書きました。 これを行う大規模なサービスはほとんどありませんが、今でも、このようなソリューションが最も成功していると考えています。 インターフェイスの操作を加速するだけでなく、ユーザートラフィックを節約し、サーバープロセッサ時間をより効率的に費やすことができます。



次に、XSLをテンプレートエンジンとして使用し、データをXML形式で送信しました。 プロジェクトを新しいインターフェイスに移行した後、Yandex.Mailインターフェイスを高速化する他の方法を探し始めました。



最近、すべてのメールをJSテンプレートエンジンとJSONデータに転送しました。



XML / XSLを放棄する理由

私たちはXSLが大好きです。表現力があり、複雑な接続、多数の再利用可能なブロック、およびブロックを再定義または再定義する機能を備えた大規模サービス用のテンプレートを書くのは本当に便利です。 しかし、彼にはいくつかの重大な欠点もあります。









( , ) , : yate, handlebars, jade, dust ajaxslt.



json- , .



(, , , , , ), /. .



, (handlebars, jade, dust) , «», . XSL , .



, yate ajaxslt. , , ajaxslt yate 500 .



200 :



image



Yate

Yate — , - . , . Yate XSL: js- (match, apply), , jpath — XPath JSON. javascript , .



XSL yate:



image



, , yate — , JavaScript XSL-. , , JS , .



yate, 40% , . … 1200%!



, .

– JS-, , :



image



, , .



, , , , , :



image



, – 200. 30 , :



image



— - , debugger



, . log



, , .



, . yate . , , , , HTML.



image



yate , , . , JavaScript :



image





. .

, , JSON, E4X XML2JSON. , , XSL/XML, . . , «» :



image



:



image



, , .



DIY

, yate . yate , npm install yate



.



jpath. XPath JSON (jpath no.path) vim Sublime Text. XSL-, , yate xsl2yate.



All Articles