Что функциям C# 4.0 придется вперед поощрить переключать с Java? [закрытый]

Вы все еще имеете дело с состоянием, и таким образом можете все еще быть укушены, если Ваши объекты параллелизируются прежде чем быть сделанным неизменным.

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

6
задан CPerkins 22 October 2009 в 10:40
поделиться

9 ответов

Make it run on as many platforms as Java?

Otherwise it is completely irrelevant to us.

.

.

.


Edit: For a discussion about Mono making .NET "cross platform", see https://softwareengineering.stackexchange.com/questions/20275/mono-is-frequently-used-to-say-yes-net-is-cross-platform-how-valid-is-that


Edit 2015: Microsoft has decided to open source the backend part of .NET, which will enable community to port this to even more platforms than Java runs on. I consider this the ultimate move against the oracle approach to Java evolution.

24
ответ дан 8 December 2019 в 02:06
поделиться

Общее распространение C # на рынке на самом деле не имеет ничего общего с языковыми функциями , которые, как я понимаю, теперь превосходят Java. Принятие C # требует полного организационного стратегического сдвига в основном:

  • У вас уже есть миллиард Java-приложений и множество Java-разработчиков. Зачем менять C #? Вам понадобятся новые сотрудники, и внезапно все ваши приложения станут устаревшими по определению . Это грандиозная сделка! Перенесение этого изменения подвергает вашу компанию огромному риску, который может быть лишь незначительной выгодой: зачем беспокоиться?

  • Вы привыкли, по крайней мере, к выбору многих крупных поставщиков операционных услуг. система и промежуточное ПО, которые поддерживают вашу экосистему Java. Это исчезает в одночасье, и вы подвергаетесь монопольной модели ценообразования (т. Е. вы в значительной степени привязаны к Microsoft во всех смыслах и целях). Быть объектом монопольного ценообразования - это плохо! Большинство организаций предпочли бы иметь небольшой технологический недостаток , чтобы избежать монопольного ценообразования, поскольку ценообразование почти наверняка отнимет любые дополнительные доходы.

15
ответ дан 8 December 2019 в 02:06
поделиться

I think .NET is great, but don't use it, because it lacks the #1 mandatory feature : portability. Yeah, there is Mono...

3
ответ дан 8 December 2019 в 02:06
поделиться

Еще одна вещь, которая действительно продвигает Java, - это Eclipse (*): это самая успешная и полная бесплатная среда разработки на сегодняшний день. И, вместе с огромным количеством доступных (в основном бесплатных) плагинов, соотношение цены и качества является непревзойденным.

Пара VisualStudio C # + Reshaper может приблизиться, но это еще не совсем так ...

(*): Некоторые даже говорят, что Eclipse - это основная причина, по которой Java нашла такое широкое распространение.

2
ответ дан 8 December 2019 в 02:06
поделиться

My answer is a litle about why I think so many use Java, but want to use c# in schools:

At my university, Java is the first language we learn, and is the language that we learn most about later also. I guess this is common.. But even tho we learn some python, c, c++ and already know a lot java, most students use C#. This is because everyone is told that C# will give them a job :) The school knows this, and I know one feature that would make C# the new primary choice for the school: make it run on all platforms =)

1
ответ дан 8 December 2019 в 02:06
поделиться

We were taught on college that there is nothing engineerical in MS Windows. How many people can (dis)agree with that?

How can we as developers answer to questions of stability, robustness, scalability, availability, transactional isolation, concurency when building some serious software system by working on an OS which is pale of 'something' and just anywhere you can expect some nonstandard behaviour surprise and potential source of problems which you can solve only by calling MS and pray God they will find a fix for you not in a long period.

Open Source is our only salvation.. Java respects standards, invests much energy in security model, keeps WORA, and it is rather simple language.

I can think of C# having unsafe pointer, thats just enough for me to give up on doing serious business with it if there are many people working on it. ..

0
ответ дан 8 December 2019 в 02:06
поделиться

На самом деле я не думаю, что у C # есть что-то меньшее, чем у Java, за исключением экосистемы, такой как IDE, фреймворки и т. Д. С точки зрения функций, он намного впереди момент по крайней мере.

6
ответ дан 8 December 2019 в 02:06
поделиться

Я бы определенно рассмотрел возможность использования C #, когда Microsoft покупает Novell и предоставляет официальную поддержку Mono.

Тогда следующий выпуск .net должен будет работать в Windows и Linux (OSX останется позади - как сегодня с Java, но с Java потому, что они хотели этого - )

До тех пор Mono отстает от последней версии .NET, и все еще добавляет к своему ядру некоторые специфические особенности Linux (например, «модуль» Mono.Linux), которые, очевидно, не работают в Windows.

Языковые функции великолепны, но если мне нужно что-то более «динамическое» для работы с , Я бы предпочел Ruby или Python

Но это только я.

0
ответ дан 8 December 2019 в 02:06
поделиться

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

Это даже не было. разработан для поддержки этого.

0
ответ дан 8 December 2019 в 02:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: