<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
	<title>Хабрахабр:  Метки / mvc</title>
	<link>http://habrahabr.ru/rss/tag/mvc/</link>
	<description><![CDATA[]]></description>
	<language>ru</language>
	<managingEditor>editor@habrahabr.ru</managingEditor>
	<generator>habrahabr.ru</generator>
	<pubDate>Sat, 11 Feb 2012 02:01:32 GMT</pubDate>
	<lastBuildDate></lastBuildDate>
	<image>
		<link>http://habrahabr.ru/</link>
		<url>http://habrahabr.ru/i/logo.gif</url>
		<title>Хабрахабр</title>
	</image>
	
			
		<item>		
			<title><![CDATA[PHP / Массивы моделей в MVC — вкусно и тяжело?]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/php/137860/</guid>
			<link>http://habrahabr.ru/blogs/php/137860/</link>			
			<description><![CDATA[<img src="http://habrastorage.org/storage2/983/ef6/57d/983ef657d54353b943393baf61a899de.jpg" align="right"/><br/>
Парадигма MVC во многом позволяет упростить поддержку кода за счет разделения логики и создания абстракций, однако часто, следуя принципу Thick Model & Thin Controller (он же Fat Model & Skinny Controller), разработчикам приходится упираться в краеугольный камень использования любого объекта-модели, а именно — в потребление памяти. Что особенно актуально при работе с моделями, которые реализуют ORM (или ActiveRecord паттерн).<br/>
В данной статье хочу вкратце продемонстрировать стандартные подходы к решению данной проблемы.<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/php/137860/#habracut">Читать подробнее</a> </div>]]></description>
			
			<pubDate>Wed, 08 Feb 2012 18:37:43 GMT</pubDate>
			<author>evgenyl</author>
			<category>orm</category><category>active record</category><category>memory usage</category><category>mvc</category><category>models</category><category>large data</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[JAVA / [Из песочницы] JTable и Serializable или таблицы в Java и танцы с бубном при сохранении объектов в файлы]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137352/</guid>
			<link>http://habrahabr.ru/blogs/java/137352/</link>			
			<description><![CDATA[<h4>Введение</h4><br/>
Так получилось, что как дизайнеру, мне необходим простор для творчества при реализации любых зачач в написании программ. Давно я положил глаз на такую платформу как Java, так-как всегда мечтал о кроссплатформенном программном обеспечении. И вот недавно, я решил освоить такой прекрассный компонент в Java, как JTable, ну и по той причине, что всегда любил использовать таблицы в своих программах.<br/>
<br/>
В общем, я поставил перед собой не сложную задачу — создать таблицу, которую мог бы сохранять в файл как объект и паралельно отслеживать введенные пользователем данные подсвечивая ошибки и упрощая общение с таблицей моей программы путем подсвечивания наиболее важных элементов таблицы. Так-как я сторонник программирования по принципу пошаговой отладки при написании кода, наличие готовых кусков стабильного кода в сети Интернет, было для меня очень важным… Но… После тщательных поисков, экспериментально было установлено<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137352/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Tue, 31 Jan 2012 13:30:02 GMT</pubDate>
			<author>aosnec</author>
			<category>Java</category><category>JTable</category><category>MVC</category><category>TableCellRenderer</category><category>JLabel</category><category>Object</category><category>Serializable</category><category>isSelected</category><category>aosnec</category><category>сериализация</category><category>таблица</category>
		</item>
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[JavaScript / Три подхода к методологии построения сложного клиентского приложения]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/javascript/136886/</guid>
			<link>http://habrahabr.ru/blogs/javascript/136886/</link>			
			<description><![CDATA[Наверно, не существует единого рецепта, который бы всех устроил. Это касается любой проблемы. Для разработчиков этот тезис самоочевиден, и вовлеченность в использование и проектирование отдельных инструментов определяется, главным образом, лишь профессионализмом. Изобретение велосипедов романтично и неизбежно. <br/>
<br/>
Особо вероятно изобретение велосипеда, когда рост сложности приложения происходит постепенно и в некотором смысле незаметно. Сложное приложение обычно является богатым приложением (rich), его элементы и особенности специфицированы W3C <a href="http://www.w3.org/TR/backplane/">www.w3.org/TR/backplane/</a>. Известный JavaScript-евангелист Addy Osmani так дополнительно определяет сложное приложение: “По-моему, крупное JavaScript приложение есть нетривиальное приложение, требующее значительных усилий разработчика для поддержки, причем наиболее сложное оперирование обработкой и отображением данных ложится на браузер” (http://addyosmani.com/largescalejavascript/).<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/javascript/136886/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Tue, 24 Jan 2012 08:05:02 GMT</pubDate>
			<author>ivnC</author>
			<category>javascript</category><category>mvc</category><category>mvvm</category><category>zakas</category><category>разработка приложений</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Node.JS / Маршрутизация запросов в Autodafé]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/nodejs/135722/</guid>
			<link>http://habrahabr.ru/blogs/nodejs/135722/</link>			
			<description><![CDATA[Autodafé — node.js фреймворк, начало читайте в этой статье: <a href="http://habrahabr.ru/blogs/nodejs/135089/">habrahabr.ru/blogs/nodejs/135089/</a><br/>
<br/>
Основная часть статьи будет посвящена перенаправлению запросов в autodafe, формированию URL и т. п. Но для начала мне бы хотелось осветить общие принципы работы приложения с подключенными клиентами, для того чтобы было понятнее какую часть рабочего процесса мы будем обсуждать.<br/>
<br/>
<h3>Откуда берется пыль</h3><br/>
Начнем со схемы, отображающей подключение клиентов к приложению:<br/>
<br/>
<img src="http://habrastorage.org/storage2/44a/2f2/551/44a2f255167a117b699c6c98ed0fe714.png"/><br/>
<br/>
На схеме можно увидеть несколько пользователей, которые пользуются различными устройствами и различными браузерами, которые в свою очередь подключаются к приложению по различным протоколам. (В данный момент к autodafe можно подключиться только по http и websockets)<br/>
<br/>
В приложении каждому подключению соответствует один Client. Client создается для каждого http запроса и подключения по websockets. Клиенты с одинаковым идентификатором сессии принадлежат одному экземпляру Session. Обычно одна сессия в приложение соответствует одному браузеру.<br/>
<br/>
Ну и для логического завершения на схеме приведен компонент “users”, который позволяет привязать различные сессии, прошедшие специальную авторизацию к одному объекту UserIdentity. Таким образом в приложении каждый объект UserIdentity соотносится к одному реальному пользователю.<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/nodejs/135722/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Thu, 05 Jan 2012 01:44:17 GMT</pubDate>
			<author>and_rew</author>
			<category>node.js</category><category>javascript</category><category>autodafe</category><category>mvc</category><category>mysql</category><category>orm</category><category>logging</category><category>routing</category><category>activerecord</category><category>websockets</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Node.JS / Autodafé]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/nodejs/135089/</guid>
			<link>http://habrahabr.ru/blogs/nodejs/135089/</link>			
			<description><![CDATA[<a href="https://github.com/jifeon/autodafe">Autodafe</a> — node.js фреймворк для разработки веб приложений<br/>
<br/>
<h3>Самые вкусные плюшки из коробки:</h3><br/>
<ul>
<li>архитектура: MVC + подключаемые модули</li>
<li>Mysql ORM (ActiveRecord с поддержкой отношений, асинхронное подобие того, что предлагает Yii framework для PHP )</li>
<li>HTTP сервер</li>
<li>WebSockets ( обертка для socket.io )</li>
<li>удобное перенаправление запросов и человеко понятные УРЛ</li>
<li>управление пользователями<ul>
<li>аутентификация и авторизация, сессии</li>
<li>система управления правами ролей пользователей</li>
</ul></li>
<li>почта ( обертка для emailjs )</li>
<li>логирование в консоль, фс и на почту</li>
<li>юнит тестирование ( обертка для vows )</li>
<li>шаблонизатор ( расширенный dust )</li>
</ul><br/>
<h3>Ложка дегтя:</h3><br/>
<ul>
<li>очень малая часть задокументирована</li>
<li>задокументированная часть плохо задокументирована</li>
<li>плохо задокументированная часть задокументирована только на русском языке</li>
<li>тестами покрыт не весь фреймворк</li>
</ul><br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/nodejs/135089/#habracut">Hello World на Autodafe</a> </div>]]></description>
			
			<pubDate>Thu, 22 Dec 2011 02:31:31 GMT</pubDate>
			<author>and_rew</author>
			<category>node.js</category><category>javascript</category><category>autodafe</category><category>mvc</category><category>mysql</category><category>orm</category><category>logging</category><category>routing</category><category>activerecord</category><category>websockets</category>
		</item>
		
		
		
		
		
		
		
		
	
		
		
		
		
		
			
		<item>		
			<title><![CDATA[Программирование / [Опрос] Где в MVC desktop приложении вы разместите код автообновления?]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/programming/134036/</guid>
			<link>http://habrahabr.ru/blogs/programming/134036/</link>
			<description><![CDATA[]]></description>
			
			<pubDate>Mon, 05 Dec 2011 14:26:02 GMT</pubDate>
			<author>eyeofhell</author>
			<category>mvc</category>
		</item>
		
		
		
	
			
		<item>		
			<title><![CDATA[Блог компании Ciklum / На Сиклум .NET Субботник в Харькове соберутся гуру .NET-разработки!]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/company/Ciklum/blog/133811/</guid>
			<link>http://habrahabr.ru/company/Ciklum/blog/133811/</link>			
			<description><![CDATA[Обмен опытом, новинками, лучшими практиками и просто неформальное общение — становится все больше популярным. Так, недавно мы проводили .NET Субботник в <a href="http://habrahabr.ru/company/Ciklum/blog/132066">Минске</a>, а еще немного раньше в <a href="http://habrahabr.ru/company/Ciklum/blog/130596/">Киеве</a>. В этот раз в Харькове <b>10 декабря на Ciklum .NET Субботник</b> соберутся крутые подкастеры и спикеры по .NET с огромным опытом, которым всегда рады во всех городах Украины. <b>Приглашаем всех, кому интересна разработка в .NET</b> на мероприятие с уникальной возможностью посмотреть и послушать их всех в один день!<br/>
<br/>
По традиции наших <b>Сиклум Субботников</b> участники мероприятия смогут неформально пообщаться, обменяться знаниями и поделиться опытом не только во время докладов на технологические темы по разработке в .NET, но и на протяжении всего мероприятия.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/company/Ciklum/blog/133811/#habracut">Интересные подробности .NET Субботника под хабра-катом</a> </div>]]></description>
			
			<pubDate>Thu, 01 Dec 2011 15:36:44 GMT</pubDate>
			<author>atael</author>
			<category>ciklum saturday</category><category>.net</category><category>mvc</category><category>Silverlight</category><category>ASP.NET</category><category>WinRT</category><category>SOLID</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[Программирование / [Из песочницы] Синхронизация представления с коллекцией]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/programming/133325/</guid>
			<link>http://habrahabr.ru/blogs/programming/133325/</link>			
			<description><![CDATA[Во многих современных языках программирования и фреймворках есть специальные классы <b>коллекций</b>, которые умеют оповещать клиентов при каждом своем изменении. Во Flex этот класс носит имя ArrayCollection, в .Net — ObservableCollection, в ExtJS — Ext.util.MixedCollection и Ext.data.Store, в <a href="https://github.com/enepomnyaschih/utils/tree/master/jwidget">jWidget</a> — <a href="https://github.com/enepomnyaschih/utils/blob/master/jwidget/public/lib/util/collection.js">JW.Collection</a>. Такие структуры данных просто необходимы при разработке приложений по схеме MVC (Model, View, Controller). Наиболее часто они применяются в качестве модели для разного рода UI-компонентов: списков, таблиц, аккордионов и пр. В сложных приложениях коллекции нужны для связи нескольких слоев системы между собой.<br/>
<br/>
Сегодня расскажу вам об одном оригинальном способе работы с <b>коллекциями</b>.<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/programming/133325/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Thu, 24 Nov 2011 15:19:38 GMT</pubDate>
			<author>enepomnyaschih</author>
			<category>Программирование</category><category>Паттерны</category><category>Шаблоны</category><category>Приемы</category><category>MVC</category>
		</item>
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Блог компании Intel / История развития форматов видеосжатия]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/company/intel/blog/133198/</guid>
			<link>http://habrahabr.ru/company/intel/blog/133198/</link>			
			<description><![CDATA[Далёкий 1988й год был полон удивительных событий. В этом году увидел свет 4й альбом группы Metallica «<a href="http://en.wikipedia.org/wiki/...And_Justice_for_All_(album)">...And justice for all</a>», а СССР запустил в свой первый и единственный полёт многоразовый космический корабль «<a href="http://ru.wikipedia.org/wiki/%D0%91%D1%83%D1%80%D0%B0%D0%BD_(%D0%BA%D0%BE%D1%81%D0%BC%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D1%8C)">Буран</a>». В этом же году началась история видеосжатия – появился самый первый стандарт видео-кодека.<br/>
Самые известные стандарты видеосжатия появились благодаря двум конторам: <abbr title="Video Coding Expert Group">VCEG</abbr> и <abbr title="Moving Picture Expert Group">MPEG</abbr>. Нельзя назвать их конкурентами: некоторые стандарты были выпущены комитетами поодиночке, некоторые стали плодом их <s>запретной любви</s> коллективной работы в составе объединённых групп. По иронии судьбы именно эти «совместные» форматы и получили наибольшее распространение.<br/>
<br/>
<h4>1988 год – H.261</h4><br/>
<img src="http://software.intel.com/ru-ru/blogs/wordpress/wp-content/uploads/cif_resolution.jpg" alt="352x288 - предел мечтаний в 1988 году" align="left"/>Итак, 1988 год. <a href="http://en.wikipedia.org/wiki/H.261">H.261</a> стал первым полноценным форматом видеосжатия, получившим широкое распространение. Это был «классический» стандарт, работающий в цветовом пространстве YCbCr, базирующийся на дискретном косинусном преобразовании блоков и сжатии Хаффмана. Поднимите руку те, кто слышал о нём? А ведь именно в этом стандарте впервые появились такие понятия, как макро-блок, целопиксельный вектор движения и де-блокинг (или пост-процессинг). А еще именно тогда, 23 года назад, появилась концепция опорных кадров. H.261 предусматривал кадры 2х типов: I(ntra) – полностью независмый кадр, и P(redicted) – кадр, зависимый от предыдущего. Максимальное разрешение CIF (пример приведён слева), поддерживаемое H.261, сейчас не впечатлит даже любителей смотреть видео на телефоне. И тем не менее, для своего времени это был очень прогрессивный, весьма «продвинутый» стандарт. Все последующие стандарты видеосжатия базируются на идеях, берущих свое начало в H.261, и де-факто являются результатом его эволюционного развития.<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/company/intel/blog/133198/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Wed, 23 Nov 2011 12:29:08 GMT</pubDate>
			<author>victor_cherepanov</author>
			<category>цифровое видео</category><category>digital video</category><category>mpeg</category><category>mpeg2</category><category>mpeg4</category><category>h.264</category><category>mvc</category><category>svc</category><category>hevc</category><category>intel</category><category>pentium</category><category>sandy bridge</category><category>quick sync</category><category>mediaSDK</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Блог компании Ciklum / Собираемся на новый Ciklum Субботник в Минске — теперь по .NET! Присоединяйтесь!]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/company/Ciklum/blog/132066/</guid>
			<link>http://habrahabr.ru/company/Ciklum/blog/132066/</link>			
			<description><![CDATA[Если вам интересны новинки, лучшие практики в разработке на NET и ASP .NET и просто общение с коллегами — все это сможете увидеть и услышать и активно принять участие во время <b>Ciklum .Net Субботника, который состоится 12 ноября (уже в эту субботу)</b> в минском офисе Ciklum.<br/>
<br/>
Напомним, что в <a href="http://www.facebook.com/media/set/?set=a.10150189684171883.327702.50593631882">наших офисах</a> как по всей <a href="http://habrahabr.ru/company/Ciklum/blog/128416">Украине</a>, так и в <a href="http://habrahabr.ru/company/Ciklum/blog/131174/">Беларуси</a> постоянно проходят <b>Ciklum Saturdays</b>, собирающие разработчиков по различным технологиям<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/company/Ciklum/blog/132066/#habracut">Интересности под хабра-катом</a> </div>]]></description>
			
			<pubDate>Mon, 07 Nov 2011 13:13:58 GMT</pubDate>
			<author>ciklum_dev</author>
			<category>ciklum saturday</category><category>minsk</category><category>.net</category><category>asp.net</category><category>SOLID</category><category>mvc</category><category>ObjectMeet</category><category>DRL limited</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[JavaScript / Базовая архитектура веб-приложения на Backbone.js]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/javascript/129928/</guid>
			<link>http://habrahabr.ru/blogs/javascript/129928/</link>			
			<description><![CDATA[Разработчики часто просят рассказать о моём опыте использования Backbone.<br/>
Многие слышали об этом MVC-фреймворке, смотрели примеры и документацию, но не решаются начать с ним работать. Поэтому вчера я сделал мини-доклад на встрече <a href="http://www.facebook.com/groups/261688937189348/">MoscowJS</a>, призванный рассказать о том, как мы построили базовую архитектуру и какие получили плюсы. И сегодня в этой статье я публикую слайды, схемы и краткое описание.<br/>
<br/>
<img src="http://habrastorage.org/storage1/d189a025/b0e94716/c0479b65/a459df85.png"/><br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/javascript/129928/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Fri, 07 Oct 2011 14:17:39 GMT</pubDate>
			<author>javascript</author>
			<category>backbone.js</category><category>архитектура приложений</category><category>javascript</category><category>mvc</category><category>rest</category><category>островок.ru</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[.NET / Реализация RESTful сервиса в классическом ASP.NET]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/net/127811/</guid>
			<link>http://habrahabr.ru/blogs/net/127811/</link>			
			<description><![CDATA[Статья рассказывает как быстро реализовать RESTful API в имеющемся классическом ASP.NET приложении.<br/>
Как при этом максимально использовать возможности библиотеки MVC.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/net/127811/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Sun, 11 Sep 2011 10:53:15 GMT</pubDate>
			<author>corker</author>
			<category>ASP.NET</category><category>MVC</category><category>RESTful</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[Flash-платформа / [Из песочницы] Зачем нужны паттерны проектирования или «Что такое MVC?»]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/Flash_Platform/127351/</guid>
			<link>http://habrahabr.ru/blogs/Flash_Platform/127351/</link>			
			<description><![CDATA[Самое главное во всех фреймворках это то, что все они диктуют правила создания приложения. Если ты никогда не использовал никакого фреймворка в своих приложениях, то либо<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/Flash_Platform/127351/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Tue, 30 Aug 2011 10:11:46 GMT</pubDate>
			<author>timer69</author>
			<category>паттерны</category><category>паттерны проектирования</category><category>программирование</category><category>MVC</category>
		</item>
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[Веб-разработка / [Из песочницы] Первый взгляд на Xataface — систему построения дата-центрированных приложений на PHP и MySQL]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/webdev/127304/</guid>
			<link>http://habrahabr.ru/blogs/webdev/127304/</link>			
			<description><![CDATA[Приветствую многоуважаемых хабражителей.<br/>
<br/>
Поиск по Хабру по ключевым словам «dataface» и «xataface» привёл к пустой странице результатов, поэтому считаю своим долгом поделиться с честной публикой своим давним открытием, до сей поры остававшимся в тени.<br/>
<br/>
Рунет так же не в курсе такой замечательной штуки, которая, между тем, существует свыше трёх лет и имеет определенную популярность в узких кругах.<br/>
<br/>
Подробности под катом.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/webdev/127304/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 29 Aug 2011 19:20:42 GMT</pubDate>
			<author>iCoderXXI</author>
			<category>xataface</category><category>dataface</category><category>php</category><category>mysql</category><category>mvc</category><category>data driven</category><category>data-centric</category><category>framework</category><category>easy</category><category>jqGrid</category><category>DataGrid</category><category>базы данных</category>
		</item>
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[Qt Software / [Из песочницы] Трюки с моделями в Qt]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/qt_software/126995/</guid>
			<link>http://habrahabr.ru/blogs/qt_software/126995/</link>			
			<description><![CDATA[Всем привет!<br/>
В этой небольшой статье я научу вас, одному интересному трюку с моделями, который можно реализовать с помощью MVC фреймворка Qt.<br/>
<br/>
<h4>Исходные данные для трюка.</h4><br/>
Двухуровневая модель дерева:<br/>
<pre><code>|Parent 1
-----Child 1
-----Child N
|Parent N
-----Child 1
-----Child N
</code></pre><br/>
<br/>
Модель списка:<br/>
<pre><code>Item1
Item2
Item3</code></pre><br/>
<br/>
В результате трюка мы получим модель объединяющую две вышеприведенные модели:<br/>
<pre><code>|Parent 1
------Child 1
------Child N
|Parent N
------Child 1
------Child N
|Item1
|Item2
|Item3</code></pre><br/>
<br/>
<h4>Приступим к реализации.</h4><br/>
И так как же это сделать? Я думаю вы уже догадались что сделать это можно прибегнув к помощи QAbstractProxyModel. А вот и нет! К сожалению стандартный класс QAbstractProxyModel может преобразовать лишь одну исходную модель (что тоже неплохо). Поэтому мы напишем свою ModelJoinerProxy, которая будет компоновать наши две исходные модели в одно целое.<br/>
И так приступим:<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/qt_software/126995/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Wed, 24 Aug 2011 12:43:16 GMT</pubDate>
			<author>explorer85</author>
			<category>qt software</category><category>qt</category><category>mvc</category>
		</item>
		
		
		
		
		
		
		
	
		
		
		
		
		
			
		<item>		
			<title><![CDATA[Веб-разработка / [Опрос] Partials VS Helper methods: как вы отDRYиваете код в представлении?]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/webdev/125087/</guid>
			<link>http://habrahabr.ru/blogs/webdev/125087/</link>
			<description><![CDATA[]]></description>
			
			<pubDate>Thu, 28 Jul 2011 05:24:18 GMT</pubDate>
			<author>GearHead</author>
			<category>MVC</category><category>HTML</category><category>partial</category><category>helper</category><category>DRY</category><category>рефакторинг</category>
		</item>
		
		
		
	
			
		<item>		
			<title><![CDATA[.NET / Portable Areas как вариант модульности в MVC]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/net/123819/</guid>
			<link>http://habrahabr.ru/blogs/net/123819/</link>			
			<description><![CDATA[Один из первых вопросов, которым я задался после знакомства с азами технологии MVC3, это способ выделения и повторного использования функционала в нескольких веб-проектах.<br/>
В WPF или WinForms все просто и понятно — обособленный функционал изолируется в модуль, модуль компилируется в библиотеку, библиотека — подключается к проекту и повторно используется. Нужно лишь грамотно изолировать модули и всё будет хорошо.<br/>
<br/>
В MVC, если «обособленный функционал» — это набор контроллеров и вьюшек, реализующих, допустим, гостевую книгу, их можно обособить в виде «области» — area. Однако просто так вынести эту область в отдельный модуль нельзя — MVC просто не найдет ваши контроллеры/вьюшки в соседних библиотеках. <br/>
<br/>
Однако решение, конечно, есть, и его нам предлагает небезызвестная библиотека <a href="http://mvccontrib.codeplex.com">MvcContrib</a> — open-source проект, неаффилированный Майкрософтом.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/net/123819/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 11 Jul 2011 12:59:01 GMT</pubDate>
			<author>Shaddix</author>
			<category>.net</category><category>mvc</category><category>mvccontrib</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Веб-разработка / Битрикс: пытаемся разобраться. Часть 2: Идеология и архитектура платформы 1с-Битрикс. ООП, ORM, Паттерны проектирования, MVC]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/webdev/122442/</guid>
			<link>http://habrahabr.ru/blogs/webdev/122442/</link>			
			<description><![CDATA[Это вторая из трех статей про техническую, архитектурную и бизнес-составляющую системы 1С-Битрикс. <br/>
Статья ставит целью разобраться в колоссальном клубке вопросов, связанном с этой системой.<br/>
Начало: <br/>
<a href="http://habrahabr.ru/blogs/webdev/122441/">Часть 1: Устройство и технические свойства платформы</a><br/>
Тут говорим об архитектуре.<br/>
<br/>
<h4>Идеология и архитектура платформы</h4><br/>
<br/>
Статья в блоге на сайте автора: <br/>
<a href="http://www.intervolga.ru/weblog/69/">Битрикс: пытаемся разобраться. Часть 2: Идеология и архитектура платформы 1с-Битрикс. ООП, ORM, Паттерны проектирования, MVC</a><br/>
<br/>
<a href="http://habrahabr.ru/blogs/webdev/122443/">Часть 3: Битрикс для бизнеса. Взгляд сисадмина, разработчика, директора</a><br/>
<br/>
Буду благодарен за дополнения.]]></description>
			
			<pubDate>Wed, 22 Jun 2011 12:57:47 GMT</pubDate>
			<author>stepan_ovchinnikov</author>
			<category>битрикс</category><category>ооп</category><category>mvc</category><category>orm</category><category>паттерны проектирования</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Erlang/OTP / Строю сайты! Like a boss]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/erlang/121955/</guid>
			<link>http://habrahabr.ru/blogs/erlang/121955/</link>			
			<description><![CDATA[<a href="http://www.youtube.com/watch?v=NisCkxU544c"><img src="http://theawesomer.com/photos/2009/04/040609_boss_t.jpg" alt="Like a boss"/><br/>
</a><br/>
<a href="http://www.youtube.com/watch?v=NisCkxU544c">www.youtube.com/watch?v=NisCkxU544c</a><br/>
<br/>
Посмотрев презентацию Юрия (<a href="http://yrashk.habrahabr.ru/" class="user_link">yrashk</a>) с Erlang Conference о веб-фреймворках в эрланге я заинтересовался и решил сделать сайтик не на node.js, как намеревался изначально, а используя какой-нибудь эрланговский фреймворк.<br/>
<br/>
В итоге я наткнулся на фреймворк <a href="http://chicagoboss.org">Chicago Boss</a>. Про сам фреймворк я слышал и раньше, но пользоваться пока не довелось.<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/erlang/121955/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Thu, 16 Jun 2011 06:38:21 GMT</pubDate>
			<author>vsviridov</author>
			<category>erlang</category><category>chicago boss</category><category>mvc</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[ASP.NET MVC / [Из песочницы] ASP.NET MVC в крупных проектах. Введение: Model Binding]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/aspnet_mvc/119353/</guid>
			<link>http://habrahabr.ru/blogs/aspnet_mvc/119353/</link>			
			<description><![CDATA[<h2>Вместо вступления</h2><br/>
Пока готовилась эта статья, вышел замечательный пост <a href="http://1andy.habrahabr.ru/" class="user_link">1andy</a> <a href="http://habrahabr.ru/blogs/aspnet_mvc/116298/">Организуем view models в ASP.NET MVC</a>, в котором разобрано многое из того, что я хотел бы поведать читателю. По этой причине я решил опустить большое вводное вступление и перейти непосредственно к практическим советам.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/aspnet_mvc/119353/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 23 May 2011 09:22:30 GMT</pubDate>
			<author>Aquilae</author>
			<category>asp.net</category><category>asp.net mvc</category><category>web</category><category>mvc</category><category>mvp</category><category>.net</category><category>microsoft</category>
		</item>
		
		
		
		
		
		
		
	
	
	
	
	
	
	
	

	
</channel>
</rss>

