Microsoft перевел в Open Source еще одну часть стека технологий ASP.NET

Original author: Miguel de Icaza
  • Translation
Пару дней назад Microsoft анонсировал что еще один компонент .Net Framework будет доступен для скачивания в исходных текстах по лицензии Apache License 2.0. Таким образом, теперь весь ASP.NET стек распространяется в исходных текстах, включая Razor Engine, System.Json, Web API и Web Pages. Он доступен как для скачивания так и для просмотра истории изменения. С этим релизом вся группа проектов будет работать по правилам Open Source, делая возможным включения своего собственного функционала и исправления ошибок любым членом сообщества, при полной поддержке кода со стороны Microsoft.

Mono и новые стеки


Мы импортировали копию дерева GIT с Codeplex в GitHub's Mono organization в модуль aspnetwebstack.

Модуль Mono на данный момент имеет зависимость от модуля aspnetwebstack, так что когда вы в следующий раз выполните команду autogen.sh, то получите полную копию aspnetwebstack.

Также, с сегодняшнего дня мы заменили нашу реализацию System.Json (которая, изначально, была сделана для Moonlight) реализацией от Microsoft.

Другие библиотеки, такие как Razor будут следующими, т.к. по сути их импортирование тривиально. Однако есть проблема: ASP.NET MVC 4 сейчас зависит от нашей реализации стека ASP.NET, в которой необходимо доделать поддержку асинхронности.

Наша копия на github будет содержать главным образом изменения, направленные на интеграцию стека с Mono. Если мы будем делать какие-либо изменения в интеграции, мы будем отдавать код напрямую в Microsoft, чтобы тот включил его в проект aspnetwebstack.

Расширение Mono's ASP.NET Engine


Новая версия движка ASP.NET поддерживает асинхронное программирование C# 5.0 и это изменение требует поддержки со стороны ядра ASP.NET

На текущий момент мы не ожидаем что кто-нибудь будет работать над расширением функционала ядра ASP.NET, однако вы можете посоветовать новых и полных энтузиазма разработчиков, которые любят асинхронное программирование, чтобы сделать эти возможности в Моно
Support the author
Share post

Similar posts

AdBlock has stolen the banner, but banners are not teeth — they will be back

More
Ads

Comments 22

    +6
    Я хоть на моно и не пишу особо, но успехи Мигеля меня радуют.
      +1
      На самом деле это очень круто, что они там делают. По сути, своими силами разработали почти полную копию .Net Framework, средства компиляции, отладки, плюс еще и для iPhone, Android. Это очень круто
        +4
        Да, Mono очень радует. А еще очень приятно, что Microsoft не душит проект патентами и даже наоборот старается «втянуться» в opensource.
          +2
          Дык, если бы они это сделали сильно раньше — вполне возможно, что на этом рынке сейчас Java бы с ними сильно делилась, но пока это только начало…
            +2
            Если бы они это сделали раньше, то могли бы щас иметь какой нить mono.net, который был бы реально кросплатформенным и реально потеснил бы java + многие разработчики подтянулись бы к ним, .net не плохая плптформа
          0
          Почти? Самых интересных плюшек типа WPF нет!
            0
            Вы всегда можете помочь сообществу Open Source :)
            • UFO just landed and posted this here
                +1
                Потому его в Моно и нет: он сложно реализуем, а используется он относительно ASP.NET не так и часто. У любой разработки есть приоритеты. Если дать приоритет на WPF, то получим прикольную тему, wpf на *nix, прикольная игрушка. Этим никто пользоваться не будет. А вот ASP.NET на *nix -> это правильный вектор.
                +1
                Допиливать QML, ага :)
                +1
                Собственно судя по страничке о совместимости почти всё остальное поддерживается. Полную поддержку WCF обещают в Mono 3.0. Если писать кроссплатформенное приложение без GUI — отличный инструмент. Если с GUI — никто не мешает установить Mono под Windows вместе с GTK#. Всё-таки Mono идёт своим путём, и некоторые полезные возможности есть только в Mono. Например, Mono Cecil, Mono.Simd, Comiler as a service и другое (можно поизучать на официальном сайте). Так что ребят можно только похвалить, что они проделали столько полезной работы, и продолжают этим заниматься. А Microsoft можно поругать, что не делится всеми исходными кодами .NET, так бы уже давно и WPF был на всех платформах, и совместимость бы была на высоте :)
                  0
                  Но есть moonlight, значит и до WPF недалеко, но скорей всего он просто не стоит в приоритете. А вот что огорчает, так это то что моно в несколько раз тормознутней .net и со стабильностью не все хорошо.
                    0
                    А можно конкретные примеры по тормознутости и нестабильности mono последних версий?
              +1
              чего-то я не въехал под какой лицензией они это дело выпустили? В исходниках licence header-а нет.
              0
              Значит ли это, что скоро ASP.NET будет полностью поддерживатья на *nix системах?
                +4
                Насколько я понимаю, он уже поддерживается, просто начиная с этого этапа, ASP.NET для *nix фактически будет разрабатываться Microsoft, с полной поддержкой. Т.е. команда Мигеля сбросила с себя огромный балласт, необходимо будет просто мержиться с бранчи Microsoft
                  +1
                  И проверять, действительно ли код, заточенные под .NET, так же работает и под Mono
                    0
                    Конечным разработчикам таки да, придется, при необходимости, проверяться на совместимость с Mono. Но теперь есть стимул это делать, зная, что твой код работает на «официальной» платформе, а не на «ребята скопировали и вроде работает». Это, на мой взгляд, еще один очень правильный шаг в сторону построения/поддержки хороших, распределенно/облачных систем. И хочется порадоваться как за Мигеля, который дотянул проект до такой важной точки, так и за тех, кто продавил (или пропиарил) решение в MS.
                      0
                      Согласен, со стороны кажется что шаг правильный и важный. Как окажется на самом деле — посмотрим.
                      Просто какое-то время назад я лично пытался запустить проект с использованием NHibernate на Mono — было какое-то странное падение, то ли непонятный баг. Взял исходники Mono, нашёл в коде стандартной библиотеки причину, подправил и отправил багрепорт кому следует. На самом деле оказалось, что баг был в NHibernate — они по незнанию опирались на поведение .NET, не описанное в официальной спеке. Соответственно, Mono в этом случае вело себя по-другому. Боюсь, подобных нюансов там ещё пруд пруди…
                        0
                        Ну чудес-то не бывает :) Понятно, что если бы MS изначально вел ASP.NET (да и вообще .NET) как мультиплатформенную технологию, то сейчас многие из нас были бы в шоколаде. Потому что, ИМХО, .NET как платформа намного лучше гораздо удобнее Java.*. Но и теперь начать выходить на другие платформы еще не поздно. Наверное даже лучше через OpenSource-модель, чем самим.

              Only users with full accounts can post comments. Log in, please.