-
Актуальность применения ООП сегодня
Хочу поблагодарить Сергея, одного из своих читателей, задавших интересный вопрос. Я решил ответить на него в блоге, так как тема может быть интересна еще кому-нибудь. Вопрос был о том, насколько актуальна сегодня парадигма ООП, и что ждет программирование дальше. Сергей ссылался на интересное обсуждение здесь. Из комментариев этого обсуждения можно видеть, насколько тема неоднозначна и противоречива. Я, ни в коем случае не считаю себя большим экспертом в этой […]
-
AppEngine, преодоление лимита в 1000 элементов на запрос
Google app engine, очень удобная и гибкая платформа, для веб разработки, но к сожалению постоянно приходится думать об ограничениях, налагаемых на процессорное время, объем занимаемой памяти, запросы к хранилищу, тем самым, организовывая нас, заставляя писать более оптимизированный код. С другой стороны, а что если действительно нужно выполнять сложную операцию, или «тяжелый запрос»? Тогда хотелось бы «спрятать», сложности и ограничения app engine внутрь изящного синтаксиса python. […]
-
Google app engine как платформа для вебразработки. Мониторинг сайтов при помощи app engine.
Какое-то время назад я увлекся экспериментами с платформой google app engine. Впечатления очень положительные. Безусловно не всякое приложение можно сделать в силу ограничение на скорость работы скрипта, время работы, некоторые возможности (например сокетные коннекты). Подкупает простота. Сделано программистами для программистов. Масса возможностей и ничего лишнего. Очень легко настраиваются задачи запускаемые по времени (типа отложенных задач и типа задач по крону). Очень просто работать с хранилище, […]
-
Дайджест ссылок №13
Несколько примеров применения Adobe AIR с кодом (Пример реализации сокет-сервера на AIR, множество примеров AIR приложений: FileTile (работа с файлами), GeoTest (работа с мультитач), Lineup (интеграция календаря с Exchange), Microphone (запись с микрофона локально и воспроизведение), S3E (работа с Amazon’s S3)) Порт quake на ActionScript. Судя по этой демке, большинство флеш программистов просто не умеют его готовить. Увидев этот дизайн просто не смог удержиться чтобы не написать про […]
-
Дайджест ссылок №12
Давно не писал. Попробую восполнить пробел набором ссылок, которые считаю стоящими: Подборка ссылок на прошлогодние мысли Макса Крайнова. Что самое интересное, по прежнему не утратившие своей актуальности и полезности. Один и второй выпуски подкаста «The Art Of Programming» с участием Константина Ковалева, в которых он, своим трезвым и рассудительным взглядом, смотрит на платформу Adobe Flash, её прошлое, настоящее и будущее. Несколько ссылок для тех кто посматривает в сторону mercurial в качестве […]
-
Перевод документации к PureMVC
Какое-то время тому назад, мы с группой энтузиастов: Романом Павленко Денисом “Barmaleychik” Волохом Дмитрием “Reijii” Кочетовым Ростиславом “RostislavR” Сирыком cделали перевод документации к PureMVC а Клифф Холл опубликовал. Со временем в переводе было найдено массу огрехов, благодаря читателям flash-ripper.com но обновленный документ развалил нам структуру вордовского документа, который Клифф использует для конвертации документации в pdf, […]
-
ООП для чайников. Паттерны проектирования. Паттерн стратегия (Strategy)
Паттерн стратегия используется для сокрытия (инкапсуляции) алгоритмов. То есть, у вас есть несколько путей решения одной и той же проблемы — сортировки строк, например, но они очень отличаются в производительности, требованиям к ресурсам и проч. Для этого вы реализуете несколько алгоритмов сортировки: Cортировку вставками (Insertion sort), сортирующую за конечное время и эффективному при небольших массивах, а также с частично отсортированными массивами Быструю сортировку (Quicksort), сортирующую быстрее, но требующую O(log n) […]
-
Невозможно научиться делать роскошные интерфейсы, если вы…
Последняя прочитанная мною книга была книга Влада В. Головача «Дизайн пользовательского интерфейса2 Искусство мыть слона». Сказать что она мне понравилась — это ничего не сказать. Во-первых, это лаконичный и содержательный материал, насыщенный примерами из богатого опыта автора. Во-вторых это умозаключения и выводы, которыми автор делится с читателем, и с позицией которого, я на сто процентов солидарен. Эту книгу, я советую каждому, кто в силу своей профессиональной деятельности, […]
-
Инструменты анализа кода на предмет “говнокода”, copy/paste, соответствию стандартам
Если вы работаете с командой php-разработчиков, то вы знаете как много кода они пишут, особенно если это высокопроизводительная команда разработчиков. программистам свойственно автоматизировать любой рутинный труд, поэтому и труд по контролю над кодом тоже понемногу автоматизируется. Самым полезным, для меня, оказался инструмент Copy/Paste Detector for PHP code. Как ясно из названия, этот инструмент используется для дублирующегося кода, ярым поборником которого я являюсь. Устанавливается […]
-
ООП для чайников. Паттерны проектирования. Паттерн фабричный метод (Factory method).
Еще один паттерн из группы порождающих – фабричный метод (factory method). Этот паттерн позволяет скрывать от клиента логику создания запрашиваемого объекта. Этот паттерн следует применять когда заранее неизвестно объекты каких классов должны быть созданы, поскольку предполагается множество различных вариантов работы, либо объекты, которые класс создает должны быть определены уже в подклассе. Пример применения паттерна на […]