Здравствуйте, gandjustas, Вы писали:
KV>>1. Он слишком низкоуровневый. Почти такой же низкоуровневый для IL, каким является Си (без плюсов) для ассемблера. Есть мнение, что многим разработчикам, такая низкоуровневость только вредит. G>Это еще надо обосновать. Если C# низкоуровневый, то какой язык высокоуровневый?
Пролог
UNIX way — это когда тебе вместо туалетной бумаги дают топор, рубанок и карту близлежащего леса
Здравствуйте, Lloyd, Вы писали:
L>Здравствуйте, shrecher, Вы писали:
L>>>Оч. субъективно. Имхо, C# в этом отношении лучше.
S>>Начать с того, что C# требует VS, где нужно устанавливать "References", в тоже время в Питоне все текстовое.
L>C# не требует VS. Если очень хочется можешь работать с обычными текстовыми файлами и компилировать через командную строку. Просто в студии это делать удобнее.
Да, но производительность написания кода резко упадет.
Здравствуйте, shrecher, Вы писали:
L>>C# не требует VS. Если очень хочется можешь работать с обычными текстовыми файлами и компилировать через командную строку. Просто в студии это делать удобнее.
S>Да, но производительность написания кода резко упадет.
Конечно упадет. До уровня производительность написания кода на питоне.
S>>The worm exploits a known vulnerability in the Windows Server service used by Windows 2000, Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008, and the Windows 7 Beta
L>И что? Где сравнительный анализ win и lin платформ?
Здравствуйте, shrecher, Вы писали:
S>Здравствуйте, Lloyd, Вы писали:
L>>Здравствуйте, shrecher, Вы писали:
AF>>>>вопрос — а на что переходить?
S>>>Сейчас динамично развивается питон. Достаточно легок (осваивается человеком даже с очень средними способностями), не тянет за собой монстра ввиде VS и Питон бесплатен, портабелен практически на все платформы, поддерживается гигантом типа google — это один из их внутренних языков.
L>>Какие преимущества есть в питоне (как языке)?
S>Простота. Понятный синтаксис.
спорный момент
сишарп, до версии 3.0 имел очень понятный и ясный синтаксис
сча, согласен, как накрутили всяких лямбд, синтаксис становится всё запутанней и запутанней, но и даже сейчас каким-то "непростым" трудно его назвать
Здравствуйте, neFormal, Вы писали:
F>4. Он не позволяет решать весь спектр задач. Поэтому зависимость от шарпов больше порождена религиозными убеждениями, чем здравым смыслом.
А что вообще есть "зависимость от Шарпов"? Любой человек, пишущий на C# считается зависимым? Но это же глупо. Я так могу сказать, что у 50% населения планеты есть религиозная зависимость от лифтов — пользуемся же.
Здравствуйте, shrecher, Вы писали:
S>Здравствуйте, vit.rsdn, Вы писали:
VR>>Здравствуйте, shrecher, Вы писали: VR>>а чем таким обладает питон?
S>Все есть. http://www.djangoproject.com/
VR>>учитывайте еще мощные встроенные механизмы безопасности дотнета,
S>Во-первых, все это привязано к Винде, которая сама по себе, очень не безопасна. S>Во-вторых, насколько реально все средства дотнета используются рядовыми разработчиками? Все это только усложняет язык и платформы.
многие используют на полную катушку все возможности
кстати, если аналог механизма .NET Membership-ов (со всеми сопутствующими технологиями) для питана/руби?
VR>>мощные средства для работы с БД VR>>есть ли всё это для питона? VR>>или какие-то самописные ORM?
S>а чем "самописные ORM" лучше других, тоже самописных? Весь код, как бы кем-то написан.
S>Кстати говоря, ORM для C# тоже самописные (не Microsoft).
Linq2SQL
LinqToEntitites
ADO.NET Entity Framework
это то, что сама МС поддерживает
и есть кучи всяких там самописных NHibernate и прочих (если не устраивают оригинальные от МС-а)
мощные средства для внедрения АОР и DI в проекты а-ля Enterprise Library/Unity
где аналоги для питона/руби?
когда до ума доведут (думаю, в течении этого года доведут) ASP.NEt MVC, то предсказуемо быстро можно будет разрабатывтаь как простые сайты (как быстро это сча можно сделать на руби/питоне), так и сложные системы со сложной логикой.
Здравствуйте, neFormal, Вы писали:
F>Здравствуйте, kochetkov.vladimir, Вы писали:
KV>>1. Он слишком низкоуровневый. KV>>2. Он кажется слишком простым, пока не увидишь темы от nikov'a. KV>>3. Он мешает развиваться дальше.
F>4. Он не позволяет решать весь спектр задач.
в том-то и дело, с доведенными до ума ASP.NEt MVC, Azure Services, ADO.NEt Entity Framework, WCF (думаю, в течении этого года реально), дотнет(C#/F#) позволит предсказуемо качественно решать ВЕСЬ спектр задач для разработчиков (от простых сайтов до сложнейших систем)
Здравствуйте, Anton Batenev, Вы писали:
AB>Здравствуйте, vit.rsdn, Вы писали:
v>> у Руби есть менее производительное и более нестабильное решение Ruby on Rails v>> а чем таким обладает питон?
AB>Django?
почитал линку, вообще не нашел ничего такого, чего нет в дотнете, что бы там не было интегрировано сразу
кстати, можете провести сравнительный анализ и указать, чем Django лучше, чем ряд этих готовых сайтов http://www.asp.net/community/projects/ или вот этих http://www.codeplex.com/site/search?projectSearchText=portal&sortBy=Relevance&licenses=| (более многочисленных)?
под дотнет кучи готовых решений, и чем среди них выделяется Djngo
для особых любителей питона, можно и под дотнет Django запустить Microsoft shows Django running on IronPython
Здравствуйте, shrecher, Вы писали:
S>Достаточно легок (осваивается человеком даже с очень средними способностями), не тянет за собой монстра ввиде VS и Питон бесплатен, портабелен практически на все платформы, поддерживается гигантом типа google — это один из их внутренних языков.
Это всё замечательно, но что он мне даст полезного для решения моих задач?
wxWidgets — быстрая, удобная, компактная, многофункциональная, кроссплатформенная библиотека для написания программ любых видов сложности с использованием таких языков как С++ и Питон.
Включает классы (Windows/Linux/MacOS/...):
— работа с базами данных
— потоки, таймеры
— файловая система, работа с архивами
— обработка и вывод XML/HTML, HTML widget
— удобная юникодная строка и RichText
— быстрые алгоритмы работы со структурами данных
— работа со стандартными диалогами, окнами, готовые шаблоны, AUI, MDI, Doc/View, font mapping, layout, курсор, DC (графика), события
— унифицированные контролы на базе нативных API разных операционных систем, расширяемые и многофункциональные
— работа с FTP/HTTP/Sockets, можно использовать СURL
— IPC (interprocess communication) через TCP
— Preview and Printing framework
— Drag and Drop, Clipboard
— логи для отладки, средства создания контекстной помощи на базе HTML
— парсер коммандной строки, работа с процессами
Быстрая генерация кода, компактный размер бинарника, высокая скорость работы программ.
Лицензия лучше чем LGPL. Позволяет линковать статически и закрывать код.
Помощь коммьюнити через форумы. Много дополнительных библиотек.
Здравствуйте, vit.rsdn, Вы писали:
F>>4. Он не позволяет решать весь спектр задач. VR>в том-то и дело, с доведенными до ума ASP.NEt MVC, Azure Services, ADO.NEt Entity Framework, WCF (думаю, в течении этого года реально), дотнет(C#/F#) позволит предсказуемо качественно решать ВЕСЬ спектр задач для разработчиков (от простых сайтов до сложнейших систем)
это невозможно в принципе, т.к. оно заточено под одну платформу..
и критерии качества в студию!.
Здравствуйте, MxKazan, Вы писали:
F>>4. Он не позволяет решать весь спектр задач. Поэтому зависимость от шарпов больше порождена религиозными убеждениями, чем здравым смыслом. MK>А что вообще есть "зависимость от Шарпов"?
отказ от других способов решения задач, попытки сделать всё через единственный инструмент, презрительное отношение
Здравствуйте, vit.rsdn, Вы писали:
VR>сишарп, до версии 3.0 имел очень понятный и ясный синтаксис VR>сча, согласен, как накрутили всяких лямбд, синтаксис становится всё запутанней и запутанней, но и даже сейчас каким-то "непростым" трудно его назвать
Ну то, что Вы его не знаете еще не делает его синтаксис непонятным. Наоборот в 3.0 было сделано много именно косметических улучшений. Те же лямбды раньше реализовывались анонимными делегатами.
Сравним (кратко):
С# 2
class SomeClass<T>
{
private T _property1;
private IList<T> _listProperty;
public T Property1
{
get { return _property1; }
set { _proprty1 = value; }
}
public IList<T> ListProperty
{
get { return _property2; }
set { _proprty2 = value; }
}
}
SomeClass<string> someClass = new SomeClass<string>();
someClass.Property1 = "some string";
someClass.ListProperty = new List<string>();
someClass.ListProperty.Add("string1");
someClass.ListProperty.Add("string2");
C# 3
class SomeClass<T>
{
public T Property1 { get; set; }
public T Property2 { get; set; }
}
var someClass = new SomeClass<string>
{
Property1 = "some string",
ListProperty = { "string1", "string2" }
};
и т.д. еще многое другое.
Мы недавно переводили проект с С# 2 на С# 3 — код стал гораздо лаконичнее и читабельнее.
Здравствуйте, Константин Б., Вы писали:
КБ>Есть SqlAlchemy для абрагирования от диалектов SQL. КБ>А ORM как таковые в питоне не особо и нужны, в силу динамической типизации языка.
Каким образом динамическая типизация откидывает необходимость в ОРМ?