Собственно, так сделано в Bitcoin — деньги из ниоткуда на счету не появляются, баланс конкретного кошелька это лишь функция над всей историей транзакций.
На Scala: github.com/klpx/tinyrenderer/tree/step-2
Из интересного — тесты на отрисовку треугольников, а также сам алгоритм отрисовки: я нахожу фундамент (ребро, проекция которого соответствует проекции всего треугольника) и крышу треугольника, а затем рисую линии, ограниченные функциями фундамента и крыши. Выглядит примерно так:
def separateXBaseAndAngle(p1: Point, p2: Point, p3: Point): (Line, (Line, Line)) = {
val px = Array(p1, p2, p3)
val baseP1 = px.minBy(_.x)
val notP1Points = px.filter(_ ne baseP1)
val baseP2 = notP1Points.maxBy(_.x)
val angleP = notP1Points.filter(_ ne baseP2)(0)
(Line(baseP1, baseP2), (Line(baseP1, angleP), Line(angleP, baseP2)))
}
def drawTriangleNormal(p1: Point, p2: Point, p3: Point) {
val (base, (roof1, roof2)) = separateXBaseAndAngle(p1, p2, p3)
for (x <- base.p1.x to base.p2.x) {
val baseY = base getYByX x
val roof = (if (x <= roof1.p2.x) roof1 else roof2)
if (roof.p1.x == roof.p2.x) {
g.drawLine(x, roof.p1.y, x, roof.p2.y)
} else {
val roofY = roof getYByX x
g.drawLine(x, baseY, x, roofY)
}
}
}
Честно говоря, не уловил смысл статьи. Да есть какие-то всем понятные проблемы и пожелания. О чем говорит эта статья? О том, что есть всем понятные проблемы и пожелания?
Не говоря уж о том, что некоторые пункты неактуальны (safe_mode, бд) или спорны («безопасность»).
Интересно, почему нельзя было сразу сделать GET-форму поиска? К чему было использовать POST (мы же ничего не отправляем на сервер) с костылем для перевода на GET?
Согласен. Я как первый раз увидел, у меня глаза разбежались. Сложно сосредоточиться и выцепить быстро глазом нужные результы, потому заголовок как-то сливается с текстом.
Потому что, загруженные данные браузер кэширует и не загружает повторно.
Когда пользователь будет посещать разные сайты, на которых jquery подключается с CDN, то этот jquery будет загружен всего один раз.
А на каждом новом сайте со «своим» jquery, он будет загружаться заново.
Есть и другие фичи связанные с огрничением подключений к одному домену, задержки между пользователем и серверами вашими и cdn. Но это погуглите.
Из интересного — тесты на отрисовку треугольников, а также сам алгоритм отрисовки: я нахожу фундамент (ребро, проекция которого соответствует проекции всего треугольника) и крышу треугольника, а затем рисую линии, ограниченные функциями фундамента и крыши. Выглядит примерно так:
Не говоря уж о том, что некоторые пункты неактуальны (safe_mode, бд) или спорны («безопасность»).
Когда пользователь будет посещать разные сайты, на которых jquery подключается с CDN, то этот jquery будет загружен всего один раз.
А на каждом новом сайте со «своим» jquery, он будет загружаться заново.
Есть и другие фичи связанные с огрничением подключений к одному домену, задержки между пользователем и серверами вашими и cdn. Но это погуглите.
$a = true;
$b = false;
$c = $a and $b;
var_dump($c); // bool (true)