Pull to refresh
161
0
Павел @PaulZi

User

Send message
Кстати недавно эту тему тоже изучал, могу дать пару советов:
1) если компьютер используется без UPS, то для быстрого восстановления раид-массива можно включить cохранение битовых карт (write-intent bitmap) — суть в том что перестраиваться будут только помеченные как «несохронизированные» области:
mdadm --grow --bitmap=internal /dev/md0

Желательно ещё этот файл вынести во внешний файл, правда проверяйте вывод /proc/mdstat — у меня на убунте из-за бага с внешним файлом не заводится…
2) Для ускорения синхронизации можно подправить параметры ядра (пока не поменял этот параметр 3 тбайтный массив синхронизировался почти 2 дня):
echo 50000 > /proc/sys/dev/raid/speed_limit_min
echo 300000 > /proc/sys/dev/raid/speed_limit_max

либо так в ubuntu:
nano /etc/sysctl.conf

dev.raid.speed_limit_min=50000
dev.raid.speed_limit_max=500000

Ну это понятно, это называется «динамические классы», __get же срабатывает для не инициализированного свойства (isset($a->b)==false). Делать из php строгие неизменяемые классы конечно тоже не надо.
Вообще программируя на JavaScript и ActionScript очень часто посещает голову мысль «вот здорово если бы в php было бы также»… Но у каждого языка свои плюсы и свои минусы)
Во всём можно найти плюсы, согласен с вами магические методы __get и __set также могут найти своё применение. Лучше всего для разработчика когда есть и то и другое, то есть можно задать как традиционный getter/setter так и магический __get/__set для несуществующих свойств.
Так в текущем языке по одной простой причине — так проще разработчикам, выкинуть очередной недофункционал с помощью костыля (тот же __get, __set), чем менять синтаксический анализатор и вычищать потом кучу багов.
Это точно, php много костылей, те же __set и __get. Благо в php 5.5 вроде собираются это решать…
Кинуть исключение логично, ну или как минимум warning и вернуть null. Вы рассуждаете с точки зрения текущего функционала php. Я же говорю о том что можно реализовать.
Что мешает узнать интерпретатору php, что $someObject->someMethod — это метод, а не свойство и вернуть в этом случае лямбда функцию.
Всегда удивляюсь, кто в php придумал передавать метод класса как массив
array(&$this, 'someMethod')
Можно ещё упомянуть, что когда php был маленький, то для работы с массивами сначала были безпрефиксные функции типа sort(), usort(), count()… По мере развития php они придумали префиксы array_, однако они не стали ломать обратную совместимость.
Что вы хотели сказать постом, что PHP развивается? Да в PHP много несостыковок, вызванных очень бурным развитием от простого скрипта для сборки шапки-футера маленького сайта, до мощного ООП языка.
Хотя согласен, данный пример функция явно символизирует нескоординированность разработчиков, учитывая что обе эти функции появилмсь в php 4.0.6
Логин может быть любой почтой, пароль произвольный. Режим параноика нужно включать только если вы используете один пароль на разных сайтах.
Хотя для безопасности было бы неплохо указать номер телефона и/или email для восстановления, т. к. гугл при доступе из другой страны будет подозревать тогда во взломе, и спрашивать номер телефона, и тогда логина и пароля будет недостаточно. Ну и совсем безопасно — включить двухфакторную авторизацию.
Жесть, у них пароли не только от yahoo, но и от gmail (как я понимаю те кто используют одинаковые пароли под угрозой)
Дело не в тормозах, а в том, что DirectX вывод (какой-нибудь 5-ой версии) вовсе не поддерживается из-за чего получается «чёрный экран» Типичный пример — NFS 4 — в windows XP он не запускается (хотя вроде есть неоф. патчи), а в win98 нет поддержки виртуалкой d3d.
Есть только одно НО: ускорение в VMWare работает только начиная с Windows XP (имеется в виду гостевая ось), а очень старые игры могут не работать уже и в XP.
Как минимум нужно при этом сделать об этом уточнение, кроме того, указать, что используется jQuery (соответственно надо подключить).
В любом случае код крайне неудачный, так как заставит на стороне клиента перестроить всё DOM-дерево, и возможно что-то перестанет работать, если к элементам были привязаны события или свойства.

Лучше уж тогда так, с событием инициализации:
$(function(){ $('body').append('...html...'); });
// хотя скорее prepend('...html...'), т. к. вставить надо в начало...
А просто в HTML это нельзя прописать? Зачем тут JS?
Спасибо! Хотя не понял причём тут «сложная маска»? В качестве маски в статье используется изображение, и оно может быть каким угодно сложным. Кроме того для работы метода не требуется включённый JavaScript (по крайней мере в браузерах где есть поддержка SVG).
Судя по консоли Firefox, внешние изображения не грузятся по соображениям «безопасности»:
Попытка нарушения системы безопасности: содержимое «http://paulzi.ru/habr/svg-alpha/out.svg» не имеет права загружать данные из paulzi.ru/habr/svg-alpha/mask.jpg.
Как хранить маску — решать вам. Хотите, используйте растровую маску, хотите — используйте всю мощь SVG для отрисовки маски (фигуры, полигоны и многое другое), хотите с помощью JavaScript — ничто вас здесь не ограничивает. Я показал лишь пример, что применять лучше — зависит от задач. Если у вас есть большая картинка с прозрачным фоном, на котором аккуратно вырезан человек — тут «геометрии» в маске мало. А если нужна просто аватарка вырезанная в форме «звезды», то конечно выгоднее использовать векторную маску.
На сколько я знаю, в VML нет аналогов SVG Mask, поэтому наложить растровый альфа-канал не получится, максимум что можно сделать — это использовать векторную маску. Поправьте меня если я не прав.

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity