Мне кажется, что Sharpdevelop обделен вниманием потому, что в коммерческих проектах стоимость VS (которая всё же существенно круче) не имеет значения, а в учебных — есть VS Express. Вот разве что для Opensource-разработки Sharpdevelop удобен и логичен, но не так уж и много Opensource-проектов на С#.
AvalonDock страшная штука. Пришлось основательно допиливать напильником. Автор умудрился нарушить базовую концепцию WPF HeaderTemplate/ContentTemplate… Странная иерархия классов, много мелких шероховатостей, классический макаронный код. В общем, у автора было мало опыта. Так что однозначно стоит подождать версии 2.0.
Nemerle — странная вещь. Вроде, полноценный язык программирования, вроде, какое-никакое сообщество (особенно русскоязычное), вроде, интересные фичи. Однако, на мой взгляд, Немерле похож на швейцарский нож: им можно делать все, что душе угодно, но если вы хотите просто вкрутить шуруп лучше воспользоваться обыкновенной отверткой.
Поясню: метапрограммирование конечно хорошо, и замечательно когда можно расширить сам язык, ввести новые конструкции и вообще изменить язык до неузноваемости. Но на практике… пффф… с ужасом представляю себе как мне приходится разобрать сначала нововведенный синтаксический сахар (читай новый ЯП) и только потом приступить непосредственно к выполнению своей задачи.
Ха, прямо в точку. Это как писать фреймворк для каждой мало-мальской задачи. Такое же ощущение. Хотя потенциал у Nemerle есть, причем очень даже, воспринимается он как экспериментальная нанотехнология, для которой «пока не время». На практике, когда нужно решать задачи — берется «обыкновенная отвертка».
SharpDevelop конечно же пробовался как альтернатива VS, причем по одной простой причине — студия очень большая, тяжеловесная и тянет с собой кучу всего не самого необходимого. Однако в итоге, на практике, VS2010 + ReSharper по сравнению с SharpDevelop как космический корабль по сравнению с мопедом по производительности, удобству рефакторинга, дебаггинга и количеству готовых расширений/фич. Так что, тут просто никуда не денешься.
Речь о Productivity Power Tools? Вроде никаких косяков не было из за Решарпера (начиная с 5.0 и до 6.1). Правда, я не все фичи Power Tools юзаю. А вот ReSharper по полной программе, и нормалек вроде.
По соотношению цена/качество любая бесплатная штука будет «офигеннее» платной.
Есть пара «но»:
— Во-первых, если работать профессионально, то VS2010 Pro (как минимум) и ReSharper окупают себя с лихвой. Здесь более важно качество в целом, нежели относительно цены;
— Во-вторых, есть Express-версии. Хотя тут особо не разгуляешься — без поддержки расширений нельзя поставить любимый Решарпер.
У меня есть стойкое мнение что люди ругают #develop, не имея никакого мало мальски богатого опыта его использования. Я его использую 50/50. Да, там не все рюшечки работают. Но как правило они не так и важны. Мне автоконвертация в LINQ, типов циклов, и прочие мелочи вообще не нужны. Просто, иногда, приятны.
Чисто субъективно, по удобству работы и функциональностям Visual Studio намного интереснее.
Насчет Nemerle, игрался с ним пару лет назад, когда версия была 0.9.*. Поигрался и бросил, вроде интересный, можно многое, но не нашел применения.
Сейчас разрабатываю под WP7 приложения, я так на немерле нельзя еще писать полноценные приложения?
Кстати, по этому же причине в сторону ШарпДевелоп не смотрю пока.
А вот хороший MVP Framework для C#/WinForms никто не знает? Есть несколько проектов на codeproject и подобных, но ни один не соответствует полностью моим требованиям (да и фрэймворками большинство можно назвать лишь с натяжкой).
Нужно следующее:
Реализация по схеме слабой связности (сборка View имеет ссылку на Presenter, но Presenter ссылки на View не имеет; взаимодействие в направлении View->Presenter осуществляется только через события/делегаты; в обратном направлении через интерфейс IView, который описан в презентере и который наследует View)
Создание и инициализация View (и соответствующего ему Presenter) осуществляется неким менеджером или фабрикой автоматически на основании информации из п.2
Последнее по порядку, но не по значению: View может быть как контролом, так и формой и код инициализации должен уметь работать в обоих случаях.
SharpDevelop — согласен, менее наворочен чем VS, но и ресурсов кушает меньше, если надо что-то быстро набросать на WinForms — оптимальный вариант.
m_a_d14 апреля 2012, 14:13
Мне тут предлагали работать в проекте, который до сих пор содержат в VS2005/.Net2.0 (и не планируют миграцию). А Вы говорите WinForms…
ПО должно эффективно решать поставленные задачи, гнаться за новизной нет смысла.
Насчет последнего согласен. Всегда будет что-то сверх новое, модное, местами не удобное, зато «mainstream». Однако, ПО должно эффективно решать поставленную задачу, а не использовать никому из конечных пользователей не нужные фреймворки.
Что-то вы немного не в тему ответили ) Если определенные задачи не могут быть решены текущими средствами, значит надо менять средства на более совершенные. Но использовать что-то из ряда вон выходящее для задач, которые этого никогда не требовали и не будут, я не вижу смысла.
Набор полезных утилит и библиотек мира .NET