Насчет опер не знаю — может менее заметно, просто. Но я как-то всё равно противник этого всего… Да и кроме WinXP это вряд ли где-то будет использоваться.
Я не спец, конечно, но сглаживание мне понравилось. Не нравиться идея рендеринга шрифтов каждым приложением по-своему — печатаешь что-то в Word, переключился в Opera, стало рябить в глазах, привык, переключился обратно, стало рябить в глазах и т.д…
Шарп сливает в 2-3 раза в среднем. Судить о «performance-critical» приложениях по тестам не возьмусь — разница в 3 раза может как нивелироваться, так и увеличиться в разы — всё зависит от областей применения.
Мдя… И что делать если я не дописал комментарий, он вставился непонятно с какой радости, да еще и при попытке его дописать — хабрахабр опять его вставил… :(
if (in_array($value, $this->_blocks[$key]) === false) { array_push($this->_blocks[$key], $value); }
Вот этот момент, по-моему, лишний. Если я присвоил блоку значение, потом его переопределил, а потом хочу переопределить на предыдущее (хоть я этого, наверное, ни разу и не делал), то я хочу всё же получить последнее переопределенное значение. А так получается, что я могу написать:
<code>{block name=«foo»}It's a parent{/block}</code>
<code>{extends template=«parent.tpl»}
{block name=«foo»}It's a child{/block}
{/extends}</code>
<code>{extends template=«parent.tpl»}
{block name=«foo»}It's a child{/block}
{/extends}</code>
if (in_array($value, $this->_blocks[$key]) === false) {
array_push($this->_blocks[$key], $value);
}
Вот этот момент, по-моему, лишний. Если я присвоил блоку значение, потом его переопределил, а потом хочу переопределить на предыдущее (хоть я этого, наверное, ни разу и не делал), то я хочу всё же получить последнее переопределенное значение. А так получается, что я могу написать:
parent.tpl:
Inherit it!
Just a paragraph
{block name=«foo»}It's a parent{/block}
{extends template=«parent.tpl»}
{block name=«foo»}It's a child{/block}
{/extends}
1. Я же примерно то же и написал.
2. Нет, попробуйте в __get сделать документацию для десятка разных переменных, которые он может вернуть.
3. Следует из второго — в доках можно юзать phpdoc, тем самым заставляя нормальные IDE делать вам всевозможные подсказки.
Я, конечно, извиняюсь, но чему вас научил автор статьи? Своим собственным «принципам ООП»? Я не буду вдаваться в подробности относительно кода (хотя он мне тоже не нравиться, но бывает и хуже), я лишь скажу, что если вы будете учить теорию по подобным статьям, то в конечном счете об ООП вы будете знать довольно мало.
Несмотря на обилие недовольных (к коим я абсолютно и полностью присоединяюсь) — статья попала на главную… На хабре действительно так много людей, которым кажется, что статья хороша?..
По-моему тема не раскрыта... Я о замыканиях и лямбда-функциях в PHP 5.3 писал (вот и вот). И советую походить по линкам - возможно, узнаете кое-что новое.
тяжелый, блин. :(
А про «чистый» HTC Dream и его цены без контракта слышно?
shootout.alioth.debian.org/u32/benchmark.php? test=all&lang=gpp&lang2=csharp
Одно «но» — там Mono (правда здесь компиляторы не указаны вообще).
Шарп сливает в 2-3 раза в среднем. Судить о «performance-critical» приложениях по тестам не возьмусь — разница в 3 раза может как нивелироваться, так и увеличиться в разы — всё зависит от областей применения.
Вот этот момент, по-моему, лишний. Если я присвоил блоку значение, потом его переопределил, а потом хочу переопределить на предыдущее (хоть я этого, наверное, ни разу и не делал), то я хочу всё же получить последнее переопределенное значение. А так получается, что я могу написать:
if (in_array($value, $this->_blocks[$key]) === false) { array_push($this->_blocks[$key], $value); }
Вот этот момент, по-моему, лишний. Если я присвоил блоку значение, потом его переопределил, а потом хочу переопределить на предыдущее (хоть я этого, наверное, ни разу и не делал), то я хочу всё же получить последнее переопределенное значение. А так получается, что я могу написать:
parent.tpl:
Inherit it!
Just a paragraph
{block name=«foo»}It's a parent{/block}
{extends template=«parent.tpl»}
{block name=«foo»}It's a child{/block}
{/extends}
2. Нет, попробуйте в __get сделать документацию для десятка разных переменных, которые он может вернуть.
3. Следует из второго — в доках можно юзать phpdoc, тем самым заставляя нормальные IDE делать вам всевозможные подсказки.
1. они быстрее
2. они могут быть документированы
3. имеют поддержку в IDE
Первое непринципиально лично для меня, вторые два — вполне себе преимущества.