Если вы используете JavaScript, но при этом так до конца и не разобрались, что же это за чудная штука такая — замыкания, и зачем она нужна — эта статья для вас.
san @alexshelkov
Пользователь
jParallax — псевдо 3D интернет
1 мин
3.7KКак-то я видел забавный дизайн с обезьяной, позади которой очень занимательный фон который динамически менялся при изменении размера окна брузера.
Это достигалось за счет движения нескольких параллельных слоев.
+52
База классификаторов
1 мин
5.9KПрочитав этот хабратопик я решился, наконец, рассказать хабраобщественности о своем некоммерческом стартапе и вообще открыть к нему доступ. Этот проект сделан программистами для программистов. Суть его проста – все классификаторы на одном сайте.
Каждый классификатор может содержать несколько таблиц. Содержание любой таблицы можно посмотреть прямо на сайте или скачать классификатор целиком. Для скачивания доступны следующие форматы: XML, SQL-дамп или просто в формате Excel. В дальнейшем к профилю классификатора мы будем прикреплять графическую схему с указанием связей между таблицами.
Все Ваши пожелания, предложения и классификаторы, пожалуйста, отправляйте на class.upload@gmail.com. Плюсовать в карму можно drtoller (т.е. мне), derbov, @saratovdae.
Каждый классификатор может содержать несколько таблиц. Содержание любой таблицы можно посмотреть прямо на сайте или скачать классификатор целиком. Для скачивания доступны следующие форматы: XML, SQL-дамп или просто в формате Excel. В дальнейшем к профилю классификатора мы будем прикреплять графическую схему с указанием связей между таблицами.
Все Ваши пожелания, предложения и классификаторы, пожалуйста, отправляйте на class.upload@gmail.com. Плюсовать в карму можно drtoller (т.е. мне), derbov, @saratovdae.
+75
Подборка видео-проигрывателей на флэше
2 мин
18KЯ большой любитель собирать списки разных необходимых вещей. В этот раз это список видео-проигрывателей на флэше,
Уже помогли. Отдельные спасибы Elected, atri, rmb. Кармы всем за мой счет ^_^
+70
Веб-типографика сегодня. Часть V
12 мин
29KЧасть I — Часть II — Часть III — Часть IV — Часть V — Часть VI
Очевидно, что в сфере высоких технологий развитие зачастую происходит быстро и бурно. Так произошло и со средствами отображения информации. В течении каких-то двух-трёх лет обычные ЭЛТ-мониторы почти целиком и полностью были вытеснены стремительно дешевеющими ЖК-собратьями. Что позволило существенно улучшить как геометрию отображения, так и цветопередачу, а также снизить утомляемость глаз за счёт отсутствия вредного мерцания. И если несколько лет назад подобное утверждение в пользу TFT-панелей можно было бы оспорить, то теперь этот факт не вызывает ни у кого сомнений: ЖК-дисплеи намного лучше для повседневной работы рядового пользователя. В связи с этим фактором возникла необходимость поиска качественно новых алгоритмов отображения шрифтов. Одно из таких решений пусть не сразу, но всё же получило определённое признание в среде пользователей, и на сегодняшний день является чуть ли не самым популярным на современных платформах. Речь, конечно же, о технологии рендеринга ClearType, которая послужила причиной разработки новых веб-ориентированных шрифтов…
Часть V
Очевидно, что в сфере высоких технологий развитие зачастую происходит быстро и бурно. Так произошло и со средствами отображения информации. В течении каких-то двух-трёх лет обычные ЭЛТ-мониторы почти целиком и полностью были вытеснены стремительно дешевеющими ЖК-собратьями. Что позволило существенно улучшить как геометрию отображения, так и цветопередачу, а также снизить утомляемость глаз за счёт отсутствия вредного мерцания. И если несколько лет назад подобное утверждение в пользу TFT-панелей можно было бы оспорить, то теперь этот факт не вызывает ни у кого сомнений: ЖК-дисплеи намного лучше для повседневной работы рядового пользователя. В связи с этим фактором возникла необходимость поиска качественно новых алгоритмов отображения шрифтов. Одно из таких решений пусть не сразу, но всё же получило определённое признание в среде пользователей, и на сегодняшний день является чуть ли не самым популярным на современных платформах. Речь, конечно же, о технологии рендеринга ClearType, которая послужила причиной разработки новых веб-ориентированных шрифтов…
+2
Лучшие расширения для Firebug
1 мин
1.1KAdam DuVander из команды сайта WebMonkey составил список пяти лучших надстроек над Firebug. Вне конкуренции, оказался YSlow, но остальные 4 тоже очень полезны:
* Firecookie для простоты работы с cookies
* FirePHP для интеграции серверного PHP дебагинга с интерфейсом Firebug
* Pixel Perfect для наложения макета на HTML шаблон для контроля соответствия вёрстки
* Rainbow для подсветки Javascript синтаксиса
Пользуйтесь.
* Firecookie для простоты работы с cookies
* FirePHP для интеграции серверного PHP дебагинга с интерфейсом Firebug
* Pixel Perfect для наложения макета на HTML шаблон для контроля соответствия вёрстки
* Rainbow для подсветки Javascript синтаксиса
Пользуйтесь.
+55
+63
Вредная верстка
9 мин
74KКак определить, что сайт сверстан качественно?
Есть много статей о том, как делать хорошо, но совсем нет – о том, как делать не надо, ведь даже валидный и кроссбраузерный сайт может быть сверстан отвратительно.
Есть много статей о том, как делать хорошо, но совсем нет – о том, как делать не надо, ведь даже валидный и кроссбраузерный сайт может быть сверстан отвратительно.
Из этой статьи вы узнаете:
- О плохих приемах современной верстки;
- О том, как даже не будучи профессионалом, за 5 минут определить плохо ли сверстан сайт или нет.
+147
Отладка PHP средствами Firebug
2 мин
25KОтладка PHP-скриптов определенно недостаточно освещена в интернете. Потому многие, очень многие довольствуются print_r-ками. Очевидный недостаток такого способа — нельзя отладить AJAX, SOAP-сервисы, генераторы картинок и вообще скрипты, не отдающие непосредственно HTML-документов.
Javascript-разработчики используют для отладки Firebug. Как я им всегда завидовал. Лепота — выделенная консоль, net-монитор, отладчик, и все это в любимом браузере.
Так вот, нашел такое расширение Firebug — FirePHP. Оно позволяет выводить информацию в консоль Firebug непосредственно из PHP. Делается это довольно простым вызовом:
+68
Построение таблиц «Один-к-разным»
4 мин
18KПередо мною встала задача — «объединить» несколько типов объектов с разными свойствами в одной таблице для «глобального» поиска. Я перепробовал несколько решений такой задачи. Возможно, вы предложите что-то новое, чего я не смог разглядеть в потенциале SQL.
Рассмотрим задачу более конкретно:
Рассмотрим задачу более конкретно:
+27
Варианты проектирования БД
1 мин
10KВсе люди, вовлеченные в проектирование различных БД, думаю, нередко задаются вопросом о нужной структуре. На данный момент, есть два варианта хранения данных, каждый из которых, в свою очередь, имеет ряд своих недостатков.
1. Объединенное хранение
Например, есть таблица типов объектов (ObjectsTypes), таблица самих объектов (Objects) и их свойств (ObjectsFields). По желанию, можно хранить еще и типы полей-свойств, это не принципиально.
Связи между таблицами определены однозначно (объект имеет один тип (typeID) и ряд свойств, связанных с родительским объектом полем objectID), между объектами связь осуществляется и с помощью древовидной структуры (родитель ← ребенок) и путем заведения отдельной таблицы (ObjectsRelations) для сетевой структуры, в которой дочерний элемент может иметь несколько родительских.
2. Индивидуальное хранение
Если представлять эту реализацию на примере, то для хранения блогов нужна таблица Blogs с полями, относящимися к нему, таблица BlogsTopics, хранящая посты и их свойства, таблица BlogsVotes, содержащая все пользовательские голоса и т.д. Можно до бесконечности развивать этот пример — смысл такого хранения в том, что для каждого типа данных создается своя таблица (если нужно, то несколько).
Я считаю, что для индивидуальных решений, например, для системы Хабры, идеально подошел бы второй вариант, а первый можно использовать в коммерческих решениях (как, собственно, многие и делают).
Хотелось бы услышать неозвученные мной доводы в пользу каждого из методов.
1. Объединенное хранение
Например, есть таблица типов объектов (ObjectsTypes), таблица самих объектов (Objects) и их свойств (ObjectsFields). По желанию, можно хранить еще и типы полей-свойств, это не принципиально.
Связи между таблицами определены однозначно (объект имеет один тип (typeID) и ряд свойств, связанных с родительским объектом полем objectID), между объектами связь осуществляется и с помощью древовидной структуры (родитель ← ребенок) и путем заведения отдельной таблицы (ObjectsRelations) для сетевой структуры, в которой дочерний элемент может иметь несколько родительских.
2. Индивидуальное хранение
Если представлять эту реализацию на примере, то для хранения блогов нужна таблица Blogs с полями, относящимися к нему, таблица BlogsTopics, хранящая посты и их свойства, таблица BlogsVotes, содержащая все пользовательские голоса и т.д. Можно до бесконечности развивать этот пример — смысл такого хранения в том, что для каждого типа данных создается своя таблица (если нужно, то несколько).
Я считаю, что для индивидуальных решений, например, для системы Хабры, идеально подошел бы второй вариант, а первый можно использовать в коммерческих решениях (как, собственно, многие и делают).
Хотелось бы услышать неозвученные мной доводы в пользу каждого из методов.
+22
Проектирование баз данных. Паттерн Компоновщик (Composite)
4 мин
17KWeb 2.0 победоносно шагает по виртуальному миру. Социальные сети растут как грибы после дождя. Теперь в одном месте вы можете хранить свои фото, видеозаписи, писать блоги и слушать музыку. Все это можно комментировать, класть в избранное, копировать… Возможностей много, контент социальных сетей разнородный и разнообразный, и в этом их преимущество.
А теперь представьте себе структуру БД какого нибудь «Вконтакте». Представили? И что вы видите? Множество таблиц с данными? А что еще? Множество таблиц для связей много-ко-многим! Необходимых, с точки зрения реляционной БД, но лишних с точки зрения логики. Но это еще не все. Среди полей таблиц мы видим огромное количество «лишних» полей, являющихся всего лишь внешними ключами, служащими для связей один-ко-много, так же необходимых с точки зрения реляционной теории, но абсолютно бесполезных с точки зрения логики.
А теперь представьте себе структуру БД какого нибудь «Вконтакте». Представили? И что вы видите? Множество таблиц с данными? А что еще? Множество таблиц для связей много-ко-многим! Необходимых, с точки зрения реляционной БД, но лишних с точки зрения логики. Но это еще не все. Среди полей таблиц мы видим огромное количество «лишних» полей, являющихся всего лишь внешними ключами, служащими для связей один-ко-много, так же необходимых с точки зрения реляционной теории, но абсолютно бесполезных с точки зрения логики.
+43
Внедрение Flash с помощью SWFObject 2
16 мин
47KПеревод
Вопрос о внедрении Flash с помощью разметки соответствующей стандартам возникает достаточно часто, между тем у этой проблемы есть достаточно известное решение — SWFObject. SWFObject 2 не только позволяет внедрять Flash динамически, с помощью JavaScript, но и статически, когда для внедрения используется стандартная разметка, а JavaScript только исправляет неразрешимые с помощью разметки проблемы, при этом даже если JavaScript отключен пользователи все равно увидят Flash.
+50
12 лучших сайтов с креативными ссылками (для дизайнеров)
1 мин
7.1KПодборка из 12 сайтов в ассортименте которых, большой выбор креативных ссылок: портфолио, фотоколлекций, медиа-дизайн, иллюстраций и т.д.
Designcollector
The FWA
Creativenews
Designcollector
The FWA
Creativenews
+1
Информация
- В рейтинге
- Не участвует
- Откуда
- Таиланд
- Дата рождения
- Зарегистрирован
- Активность