Сравнение C# и Java

Текущий метод Google для полнотекстового поиска, похоже, синхронизируется с Algolia или BigQuery с облачными функциями для Firebase .

Здесь представлен пример интеграции в полнотекстовый поиск Algolia Firebase и их пример интеграции BigQuery , который может быть расширен для поддержки полного поиска.

6
задан The Digital Gabeg 18 September 2008 в 21:31
поделиться

7 ответов

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

Таким образом, я попытаюсь перечислить как многие вещи, которые я могу помнить или которые были уже отправлены и отмечают, кто я думаю, имеет преимущество:

  1. Разработка GUI (толстый или тонкий). C#, объединенный с.NET, в настоящее время является лучшим выбором.
  2. Автоматизированная привязка источника данных. C# имеет сильный вывод с LINQ, также богатство 3-х библиотек деталей также дает край
  3. Соединения SQL. Java
  4. Автоупаковка. Оба языка обеспечивают его, но Свойства C# обеспечивают лучший дизайн для него в отношении методов set и методов считывания
  5. Аннотация/Атрибуты. Атрибуты C# являются более сильной и четкой реализацией
  6. Управление памятью - Java VM во всем тестировании, которое я сделал, далеко превосходит CLR
  7. Сборка "мусора" - Java является другим явным победителем здесь. Неуправляемый код с платформой C#/.NET делает это кошмаром, особенно при работе с GUI.
  8. Дженерики - я полагаю, что эти два языка в основном связываются здесь... Я видел, что положительные стороны показывают любую сторону, являющуюся лучше. Мое инстинктивное чувство состоит в том, что Java лучше, но ничто логика для базирования его на. Также я использовал дженерики C#, ВЫДЕЛЯЮТ и дженерики Java только несколько раз...
  9. Перечисления. Java полностью, реализация C# является borked, что касается меня.
  10. XML - Встряхните сюда. Возможности XML и сериализации, которые Вы добираетесь с.NET исходно, бьют то, что Вы получаете с затмением/Java из поля. Но существует много библиотек для обоих продуктов для помощи с XML... Я попробовал некоторых, и никогда не было действительно довольно ни одним из них. Я придерживался собственного C# XML, объединенного с некоторыми пользовательскими библиотеками, которые я сделал самостоятельно, и я привык к нему, настолько трудно, чтобы дать этому далекое сравнение в этой точке...
  11. IDE - Eclipse лучше, чем Visual Studio для работы не-GUI. Таким образом, Java побеждает для не-GUI и побед Visual Studio для GUI...

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

8
ответ дан 8 December 2019 в 13:51
поделиться

Другая вещь иметь в виду, можно также хотеть сравнить их соответствующий VMs.

При сравнении CLR и Java VM даст Вам другой способ дифференцироваться между двумя.

Например, при выполнении тяжелой многопоточности, Java VM имеет более сильную модель памяти, чем CLR (эквивалент.NET).

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

Одно различие - то, что C# может работать с Windows лучше. Оборотная сторона этого - то, что это ни с чем не работает хорошо кроме Windows (кроме, возможно, с Моно, который я не попробовал).

4
ответ дан 8 December 2019 в 13:51
поделиться

C# имеет лучший GUI с WPF, что-то, в чем Java традиционно был плох.

C# имеет LINQ, который довольно хорош.

Иначе эти 2 являются практически тем же - как Вы думаете, что они создали такую большую библиотеку классов так быстро, когда.NET сначала вышла? Вещи изменились немного с тех пор, но существенно, C# можно было назвать Java MS.

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

Не берите это в качестве чего-то большего чем мнения, но лично я не могу выдержать GUI Java. Это просто достаточно близко к Windows, но не совсем, таким образом, это входит в странную область долины, где это просто действительно огорчает меня.

C# (и другие языки .NET, я предполагаю), позволяют мне делать программы, которые отлично смешиваются с Windows, и это делает меня счастливым.

Конечно, это спорно, если мы не говорим о разработке настольного приложения...

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

Java:

  • Перечисления в Java ударяют так много задницы, ее даже не забавный.
  • Java поддерживает универсальное различие

C#:

  • C# больше не ограничивается Windows (Mono).
  • Отсутствие ключевого слова, внутреннего в Java, довольно неутешительно.
0
ответ дан 8 December 2019 в 13:51
поделиться

Вы сказали:

перечислимые типы, которые являются законченными классами, не только целыми числами со свежим слоем краски

Вы на самом деле посмотрели на вывод? При компиляции приложения с перечислениями в в затем чтении CIL, Вы будете видеть, что перечисление является на самом деле запечатанным классом, происходящим из Системы. Перечисление.

Инструменты, такие как Красный Логический элемент (раньше Lutz Roeder) Отражатель демонтирует его максимально близко к orginal C#, таким образом, это не сможет быть легко видимо, что на самом деле происходит под капотом.

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