Тема DI/IoC достаточно простая, но в сети очень сложно найти хорошее описание того, как это работает и зачем это нужно. Вот моя попытка, с использованием Unity. Хорошо ли объяснена тема – судить вам.
Шевченко Алексей @otetz
Пользователь
Собеседуем руководителя проектов
6 мин
67KСразу хотелось бы определиться с некоторыми понятиям, дабы никого не провоцировать на полемику из-за недопонимания ключевых моментов. Так же хочу предупредить, что это не руководство к действию и не пособие, а всего лишь рассказ в стиле «как это делают другие».
Для меня руководитель проекта (проектов) – это человек, прежде всего имеющий глубокое понимание предметной области, в нашем случае интернет разработки, имеющий опыт самостоятельной разработки, находящийся в курсе технологических и бизнес тенденций на рынке. Равноценно вышеупомянутым качествам – умение общаться и находить общий язык с совершенно разного типа людьми. Знания РП должны лежать не только в плоскости разработки, но так же и в прототипировании интерфейсов, и в дизайне, и в интернет-маркетинге.
Для меня руководитель проекта (проектов) – это человек, прежде всего имеющий глубокое понимание предметной области, в нашем случае интернет разработки, имеющий опыт самостоятельной разработки, находящийся в курсе технологических и бизнес тенденций на рынке. Равноценно вышеупомянутым качествам – умение общаться и находить общий язык с совершенно разного типа людьми. Знания РП должны лежать не только в плоскости разработки, но так же и в прототипировании интерфейсов, и в дизайне, и в интернет-маркетинге.
+65
9 правил для начинающего Ajax-разработчика
2 мин
1.4KПеревод
Эти девять правил несложны, никаких кусков кода — только общие советы начинающим Ajax-разработчикам. Крайне вольный перевод 9 AJAX Tips & Tricks.
+48
Сервис Feed43 теперь говорит по-русски
2 мин
5.9KИтак, свершилось. Сервис Feed43, создателем которого я являюсь, переведен на русский язык. В связи с этим хочется подробнее рассказать о самом сервисе, а также привести пример создания с помощью него RSS-канала, мониторящего хабракарму.
Зачем нужен Feed43?
Наш сервис дает возможность вам самим создавать RSS-каналы из любых веб-страниц. Фактически, Feed43 предоставляет универсальный API на основе RSS к любому сайту, любой странице и даже любой части страницы.
Зачем нужен Feed43?
Наш сервис дает возможность вам самим создавать RSS-каналы из любых веб-страниц. Фактически, Feed43 предоставляет универсальный API на основе RSS к любому сайту, любой странице и даже любой части страницы.
- Хотите читать новости с сайтов, не предоставляющих RSS?
- Хотите предоставлять разнообразные RSS-потоки для читателей вашего собственного сайта/блога, не заморачиваясь при этом с программированием?
- Хотите отслеживать список самых кассовых фильмов, количество полученных Россией олимпийских медалей, популярные записи в блогах?
+72
База классификаторов
1 мин
5.8KПрочитав этот хабратопик я решился, наконец, рассказать хабраобщественности о своем некоммерческом стартапе и вообще открыть к нему доступ. Этот проект сделан программистами для программистов. Суть его проста – все классификаторы на одном сайте.
Каждый классификатор может содержать несколько таблиц. Содержание любой таблицы можно посмотреть прямо на сайте или скачать классификатор целиком. Для скачивания доступны следующие форматы: XML, SQL-дамп или просто в формате Excel. В дальнейшем к профилю классификатора мы будем прикреплять графическую схему с указанием связей между таблицами.
Все Ваши пожелания, предложения и классификаторы, пожалуйста, отправляйте на class.upload@gmail.com. Плюсовать в карму можно drtoller (т.е. мне), derbov, @saratovdae.
Каждый классификатор может содержать несколько таблиц. Содержание любой таблицы можно посмотреть прямо на сайте или скачать классификатор целиком. Для скачивания доступны следующие форматы: XML, SQL-дамп или просто в формате Excel. В дальнейшем к профилю классификатора мы будем прикреплять графическую схему с указанием связей между таблицами.
Все Ваши пожелания, предложения и классификаторы, пожалуйста, отправляйте на class.upload@gmail.com. Плюсовать в карму можно drtoller (т.е. мне), derbov, @saratovdae.
+75
Firebug lite
1 мин
4.5KЯ смотрю для общественности прошло незамеченным такое событие, как обновление Firebug-Lite до качественно нового уровня. Теперь мы имеем аналогичное FF FireBug средство в Opere, Safari и возрадуйтесь — в IE.
+36
Города России в именительном, предложном (местном) и родительном падеже.
1 мин
8.6KПриняв во внимание все замечания из предыдущего поста с базой городов, мы обновили ее и добавили еще родительный падеж. Теперь база отвечает на вопрос «Откуда?». Например: Вася из Ярославля.
Скачать:
Автоматическая обработка: Jetfish
Вычитка и ручная корректировка Sofrus
Как и в прошлый раз, при желании, выражайте респект и уважуху им, а не мне. Я просто их прикрываю.
Скачать:
Автоматическая обработка: Jetfish
Вычитка и ручная корректировка Sofrus
Как и в прошлый раз, при желании, выражайте респект и уважуху им, а не мне. Я просто их прикрываю.
+95
Основы работы с IOKit. Тонкости программирования драйверов
8 мин
20KВ рамках поддержки блога разработки под Mac OS X, я представляю свою статью о низкоуровневой разработке под Mac OS X. Обычно тема разработки драйверов не столь популярна, однако и здесь Mac OS X выгодно выделяется из ряда прочих операционных систем. Да, писать драйвера для Mac O S X – просто! Проще чем когда-либо ранее!
+32
5 отличных идей для любого начинания (вольный перевод The Art of The Start)
1 мин
1K![](http://doitright.ru/images/face.png)
Мне тут дали почитать отличную книжку Гая Кавасаки. Называется The Art of the Start. Я понял, что чем просто читать книгу, гораздо интересней сразу переводить ее и конспектировать.
Итак, начнем.
5 отличных идей для любого начинания
+6
Eclipse + QT: установка и настройка
3 мин
54KДостаточно давно стал присматриваться к кроссплатформенному С++ программированию. Не то, чтобы это было мне необходимо, но так для общего развития. И вот что я могу отметить: самая большая вещь, которая доставляет проблемы на этом пути — достаточно высокий порог вхождения в эту область именно по причине инструментария.
Если не рассматривать случай программирования в Emacs, что лично мне кажется пока неким толи анахронизмом, толи экстримом, постоянно сравнивая различные IDE с Visual Studio зачастую приходилось просто ужасаться. И главная проблема этих систем была в том, что за редким исключением они не работали из коробки без напильника.
Вторая проблема — юзабилити. Зачастую ниже среднего. Ранние версии KDevelop оставляли достаточно неоднозначное впечатление.
Третье, чего бы хотелось — интегрированного дизайнера интерфейсов. Его не было практически нигде, если не считать NetBeans (но только для Java), да MonoDevelop (GTK#). И хотя эти IDE весьма достойны, хотелось найти легкий способ программировать именно на C++ с минимальным количеством граблей.
В этой статье я хочу привести пошаговое руководство, что называется «для чайников», по установке на платформу Windows работоспособной конфигурации хорошей IDE Eclipse и хорошей библиотеки QT. Стартовую площадку, так сказать.
UPD: Что касается именно программирования в QT, то могу порекомендовать просто шикарную книжку на эту тему:
Jasmin Blanchette, Mark Summerfield: Разработка графического интерфейса с помощью QT3 (перевод Андрей Киселёв)
UDP2: Ещё литература:
Русский перевод документации из QAssistant
Qt4. Профессиональное программирование на C++
Jasmin Blanchette, Mark Summerfield: Qt 4. Программирование GUI на C++
Foundations of QT Development
Если не рассматривать случай программирования в Emacs, что лично мне кажется пока неким толи анахронизмом, толи экстримом, постоянно сравнивая различные IDE с Visual Studio зачастую приходилось просто ужасаться. И главная проблема этих систем была в том, что за редким исключением они не работали из коробки без напильника.
Вторая проблема — юзабилити. Зачастую ниже среднего. Ранние версии KDevelop оставляли достаточно неоднозначное впечатление.
Третье, чего бы хотелось — интегрированного дизайнера интерфейсов. Его не было практически нигде, если не считать NetBeans (но только для Java), да MonoDevelop (GTK#). И хотя эти IDE весьма достойны, хотелось найти легкий способ программировать именно на C++ с минимальным количеством граблей.
В этой статье я хочу привести пошаговое руководство, что называется «для чайников», по установке на платформу Windows работоспособной конфигурации хорошей IDE Eclipse и хорошей библиотеки QT. Стартовую площадку, так сказать.
UPD: Что касается именно программирования в QT, то могу порекомендовать просто шикарную книжку на эту тему:
Jasmin Blanchette, Mark Summerfield: Разработка графического интерфейса с помощью QT3 (перевод Андрей Киселёв)
UDP2: Ещё литература:
Русский перевод документации из QAssistant
Qt4. Профессиональное программирование на C++
Jasmin Blanchette, Mark Summerfield: Qt 4. Программирование GUI на C++
Foundations of QT Development
+38
nginx, memcached и SSI
3 мин
18KМоя первая статья, не судите строго...
Приветствую вас, уважаемые хабрадевелоперы!
Многие из вас знают о прекрасном легковесном веб-сервере nginx.
Некоторые также знают, что он умеет работать с memcached.
Но лишь немногие в курсе, при чём здесь SSI и как его можно использовать в связке с nginx и memcached.
Как известно, новое — это хорошо забытое старое. Каждый названный инструмент и технология вам наверняка известны. Я же хочу рассказать о том, как и зачем свалить всё это в одну кучу :)
Приветствую вас, уважаемые хабрадевелоперы!
Многие из вас знают о прекрасном легковесном веб-сервере nginx.
Некоторые также знают, что он умеет работать с memcached.
Но лишь немногие в курсе, при чём здесь SSI и как его можно использовать в связке с nginx и memcached.
Как известно, новое — это хорошо забытое старое. Каждый названный инструмент и технология вам наверняка известны. Я же хочу рассказать о том, как и зачем свалить всё это в одну кучу :)
+2
8 лучших бесплатных средств разработки с открытым кодом по версии InfoWorld
3 мин
4.7KТестовый Центр InfoWorld выбрал восемь лучших бесплатных инструментов с открытым кодом для разработчиков. Здесь есть средства создания насыщенных приложений (RA), AJAX-фреймворк, система управления бизнес-правилами, пакет контроля версий, объектная база данных, монитор для тестирования веб-сервисов… но пойдем по порядку:
Объектная база данных: db40
Появившись как Java-библиотека для баз данных, db4o была затем параллельно перенесена на платформу .NET. В множество полезных функций библиотеки db4o входят реализованные в 2005 году «родные запросы» (Native Queries) для построения запросов непосредственно методами Java или .NET.
Управление версиями: Git
Распределенная система управления версиями Git была изначально создана Линусом Торвальдсом, а теперь поддерживается Джунио Хамано (Junio Hamano). Git — это инструмент управления ревизиями во многих выдающихся open-source-проектах, включая ядро Linux, сервер X.org, ядро проекта One Laptop per Child (OLPC) и веб-фреймворк Ruby on Rails. Движок Git как минимум на порядок быстрее аналогичных систем для больших проектов и включает продвинутую поддержку для ветвления и слияния кода.
Библиотека веб-клиента: HttpClient
HttpClient — это Java-библиотека для передачи информации по HTTP-протоколу (родилась в 2001). Она позволяет выполнять http-запросы и легко обрабатывать полученные ответы. Множесто библиотек для работы с web-сервисами используют эту библиотеку в качестве транспортного слоя. Если вы Java-программист, и вам нужно послать http-запрос куда бы то ни было, то это библиотека для Вас. (aib — cпасибо за поправки)!
+2
Знакомство с Interface Builder. Связи между объектами.
11 мин
25KКросспост из блога "Программирование на Python и
Objective-C под Mac OS и для iPhone / iPod Touch"
Посвящено комментариям #1, #2 и #3 (оу, чёрт, hellraiser09 не читай последний)
Процесс создания любого приложения можно условно разделить на три этапа: создание интерфейса, непосредственное написание кода и отладка. В первой части своих статей я хочу познакомить вас с Interface Builder (далее просто IB) — средством для визуального создания и тестирования интерфейсов, входящей в состав SDK разработчика под Mac OS, на примере разработки интерфейса для iPhone. Способ создания интерфейса программ для Mac OS X сильно не отличается от приведенных ниже принципов, поэтому данное руководство можно использовать для разработки интерфейсов для «большой» Mac OS с некоторыми различиями, о которых я упомяну, когда придет время.
Objective-C под Mac OS и для iPhone / iPod Touch"
Посвящено комментариям #1, #2 и #3 (оу, чёрт, hellraiser09 не читай последний)
![](https://habrastorage.org/getpro/habr/olpictures/632/8c4/9d1/6328c49d13ae8ff88c97f6554fd79dd3.png)
+4
Стилизация файл-инпутов
5 мин
38K![Результат стилизации файл-инпута](https://habrastorage.org/getpro/habr/olpictures/521/d24/3b7/521d243b79856f47d832c9065a41daaa.jpg)
Привет. Сегодня я хочу вам рассказать о том, как можно изменить внешний вид файлового инпута.
Дело в том, что изменение внешнего вида инпутов, как правило, не вызывает трудностей, но этот вид инпутов отличается от остальных. В первую очередь это связано с безопасностью, во вторую с тем, что каждый браузер по своему отображает этот элемент, и на это почти нельзя повлиять.
+3
Использование Tsearch2 в PostgreSQL 8.3
7 мин
8.3KМногим при реализации поиска по сайту приходится делать запрос к базе данных, использующий оператор LIKE или регулярные выражения.
С выходом PostgreSQL 8.3 модуль полнотекстового поиска tsearch2 был встроен в ядро системы (об этом ранее уже писалось на Хабре), и с его помощью можно реализовать поиск по базе данных, который будет более функционален. В принципе, в статье, указанной выше, приведен пример использования этого модуля, но хотелось бы поделиться опытом реализации полнотекстового поиска в реальном проекте.
С выходом PostgreSQL 8.3 модуль полнотекстового поиска tsearch2 был встроен в ядро системы (об этом ранее уже писалось на Хабре), и с его помощью можно реализовать поиск по базе данных, который будет более функционален. В принципе, в статье, указанной выше, приведен пример использования этого модуля, но хотелось бы поделиться опытом реализации полнотекстового поиска в реальном проекте.
+6
Songsterr — онлайн-проигрыватель гитарных табулатур
2 мин
21K![](https://habrastorage.org/getpro/habr/olpictures/052/c8e/72c/052c8e72ce405fe643b05cbb020cae2c.png)
Основываясь на отзывах пользователей, мы пришли к выводу, что наиболее перспективное развитие проекта — это помощь в обучении игре на гитаре.
Наш второй релиз — это онлайн-проигрыватель гитарных табулатур.
![](https://habrastorage.org/getpro/habr/olpictures/63f/9fe/7c3/63f9fe7c34343336a854b6a1fcd70b83.png)
+2
Java World
5 мин
4.6K![](http://upload.wikimedia.org/wikipedia/en/thumb/3/39/Java_logo.svg/100px-Java_logo.svg.png)
Недавно на Хабре был топик про спонсирование Apache компанией Microsoft. Но то ли автор не доконца разобрался в теме, то ли новостной ресурс, ссылка на который была представленна: в общем, сложилось впечатление, что MS спонсирует разработку Web-сервера Apache. На самом же деле Microsoft спонсировал Apache Software Foundation, которая состоит из многих проектов, и как стало известно из блога Microsoft, спонсируют и используют они не только, и не сколько Web-сервер:
«It is a strong endorsement of The Apache Way, and opens a new chapter in our relationship with the ASF. We have worked with Apache POI, Apache Axis2, Jakarta, and other projects in the last year, and we will continue our technical support and interoperability testing work for this open source software.»
К сожалению, на Хабре не так много постов о Java, поэтому в этом я постораюсь рассказать о многих важных и интересных уголках Java мира, а заодно расскажу что же это за загадачные Apache POI & Axis2.
+24
О безналичных деньгах и банках (часть вторая)
6 мин
1.1KВторая часть двухэтажной статьи. Здесь рассказывается о конкретных документах, их назначении, и так, всякие мелочи. Первую часть можно прочитать по ссылке.
+57
О безналичных деньгах и банках (часть первая)
5 мин
11KНа сегодня в России существует и действует вполне нормальная система безналичных платежей. Конечно, у понятия «безналичный» существует множество синонимов, навроде «по банку» и т.д., но все это суть одинаково.
В первой части статьи я немного расскажу о сущности денег (вдруг кто что-то новое узнает?) и постараюсь рассказать о банковских счетах, платежах и прочем. Во второй части будем говорить уже о конкретных видах документов и что они означают.
В первой части статьи я немного расскажу о сущности денег (вдруг кто что-то новое узнает?) и постараюсь рассказать о банковских счетах, платежах и прочем. Во второй части будем говорить уже о конкретных видах документов и что они означают.
+1
Анонс сервиса — менеджера персональной информации
3 мин
1.7KСразу скажу, проект в состоянии «Скоро можно пробовать», цена вопроса — около 2-х недель. В этом посте я опишу и покажу, что это будет за сервис.
![](https://habrastorage.org/getpro/habr/olpictures/775/2f8/6dd/7752f86ddbec970176be598664527b57.png)
Основой данной идеи послужили: evernote, за свежий подход к хранению контента; todoist, за удобный древовидный способ хранения задач, где каждый элемент может стать контейнером для таких же элементов; как ни странно, outlook, за возможность хранения всего в одном месте, и еще куча сайтов и сервисов около GTD направленности.
![](https://habrastorage.org/getpro/habr/olpictures/775/2f8/6dd/7752f86ddbec970176be598664527b57.png)
Вдохновители
Основой данной идеи послужили: evernote, за свежий подход к хранению контента; todoist, за удобный древовидный способ хранения задач, где каждый элемент может стать контейнером для таких же элементов; как ни странно, outlook, за возможность хранения всего в одном месте, и еще куча сайтов и сервисов около GTD направленности.
Что получилось?
+31
Информация
- В рейтинге
- Не участвует
- Откуда
- Москва и Московская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность
Специализация
Backend Developer, Chief Technology Officer (CTO)
От 6 000 €