Автор будет очень признателен, если Вы кликнете по одной из белых ссылок выше.
Вам это ничего не стоит, а автору сайта будет приятно ;)
Найдено страниц: 59 [показано 10]
Пользовательский интерфейс
Степень соответствия запросу: 25,09%
Фрагменты текста поста : ... В этой ситуации было бы странно претендовать на истину, однако некоторыми соображениями автор этих строк хотел бы поделиться с читателями... ... Во-первых, в понятие пользовательского интерфейса (ПИ) входит не только, и даже не столько, картинка на экране - трехмерная, анимированная, просто выполненная в модном дизайне, - а способы взаимодействия пользователя с системой... ... Например, такой интерфейсный элемент как линейка прокрутки находится в противоречии с одним из основных принципов психологии восприятия: у человека может быть только одна точка активного внимания... ... До последнего времени на компьютерах любители могли только играть в игры... ... Прирастать пользователи будут только любителями... ... Наш (не)удачный предшественник - оконный интерфейс решил только первую задачу концептуального дизайна... ... Об общем стиле экранного изображения речи вообще не идет, если только не считать за таковой набор "тем"... ... Он утверждает, что наше восприятие основано на мотивации в том смысле, что если мы хотим есть, то видим только съедобные вещи, а если устали - то только предметы мебели, предназначенные для отдыха... ... Но эти сигналы крайне слабы, поскольку все кнопки выглядят одинаково, отличаясь только текстами в них, а функции у них совершенно различны... ... То есть из всего разнообразия изобразительных средств - формы, размера, цвета, текста - в кнопках диалогов используется только текст... ... Пользователь простит вам обман, заключающийся в том, что простая на первый взгляд программа постепенно приоткрывает свои новые (в том числе и интерфейсные) возможности... ... Поле экрана разбивалось на прямоугольники-окна и вся работа велась только в одном из них - так называемом активном окне... ... Эта возможность не только теоретически осознана, но и уже около пяти лет находится в стадии экспериментального исследования... ... Это нормальная стена, только очень длинная, разбитая на три отрезка... ... В этот интервал входит не только время вывода новой картинки на экран, но и время осознания ее пользователем, ведь определенное время и усилия тратятся пользователем на то, чтобы понять, как каждая следующая картинка соотносится с предыдущей... ... Современные дисплеи отображают миллионы цветов, но это - вещь в себе, поскольку, даже если человеческий глаз и в состоянии отличить столько оттенков, человеческий мозг не в состоянии придавать им смысл... ... К сожалению, следует констатировать, что сегодня стандартом стал плохой интерфейс, даже не столько плохо сделанный, сколько вообще "получившийся сам собой"... ... Однако, купив его и включив дома, этот покупатель будет, скорее всего, пользоваться стандартными кнопками для стандартных действий, показывая возможность А только гостям... Подробнее: http://fit-media.com/post_1204019048.htmlОптимизация PHP-кода
Степень соответствия запросу: 22,22%
Фрагменты текста поста : ... Передавайте в echo несколько параметров, вместо использования конкатенацию строк... ... Если функции замены строк, может принимать в качестве аргументов как массивы, так и одиночные символы, и если ваш список аргументов не слишком длинный, подумайте над тем, чтобы записать несколько одинаковых выражений замены, проходя один символ за раз, вместо одной строки кода, которая принимает массив поиска и замены Лучше использовать конструкции else if , чем несколько конструкций if... ... Ваши строки, определённые при помощи апострофа, а не двойной кавычки, будут интерпретироваться чуть быстрее, т... ... Конечно, вы можете использовать это только тогда, когда в вашей строке нет переменных... ... Строки, разделённые запятыми, выводятся быстрее, чем строки, разделённые точкой... ... Примечание: это работает только с функцией echo , которая может принимать несколько строк в качестве аргументов... ... При работе со строками, для определения длины строки, вы, разумеется, захотите использовать функцию strlen()... ... Эта функция работает очень быстро, ведь она не выполняет каких-либо вычислений, а лишь возвращает уже известную длину строки, доступную в zval-структуре (внутренняя структура C, используемая при работе с переменными в PHP )... ... функция, она будет работать медленно за счёт вызова некоторых операций, таких как приведение строки в нижний регистр и поиска в хэш-таблице, только после которых будут выполнены основные действия функции... ... За счёт этого isset() не имеет практически никаких накладных расходов на определение длины строки... ... ++$i будет быстрее в PHP потому, что вместо четырёх команд, как в случае с $i++ , вам понадобится только три... Подробнее: http://fit-media.com/post_1207831883.htmlФайлы vs базы данных.
Степень соответствия запросу: 14,63%
Фрагменты текста поста : ... html'][к-во дней] Число, которое мы «увидим» в этой ячейке и будет искомым количеством посетителей нашей страницы... ... Скрипт считывает в память ВЕСЬ файл статистики, не взирая на размер ( если посещаемость высокая или статистика собирается за большой срок, то это могут быть десятки или даже сотни мегабайт )... ... Язык PHP содержит пару функций ( serialize и unserialize ), предназначенных для преобразования массива в строку и обратно... ... Первая склеивает все элементы массива (разделяя их спец-символами с технической информацией) и возвращает полученную текстовую строку... ... Вторая делает обратное преобразование из строки в массив... ... она требует перебора части (а в худшем случае всех ) элементов массива и для каждого из них необходимо сделать сравнение достаточно длинных текстовых строк... ... com||вася пупкин'] В этом случае для сравнения строк будут использованы встроенные средства языка (библиотечные функции), которые работают гораздо быстрее самих PHP-шных скриптов, но все равно операцию эту быстрой не назовешь... ... Серилизация (склейка элементов массива в строку) и перезапись (опять же) ВСЕГО файла статистики... ... тут затронута обработка данных только из одного «раздела» статистики (а ведь скрипт еще должен скорректировать данные и в остальных), не описан блок, который проверяет доступность сайта для данного юзер-агента и хоста-источника (а он жрет времени тоже немало), не учтены потери на выделение/освобождение памяти и копирование целых веток массива, если автор решил (для упрощения программирования) отделить часть массива например так: Пример кода $as = $ar['allsein']... ... Для данного примера также будем рассматривать работу только с одним «разделом» статистики — данных о поисковых запросах... ... во второй таблице при поиске будет использоваться фильтрация по SH_ID (нам же нужны фразы только с найденного хоста, а не все подряд)... ... И это только на поиске... ... Нам нужно загрузить ТОЛЬКО ОДНУ ЗАПИСЬ , а вовсе не всю таблицу... ... В нашем случае размер записи (для третьей таблицы) составляет 12 байт , ведь там только три поля — Q_ID , Date и Hits , каждое из которых представляет собой 32-битное число и занимает 4 байта... ... Да еще про кэширование вспомним :-) Кстати, если ваш сайт достаточно посещаем, то файл статистики будет расти как на дрожжах и каждое обращение к скрипту будет вызывать чтение/парсинг/поиск/сохранение всех этих десятков мегабайт, а при использовании БД при любом количестве посетителей нам все так же будет нужно читать всего несколько сотен байт (три записи из таблиц), а записать - только 12 байт... ... И все они (моторы) работают ТОЛЬКО с БД... Подробнее: http://fit-media.com/post_1222679684.htmlУрок информатики для мелкософта (пояснение к залепе №8)
Степень соответствия запросу: 7,84%
Фрагменты текста поста : ... Дело в том, что это сделано не только (и не столько) для того чтобы избавить пользователя от написания длинных строк... ... Выходило, что чтобы получить оптимальное по скорости и памяти решение (например драйвер устройства или часть ядра ОС) необходимо использовать только ассемблер, напороть ошибок в котором проще простого... ... Но эта простота существует только до тех пор, пока наши переменные имеют простой тип... ... Но тут я хочу напомнить, что создание объекта - это не только выделение памяти под сам объект, но и создание и инициализация всех его членов-полей (которые, в свою очередь, тоже могут быть объектами), а также выполнение конструктора этого объекта и всех конструкторов всех его предков... ... Ну, а если этот объект представляет собой, например, таблицу из базы данных, который, вдобавок ко всему сказанному, при инициализации будет устанавливать соединение с этой самой БД и загрузку данных из нее, отъедая не только память и процессорное время, но еще и канал связи... ... Только лишь для того, чтобы программист мог написать различные варианты, оптимизированные для обоих случаев... ... но только для С++... ... Итак, по-пунктам: в строке (1) переменная c становится "дублем" переменной a , т... ... после инициализации в строке (2), значение c... Подробнее: http://fit-media.com/post_1198760520.htmlMySQL: MyISAM хотят заменить на новый движок Maria
Степень соответствия запросу: 6,94%
Фрагменты текста поста : ... Движок Maria - это расширенная версия MyISAM, которая поддерживает весь основной функционал MyISAM и в дополнение к этому предлагает: поддержку восстановления данных после сбоев (data auto-recovery, crash safe), полное логирование (включая операции CREATE, DROP, RENAME и TRUNCATE) и новый формат строк PAGE... ... Планируется, что движок Maria будет входить в стандартный пакет в версиях MySQL 6... ... INSERT и INSERT (множество строк), ALTER TABLE LOAD INDEX может пропускать неиспользуемые индексные блоки Новый блочный формат строк, в котором данные хранятся ввиде страниц При использовании блочного формата строк (выбираемого теперь по умолчанию) строковые данные могут кешироваться Блочные тесты большинства элементов Поддержка как отказоустойчивых (crash safe, транзакциональных) так и нетранзакциональных таблиц... ... (Нетранзакцональные таблицы не логируются и для строк используется меньше места): CREATE TABLE foo (... ... ) TRANSACTIONAL=0|1 PAGE используется только для тказоустойчивого/транзакционального строкового формата PAGE формат должен дать заметное увеличение скорости на системах с плохим кешированием данных... ... Не поддерживается INSERT DELAYED Не поддерживается кеширование составных ключей Устранение недостатков до следующих релизов Хранение очень малых строк Не поддерживаются MERGE таблицы Различия, которые вероятно не будут устранены Страницы данных в блоковом формате увеличивают размеры: 10 байт на страницу и 5 байт на строки... ... Транзакции и поддержка конкурирующих записей приведут к увеличению: 7 байт на новые строки, 14 байт для удаленных строк Отсутствие внешнего блокирования (MyISAM имеет внешнее блокирование, но оно редко используется) Использование одинакового размера страниц для индекса и данных... Подробнее: http://fit-media.com/post_1202730586.htmlИскать или не искать - вот в чем вопрос.
Степень соответствия запросу: 6,48%
Фрагменты текста поста : ... И это касается не столько владельцев сайтов, сколько посетителей... ... Но если ресурс действительно крупный (а даже средние блоги могут легко заиметь несколько сотен докуметов), то в карте сайта уже нет места для прописки каждой страницы - только разделы и секции, что не есть хорошо, т... ... Например использовать для сравнения строк так называемое расстояние Левенштейна... ... Если не вдаваться в подробности, то этот алгоритм просто сравнивает два слова и выдает число, которое является показателем, сколько нужно сделать вставок, замен и удалений символов, чтобы из первого слова получить второе... ... совпадет не только с реально однокоренными словами, но и со словами, совершенно никакого отношения к искомому не имеющими... ... Для поисковиков такое захламление только в плюс - увидят лишние ссылки на внутренние документы... ... Собственно реально приемлемый вариант только один, т... ... Остается только второй вариант - использование сторонних сервисов... ... Благо их в достатке - все поисковые машины только для того и рождены, чтобы реализовывать этот самый поиск... ... Нам же остается только лишь придумать способ использования их ресурсов для наших целей... Подробнее: http://fit-media.com/post_1245195136.html14 принципов создания вежливых программ
Степень соответствия запросу: 5,55%
Фрагменты текста поста : ... Другими словами, человек обладает определенными инстинктами, которые говорят ему, как вести себя в обществе других чувствительных созданий, поэтому как только некий объект проявляет определенные познавательные способности, эти инстинкты начинают действовать и мы начинаем реагировать на этот объект так же, как на других людей... ... интерфейс командной строки тоже будет нравиться, если он будет обладать вышеуказанными качествами... ... Программисты выразительны и точны до крайности, но только когда они так чувствуют... ... Может ли компьютер дать вам другой ответ, чем только что кому-то еще... ... Действительно, ни одна из программ на моем персональном компьютере не помнит ни меня, ни моих привычек, несмотря на то, что только я и никто другой постоянно, снова и снова пользуюсь ею... ... Программист считает реальный мир миром информации, так что как только программе требуется какая-либо информация, она просто требует ее от пользователя... ... Если я спрашиваю у служащего аэропорта, через какой выход пройти на рейс 729, я ожидаю, что он не только ответит на мой вопрос, но и даст мне важную информацию о том, что вылет рейса 729 задерживается на 20 минут... ... С другой стороны, как только наша беседа закончится, и я начну вертеть головой в поисках Рауля, я жду, что он сразу же поспешит к моему столику, чтобы узнать, что мне нужно... ... Программа не только должна молчать о своих проблемах, но и должна уметь решать их сама... ... Программа должна знать это, и не выводить их на экран... ... Компьютерные системы могут находиться только в двух состояниях: не-существование или полное соответствие... ... Одно из больших преимуществ подстраиваемой системы – уменьшение числа ошибок... ... Их программы заставляют пользователя вводить всю возможную информацию, а сами и пальцем не пошевелят... Подробнее: http://fit-media.com/post_1203349390.htmlЗалепа №10 Cупер-хренорезка может все. Только хрен не режет.
Степень соответствия запросу: 4%
Фрагменты текста поста : ... Только хрен не режет... ... Как раз есть форма, до отказа набитая всякими элементами управления (далее - контролами), в числе которых имеются и такие, из которых могут выпадать вспомогательные окошки... ... Идея проста как две копейки - как только фокус попадает в какой-нить из этих контролов, он (контрол) тут же разворачивается во всей своей красе... ... Вот только некоторые ляпы: Метод DrawToBitmap , позволяющий (наверное) нарисовать наш элемент управления в заранее созданный битмап... ... Интересно, нарисует только строчку с датой или еще и развернутый календарь... ... :( Свойства CompanyName , ProductName и ProductVersion существуют вообще везде, где только можно... ... Но вот только не ясно, какое именно отношение эти свойства имеют к календарю, ровно как и к любому другому контролу... ... Никогда бы не подумал, что человеку в здравом уме придет в голову использовать строчку ввода даты как площадку для размещения дополнительных элементов управления... ... И почему в таком случае не сделали метод GetPrevControl , чтоб можно было перейти не только к следующему, но и к предыдущему... ... Вот только реальной практической пользы в нем я тоже не нахожу... ... Эти два свойства предназначены видимо для тех мега-программеров, которые осилили учебник языка C# только до раздела "События", а дальше - забили... Подробнее: http://fit-media.com/post_1202303173.htmlКак Заиконить Сайт
Степень соответствия запросу: 3,78%
Фрагменты текста поста : ... Как в то далекое время любая, даже самая мелкая программа пыталась защемить себя в трей к часам, так и теперь любой, даже самый неказистый сайт старается всунуть свою иконку в адресную строку браузера... ... Стоит только обратить внимание на то, что изображение должно быть размером 16х16 точек и иметь 16-ти цветный формат... ... Но в этом случае Вам придется добавить одну строчку в шаблон вашего сайта... ... ico), то Вам нужно вставлять в HTML-файлы строчку, описанную выше... ... Кроме того, если иконка лежит не в корне сайта, то в этой строчке нужно указать путь к иконке... ... Кстати, поскольку в этой строке можно записать полный путь (включающий домен сайта), то Вы запросто можете прикрепить себе иконку от чужого сайта... ... :) Все, что Вам потребуется - вписать строку AddType image/ICO ICO в файл... ... Только соблюдайте регистр символов, т... Подробнее: http://fit-media.com/post_1212879390.htmlОптимизируем мышиную возню
Степень соответствия запросу: 3,47%
Фрагменты текста поста : ... Разработчик, в свою очередь, утирает заказчику нос, объясняя, что работать с клавиатурой - анахронизм, на дворе 21 век, эти подходы устарели и его (разработчика) контора использует только новейшие достижения и перспективные технологии... ... Но такие диалоги бывают только у продвинутых заказчиков... ... Часто даже матерые пользователи забывают (а многие об этом и не догадываются), что объекты можно таскать не только левой кнопкой , но и правой и даже средней... ... Например, было бы здорово, если бы в текстовом редакторе существовала возможность выделить кусок текста и перетащить его на кнопку принтера, тем самым послав на печать ТОЛЬКО выделенный текст... ... Точно так же, он должен сам свернуться, как только курсор мыши покинул его - пользователь видимо передумал делать выбор... ... Меню должно исчезнуть только после того, как мышь его покинет... ... И таких менюшек можно навешать столько сколько нужно... Подробнее: http://fit-media.com/post_1199978157.html
