1 Востаннє редагувалося javascriptIsLife (03.01.2023 14:15:14)

Тема: Що таке є .NET

російська

„Технология .NET, все что вы хотели знать, но боялись спросить“. „IZONE“ 460. Рік 2003.

Топ–кантент який міг би зʼявитися на mblog.dev українському Хабрахабрі, але не зʼявиться тому що цей форум працює без JavaScript. Смерть JavaScript. Смерть .NET. Присвʼячується моїм ненаписаним програмам.

Смисл існування і причини появи .NET завжди були для мене загадкою. Якщо JVM я бачив в мобілочках і на Windows і на Linux і кажуть що воно є навіть в побутовій електроніці і на Java десь там пишуть якісь страшні копроративні програми, то .NET я зустрічав лише в Windows у вигляді такого собі тормозістора щоб програми працювали повільніше ніж вони могли б. Судячи з презентації схоже що у когось з „Microsoft“ таки дійсно були плани по захопленню світу через створення своєї власної JVM щоб можна було писати один раз і щоб воно потім запускалося скрізь. Щоправда потім щось пішло не так і по суті єдиною „платформою“ на якій .NET проявляв свою кроссплатформенність стала Windows. Навіть в Linux воно зʼявилося у вигляді кальки від Miguel de Icaza під назвою Mono до якого „Microsoft“ була не причепна. Дяка богам що на .NET написано не так вже й багато ширпотребних програмульок. Я б навіть написав що їх вкрай мало, але оскільки це лише мій власний досвід, то скоріш за все, їх більше ніж вкрай мало. Можу згадати про дві: „AdiIRC“ і „Freemake video converter“. І обидві якісь криві. Навіть програм на GTK+ чи Python в мене більше (3 штуки) і працюють вони краще. Останніми роками .NET–програм нібито більшає (новий „Daemon tools“?), але це не точно. Також „Microsoft“ провела ребрендинг .NET в модний, молодіжний і такий open source що всім open source open source .NET core яке тепер запускається навіть під Linux що звісно призведе до збільшення  кількості широпотребних програмок на .NET, але, на мою думку, мало вплине на стан речей.

Яскравим свідченням того що в „Microsoft“ якось трохи забили на ініціативу з .NET може слугувати Skype який переписали з того на чому воно було написано не на .NET (що було б не так вже й погано) а на дегенеративний HTML, CSS і JavaScript (HTML–сторіночка в Google chrome). Можливо що його потім в чергове перенесуть вже на .NET core.

На даним момент часу замість .NET ми отримали щось гірше — це JavaScript. І програми для кожної з яких потрібен свій власний Google chrome та гіг оперативки і ще з півгігабайта місця на диску.  :!

Що ж до сприйняття широким загалом програмістів, то .NET сприймається ними як такою собі золотою серединою між C++, WinAPI і не знаю чим. В будь–якому разі воно сприймається чимось простішим ніж такий складний C++ з його страшним ручним виділенням памʼяті освоїти який можна лише за сто тисяч мільйонів років. Щоправда ще ж був Fox Pro і Visual BASIC і ще інші слова про які я десь щось чув і є Delphi і COM, але це вже якась зовсім інша сторія.

Нащо ж воно треба це .NET? Судячи з тексту це в кожній дірці затичка і манна небесна.

  • .NET зробить ваші програми захищеними.

  • .NET захистить від злих програм які можуть заразити вашу ЕОМ страшними вірусами маскуючись під продукти від тих кому ви довіряєте.

  • .NET зробить так щоб програми підтримували „устрашающее количество всевозможных железософтовых платформ“.

  • .NET зробить так щоб ваш HTML виглядав однаково срізь.

  • З .NET не треба думати про памʼять адже там є автоматичне управління памʼяттю.

Вони і про якийсь „клиент-сервер“ згадують і натякають на те що .NET дасть якісь готові рішення для типових випадків:

російська

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

Не забувають і про кпроссплатформенність завбачливо згадуючи про те що більшість сидить з Windows:

російська

Теперь представим себе еще более невероятную вещь: приложение вышло удачным, и теперь его хотят купить буквально все. Но... эти "все" ограничены кругом пользователей Solaris, поскольку именно под нее делалась программа. Обидно, не правда ли? Особенно, если вспомнить, сколько сегодня пользователей у Solaris... Естественно, хочется, чтобы ваша программа работала абсолютно везде и для этого вам не пришлось бы переделывать ни строчки кода. К сожалению, сейчас существует просто устрашающее количество всевозможных железософтовых платформ, разобраться в которых не под силу никому. Конечно, лидирующее место занимает Wintel (что бы там ни говорили по этому поводу фанаты Unix), и под нее, собственно, пишется большинство ширпотребных программ и игрушек, но игнорировать все другие - не лучшее решение.

І навіть HTML:

російська

Кроме того, если вы пишете веб-приложение, которое должно выводить результаты своей работы в виде интернет-страницы, доступной для просмотра любому жителю Интернета, не стоит забывать про проблему отображения HTML-кода. В старые добрые времена HTML был простым и одинаково выглядел во всех броузерах. А теперь? Internet Explorer, Netscape, Opera, Mozilla - все они по-разному отображают контент сайтов. Некоторые вообще не поддерживают скрипты, а другие и помыслить страницу без них не могут. Что уж говорить про владельцев различных мобильных устройств, которые при помощи своих маленьких друзей лезут в www, как мухи на варенье? Тут, наверное, и комментировать ничего не нужно - разное ПО, разные физические размеры экрана - проблем выше крыши! И приходится писать для разных обозревателей разные странички. Конечно, можно оставаться в рамках HTML-тэгов, которые поддерживаются ВСЕМИ платформами (да-да, есть пара-тройка таких тэгов, которые везде отображаются одинаково, что, право, иногда даже удивляет), но тогда кроме слабо форматированного текста вам ничего пользователю показать не удастся. Текст без графики - в начале XXI века это звучит слишком грустно, согласитесь. Поэтому мы считаем, что это не самый удачный подход.

Часу затрачено більше години. Не знаю що за люди всі ці нікому не відомі герої що на Хабрахабрі або ще десь пишуть тексти. Мабуть якісь графомани. Доречі, після Хабрахабра хотів перерахувати ще щось подібне, але зрозумів що нічого подібно не знаю. Хтось знає?

2

Re: Що таке є .NET

.NET сприймається ними як такою собі золотою серединою між C++, WinAPI

Що за порівняння?

3

Re: Що таке є .NET

Цитати староболгарською під спойлер.

4

Re: Що таке є .NET

javascriptIsLife, виправте допис відповідно до п.1.1 Правил, інакше я його видалю.