От Главные Первые Шаблоны разработки :
Помнят, код должен быть закрыт (для изменения) как цветок лотоса вечером, все же открыться (к расширению) как цветок лотоса утром
А, поддерживающий DI объект может быть настроен путем введения поведений, определенных в других классах. Структура исходного объекта не имеет изменения для создания многих изменений. Инжекция может быть сделана явной при наличии запроса класса другие классы рабочего в его конструкторе, или это может быть менее очевидно при использовании monkeypatching на динамических языках как Python.
Используя аналогию класса Человека, можно взять основную человеческую платформу, передать его ряд органов и часов, которые это развивает. Человек непосредственно не знает, как органы работают, но их поведения подтверждают к ожидаемому интерфейсу и влияют на физическое и умственное проявление владельца.
У новых посетителей, конечно же, не будет кэшированных изображений, но они также хотят, чтобы ваш сайт загружался быстро. Если вы проверяете, насколько хорошо ваш сайт работает для них, просто очистите кеш?
Если это просто для отладки:
If-Modified-Since
. ) If-Modified-Since
, см. Ниже). Тем не менее, это все равно покажет вам "Не изменено". Некоторая облегченная версия Firebug также доступна для Internet Explorer. Обратите внимание, что нажатие F5 / Refresh заставит большинство браузеров всегда запрашивать у сервера, изменилось ли что-то для контента, который браузер уже кэшировал, даже если он знает, что кеш все еще должен быть действующим. Затем запрос будет включать заголовок If-Modified-Since
. Если сервер говорит, что он не изменен, то используется кеш. Подобно:
GET /ga.js HTTP/1.1
Host: www.google-analytics.com
...
If-Modified-Since: Mon, 22 Jun 2009 20:00:33 GMT
Cache-Control: max-age=0
HTTP/1.x 304 Not Modified
Last-Modified: Mon, 22 Jun 2009 20:00:33 GMT
Date: Sun, 26 Jul 2009 12:08:27 GMT
Cache-Control: max-age=604800, public
Server: Golfe
Приведенное выше отличается от простой навигации по сайту. При нажатии на ссылки или при возврате на страницу позже (ввод адреса, закладок, результатов поиска и т. Д.) Браузер просто молча использует кеш, если он все еще действителен, не спрашивая, изменилось ли что-нибудь.
(Также обратите внимание, что прокси-сервер может выполнять некоторое кэширование. В приведенном выше ответе общедоступный
в Cache-Control
указывает, что прокси действительно может кэшировать этот конкретный ответ. )
Это можно определить со стороны сервера, просто просмотрев журнал обслуживаемых / доставленных запросов на изображения,