| Eugene ( @ 2006-01-09 08:54:00 |
| Entry tags: | программирование |
Программистское
Сейчас на работе пишу нечто вроде сервера приложений на C#. Чтоб .Net-объекты были доступны через remoting (аналог явовского RMI). Хочется сделать такую фичу - чтоб увидев новую версию сборки сервер выгружал старую и загружал новую. Для серверов приложений на Java, например для JBoss - это стандартное поведение. А вот у .Net с этим явные сложности. Решил поискать что-нибудь готовое на соурсфордже. Нашёл проект NHost. Скачал исходники, заглянул в них, сначала недоумевал, потом долго смеялся. И ведь надо же, этот примерчик с двумя строчками логики имеет гордое описание «NHost is a universal server for DotNet objects. You create your assemblies with business objects and then use NHost to publish them. It is written in C# and works on .NET, Portable.NET and Mono on Linux and Windows».
И всё же, почему наши IT-специалисты, увидев что-то новое от Microsoft, тут же начинают пищать от радости и тащить эту каку в рот? Вот и сейчас, мне вместо работы с любимой Java приходится морочиться с C#. Вместо того, чтобы заюзать нормальный AS на Java, я изобретаю что-то своё, мужественно продираясь через тернии обильно взращённые Майкрософтом.
По мере углубления в C# сравниваю его с Java. Java удобен, логичен и прекрасен в своей эстетичности. C# рядом с Java выглядит этаким корявым уродцем. Хотя, если отвлечься от эстетики, в C# есть много приятных мелочей (например, в классе System.String есть методы PadLeft/PadRight, для Java аналогичные функции мне пришлось писать самому). В общем, несмотря на корявость реализации, C# вполне практичен. Но постоянная корявость весьма раздражает. Отсутствие checked exceptions, делегаты... Мерзость. :) Получить удовольствие от программирования на C# невозможно. Впрочем, все продукты Майкрософт производят отталкивающее впечатление, ну может быть за исключением Microsoft Office, который just work.