Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...DevDay
- Часть первая. SQL и программный код - как, имея очень простую задачу, получить очень плохое решение.
- Антракт. Почему нам неудобно писать SQL
- Часть вторая. Почему существующие решения - отстой.
- Антракт. Мечты об идеальном инструменте разработки SQL
- Часть третья. История велосипеда, или свой инструмент самый лучший
Контекстная реклама: минимум затрат - максимум отдачиNetpeak
Презентация к докладу Алексея Марека, с которым он выступил на семинаре проекта Seminaroom «Все инструменты и методы интернет продвижения «на блюдечке…».
Семинар состоялся 6 декабря 2012 года в Киеве.
Доклад посвящен особенностям контекстной рекламы и тому, как максимально эффективно ее использовать.
Статический анализ исходного кода на примере WinMergeTatyanazaxarova
Сегодня я хочу посвятить пост тематике, почему инструменты анализа исходного кода полезны вне зависимости от уровня знаний и опыта программиста. А польза такого анализа будет продемонстрирована на примере инструмента, который известен всем программистам - WinMerge.
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаYandex
Лекция Юлия Тихоход в Школе вебмастеров: «Структурированные данные на поиске»
https://academy.yandex.ru/events/webmasters_school/yawebm2015/
Что такое микроразметка и в чём её польза
Что такое микроразметка (семантическая разметка, семантическая микроразметка) и кому она нужна. Очень кратко — всё, что я знаю о применении семантической разметки поисковыми системами и другими веб-сервисами.
Передача данных в машиночитаемом виде
Какие ещё есть способы передать данные о сайте поисковым системам кроме микроразметки, особенности разных способов. Что бывает с плохими вебмастерами, которые пытаются обмануть поисковые системы и передать неверные данные.
Типы разметки
Из чего состоит микроразметка, какие бывают словари и синтаксисы. Популярные сочетания словарей и синтаксисов, как правильно выбирать нужную комбинацию для своего сайта.
Передача данных об интернет-магазине
Разбор семантической разметки: что в принципе доступно для разметки в интернет-магазине, что это даёт, а что можно не размечать вовсе.
Проверка правильности микроразаметки
Ошибки в микроразметке, способы их обнаружения и исправления. Популярные валидаторы микроразметки. Какие ошибки непременно нужно исправлять, а что можно игнорировать.
Я регулярно общаюсь с потенциальными пользователями, озабоченными ошибками в программах на языке Си++. Их озабоченность выражается в том, что они пробуют инструмент PVS-Studio и начинают писать о том, что при испытаниях что-то подозрительно мало ошибок было найдено. И хотя, вроде чувствуется, что инструмент им интересен, их реакция полна скептицизма.
3. Одна из основных причин написания комментариев
- плохое качество кода.
$currUser = new User($userName, $userPass, 0);
$currUser = new User($userName, $userPass);
$currUser->save();
5. Бормотание
Комментарий есть, пользы нет.
order.default_customer_type_is_juridical = 0 ;
поумолчанию тип покупателя юридическое лицо
Комментарий, смысл которого приходится искать в других
модулях, не несет полезной информации.
7. Недостоверные комментарии
Причины:
неточно выраженная мысль;
потеря актуальности с течением времени;
Результат:
неверные ожидания от кода;
неправильное использование кода;
потеря времени на поиск источника проблемы;
8. Обязательные комментарии
загромождают код
распространяют недостоверную информацию
вносят путаницу
/**
* Класс менеджер ПС
* @author Ann Zaitseva
* @since 2012-05-04
* @see RM-51854
*/
class PaymentSystemManager {
9. /**
* Город
*/
private $city
/**
* Возвращает город
*
* @return string
*/
public function getCity()
{
return $this->city;
}
10. Пересказы (переводы)
не несут никакой дополнительной информации;
уменьшают плотность информации;
их никто не читает (даже сами авторы);
часто недостоверны
* Класс менеджер покупателей
class DeliveryManager
11. Журнальные комментарии
/**
* Добавила возможность автоотправки ключейorg.10354. (action =
editversion, updateversion)
* @author Svetlana F. svetlanaf@softline.ru
* @since 2008.02.18
*
*
* Добавил возможность сортировки, кликая на название столбцов
*
* @author Виталий Попов vitaliypop@softline.ru
* @since 15.04.2008
*
*
* Запрет на сортировку скриншотов
*
* @author Yegor Lukash
* @since 03.06.2010
* @seeRM-4641
*/
12. /**
* @desc Ставим значение NOW(), вместо $DEFDATE = date( "Y-m-d
H:i:00" );
* Зачем вручную делать то, что должен делать MySQL и плодить
возможные ошибки?
* @see TS2898
* @author Vladimir Savenkov
*/
$DEFDATE = 'NOW()';
14. Плохо подобранное название
/**
* переносит содержимое корзины от гостя
* к авторизованному пользователю
*/
public function auth {
Не трать время на написание комментария. Потрать его на написание
хорошего кода
16. Комментарии HTML
*<ul>
* <li>ESlMailingType::SpecialOffers - Специальные акции и скидки Allsoft</li>
* <li>ESlMailingType::NewPrograms - Новые поступления</li>
* <li>ESlMailingType::ForDealers - Для дилеров и корпоративных клиентов</li>
* <li>ESlMailingType::News - Новости магазина и мира программного обеспечения</li>
* </ul>
* <code>
* $oMailingService = new CSlMailingService();
* $oMailingService->getMailingByType(ESlMailingType::SpecialOffers)->subscribe($aParams);
* </code>
17. Единственный источник действительно достоверной
информации - код.
Не комментируйте плохой код - перепишите его.
Если написания комментария не избежать, не забывайте, что
единственная цель комментария - давать ДОПОЛНИТЕЛЬНУЮ
и НУЖНУЮ информацию. Если комментарий не приближает
нас к этой цели, в нем нет смысла.
Комментарий не должен вводить в заблуждение. Если пишете
комментарий, напишите самый понятный
18. Нужно всегда помнить, что все написанные комментарии в
дальнейшем придется сопровождать, иначе они потеряют
актуальность и будут вводить в заблуждение