Pull to refresh
0
0
Илья @Flex

User

Send message

Архитектура CMS. Модель данных. Часть 2

Reading time9 min
Views4.1K
Продолжаем тему объектной модели данных. В этой части речь пойдет о модуле Data, являющимся, по сути, ORM системой. Для наглядности работы модуля Data c его помощью будет создано содержимое простого сайта. Предыдущая статья: Архитектура CMS. Модель данных. Часть 1.

Модуль Data состоит из классов Data, Object, Multy, Query и набора классов Cond*. Сам модуль – это статический класс Data, остальные классы используются для представления структур данных, с которыми он работает. Для представления сущностей в программном коде используется класс Object. Не важно, какого типа сущность – класс данных, объект данных или связь между ними – для всех Object. Класс Multy используется для ассоциации с набором сущностей, в частности, для представления множественных свойств. Классы Query и Cond* необходимы для осуществления поиска по объектной модели (в базе данных) с учетом гибких условий.
Читать дальше →

Реально работающие ресурсы, доступные софтверным предпринимателям в России

Reading time4 min
Views986
Часто приходится слышать, что, мол, если предпринимателю нужна поддержка, это значит, что он плохой предприниматель.
Работая в российском Майкрософт и занимаясь проектами по поддержке технологического предпринимательства, я общаюсь со многими предпринимателями, в том числе с теми, кто многого добился и получил всеобщее признание. И четко вижу, что их отличает в первую очередь то, что они никогда не упускают ни единого шанса получить все, что может помочь их бизнесу.
Поэтому я решил опубликовать топик, посвященный тому, какие ресурсы/программы, имеющиеся сейчас на российском рынке, могут _реально_ облегчить жизнь софтверному стартапу. Опишу те, что известны мне (как предоставляемые Майкрософт и нашими партнерами, так и не имеющие отношения к Майкрософт). А сообщество, надеюсь, дополнит.
Читать дальше →

Убираем лишний отступ внизу изображения

Reading time1 min
Views38K
Лишний отступ внизу изображения img1

Наверное, многие, при html-верстке, встречали «баг», когда, размещая в блоке подряд два изображения, между ними возникает промежуток, примерно в 3-5 пикселей. Этот эффект присутствует не только в горячо любимом IE6, но и в других браузерах. Большинство решали это с бубнами – подменой Doctype, убиранием лишних отступов в html-файле и так далее.

Начав искать решение проблемы в интернете, в том числе и на хабре, я понял, что вопросов по этому поводу много, но правильного ответа большинство так и не нашли. В итоге выяснилось, что это вовсе не баг. IMG – внутристрочный элемент, и поэтому к нему применяется свойство vertical-align. В браузерах это свойство задается по умолчанию (в большинстве baseline, если не ошибаюсь).

Достаточно к изображению применить vertical-align:bottom и отступа внизу не будет. В других случаях будет неоднозначность, и браузеры будут вести себя на свое усмотрение.

Убираем лишний отступ внизу изображения img1

Архитектура CMS

Reading time8 min
Views18K
Имея более чем достаточно времени, увлекся я размышлениями о создании гибкой, многофункциональной, но относительно простой CMS для программистов и её конфигураторов-пользователей. Некоторые идеи были навеяны потенциальными возможностями CMS Drupal. И вот теперь, увлеченный уже реализацией идей и имея успешные промежуточные результаты, я решил рассказать об архитектуре создаваемой CMS. По ходу прочтения общая картина возможностей CMS должна прорисовываться сама, во всяком случае, для программистов:)

Архитектура CMS


Архитектура создаваемой системы основана на модульном принципе. CMS полностью строится из модулей, как детский домик из кубиков. С целью достижения гибкости и простоты взаимодействия модулей, необходимо было достичь минимальных действий для использования модулей любым компонентом системы без необходимости создания жестких связей, а также сделать возможность легкого расширения действий модулей с помощью других модулей.
CMS — совокупность модулей
Читать дальше →

Лучшие стартапы января

Reading time6 min
Views1.3K
image
Январь получился богатым на интересные проекты. Как в кино, фильмы вышедшие в Январе, как правило претендуют на Оскар, так и в стартапах, некоторые проекты вышедшие в Январе точно будут претендовать на попадание в десятку по итогам года. Тут вам и проект Бондарчука, в который собираются вложить 8 миллионов долларов, и перерождение chat.ru и инновационное для рунета интернет-телевидение.

Читать дальше →

Последний довод разработчиков

Reading time3 min
Views776
Как известно, война — последний довод королей. В этом топике я хочу осветить такой вопрос, как досудебные и судебные разбирательства с нежелающим платить за разработанный продукт/оказанную услугу клиентом. Понятно, что такие «разборки» — последний довод разработчика, лучше ситуацию до этого не доводить, однако в жизни бывают разные случаи, особенно в нынешнее кризисное время.

image

Читать дальше →

Использование PHP и MySQL для создания KML

Reading time17 min
Views6.3K

Отсебятина


Кросс-пост четвертого перевода туториалов по Google Maps API из моего блога.


Этот туториал предназначен для разработчиков, знакомых с PHP и MySQL и желающих узнать, как можно сгенерировать KML-файл, используя данные из MySQL-базы.

Читать дальше →

Разработка макетов: а давайте в этот раз не будем спрашивать уборщицу?

Reading time4 min
Views4.4K
Мало кому приходит в голову указывать программистам, как писать код (хотя некоторые умудряются указывать даже проектировщикам баз данных), но уж показать дизайнеру как нужно рисовать — прямо очередь выстраивается.

Это происходит потому, что все «специалисты» знают: дизайн — это красивая картинка.

Дизайн лишь на 20% искусство, на 80% — это точная наука. И вы будете удивлены, когда узнаете, из чего на самом деле состоит каждая картинка.

Читать дальше →

wysiwyg своими руками

Reading time3 min
Views24K
Существует куча платных\бесплатных визуальных редакторов на любой вкус и цвет. Но что, если они работают не во всех браузерах, Вас не устраивает дизайн или функциональность, или просто душа лежит к написанию своего собственного? Ответ на вопрос, как это сделать —
Читать дальше →

Государственная регистрация бизнеса

Reading time10 min
Views7.2K
Ко дню рождения своей компании хочу поделиться с Хабром опытом и знаниями по регистрации юридического лица, которые приобрел за год. Я не юрист и не бухгалтер, поэтому, как говорят в американской рекламе, перед применением проконсультируйтесь со специалистом. Постараюсь расказать про налоги при упрощенной системе налогообложения, про процесс регистрации юрлица, про госорганы, с которыми потребуется взаимодействовать. Надеюсь поможет кому-нибудь не совершить ошибок, которые я совершил. Все приведенные цифры справедливы на дату публикации хабратопика, факты из жизни относятся к Москве.

1. Налоги
Существует основной режим налогообложения (ОСНО) и несколько спецрежимов. Один из спецрежимов — упрощенная система налогообложения (УСН, УСНО или упрощенка). Право на упрощенку имеют малые предприятия с годовым оборотом, не превышающим примерно 20 млн рублей (точную сумму можно получить, применив к сумме, указанной в главе 26.2 налогового кодекса РФ инфляционные коэффициенты). Кроме того, есть ограничение по численности штатных сотрудников (не более 100 человек) и некоторые ограничения по видам деятельности. Далее мы будем говорить только об УСНО, так как ведением учета по ОСНО не владею.

Читать дальше →

Подсветка текста в «TextArea»

Reading time4 min
Views20K
Эта статья покажет, как в современных браузерах можно сделать подсветку текста в поле редактирования (WYSIWYG).
Пример можно посмотреть, в google.docs или на некоторых продвинутых форумах.

Уверен, многим это будет интересно.

Атрибут contentEditable и параметр designMode


Именно contentEditable или designMode и делает для нас всю основную «грязную» работу.

Если этот атрибут поставить в тег, то всё, что внутри тега, становится автоматически редактируемым.

<html><head></head><body>
  <div contentEditable="true"><b>C</b>ontent<u>!!!</u></div>
</body></html>
работающий пример

Этот атрибут не поддерживается сейчас некоторыми старыми браузерами (например, FireFox 2.0). Но есть более «глобальный» параметр страницы, который сейчас поддерживают все браузеры, который нам может помочь —
designMode

Оптимизация MySQL запросов

Reading time4 min
Views126K
В повседневной работе приходится сталкиваться с довольно однотипными ошибками при написании запросов.

В этой статье хотелось бы привести примеры того, как НЕ надо писать запросы.
Читать дальше →

Типизация и PHP

Reading time3 min
Views2.4K
Не знаю как вам, но мне не редко случается в ходе отладки приложения долго ковыряться в ядре и библиотеках, только для того чтобы выяснить что ошибка была на самой поверхности, скажем в неверно переданном параметре. И тогда думаешь «кабы не поленился добавить валидацию на входе функции, столько бы времени своего сэкономил!». Сделать то это не сложно, да не хочется портить прозрачность бизнес-логики кучей второстепенных условий. По сути это сквозная функциональность и здесь бы пригодился АОП-подход, но официально PHP по прежнему не поддерживает АОП. Что делать? Мне ныне видится следующее решение.

Читать дальше →

Юридическое или физическое лицо? (часть вторая)

Reading time6 min
Views1.1K
Еще раз хотел бы поблагодарить тех, кто откликнулся на статью. По крайней мере, сейчас я понимаю, что эта тема всем начинающим свое дело актуальна и интересна. Поэтому встречаем вторую часть.

Читать дальше →

Юридическое или физическое лицо? (часть первая)

Reading time5 min
Views26K
Как показали результаты опроса, больше всего люди-х хотели бы раскрыть секрет НЛО. Заранее хочу извиниться за то, что открыть его я не смогу, иначе мой логин просто самоуничтожится :(

Кроме того, большинству хотелось бы узнать, как поделиться «кусочком» своего бизнеса, а этот вопрос грамотно раскрыть можно только после базовых знаний в области регистрации предприятия или индивидуального предпринимателя, поэтому об этом сегодня и поговорим.

Благодаря добрым людям-х, эта запись появилась именно здесь. Надеюсь, так будет и дальше :)

Читать дальше →

Использование связки из PHP и MySQL совместно с Google Maps

Reading time13 min
Views17K

Отсебятина


А вот и перевод третьего урока по Google Maps API. Этот урок — как видно из названия — посвящен созданию карт при помощи данных, хранящихся в БД. Как и предыдущие — кросс-пост из моего блога.

Читать дальше →

jQuery для начинающих

Reading time9 min
Views515K
jQuery Logo

jQuery — это замечательный JavaScript Framework, который подкупает своей простотой в понимании и удобством в использовании. Но изучение надо с чего-то начинать, и лично моё мнение — лучше всего начинать с наглядных примеров, и они далее…

Читать дальше →
12 ...
12

Information

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