avatar
заходил 22 февраля в 22:37

Публикации

avatar

Оптимизация математических выражений

Опубликовал в блог Программирование

У нас в разработке все менее и менее модной становится тема оптимизации кода – считается что это дескать удел компиляторов а самим лучше в это нос не совать дабы не обжечься. Тем не менее, мы прекрасно знаем, что различные типы вычислений, например, имеют разную стоимость и я думаю мы можем предположить, что любой, даже самый умный компилятор, не в состоянии оптимизировать сложные математические выражения.

В этом посте – обзор нескольких оптимизаций вычислений, которые мы как разработчики можем применить чтобы наш код исполнялся чуточку быстрее.



Читать дальше
avatar

Проверка возможностей движка

Опубликовал в блог Программирование

Contents

Каждый раз когда я вижу новый проект на подобие #habr у меня возникает один вопрос — а хорошо ли тут будет выглядеть мой контент? Давайте посмотрим:

Возможности

  • Верстка кода инлайн: public static void main() fail (тэг code не является блочным)

  • Верстка кодовых блоков: fail — не вижу никакого намека на SyntaxHighlighter. Впрочем, попробуем вручную:

    <font size="2" face="Consolas, Andale Mono, Courier New, Courier" color="black"><font color="#0000FF">private</font> <font color="#0000FF">static</font> <font color="#0000FF">void</font> RtsVolGradCalc(<font color="#0000FF">double</font>[] _args, <font color="#0000FF">double</font>[] X, <font color="#0000FF">ref</font> <font color="#0000FF">double</font> func, <font color="#0000FF">double</font>[] grad, <font color="#0000FF">object</font> obj)<br/> {<br/>   <font color="#0000FF">double</font> s = _args[0];<br/>   <font color="#0000FF">double</font> a = _args[1];<br/>   <font color="#0000FF">double</font> b = _args[2];<br/>   <font color="#0000FF">double</font> c = _args[3];<br/>   <font color="#0000FF">double</font> d = _args[4];<br/>   <font color="#0000FF">double</font> e = _args[5];<br/>   <font color="#0000FF">double</font> y = X[0] - s;<br/>   func = Rts.ivEst(X[0], s, a, b, c, d, e);<br/>   grad[0] = Rts.ivGradEst(X[0], s, a, b, c, d, e);<br/>   grad[1] = 1;<br/>   grad[2] = 1 - Math.Exp(-c*y);<br/>   grad[3] = b*Math.Exp(-c*y)*y;<br/>   grad[4] = Math.Atan(1.0/e/y)/e;<br/>   grad[5] = -((d*y)/(e*(1.0 + e*e*y*y))) - ((d*Math.Atan(1.0/e/y))/(e*e));<br/> }<br/> </font>
    о, да это просто булшит какой-то

  • Возможность писать LaTeX… я ее в упор не вижу.

  • Правильное отображение ссылок и переходов1 — вроде работает.

  • Заголовки — не отображаются как заголовки, fail

Вообщем пока слабовато, а без поддержки LaTeX/Mathjax то что хочется запостить не запостить вообще никак (только как картинки).

References

  1. Вроде например этой
$i = 999;if ($i == 999) echo «ok»;