Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Общие вопросы по .NET и C# > Бесплатные IDE для C#? |
Автор: kresh 24.4.2008, 21:22 |
Всем привет! Предлагаю обсудить тему про #Разработка C# и .NET без Microsoft Visual Studio. Вот рылся в инете нашел SharpDevelop 3.0 http://icsharpcode.net/OpenSource/SD/Download/ а вот описание и мнения http://www.kv.by/index2006171103.htm но хотелось бы узнать Ваше мнение на эту тему и может быть кто нибудь поделится опытом использования Бесплатных IDE для разработки коммерческих приложений на C# . ![]() |
Автор: Ch0bits 24.4.2008, 21:35 |
Для Eclipse есть плагин http://www.improve-technologies.com/alpha/esharp/ |
Автор: Ch0bits 24.4.2008, 21:52 | ||
Может быть ещё MonoDevelop в хозяйстве пригодится. У него в FAQ написано:
|
Автор: HalkaR 25.4.2008, 09:12 |
А чем не нравится Visual Studio Express? Хоть и от Майкрософт, зато бесплатно. |
Автор: source777 25.4.2008, 16:59 |
Согласен, кроме Visual Studio Express и SharpDevelop других нормальных вариантов бесплатных сред разработки .NET приложений под Windows нет... Ну а подо всё остальное(*nix) только MonoDevelop + GTK# |
Автор: Ch0bits 25.4.2008, 18:02 |
Так и незачем городить огород. ИМХО этих вполне хватает. |
Автор: Mephisto 25.4.2008, 19:39 |
Visual Studio Express хватит с головой. А под линух ИМХО извращение писать на C#. Mono безнадежно отстает как бы новеловцы не напрягались |
Автор: source777 25.4.2008, 21:44 |
Не так уж они и отстают, уже даже лямбды сделали... И уже в этом квартале Mono 2.0 http://www.mono-project.com/Mono_Project_Roadmap ![]() |
Автор: Mephisto 28.4.2008, 19:49 |
ага. Только кот у меня .net 3,5 стоит уже ![]() |
Автор: source777 28.4.2008, 21:56 |
А для тебя самое важное это номер версии? В Mono 2.0 входят не только все возможности .NET 2.0, но и лямбды, и методы расширений, и LINQ to Objects, и LINQ to XML, и много чего ещё из возможностей .NET 3.x... Большинство этих возможностей уже есть в Mono 1.9 (она же Mono 2.0 beta) А Stetic очень похож на WPF, по крайней мере моделью компоновки... Какие ещё нововведения .NET 3.x ты используешь, ведь чтобы утверждать, что Mono безнадежно отстает надо набрать хотя бы пару десятков нереализованных в Mono возможностей .NET 3.5... Учитывая, что рантайм у .NET 3.5 тот же, что и у .NET 2.0, а отличаются они по большей частью синтаксическим сахаром и сопутствующими технологиями, можно сказать, что Mono уже практически догнал .NET, а отставание составляет не более 1 года... |
Автор: Mephisto 28.4.2008, 23:17 |
Ну дык отсавание где-то на год и есть. Разве это не безнадежно? |
Автор: source777 28.4.2008, 23:37 |
Конечно, нет. Учитывая, что оно сокращается каждый месяц и касается лишь не самых используемых в настоящее время технологий(типа LINQ to SQL), это просто смехотворное отставание, которое уже можно игнорировать... |
Автор: Mephisto 29.4.2008, 08:37 | ||
У меня есть несколько знакомых которые используют Open Suse и постоянно следят за развитием mono. По их словам пока даже наши проекты под него не перетащить. Но, в принципе, у нас достаточно специфичные проекты. |
Автор: source777 29.4.2008, 11:56 |
А почему они не говорят? Может вы там DirectX, реестр, WMI, ActiveX(WebBrowser) или COM-компоненты используете? Да мало ли Windows-специфичных компонентов можно придумать, которые в принципе не имеют смысла ни под какой другой ОС... Поэтому мне не понятно, как ты делаешь выводы по таким обобщенным высказываниям. |
Автор: Idsa 29.4.2008, 14:00 |
Здесь не упомянули X-Develop 2.0 (x-develop.com). Очень интересная (хотя и платная) среда разработки. Позволяет писать на .NET, Mono и Java под Windows, Max и Linux. |
Автор: Exception 3.5.2008, 16:21 | ||||
Работа над дизайнером WinForms идёт отдельно, но они не слишком-то торопятся, т.к. основной упор всё равно идёт на Gtk#+Stetic. Писать под Linux на WinForms не очень-то удобно, ибо последние не выглядят действительно нативно — да и зачем, когда есть Gtk#?
Это не так. По поводу «отставания» уже высказались, а я добавлю, что как раз-таки под Linux на Mono пишут. Те же tomboy, banshee, gnome-do. И множество недавно появившихся проектов (возможно, такой всплеск связан со взрослением MonoDevelop как среды разработки, а Mono — как среды выполнения). |
Автор: ivashkanet 4.5.2008, 00:09 | ||||
Очень нравится SharpDevelop. Респект парням. Дома использую ее. Но на работе студия. Так как SD все же отстает от студии по многим показателям (ASP .net вообще слабо поддерживается). Но это дело времени и комьюнити. Сейчас этот проект развивается силами 2-3 человек...
ППКС. |
Автор: Kefir 4.5.2008, 00:57 | ||||||
дада, само собой. я сказал лишь для того, чтобы люди не обольщались. "поддержка проектов студии" - это звучит гордо, однако, имхо, полноценной поддержки пока нет. а то я тоже как дурак в первый раз увидев сие чудо аж подскочил и трясущимися руками начал открывать свои проекты в монодевелопе. был огорчён В)
боже мой, да в каком месте вы этом 1 год нашли? stetic похож на wpf? где? каким местом? XAML тоже за этот год сварганим? поддержку 3Д тоже сделаем за этот год? моно и его окружение - личности героические, стойкие. они достойны всяческих похвал, но говорить что отставание - год, это, по крайней мере, странно. мало того, что всё это надо реализовать, так ведь ещё и УИ присобачить. Даже МС сейчас всё никак не может Blend добить до релизного уровня (заметьте, уже превью версии 2.5, а до ума так и не довели). ЗЫ извините, если задел кого-то. просто "1 год" и "ппкс" на меня подействовали как красная тряпка ![]() |
Автор: ivashkanet 4.5.2008, 08:51 | ||||
Вот именно поэтому я WPF, WF и Сильверлайт за продукт пока не считаю. Так, релиз кандидаты. Это с одной стороны. А с другой это все никоем боком к самой платформе .Net (вернее к среде выполнения) не относиться. Это отдельные продукты, надстройки над средой исполнения. И не обязательно их реализовывать, чтобы сказать, что Моно догнал MS .Net: -- Девекстперсовские контролы рвут стандартные, но мы же не говорим что MS отстает от DevExpress... -- LingToSQL и рядом не стоит с NHibernate, а Entity Framework (полноценный O/R M движек, а не поделка как LingToSQL) еще только в разработке. Мы ведь тоже не говорим об отставании MS. -- MVC движек для ASP слизан (во всяком случае идеи) с Castle MonoRails и еще не зарелизился -- Когда MS "догонит" Sptring .Net предложив свой механизм Dependency Injection (DI)? А это будт обязательно, уж очень перспективный принцип. Так что я не считаю, что целью проекта Моно должна стать реализация MS .Net Framework Feature-By-Feature. В противном случае они никогда не догонят MS. И разработчики Моно именно так и должны делать (если уже не делают), если все время догонять так "недофреймворком" и останутся... P.S. Еще примечательно, как только MS заинтересовалась Силльверлайтом под *nix и сама поспособствовала его развитию Мунлайт дотянулся до Сильверлайта за считанные месяцы. А все потому, что платформа уже готова.
Kefir, аналогично ![]() ![]() ![]() ![]() |
Автор: Kefir 4.5.2008, 09:41 | ||||||||
ну скажем так - сам WPF это уже продукт (если можно так выразится). Бленд - достойная софтина. баги есть, не хватает некоторых фич, но это уже мелкие неприятности. Релиз кандидаты, это, всё-таки сильно сказано ![]()
Как это не относятся? Почему не относятся? Мы всё ещё про .NET Framework говорим?
знаешь, я думаю, что МС уже давно определило, что контролами она особо заниматься не будет. Они всегда давали только необходимые контролы. А уже другие, вроде ДевЭкспресса, пусть делают остальное. Думаю, что МС даже не ввязывается в гонку "кто забабахает контрол покруче". По остальным пунктам мало чего могу сказать. Да и они к теме не относятся. Я не говорю, что МС делает всё самое лучшее, самое удобное или самое инновативное. Я говорю о конкретном "годе" разрыва между моно и .нет.
вот тут и я ППКС. сильно сомневаюсь, что моно будут делать WPF - закопаются. в общем так, я не говорю, что моно - отсталая фигня. просто меня в последнее время раздражают фразы "моно вот-вот догонит", "моно уже почти", "вот уже скоро". моно - хорошая штука, но к большому сожалению, шансы на полный догон .NET у него ничтожно малы. Другое дело - моно должен идти своим путём (и не может не радовать тот факт, что это уже происходит). Конечно, стоит поглядывать на дитя МС и перенимать хорошее, доброе и вечное В) |
Автор: ivashkanet 4.5.2008, 10:00 | ||||||
Потому что это дополнительные фреймворки использующие среду .Net Framework, а не часть фрэймворка, что хотят нам навызать маркетологи MS. Для поддержки этих технологий Среда Выполнения (CLR) не переписывалась. Любой из этих фреймворков могла написать сторонняя компания.
Остальные это доказательство тезиса "не обязательно их реализовывать, чтобы сказать, что Моно догнал MS .Net". Ну хорошо, с годом мы погорячились, тем более, ИМХО, Моно никогда не догонит MS, но это и не нужно. 1) Неплохо бы определитья что означает "полный догон" 2) У любого следующего за лидером в IT нет шансов его догнать
Вот-вот-вот!!! ИМХО, вообще некорректно сравнивать Mono и MS Framework. Корректно сравнивать CLR Mono и CLR MS .Net Framework. А вот тут отставание не больше года. |
Автор: Kefir 4.5.2008, 11:02 | ||||
позвольте, позвольте, WPF как раз таки часть .NET Framework. .NET Framework != CLR. Что ж теперь для расширения .NET Framework надо обязательно переписывать CLR? Грубо говоря, частью дотнета можно назвать всё то, что входит в .NET Framework redist. А вот библиотека васи пупкина с супер-контролами - не часть фреймворка, так как программы, которые написаны с его помощью будут работать только при наличии этой самой библиотеки. Надстройки, не надстройки - всё равно это часть .НЕТа. Какая разница что они переписывали, а что нет?
в общем так. есть считать, что моно реализовывает именно .NET, то биш пытается его повторить - то реализовывать как раз таки обязательно (может, конечно, по своему, но всё равно реализовывать). Проще говоря - пока моно не предоствит те же фичи, что и весь .NET Framework, сказать что моно кого-то там догнал нельзя. если же считать, что моно - самостоятельный продукт, который просто ориентируется на .НЕТ, перенимая некоторые фичи, но не ставящий задачи догнать .НЕТ, то смысла говорить о догоне/перегоне просто нет. вот когда будет возможность полностью портировать любое приложение в .НЕТ на моно - тогда можно будет говорить о полном догоне. |
Автор: source777 4.5.2008, 14:23 | ||
Догон для .NET 3.5 в моём понимании означает реализацию .NET 2.0 CLR + функциональные расширения
Какой ты не внимательный, я же уточнил: моделью компоновки, которая в Linux уже много лет, а MS только недавно решила её перенять... Естественно никакого WPF под Linux в полной мере не будет и быть не может, ибо он DirectX юзает, но WPF сам по себе является фреймворком и в .NET не входит, как и остальные W*F, поэтому их реализация под Linux не является значимой целью... И ещё раз повторюсь, что сопутствующие технологии платформо-специфичны, поэтому они не являются отставанием в принципе... А Mono соответственно догонит .NET как только будет совместим с ним по основным частям (.NET 2.0 CLR + функциональные расширения), всё остальное находится за бортом нашего(ну или, по крайней мере, моего) рассмотрения... P.S. Более того, я уточню что 1 год - это максимальное отставание, а в большинстве важных моментов отставание составляет всего 4-7 месяцев... |
Автор: Kefir 4.5.2008, 15:15 | ||||
почему же никому не нужная? по-моему, очень даже неплохо было бы иметь возможность строить УИ с той же гибкостью, с которой позволяет это делать впф. ![]()
ну ведь ОГЛ никто не отменял В) ну да ладно, чёрт с ним. я никак не могу понять почему это впф в .нет не входит? все входят, а он, значит, не входит? очень даже входит, целиком и полностью. |
Автор: Exception 4.5.2008, 16:11 | ||||||
Ок, я понял ![]() ![]()
Сорри, что такое WF? А WPF очень даже полноценный, насколько я вижу. За Silverlight не особо слежу, но, вроде бы, у них пока «в процессе».
Сейчас, если верить рассылке CodeProject, в Microsoft http://www.google.com/search?q=microsoft+dependency+injection и говорят ![]() P.S. Вообще, очень весело следить за новостями из мира Mono вот http://www.go-mono.com/monologue/. Каждый вечер читаю ![]() |
Автор: source777 4.5.2008, 21:30 | ||
А кому нужно, чтобы программы, использующие реестр и СОМ работали под Линукс? Похоже, что только тебе...
Потому, что он является сопутствующей технологией, а если подобные технологии учитывать в нашем рассмотрении, то .NET тоже отстаёт от Mono по множеству сопутствующих технологий, которые врядли вообще появятся в .NET(например, Tao, Unity 3D, Gtk#, etc.)... Твои высказывания по поводу W*F в этом топике выглядят примерно так же как: "В MS .NET нет поддержки Tao, следовательно .NET отстаёт от Mono на хз сколько, но минимум на 10 лет..." Надеюсь теперь ты понял всю абсурдность твоего подхода... |
Автор: ivashkanet 4.5.2008, 23:00 | ||||||||
1) То что они находятся в одной поставке не делают их одним фреймворком. Логически это разные фреймворки (под фреймворком я подразумеваю "каркас" с помощью которого можно создавать другие приложения). А то что маркетологи положили их в "одну коробку", так это внутренние вопросы MS. 2) Уже сейчас во фреймворке куча ненужных вещей. Возьмем 2.0 (так как с ним я имею наиболее большой опыт): Скажите накой обычному пользователю нэймспейс System.Web испольуемый только сервером? Зачем ему полный System.Data, когда он использует (если использует) не больше 20% из него? Думаю то же самое можно сказать про FW 3.5... Потом появляются такие вот темы: http://rsdn.ru/forum/message/2928057.1.aspx
Да, именно так я и считаю. А раз смысла нет (для тебя), то и говорить не будем ;-)
Хотелось бы узнать что есть в твоем понимании слово "портировать". Думаю ты хочешь чтобы нужно было просто перекомпилить код под другой компилятор, а еще лучше запустить напрямую экзешник. Так вот я тебе скажу такое не надо. И в первую очередь это касается ГУЕв. Никсы это другая архитектура, другие принципы. Зачем делать неестественные вещи имплементируя Очередь Сообщений, а ведь именно через нее работают все контролы из неймспейса Windows.Forms. Почему-то ни у кого не возникает вопросов о факте существования FW CF. И того, что туда довольно сложно портировать (что бы это слово ни означало) виндовое приложение. Кроме того даже на Жаве, которая гордиться своей кроссплатформенностью, не все так гладко. Часто приходится "дорабатывать напильником" чтобы приложение заработало под конкретную платформу. Windows Workflow Foundation. Писал по памяти. Знал что там три буквы, но не подумал, что первая W, потому что эта техннология никоем боком к самому виндовсу не относиться
Я же говорю перспективно ;-) |
Автор: Kefir 4.5.2008, 23:43 | ||||||||||||
баже мой, да при чём тут это? я коворю о концепции как таковой, а не реализации. есть "идея", а есть "реализация идеи". я только об этом и говорю.
очень хорошо В) будет интересно посмотреть.
ну ёлки, мы тут вроде как обсуждаем как моно догоняет .НЕТ. не будем путать их местами. я не отрицал, не отрицаю и не собираюсь отрицать, что у моно тоже есть свои интересные прибамбасы. не надо меня считать мононенавистником. подход у меня не абсурдный, подход очень чёткий - в .НЕТ есть W*F, а в моно нет. за 1 год всё это сделать будет трудновато. в каком месте тут абсурд?
ну в общем, тут у нас разногласия. имхо, ситуация такая, что мы смотри на цифру 6/9 с разных сторон. так весь .НЕТ можно на отдельные классы (или неймспейсы, или ещё как-нибудь) разложить и сказать что все они окромя CLR - не являются частью фреймворка. ну да чёрт с ним.
это уже вопрос другой. тема обширная и благодатная, но всё таки не относящаяся к этому топику. я тоже не всем доволен в .НЕТ, я не считаю его идеальным.
нет, не хочу. портировать в том смысле, что бы можно было сделать то же самое, только на моно и без потери функционала (ну и без извращений). |
Автор: ivashkanet 5.5.2008, 00:00 | ||||||
Странно, а мы обсуждаем, что: 1) догонять вроде как и не надо 2) догонять, не все, а только основы. По ИХМЕ тольеко CLR. Все остальное это то что MS накрутили НАД CLR и пытаются продать все в одном флаконе.
Да, да, и еще раз ДА. И можно, и нужно, и не вижу тут ничего плохого!!!!
Уже второй раз спрыгиваешь со скользкого вопроса. 1) Это имеет отношение к "библиотека васи пупкина с супер-контролами - не часть фреймворка, так как программы, которые написаны с его помощью будут работать только при наличии этой самой библиотеки". 2) К топику наш "флейм" вообще никакого отношения не имеет. 3) Мои слова показывают что во FW все свалено в одну кучу, а не представляют монолитную систему из которой ничего забрать нельзя.
При таком определении бери С++ и портируй. Причем тут моно и .Net? Что-то мы ни к чему не пришли и ИМХО не придем. Ну да ладно. Забьем. Всем удачи ;-) |
Автор: source777 5.5.2008, 00:50 | ||||
Это всё равно, что сравнивать комплексные числа, невозможно сказать какое из них больше. Именно поэтому мы с ivashkanet тебе пытаемся объяснить, что такое сравнение мягко говоря не корректно, поэтому надо взять "действительную" часть обоих фреймворков, коей является CLR и синтаксические возможности C#, и сравнивать только их. Именно по этой технике сравнения Mono догоняет .NET и уже почти догнал... И ничего иного(что ты там себе нафантазировал) под этими словами не понимается... А все сопутствующие технологии у Mono свои(некоторые будут походить на те, которые имеются у .NET) и ничего плохого я в этом не вижу... так "любое приложение в .НЕТ" значит любое? или только концепцию? вообщем странная позиция...
Скорее на механизм сравнения чисел: 2.0 + 1.5 * i (.NET) 1.9 + 0.9 * i (Mono) Мы сравниваем 2.0 и 1.9, а как ты эти числа сравниваешь я не понимаю... |
Автор: Kefir 5.5.2008, 08:33 | ||||||||||
ещё раз. я уже сказал - если идёт речь не о догоне .NET (суть фраза "догонять не надо"), то никаких претензий к моно нет. если же говорить о "догоне за 1 год" (из-за чего весь сыр-бор и начался), то это нереально в полном объёме. если же догонять в объёме CLR, то 1 год это уже другое дело. с какого? что .НЕТ не идеален? да, я знаю это. что там сть лишние вещи? да, это тоже так.
не понял... при чём тут С++? мы вроде как про моно и .НЕТ.
аллелуя. то есть в итоге мы говорим далеко не о .NET Framework, а только лишь о CLR. насчёт нафантазировал - это всё сказано тут:
получается высказывание в виде "мы говорим "партия" - подразумеваем "Ленин"" В) говорим почти догнал .НЕТ, подразумеваем только CLR. извините, конечно, меня за то что сразу не понял что разговор идёт только о CLR / C#, а не о самом фреймворке.
любое значит любое. ещё раз - есть "идея", а есть "реализация", понимаешь? можно написать программы с использованием реестра, а можно без. так? я не понимаю чего тут непонятного? |
Автор: HalkaR 5.5.2008, 10:18 |
Mono стремиться полностью реализовать ECMA 335 и все. Весь остальной фреймворк они догнать не стремятся. Насколько я знаю стандарт у них на 95% поддерживается. |
Автор: Exception 5.5.2008, 10:25 |
Не знаю, собираются ли Mono поддерживать WPF во всей его полноте, но Silverlight (edit: конечно, имелся ввиду Moonlight) уже http://tirania.org/blog/archive/2007/Jun-28.html для десктопа (правда, сейчас проект вроде бы неактивен — надо бы спросить). |
Автор: source777 5.5.2008, 13:32 |
Нет, мы говорим о .NET Framework, но у нас совершенно разные понятия о том, что он из себя представляет... Кстати, в аббривиатурах W*F, последняя буква расшивровывается как фреймворк, что явно указывает на то, что W*F не являются частью .NET Framework, а являются полностью отдельными фреймворками, использующими .NET Framework. Поэтому сколько бы ты не твердил вместе с MS, что WPF и иже с ним входят целиком и полностью в .NET я лично с этим категорически не согласен! Притом, что ты дал такое определение портируемости, что под него подходят не только Mono и C++, но даже к примеру Python или любой другой Тьюринг-полный язык, имеющий к-л графические привязки... |
Автор: archeg 5.5.2008, 13:45 | ||
Windows Presentation Foundation, Windows Workflow Foundation, Windows Comunicaiton Foundation. Где фреймворк? ![]() А вообще - это как спорить о стиле музыки. Все таки если авторы называют это одним фреймворком - значит это один фв. Если бы разными - значит это разные фв. Фреймворк - это как раз и есть тот "флакон" в котором предоставляют нам разные технологии |
Автор: Idsa 5.5.2008, 13:45 | ||
![]() P. S. Опоздал ![]() |
Автор: HalkaR 5.5.2008, 13:53 | ||
Аналогично опоздал ![]() Добавлено через 1 минуту и 35 секунд source777, у вас что P не работает? |
Автор: Kefir 5.5.2008, 14:43 | ||||
ну ладно, мы просто по разному смотрим на эти вещи. хочешь считать, что они не входят в .НЕТ - считай так. я хочу считать, что они в .НЕТ входят - и я так и считаю В) я же говорю - это как карикатуры с цифорой 6 с одной стороны и цифрой 9 с другой и двое спорят 6 это на самом деле или 9.
ну зачем так утрировать? ты же понимаешь, что мы говорим о моно. и я понимаю что мы говорим о моно. и ты прекрасно понимаешь что я имел в виду портирование с .НЕТ на моно. не на питон, не на асм, а именно на моно. не надо придираться к словам, я не юрист и точных безоговорочных определений давать не научен. |
Автор: source777 5.5.2008, 15:07 | ||
![]() |
Автор: Любитель 5.5.2008, 15:10 | ||||||
Насколько я знаю все эти либы (как и большинство вещей Моно, кроме как направленных идеёно на никсы - типа Mono.Posix) отлично работают по МС-шным CLR. А вот новенькие МС-шные либы (большинство) - нет. В данном случае это, конечно, проблема МС (минус в их сторону, что некроссплатформенно пишут ![]()
Ну, XLib-овские ивенты идейно, конечно похожи, но вообщем-то, без сомнения, здесь проблема ВинФормз. Проблема в первую очередь наличие классов/методов с низким уровнем абстракции (платформопривязанными). Конечно, вроде как они и нужны, но... Да и вообще ВинФормз как гуёвая либа не супер хорошая. Портирование ВинФормз не столь важно на самом деле (только с целью запуска чего-либо из имеющегося на винФормз под никсами, что иногда и удаётся). Что касается гуя под никсы - то это вообще спорный вопрос...
Но вот принципы всё-таки те же ![]() |
Автор: mr.DUDA 5.5.2008, 16:06 | ||
Изначально тема была про IDE, так давайте не будем отклоняться от неё по неевклидовой кривой. Холивар на двух страницах уже. |
Автор: ivashkanet 5.5.2008, 16:36 |
mr.DUDA, так выдели ее, плиз, в отдельную тему и присоединяйся к пьянке ![]() |