banner banner banner
Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул
Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул
Оценить:
Рейтинг: 0

Полная версия:

Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул

скачать книгу бесплатно


С картинкой в письме обязательно должен быть текст.

Вопросы для проверки своего письма: что хотите сообщить заказчику; почему вам должно быть это интересно; что вы хотите, чтобы сделал подписчик; куда попадают ваши подписчики после переходов по ссылкам в письме; не перегружает ли дизайн текст или другие объекты.

Проверять письмо в разных браузерах до отправки и проверять ссылки.

Рассылать разную рекламу для проверки реакции на содержимое.

B2B – на вы.

B2C – на ты или вы.

Обязательна ссылка в письме, но не более 3-х.

Рассылка должна быть регулярной.

Чем больше о вас знают потенциальные клиенты, тем лучше.

В 2016 году в мире будет отправляться более 192 млрд писем в день.

Разбивать аудиторию хотя бы на 3 группы.

Чем больше вы знаете о подписчиках, тем лучше.

Переподписка – раз в несколько месяцев.

В e-mail маркетинге важны взаимоотношения с клиентом, а не хитрости и уловки.

Отписываться будут всегда.

Чем больше неактивных клиентов, тем чаще письма будут попадать в спам, поэтому неактивных лучше удалять самостоятельно.

Рассылку надо планировать на 3—6 месяцев.

Анализировать отношение открытий к переходам.

Полезные высказывания из книги «Чистый код» Мартина

В разделе приведены цитаты из [3].

Единственный способ выдержать график – постоянно поддерживать чистоту в коде.

Поэтому нужно развивать «чувство кода».

Чистый код:

– элегантный и эффективный;

– логика прямолинейна;

– зависимости – минимальные;

– обработка ошибок – полная;

– производительность – близкая к оптимальной;

– решает одну задачу;

– поддерживается в чистоте с течением времени.

Следующая книга – «Agile software development; Principles, patterns, and practices», 2002.

Содержательные имена:

– имена всех объектов должны отвечать на все главные вопросы: почему существует, что делает и как используется, не требуют дополнительных комментариев, содержательные, передают намерения программиста;

– код очевиден, контекст следует из самого кода;

– не содержат ложных ассоциаций, затемняющих смысл кода;

– не используются слова со скрытыми значениями, отличными от предполагаемого;

– лучше обойтись без кодирования типа контейнера в имени.

Имена не содержат малозаметных различий, непохожи друг на друга излишне.

Имена не дезинформируют.

0 не равен O, 1 не равна l.

Используется правильный шрифт.

Используются осмысленные различия.

Имена не дублируют зарезервированные слова с незначительными изменениями.

Если имена различаются, они должны обозначать разные понятия.

Различия имен содержательны.

Префиксы используются, если создают осмысленные различия.

Не содержат неинформативных, избыточных слов.

Имена не отличаются только суффиксами.

Читателю кода понятен смысл различающихся имен – нет соблазна использовать 2 похожих имени по одному назначению.

Имена удобопроизносимы.

Программирование – социальная деятельность.

Не должны состоять из одних сокращений.

Состоят преимущественно из слов разговорной речи.

Удобны для поиска.

Легко находимы в большом объеме кода.

Относительно редкие.

Длинные имена лучше коротких.

Однобуквенные используются только для локальных переменных в коротких методах.

Длина имени соответствует размеру его области видимости.

Имя не содержит информации о типе или области видимости.

Не создает хлопот при расшифровке.

Неразумно заставлять каждого нового работника изучать очередной «язык» кодирования.

Имя остается понятным даже в случае опечатки.

Имя не усложняет изменение типа переменной.

Типы в именах не кодируются.

Переменные классов без префиксов.

Классы и функции компактны – можно обойтись без префиксов.

Имя не содержит балласта.

Имена интерфейсов без префиксов.

Имена не содержат лишней информации.

Не заставляют мысленно преобразовывать имена в другие.

Используются имена из пространств задачи и решения.

Счетчик цикла с малой областью видимости можно назвать 1 буквой – это традиция.

Ясность превыше всего.

Код понятен для других людей.

Имена классов и объектов – существительные и их комбинации без глаголов, не содержат обобщенных понятий – Manager, Processor, Data, Info.

Имена методов – глаголы или глагольные словосочетания.

Методы чтения или записи и предикаты образуются из значения и префикса get, set и is.

При перегрузке конструкторов использовать статические методы-фабрики с именами, описывающими аргументы (принудительное инспользование таких методов).

Нет остроумных шуток.

Ясность предпочтительнее развлекательной ценности.

Нет просторечий и сленга.

Нет шуток.

Одно слово для каждой концепции.

Имена функций законченные и логичные.

Нет эквивалентных методов с именами fetch, retrieve, get в разных классах.

Нет controller, manager, driver в одной кодовой базе.

Имена различны принципиально.

Единый согласованный лексикон.

Не используется одно слово в двух смыслах.

Две разные идеи не обозначены одним термином.

Нет каламбура.

Мысли в коде выражаются доступно.

Используются имена из пространства решения: термины из области информатики, названия алгоритмов, паттернов, математические термины, технические имена.

Используются имена из пространства задачи (клиентские): если нет подходящего программиста, узнаются у специалиста в предметной области.

Разделение концепций из пространств задачи и решения.

Несодержательные сами по себе имена помещаются в определенный контекст для читателя кода – классы, функции и пространства имен с правильно выбранными названиями.

В крайнем случае контекст уточняется префиксом.

Контекст не должен вычисляться.

Функции разделяются на меньшие смысловые фрагменты.