Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > А нужен ли C#?


Автор: simanyay 19.5.2003, 20:15
Привет. У меня такой вопрос. Я сейчас полностью погружен изучением Java и Oracle. Также хочу изучить PHP. Но вот я встал перед вопросом: Так ли сегодня перспективен C# и стоит ли его изучать парралельно с вышеописанными предметами? Помогите определиться плиз.

Автор: IZ@TOP 21.5.2003, 11:01
Я считаю что это стоит сделать, так как это очень перспективный язык программирования, в котором по большей мере (или вообще целеком), преобладает объектно ориентированный подход ! Я его изучаю и он мне очень нравится, так как он немного на РНР похож biggrin.gif хотя может это тока мое личное мнение...

И вообще в данный момент Мелкософт продвигает его, и я так скажу что на рынке по йт книги по этому новому языку имеют довольно таки большой спрос (кстати говоря, если нужна подобная литература - http://rusedit.ru/

Автор: simanyay 21.5.2003, 14:08
Пожалуйста, кто проголосовал против, можно послушать ваши аргументы? А то не очень стабильный результат... Поровну если учесть, что один голос "За" мой.

Автор: IZ@TOP 21.5.2003, 15:11
Цитата
Пожалуйста, кто проголосовал против, можно послушать ваши аргументы? А то не очень стабильный результат... Поровну если учесть, что один голос "За" мой.

Ну так если ты думаешь что нужен, так в чем вопрос ? Я думаю, нет, даже знаю, что этот язык будет развиваться !!!

Автор: DENNN 22.5.2003, 11:03
А я не побоюсь высказаться против общественности smile.gif
Проголосовал против, потому что мне не нравится тенденция расписывать достоинства C#, а потом хаить все особенности C++ которые вдруг почему то стали называть недостатками. Все сравнивают с Java, говоря что есть все достоинства этого языка + куча новых вещей и прибамбасов. Замечательно. Я рад. Точно также рад, как и PHP, и Python. Все так странно поддались этой эйфории, даже те кто к майкрософту относился уничтожительно. Вспомните годы появления Java: обещалось примерно все тоже самое. Так и есть, но большинство пишет на Jave скрипты, а не кроссплатформенные приложения с мощными вычислительными возможностями.
Потому что создать новый язык - это сродни созданию новой идеологии. Язык должен пройти обкатку годами, прежде чем он действительно станет хорошим. Нельзя за пару лет взять и сделать технологию, которая будет лучше всего что создавалось полвека.

Взгляни на раздел форума .NET: акая бы замечательная технология не была, народ осваивает ее со скрипом.

Я проголосовал против, потому что не хочу, отлаживать свой код, минуя все препятствия, которые не заметила МС. Обычный заказ я делаю от 2 дней до недели.
Если ради праздного любопытства перепрыгну на шарп, то эта работа будет выполняться по 3 недели, и я не зная законченной логики (которой возможно еще и нет) использования шарпа и нета могу только невольно скопировать чужой код. Кто компенсирует мне потраченное время?

Я считаю, что следует подождать, пока технология "дозреет".

P.S. Если оглянуться назад, то в один прекрасный день окажеться, что твой код может выполняться только под IIS и на платформе МС smile.gif Сегодня нет доказательств обратного, а в обещания я не верю.

Автор: Vyacheslav 22.5.2003, 15:06
Если кто помнит, у меня аллергия на Microsoft. Но проголосовал я за С#. Вернее не за сам язык, а за то направление, которое он представляет - компонентно-ориентированные среды. Возможно его появление стимулирует развитие С++. Недаром Borland и Microsoft внесли в комитет по С++ свои предложения по введению поддержки компонентной среды в С++

Автор: AntonSaburov 22.5.2003, 18:33
Цитата
Так и есть, но большинство пишет на Jave скрипты, а не кроссплатформенные приложения с мощными вычислительными возможностями.


JAVA язык не для вычислений, не для этого он был сделан. Для вычислений лучше FORTRAN'а вообще ничего нет smile.gif
Но могу утверждать, что JAVA имеет очень большое влияние на сегодняшнее программирование - серверные системы, Интернет-решения очеень удобно и быстро создаются именно с помощью JAVA.

А если интересно мое мнение по поводу C#, то
1. Это действительно удобный и гораздо более современный язык, чем Basic
2. И если Microsoft смогла пропихнуть такой язык как Basic, то вполне пристойный язык она раскрутит.

Во всяком случае уверен, что C# надолго.

Цитата
Я проголосовал против, потому что не хочу, отлаживать свой код, минуя все препятствия, которые не заметила МС. Обычный заказ я делаю от 2 дней до недели.


Такого рода проекты не показатель. Нормальный проект длиться от полугода до 2-3 лет. А то и больше.
Для таких коротеньких заказов кроме голой алгоритмики и какой-то простейшей базы ничего не надо.

Цитата
Если ради праздного любопытства перепрыгну на шарп, то эта работа будет выполняться по 3 недели, и я не зная законченной логики (которой возможно еще и нет) использования шарпа и нета могу только невольно скопировать чужой код. Кто компенсирует мне потраченное время?


Надо сначала перепрыгнуть, а потом утверждать.
Могу сказать по своему опыту - скорость разработки после хорошего знакомства с .NET существенно вырастает. Очень обширная библиотека классов, удобная среда и много всяких вкусностей.

Автор: simanyay 22.5.2003, 20:17
Цитата
Ну так если ты думаешь что нужен, так в чем вопрос ? Я думаю, нет, даже знаю, что этот язык будет развиваться !!!

Я не знаю нужен или нет, но что-то меня тянет его изучить. Вот и решил сомнения развеять здесь.

Автор: simanyay 22.5.2003, 20:19
Цитата
...Так и есть, но большинство пишет на Jave скрипты...
Извиняюсь за офтоп, но разве на Java можно писать скрипты?

Автор: IZ@TOP 23.5.2003, 08:32
simanyay А что тогда такое JavaScript ?
И вообще этот язык самый что ни на есть ООП !

Автор: DENNN 23.5.2003, 10:48
Цитата
Нормальный проект длиться от полугода до 2-3 лет

Я же сказал обычный проект. Проект на 2-3 года должен стоить больших денег, хотя бы потому что мне и другим людям нужно все это время платить з/п. Сколько набегает? Такие заказы редкость и на дороге не валяються smile.gif

Сам то над чем работаешь, если не секрет? smile.gif

Автор: DENNN 23.5.2003, 11:33
Цитата
И если Microsoft смогла пропихнуть такой язык как Basic, то вполне пристойный язык она раскрутит.

Голословное утверждение: "Это круто, потому что такой-то авторитет обещал пропихнуть"

Цитата
Это действительно удобный и гораздо более современный язык, чем Basic

Согласен. Но ведь на байсике тоже легче начать программировать чем на C++ или PHP, но это же еще не повод не пользоваться последними?

Цитата
Но могу утверждать, что JAVA имеет очень большое влияние на сегодняшнее программирование - серверные системы, Интернет-решения очеень удобно и быстро создаются именно с помощью JAVA.

Конечно. А какие серверные решения создаються на базе от Майкрософта? Их сайт ужасно тормозной - ASP+серверные технологии. Покажите дельный сайт. На JAVA я видел много достойных вещей.

Я не утверждаю, что это плохо, но считаю что бросаться сломя голову в новую технологию только на основе этих рассуждений не очень осмотрительно. Я "конечный пользователь" технологий программирования, и я хочу увидеть факты, показывающие определенное превосходство в каких-то областях. Пока же все только еще пытаются развивать это направление.

Автор: desyatnik 23.5.2003, 15:09
Цитата(Iz @ 23.5.2003, 08:32)
simanyay А что тогда такое JavaScript ?

JavaScript (а точнее - ECMAScript) - язык, который на Java похож только синтаксисом. Фактически он отличается от Жабы даже больше, чем Си/++/#. Абсолютно другая идеология программирования, абсолютно другая направленность.

Автор: RAN 24.5.2003, 06:06
Я вот тут отдал свой голос ЗА, но видно вопрос не правильно понял, опомнился позно. Я хотел сказать, что изучать всё новое обязательно надо, чтоб в один прекрасный день не оказаться в прошлом поколении. Тем более, что зная C++, Java и им подобные языки освоить C# совсем не трудно, а вот не зная Java придётся потратить времени чуть больше (хотя тоже не очень много).

А вот насчёт необходимости C# как такого, то я тут затрудняюсь определиться с позицией. Всем известно, что появление C# обусловленно прежде всего конфликтом MicroSoft и Sun и потому неизвестно, чтобы было если бы они договорились, ведь Borland и Microsoft умудрялись разрабатывать C++ параллельно, а вот с Java не прошло, но не выбрасывать же наработки Билу на ветер, пусть, наверно, развивают, конкуренция - это хорошо.

Автор: desyatnik 24.5.2003, 09:07
Не следует допускать распространённую ошибку и анализировать C#/.NET по аналогии с Java/JVM. Последние - "неразлучная парочка", одно без другого никак не может. C# - всего лишь один из языков, поддерживаемых .NET, хотя и очень хорош (IMHO лучший из этой группы языков).

Автор: simanyay 24.5.2003, 18:55
Цитата
JavaScript (а точнее - ECMAScript) - язык, который на Java похож только синтаксисом. Фактически он отличается от Жабы даже больше, чем Си/++/#. Абсолютно другая идеология программирования, абсолютно другая направленность.


Поэтому то я и удивился. Так значит на Java скрипты писать нельзя?

Автор: Vyacheslav 27.5.2003, 14:01
Цитата(DENNN @ 23.5.2003, 10:48)
Цитата
Нормальный проект длиться от полугода до 2-3 лет

Я же сказал обычный проект. Проект на 2-3 года должен стоить больших денег, хотя бы потому что мне и другим людям нужно все это время платить з/п. Сколько набегает? Такие заказы редкость и на дороге не валяються smile.gif


DENNN
Не обижайся, но мне тоже бросились в глаза те сроки, которые ты назвал (2 дня-2 недели). Я просто не представляю задачи, которые можно создать так быстро, хотя пишу на С++Builder. А это достачно скоростной продукт. Можешь дать для интереса область их применения. К сожалению, мне таких задач не ставят. У меня средний модуль (dll) к проекту тянет на 1 месяц - минимум на 2-3 недели, но это всего лишь составляющая проекта. А сам проект разрабатываем уже полтора года и конца еще не видно (Планирование производства в строительстве: работают 4 программиста и 4 аналитика). Сейчас меня пригласили на другой проект: автоматизация деятельности оптовой фирмы. Первый результат(предварительный) предполагается получить после 1 года работы 4-x программистов. И как ни странно ни у кого вопросов по длительности сроков не возникает

Автор: DENNN 28.5.2003, 12:33
OK smile.gif

Стереоизображение 3D моделей методами OpenGL на стандартной конфигурации. 1 неделя
Рекламный 3D Screen Saver с динамически изменяющейся сценой и источникаи света 1 неделя + ~5 дней в 3D Max'e
Утилита для создания пространственных моделей домов по их контурам, формам крыш и длинам теней. Утилита автоматически размещает дома на цифровой модели рельефа и имеет графическое 2D отображение (будет и 3D стерео, если потребуется). Экспорт результатов в обменные форматы. 2 недели.
Клиент + БД на MS SQL компоненты для ввода, учета и автоматического создания графической презентации товаров для известной фирмы, реализующей строительное и монтажное оборудование. 2.5 недели
Импорт в БД пердыдущего проекта информации текстовой и графической из внешних источников. Экспорт в PostScript, со всем полиграфическим оформлением и изображением товаров, в стиле фирменного дизайна. 2 недели. (Считаю отдельно, потому что два разных заказа)

Создание презентаций на CD - наша фирма выполняет олностью за две недели (то есть я + дизайнеры).

Программа для сбора пространственной и атрибутивной информации из Excell, статистического анализа и экспорта в форматы MapInfo, DXF и текстовый вид. Программа автоматически расчитывает форму и конфигурацию земельных участков на основе данных о землепользователях. 1 неделя (+ многолетнийопыт smile.gif )

2 два конвертера для преобразования ранее накопленной информации в единый обменный формат Единого Государственного Реестра Земель для Федерального Кадастрового Центра "Земля"

Список решаемых задач далеко не полный.
Дальше продолжать?

Автор: desyatnik 28.5.2003, 21:38
Цитата(simanyay @ 24.5.2003, 18:55)
Поэтому то я и удивился. Так значит на Java скрипты писать нельзя?

Разумеется, нет. Под скриптами я имею ввиду несамостоятельные программы, которые предназначены для расширения возможностей / управления "материнской" программой. Хотя... апплеты в некотором смысле являются скриптами. В общем, в отличие от Java, ECMAScript изначально предназначен для скриптования и на что-либо большее не способен (без внешней помощи в лице универсального интерпретатора и библиотек a la Tcl).

Автор: AntonSaburov 29.5.2003, 18:44
Цитата
Сам то над чем работаешь, если не секрет?


Сейчас проект - общение с физическим устройством по
COM-порту. Достаточно сложный алгоритм общения, данные
в базе данных - вообщем полный набор от WinAPI через COM до
.NET в котором используются и файлы конфигурации в виде
XML и база данных и интерфейс для пользователя.
Проект расчитан на 4-5 месяцев. Скоро заканчиваем.
Дальше предполагается проект до конца года - там тоже общение
с устройствами и тоже все очень наворочено.
Кроме этого идет проект системы финансового учета предприятия.

Вообщем работы много и она пока есть - что приятно.

Автор: guid 13.6.2003, 07:07
Мне кажется что изучать C# стоит.
Поскольку такая компания как Microsoft не зря
тратит милионы баксов на протолакивание этого языка и вообще .NET!

Автор: DENNN 13.6.2003, 11:24
Цитата
Поскольку такая компания как Microsoft не зря
тратит милионы баксов на протолакивание этого языка и вообще .NET!

smile.gif
Я могу только повторить высказывание о крутизне кого-либо.

Автор: Vit 22.6.2003, 08:25
Я как всегда с прагматичной точке зрения... Ответить на вопрос в такой постановке довольно сложно. Прежде всего определись с целями, которые ты преследуешь:

1) Если для общего развития: то надо ознакомиться хотябы на уровне программы "Hello World" и скорее почитать о языке, чем его изучать

2) Если есть предположение сделать его одним из основных языков программирования, ты учил что-то устарелое и пришло время осваивать что-то современное то тогда надо посмотреть более пристально
попробовать программировать...

3) Если стоит вопрос о поиске работы, тем более за рубежом, то учить надо: сейчас рабочих мест для знающих .net становится всё больше, а без его знания всё меньше.

4) Если имеешь хорошую работу, стабильность в материальном плане, терпеть не можешь MS то на кой его тогда учить? Можно даже и не открывать.

2 DENNN - "дозреет технология" - звучит красиво, но вот например Java дозрела, программистов на ней более чем достаточно, работу найти трудно... А те кто выучили совсем ещё недозревшую бету C# полтора года назад успели отхватить весьма перспективные места.
Проекты на 2 недели даже проектами можно назвать с определённой долей натяжки - это скорее мелкие утилиты. Обычно мелкие проекты - это если задействовано менее 10 программистов на срок не более полугода, средние проекты это когда не более 100 программистов на срок не более 1 года...
По поводу проталкивания MS какого-либо продукта... нравится Вам продукт MS или нет, опыт последних 20 лет говорит, что даже самые бредовые идеи, которые берётся воплощать MS оказываются весьма популярны и жизнестойки (достаточно вспомнить хотя бы BASIC - ну кто в здравом уме мог предположить например 15-20 лет назад, что детский недоразвитый нелогичный язык через десятилетие станет одним из самых распространённых? Ваш покорный слуга былбы весьма изумлён, скажи ему тогда такое. Не думайте, что мне нравятся языки программирования от MS и сама технология .net, скорее наоборот, но надо смотреть в лицо реалиям.



Автор: DENNN 22.6.2003, 17:11
Как я уже объяснил: я не хочу чтоб это проталкивание осуществлялось за мой счет. Потому как поиск мной неисправностей позволит майкрософт в дальнейшем совершенствовать свой продукт и получить прибыль, а для меня это сейчас означает лишь потерю времени сил и денег. Иными словами, я не хочу бесплатно исправлять чужие ошибки. Они ведь седмую студию не бесплатно продают?
Вот именно поэтому я не стал бы сейчас рисковать проектами, разработка которых занимала бы болше чем тем 2-3 недели. В начале своей кареры МС старалась всгда обеспечивать обратную совместимость, сейчас же 6 эксплорер в своей работе иногда отличается от 5, некоторые проги, написанные под DirectX7 не работают под 8. Каждый сам сможет продолжить список sad.gif Ведь создатели этих не работающих программ в сущности доверились именному принципу совместимости.
А теперь представте расходы в случае когда
Цитата
когда не более 100 программистов на срок не более 1 года...

а через год что-то также изменилось (очередной DirectX10 вышел и т.п.) и теперь оказывается, что для того чтоб дописать пару модулей необходимо переписывать ядро, потому что оно уже работает не так, как было задумано. Это и значит "дозреть". В C++ стандат на язык, компиляторы, культура написания кода существуют уже не один десяток лет. И я знаю, что если необходимо решить некоторую прикладную задачу, то на этой технологии я смогу это сделать почти всегда и воспользоваться тем компилятором и средой разработки, которая мне наиболее подходит. Ситуация с .NET иная - стандарт в руках коммерческой организации, которая монополист не только на технологию, но и устанавливает правила игры в соответствии со своими интересами. Возможно понимание этого придет в последствии, так же как с годами исчезла эйфория связанная с появлением JAVA - технология нашла свою нишу на рынке и "все встало на свои места".
А что касается
Цитата
например Java дозрела, программистов на ней более чем достаточно, работу найти трудно...

то не стоит забывать, что многие из этих программистов ориентировались на интернет технологии (особенно когда был большой спрос на знающих эти технологии, а специалистов не хватало).
Но (поправте если я ошибаюсь) сайты и т.п. чаще всего отражают некоторую информацию, которая собрана с использованием других технологий: публикация БД, поддерживаемой клиент-серверными технологиями, заказ продукции в инет-магазине и т.п.. Появление новых видов этой информации, требующей публичного доступа, идет медленее чем сама процедура публикования в инете.

Автор: desyatnik 13.7.2003, 21:21
Цитата(DENNN @ 22.6.2003, 17:11)
Ситуация с .NET иная - стандарт в руках коммерческой организации, которая монополист не только на технологию, но и устанавливает правила игры в соответствии со своими интересами.

Не говори ерунду. Во-1, стандарт - в руках ECMA, а не MS. Во-2, к концу года обещают доделать Mono (хотя кое-чем уже сейчас вполне можно пользоваться). У GNUтых тоже какие-то разработки есть...

Автор: BiT 15.7.2003, 10:35
Цитата(DENNN @ 23.5.2003, 11:33)
Конечно. А какие серверные решения создаються на базе от Майкрософта? Их сайт ужасно тормозной - ASP+серверные технологии. Покажите дельный сайт. На JAVA я видел много достойных вещей.

Информационная система Лондонской фондовой биржи :-). А вообще-то единственный ( и для кого-то самый весомый аргумент :-) ) плюс Java - многоплатформенность.По части скорости .NET стабильно в 5-6 раз быстрее J2EE при не менее хороших возможностях к масштабированию, работая при этом почти на порядок дешёвом железе. И уже знаменитый список "success story" во главе с Pet Store, перенесённый c J2EE на .NET, еженедельно пополняется гораздо более крупными и долговременными проектами на .NET, перенесёнными с J2EE. Да и примеры из собственного опыта имеются, когда аналогичная по функциональности система на .NET была на порядок быстрее реализованной на J2EE ( причём систему на J2EE реализовывали не последние люди на Java-арене России ),предметная область системы - Интернет Банкинг.

Автор: kor 18.7.2003, 06:57
Я проголосовал против и вот почему :
Насколько я понимаю ты сейчас уже изучаешь JAVA:
JAVA и .NET имеют очень близкую область применимости.
Для того чтобы делать приложения из этой области применимости тебе достаточно одного
из них. так что используй JAVA так как ты его уже изучаешь.
И если ты крут в JAVA то изучить точку нет тебе будет несложно - они похожи.


К тому му же я как человек работающий под JAVAой и в фирме занимающейся развитием JAVA не верю что .NET ее порвет. Но как говориться поживем увидем...

Автор: QryStaL 7.12.2007, 11:44
Как оказалось, перспективно... Язык развивается, появляется все больше возможностей, зарплаты растут, спрос тоже =)

Автор: RWander 7.12.2007, 22:50
Хотелось бы опять услышать мнения людей, которые писали в этой теме 4 года назад)) как изменилось их отношение к технологии .NET..

Автор: Валерия 8.12.2007, 14:10
Минуса:

Самый большой минус, это то, что для того что бы работали C# программы, нужно ставить dotnet, без этого - никак (ну или если использовать сторонний софт для встроенного дотнэта, то будет под 20мб весить простейшая программа)

Второй минус - C# хоть и кроссплатформенный, но только под винду smile
Имеется ввиду клосплатформенность, что кроме как под обычную винду, можно писать под Windows Mobile.

Еще минус - скорость выполнения одинаковой задачи, ниже чем, допустим, у C++ т.к C# это полукомпилятор и полуинтерпретатор.

Также большой минус что любую (возможно не любую) программку, можно дэкомпилировать, вплоть до того что будет на руках весь исходник.

Плюса:

Довольно перспективный язык. Сейчас Майкрософт его сильно развивает...

Довольно много предложений за границей на хорошую зарплату, т.к DotNET программистов меньше чем других (этот пункт, касаеться также Java)

Самый большой плюс - сам язык очень удобен. Здесь делалось все для удобства работы самого программиста, очень хорошая среда, очень много готовых решений для самого программиста.

Еще небольшой плюс, то что програмки на C# меньше весят чем на других языках (Delphi, C++) (в этом неуверена, возможно я в компиляторах не ставила настройки на оптимизацию веса и тп)


Ах да, еще добавлю:
ВСЁ ЧТО НАПИСАНО ВЫШЕ ЛИШЬ МОЁ ИМХО!
Хотелось бы выслушать комментарии / опровержения моих пунктов, т.к сама я C# занимаюсь не более месяца.

Добавлено спустя несколько минут
И еще, этот пост я написала не читая ничего кроме первого поста, что бы сравнить, сходиться ли мое мнение с мнением других. В чемто сходиться smile

Автор: farad 8.12.2007, 17:03
Цитата(Валерия @  8.12.2007,  14:10 Найти цитируемый пост)
Самый большой минус, это то, что для того что бы работали C# программы, нужно ставить dotnet, без этого - никак
ни одна программа написанная для винды не запустится под досом. кстати если 24 мега проблема, тогда нужно писать проги для консоли в 3-м борланде и не парится чтобы апгрейдить свой 286й. Есть еще QT, но это к яве мало имеет отношения. щаз даже софт к некоторым видеокартам требует .NET
Цитата(Валерия @  8.12.2007,  14:10 Найти цитируемый пост)
Второй минус - C# хоть и кроссплатформенный, но только под винду
довольно смелое заявление. можно поискать на тему silverlight - интересно. Ну про моно даже и не говорю
Цитата(Валерия @  8.12.2007,  14:10 Найти цитируемый пост)
Также большой минус что любую (возможно не любую) программку, можно дэкомпилировать, вплоть до того что будет на руках весь исходник.
охота скрыть исходник - можно использовать обфускатор(ява кстати без него тоже легко декомпилится), можно хранить критичные сборки в зашифрованном виде и загружать их после расшифровки непосредственно из памяти.
Цитата(Валерия @  8.12.2007,  14:10 Найти цитируемый пост)
т.к C# это полукомпилятор и полуинтерпретатор.
ошибочка вышла - это все про яву(про раннюю точно), а вот код шарпа как раз полностью преобразуется в машинный код.


Цитата(Валерия @  8.12.2007,  14:10 Найти цитируемый пост)
ВСЁ ЧТО НАПИСАНО ВЫШЕ ЛИШЬ МОЁ ИМХО!


здесь я солидарен - этом мое имхо

Автор: Vasay 8.12.2007, 17:18
Старая, конечно, тема, и ответ, наверно, уже  не актуален, но все же свое мнение скажу, для тех кто задастся таким же вопросом (что-то злой я сегодня  smile  )

Цитата

Я сейчас полностью погружен изучением Java и Oracle. 


полностью погружен? Так нефиг распылятся, выучи нормально что-то одно.  К тому же .NET c C# от JAVA не так уж сильно отличаются. 

А PHP вобще отдельная тема и сравнивать ее с java/.NET все равно что сравнивать седельный тягач и скутер.

Если будешь хорошим java программистом, то php за день два освоишь. Да и писать сразу  грамотно будешь, с использованием классов и MVC (да-да на PHP такое тоже возможно).

Автор: stab 8.12.2007, 20:15
RWander, хоть и не писал четыри года назад в этой теме, но отвечу, отношение изменилось в сторону неоднозначного:

1. всё бОльшая ориентация на веб и БД, что, лично меня, не радует.

2. большое количество плохо документированных тонкостей, которые отчего-то упоминаются только в книгах или в потаённых местах MSDN, вроде статей или KB.

3. до сих пор в .NET содержатся опасные\тупиковые патерны, которые похоже не собираются доводить до ума. чего один IDisposable стоит.

4. WinForms конец, на смену приходит крайне тормозной конь - XAML, с которым, кроме всего прочего, без Blend'а работать затруднительно - опять денюжку плати. в Висте ситуация с XAML конечно получше в плане производительности, но в целом ситуация с Вистой неахти какая, на фоне Висты XAML вполне себе не тормозит.

5. оптимизированная JIT-компиляция оказалась сказкой, практически никакой адаптации к возможностям процессора нет, есть только инлайн, который имеется и в native-языках.

6. средства защиты приложений стоят каких-то космических денег, по сравнению со средствами для native-приложений. при том, что система комманд x86-(64) намного сложнее, чем IL, для обфускации\мутации и прочих трюков, там никаких тебе мета-данных нет.

7. сам фреймворк слабо приспособлен для расширения, куча sealed классов. я понимаю, что агрегация - это есть хорошо, более подвластно среднему разуму и более надёжно, но предоставьте тогда механизмы выдачи агрегированных интерфейсов наружу без лишней возни, и будет вам множественное наследование, о котором так много говорили большевики. спасибо хоть extension-методы добавили, но это решает только часть проблем.

8. LINQ - хорошая вещь, но почему он такой куцый в C#? понадеялись на лямбда-выражения, но зачем тогда вводили LINQ-синтаксис? extension-методов и лямбд хватило бы на все нужды и не пришлось бы комбинировать LINQ + extension-methods + lambda + костыли для реализации того, что по неизвестным причинам было решено делать без лямбд и не включать в синтаксис LINQ для C#. в VB, как правило, всё делается одним LINQ-выражением.

в целом ощущение такое, что путь в светлое будущее потерялся.. за деревьями леса не видно. зато мы имее просто офигенно-архи-мега-удобную IDE, и это многого стоит.

Автор: Experimenter 8.12.2007, 23:20
Как-то неожиданно возникло продолжение темы спустя 4 года. Но подведем итоги.
1. Однозначно есть тот момент, что возьми LINQ и XAML, это все больше напоминает макросы VBA (кнопка 'Запись'-пара действий-кнопка 'Стоп'). Это мои ассоциации. И это мое сугубо личное мнение.
2. 
Цитата
всё бОльшая ориентация на веб и БД, что, лично меня, не радует.
лично меня это радует, к этому и движется планета, я например только "ЗА". За то, чтоб юзер из России или Хорватии, например, общался с юзером из Конго, при этом не чувствуя языковых барьеров (говорю только о веб).
3. 
Цитата
средства защиты приложений стоят каких-то космических денег, по сравнению со средствами для native-приложений. при том, что система комманд x86-(64) намного сложнее, чем IL, для обфускации\мутации и прочих трюков, там никаких тебе мета-данных нет.
Здесь на сто процентов согласен, не хочу, чтоб любой юзер-лузер декомпилировал мои_бессонные_ночи, методы_проб_и_ошибок и выдал это за свое собственное произведение.
4. Действительно, как только более-менее начинаешь углубляться в дебри, натыкаешься на имплементацию нативного кода. Здесь недоработка налицо.
Немного сумбурно, но думаю, что мысль понятна, если непонятна, то пишите, обсудим.

З.Ы. Тем не менее ---.NET FOREVER!!!---

Автор: stab 9.12.2007, 10:55
Цитата(Experimenter @  9.12.2007,  03:20 Найти цитируемый пост)
лично меня это радует, к этому и движется планета, я например только "ЗА". За то, чтоб юзер из России или Хорватии, например, общался с юзером из Конго, при этом не чувствуя языковых барьеров (говорю только о веб).

да я тоже не против этого в общем-то, просто платформа обрастает технологическим мясом второго поколения, и язык развивается в соответствии с потребностями этого мяса, а не обтачивается напильником до своего совершенного вида.. есть в этом что-то неправильное. бизнес - это бизнес, ничего тут не поделаешь.

Автор: RWander 9.12.2007, 12:35
Спустя 4 года, эту тему нужно переименовать в "А нужен ли С#3?"

Автор: firstone 10.12.2007, 18:03
Приветствую!

Я программирую на C#. Могу сказать, что язык удобен. Всплывают конечно иногда всякие там желания иметь то-то и то-то. Думаю, что язык очень перспективен.

Но! Учить его не стоит. Только потому, чтобы не поддерживать Microsoft. Я сейчас изучаю Java и надеюсь в скором будущем полностью перейти на эту технологию. Я понял, что совершил ошибку установив дома Винду и все остальное. Вот уже год как я не пользуюсь виндой (у меня линукс). Народ, самый лучший способ не поддерживать MS - не использовать ее продукты.

Зачем я это делаю? Я верю в то, что если и дальше MS будет так стремительно захватывать рынок, то хуже будет только нам. Заметьте я не фанатик. Я не делаю этого из-за каких-то предубеждений. В корне моей идеологии стоит исключительно рационализм.

С уважением, firstone.

Автор: Vasay 10.12.2007, 18:18
firstone,  smile  smile  smile  Так держать!!!  Поддерживаю!

Извеняюсь за оффтоп  smile  просто напомнило:

http://img.artlebedev.ru/news/2007/gm/g-m.gif

Автор: fantast 10.12.2007, 18:21
имхо топ полный бред, одно дело если б вопрос был скажем: нравиться ли вам c#, хотя и эта тематика уже заезжена..

с точки зрения нравиться/не нравиться: я не люблю языки очень высокого уровня потому что это делает его менее гибким, что можно сделать на си (правда и займет это соответственно больше времени) на си шарп делается местами почти без участия пользователя, другими словами мне нравиться когда все в моих руках, а не просто я даю поверхностные пожелания компилятору.

с другой стороны шарп конечно и гибок, и силен.. язык хороший + платформа .net со всеми наворотами, несмотря на то что я криво смотрю на микрософт.

итого, шарп как инструмент для быстрой и надежной разработки отлично подходит, возможно он не найдет место в сфере точных, быстрых и тяжелых расчетов, но мне кажеться ему это и не надо. Абсолютно сильная его сторона оконные приложения и интерфейс.

Автор: QryStaL 10.12.2007, 18:57
Vasay, нафига было картинку эту аттачить? Кинул бы ссылку, кто захотел - зашел бы... А так непонятное полотно посреди экрана...

Автор: Vasay 10.12.2007, 19:18
Цитата(QryStaL @ 10.12.2007,  18:57)
Vasay, нафига было картинку эту аттачить? Кинул бы ссылку, кто захотел - зашел бы... А так непонятное полотно посреди экрана...

smile 

Да ты прав. Сори.

Автор: QryStaL 10.12.2007, 21:15
Vasay, другое дело  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)