.NET

Krzysztof Kempiński
Apr 20 · 15 min read

W ramach podcastu “Porozmawiajmy o IT” miałem okazję porozmawiać z Kajetanem Duszyńskim o .NET.

Posłuchaj naszej rozmowy w wersji audio 🎧 👇

Cześć! Mój dzisiejszy gość to .NET developer z ponad 9-letnim, komercyjnym doświadczeniem w ASP .NET, tworzył oprogramowanie wykorzystywane przez Samsung Electronics czy Falck, twórca Szkoły Dotneta, kanału na YouTube o nazwie Porozmawiajmy o programowaniu, a także grupy na Facebooku Naucz się .NET.

Moim i Waszym gościem jest dzisiaj Kajetan Duszyński.

Cześć, Kajetan! Bardzo miło mi gościć cię w podcaście.

Cześć, Krzysztof! Dziękuję bardzo za zaproszenie. Jest mi niezwykle miło, że będę mógł dziś z tobą porozmawiać na, mam nadzieję, bardzo interesujący temat, jakim jest właśnie .NET.

Jestem o tym przekonany! Właśnie pomyślałem, że to będzie najkrótszy tytuł odcinka z mojego podcastu, bo tylko cztery znaki!

Zanim przejdziemy do bardziej merytorycznej rozmowy, to u mnie klasycznie na początek jest zawsze pytanie, czy słuchasz podcastów, może masz jakieś swoje ulubione, którymi możesz się podzielić?

Pewnie! Od roku, od kiedy zaczęła się pandemia słucham trochę mniej, bo zazwyczaj słuchałem podcastów dojeżdżając do pracy, jak gdzieś się przemieszczałem. Przez ostatni rok troszeczkę mniej — natomiast tak czy inaczej, jeśli chodzi o kilka podcastów, staram się zawsze być na bieżąco.

Jeśli chodzi o moje tematy, tematy technologiczne, to na pewno jest to jeden z zagranicznych podcastów .NET Rocks!, gdzie dwóch chłopaków rozmawia na najróżniejsze tematy i dzięki temu zawsze jestem na bieżąco, zawsze mogę być na bieżąco z moim światem, ze światem .NET — natomiast jeśli chodzi o polskie podcasty, to oczywiście — twój podcast zawsze daje ciekawe spojrzenie na najróżniejsze tematy, ale też muszę się przyznać, właśnie w związku z tym, co robię w internecie, jak działam, to dużo więcej słucham podcastów związanych z biznesem, rozwojem osobistym i tak tutaj mamy np. Biznes DZIŚ Mirka Burnejki i Bogusza Pękalskiego, czy oczywiście Mała Wielka Firma, która jest wszystkim znana.

Tak — klasyka polskiego podcastu! Jasne. Zawsze warto polecić, bo faktycznie tam jest tona konkretnych, fajnych odcinków — decydowanie.

Zacznijmy rozmawiać o .NET — sprawdziłem sobie ostatnio, to jest taka technologia, która niedługo będzie miała 20 lat. Technologia od Microsoftu — można powiedzieć, że dosyć dużo jak na świat IT.

Technologia, która obejmuje runtime, standardowe biblioteki i co ciekawe, ta technologia, ta platforma nie jest związana z żadnym, konkretnym językiem.

Powiedz proszę kilka słów na temat tego, skąd ten .NET się wziął, jakie były początki tej technologii, w jaki sposób się narodził?

Mówisz, że ma prawie 20 lat — właściwie to ma ponad 20 ze względu na to, ze pierwszy raz został zaprezentowany w 2000 roku i na początku była to kolaboracja między Microsoftem, Intelem i jeszcze jedną firmą.

Pomysł już dawno przyświecał temu taki, aby stworzyć platformę, która zunifikuje wszystko, co mamy dostępne, z redefiniuje pojęcia internetu i pozwoli nam na zupełnie nowe doświadczenie, jeśli chodzi o interakcje z urządzeniami i oprogramowaniem

Microsoft miał takie plany, aby .NET był wszędzie. Nawet Windows w pewnym momencie miał się nazywać Windows.NET.

Mieli plan na to, żeby wprowadzić taką jedną platformę do wszystkich swoich usług, oczywiście to przez wiele lat nie wychodziło, natomiast faktycznie sama platforma bardzo się rozrosła, zyskała bardzo na popularności.

Obsługuje w tej chwili najróżniejsze języki programowania, także nie jesteśmy zamknięci tylko do jednego czy dwóch, ale możemy naprawdę w najróżniejszych językach, stylach pisać oprogramowanie i na najróżniejsze platformy. Historia .NET jest na pewno bardzo ciekawa, ale to, co się dzieje w tej chwili wydaje mi się zdecydowanie ciekawsze, bo mam wrażenie, że jeszcze dzisiaj o tym porozmawiamy, ale .NET przeżywa pewnego rodzaju rozkwit dokładnie teraz.

Czy myślisz, że ta diagnostyczność, jeśli chodzi o języki programowania to było tak trochę by design, taki był pomysł, by oddzielić tę warstwę związaną z językiem od pewnych konceptów, pewnej architektury czy pewnych abstrakcji? To faktycznie na początku leżało w designie podejścia związanego z .NET-em czy wyszło przypadkiem? Jak to odbierasz?

Wydaje mi się, że ostatecznie wyszło to trochę przypadkiem. Gdzieś może idea z tyłu głowy jeszcze u Billa Gatesa na ten temat, natomiast myślę, że technologicznie to było za wcześnie na to, żeby podejmować tego typu próby. Że jeszcze technologia, ta architektura, którą znaliśmy nie była gotowa na to, żeby zunifikować to wszystko, żeby stworzyć coś, co będzie zupełnie oddzielone od języka programowania i żeby można było mówić o takim podejściu zupełnie całościowym do platformy Microsoftu jako takiej.

Myślę natomiast, że u pracowników cały czas z tyłu głowy to się działo i po prostu ewoluowało przez lata.

Okej. Powiedzmy może, jakie obecnie języki mamy do wyboru? Z tego, co się orientuję to są bardzo różne. Nawet gdyby porównać paradygmaty — możemy sobie wybierać i ten bardziej funkcyjny, bardziej obiektowy.

Jakie najpopularniejsze języki związane z .NET byłbyś w stanie wymienić i które poleciłbyś też na początek? Myślę, że można się trochę zgubić!

Pewnie. Wybór jest olbrzymi. Może zacznę od końca i od tego, co wspiera .NET, ale co nie leży u jego fundamentów. Przy .NET możemy programować zarówno w Pythonie, Javie jak i w najróżniejszych językach, natomiast u podstawy samego .NET-a leżą trzy języki. C#, F# i Visual Basic.

Wybór jest olbrzymi. Może zacznę od końca i od tego, co wspiera .NET, ale co nie leży u jego fundamentów. Przy .NET możemy programować zarówno w Pythonie, Javie jak i w najróżniejszych językach, natomiast u podstawy samego .NET-a leżą trzy języki. C#, F# i Visual Basic.

Ze swojej strony polecam C# jako język zdecydowanie najczęściej używany, najbardziej uniwersalny. Jest to język jak wszystkie z rodziny C, język obiektowy i zdecydowanie najpopularniejszy.

Faktycznie, najwięcej materiałów do nauki jest w tym C#, natomiast jeżeli kogoś interesuje programowanie funkcyjne, to zdecydowanie można polecić F#i pozostaje jeszcze ten Visual Basic.

Usłyszałem kiedyś, że był to język stworzony dla sekretarek. To znaczy — niikogo nie obrażając, ale wiemy, że programiści potrzebują jakiegoś rodzaju abstrakcyjnego myślenia, myślenia o obiektach i dodatkowo muszą nauczyć się składni tych języków, natomiast Visual Basic miał być językiem najbardziej zbliżonym do język, którym się posługujemy na co dzień, w związku z czym teoretycznie ten próg wejścia miał być jak najniższy, natomiast od jakiegoś czasu już sam Microsoft się tak bardzo na tym języku nie skupia i faktycznie tymi dwoma podstawowymi w tej chwili już będą C# i F#.

Myślę, że możemy sobie robić mniejsze lub większe żarty na ten temat, ale jakby spojrzeć na index TIOBE czy inne sposoby określenia najpopularniejszych języków albo najczęściej stosowanych, to wyszłoby, ze Basic jest tam ciągle dość wysoko.

C# oczywiście też zajmuje bardzo wysoką pozycję. Czy wiesz może, czy Microsoft czy jakieś inne podmioty prowadzą jakąś formę indeksu czy określenia, które języki związane z .NET-em są najpopularniejsze? Czy to jest bardzo oczywiste i jasne? Jesteś w stanie powiedzieć, że C# króluje i długo, długo nic, cz też raczej niektóre w miarę równolegle zajmują te pierwsze pozycje?

Wydaje mi się, że to najbardziej widać po tym, co prezentuje Microsoft. Za każdym razem, kiedy jest jakakolwiek konferencja związana z nowym .NET-em, związana z nowościami w .NET, to praktycznie wszystkie przykłady oparte są o C#. Oni sami najchętniej go używają, a popularność Visual Basica, jeśli chodzi o indexy, na Stack Overflow, na TIOB-ie, to jest bardziej związane z dostępnością z Visual Basic for Applications, czyli technologii do tworzenia makr na przykład w Excelu i cały czas dużo osób próbuje zautomatyzować swoją pracę — i bardzo dobrze, oczywiście — biurową za pomocą tego Visual Basica i dlatego on będzie jeszcze przez długi czas na pewno wysoko we wszelkich językach.

To nie ulega wątpliwości, natomiast jeśli chodzi o trendy i w co inwestuje Microsoft, to tutaj C# zdecydowanie króluje niepodzielnie.

Myślę, że pewnie jest też sporo projektów typu legacy — napisanych, chociażby w Visual Basicu, które trzeba utrzymywać, rozwijać, które nie sposób wręcz przenieść — to też może podbijać trochę te współczynniki.

Na początku, gdy cię przedstawiałem, powiedziałem, że masz wieloletnie doświadczenie w ASP.NET — jak ta technologia wpasowuje w cały krajobraz, całe spektrum możliwości .NET? Gdzie się wykorzystuje, jakie możliwości na daje?

Tego nie powiedzieliśmy na początku, ale jeśli chodzi o .NET to mamy możliwości tworzenia najróżniejszych aplikacji.

To mogą być aplikacje webowe, jest chmura, jest IoT, Machine Learning, GameDev — całe spektrum, jeśli chodzi o programowanie jest obsłużone przez .NET, natomiast ja faktycznie przede wszystkim siedzę w ASP, czyli w technologii webowej, która też już od wielu lat ewoluowała i co roku się zmienia na lepsze.

W tej chwili widzimy taki trend, że ASP.NET core czy ASP.NET z powrotem, jeśli chodzi o najnowszą wersję .NET 5 jest najchętniej i najczęściej wybieranym backendowym frameworkiem, jeśli chodzi o tworzenie aplikacji webowej. Opieram swoje dane na najnowszej ankiecie ze Stack Overflow, gdzie ten ASP.NET core zdecydowanie wyprzedził wszelkie inne frameworki i jest oceniany jako ten najbardziej lubiany i najbardziej przyjazny deweloperom. Także zdecydowanie polecam spróbowanie swoich sił, jeżeli kogoś interesuje ten backend development w .NET.

Widać, że samo zainteresowanie webem i ASP.NET cały czas rośnie. Mamy od kilku lat taki trend, gdzie wszystko właściwie co tylko można przypisuje się do weba, więc te technologie wystrzeliły.

Oczywiście z jednej strony, od strony frontendu mamy olbrzymi boom na wszelkie frameworki frontendowe, co też w .NET ma miejsce od jakiegoś czasu, natomiast ten core backendowy tutaj bardzo mocno się rozwija, widzimy cały czas ewoluujące architektury, które są coraz bardziej przyjazne skalowalnym aplikacjom, więc naprawdę, nawet jeżeli ktoś w tej chwili programuje w innych językach to warto spojrzeć na ASP, ponieważ ta platforma faktycznie może sporo namieszać w najbliższych latach.

Właśnie — spróbujmy to porównać do technologii, które też nam się mocno kojarzą z backendem aplikacji webowych typu Python, Ruby, Java. Tam najczęściej z frameworkiem mamy zestaw możliwości jak podejście typu NBC, ORM, wsparcie do tworzenia API.

Domyślam się, że podobne komponenty funkcjonują też w ASP.NET. Tu jest podobne podejście czy też może zupełnie inne?

Oczywiście jest bardzo podobne, nawet jedna z części ASP nazwana jest po prostu ASP.NET NVC, gdzie u podwalin leży ten wzorzec. On już nie jest tak do końca wykorzystywany, zresztą mam wrażenie, że we wszystkich językach ta architektura ewoluowała w ten sposób, że takie czyste NVC już nie jest do końca wykorzystywane ze względu na to, że daje nam zbyt małe rozproszenie naszych zależności i zbyt mocne powiązanie pomiędzy różnymi zależnościami w związku z czym powstały architektury, które — fakt — nadal wykorzystują NVC, ale nie jest to klucz do sukcesu.

Dodatkowo oczywiście mamy ASP.NET WEB API, czyli technologię do tworzenia API. Głównie do tworzenia restful API, natomiast też są implementacje do tworzenia czy RPC czy GraphQL, a jeśli chodzi o ORM-y, to tutaj jest zdecydowanie najciekawiej ze względu na to, że mam wrażenie, że nawet pomiędzy n.NET-owcami tworzy się niemal święta wojna.

Znamy wszyscy świętą wojnę pomiędzy Javowcami i .NET-owcami i to się nigdy nie skończy, natomiast mamy małą wojnę domową pomiędzy .NET, jeśli chodzi o wybór ORM-ów, które ORM będzie najlepszy.

Czy MTT Framework, który jest rozwijany pod brandem Microsoftu czy jakieś mniejsze, lżejsze ORM-y jak Dapper, który teoretycznie miał być szybszy, a od kiedy powstał NTT Framework Core z .NET Core to te różnice zaczynają się zacierać, także to tez jest dyskusja warta uwagi, warta śledzenia.

Ciekawe! Czyli niezależnie od technologii takie wojenki się gdzieś tam toczą. Myślę sobie, że konkurencja jest dobra, więc to może i z korzyścią dla wszystkich.

Zdecydowanie.

Pewnie. Powiedziałeś trochę na temat zastosowań ogólnie szeroko rozumianego .NET, że to jest wiele różnych możliwości. Chciałbym cię trochę podpytać — w jakich projektach najczęściej możemy zaobserwować zastosowanie .NET. Chodzi mi o branżę, może jakieś firmy, które są bardziej znane i używają .NET?

Jakie jest zastosowanie, przyjęcie i używanie tej technologii w szeroko rozumianym świecie technologicznym?

Są dwa przykłady, które najczęściej wskazuję, bo właściwie wszyscy w Polsce związani z IT, ale też po prostu wszyscy ludzie, którzy żyją w Polsce znają jedną z tych firm i są to po pierwsze Stack Overflow.

Bardzo dużo swojego stacku technologicznego ma opartego o .NET i bardzo się tym chwalą, że faktycznie wykorzystują tę technologię i z powodzeniem mogą tworzyć, rozwijać swoje usługi właśnie w oparciu o webową technologię .NET-a, a drugą firmą jest polski mBank.

mBank od wielu lat opiera się na .NET, wcześniej na ASP.NET Web Forms, jeszcze wiele lat temu. W tej chwili przeszli na NVC — wiem, że mają swój stack oparty o mikroserwisy, w ASP.NET Core i pamiętam — jeszcze kilka la temu, jak dopiero ASP.NET Core wychodził, to oni już szukali developerów, którzy mogliby zaadoptować właśnie tę technologię, tę wersję w ich systemach, więc oni bardzo chętnie patrzą na te nowości związane z .NET. A skoro branża bankowa jest w stanie zaufać tej technologii, to myślę, że nie trzeba wiele dopowiadać, jeśli chodzi o bezpieczeństwo i zaufanie do technologii.

Odpowiadając w drugą stronę: zdecydowanie największy wzrost widać w aplikacjach webowych, bo mamy drugą działkę, która w najbliższych latach będzie się mocno rozrastać. Tzn. pod Microsoftem tworzony jest silnik Unity do gier i na pewno on będzie jeszcze wykorzystywany w wielu dużych produkcjach i tam też wsparcie dla samego C# jest coraz większe, więc będzie coraz większa dostępność tej platformy dla developerów. Natomiast faktycznie najbardziej popularny jeszcze przez wiele lat będzie właśnie ASP.NET i wszelkie technologie webowe, które też świetnie się potem w chmurę wpasowują, co też wiemy, że jest trendem od kilku lat.

To może być jakaś droga do sukcesu, podobnie jak było z JavaScriptem, który możliwy do wykorzystania na różnych platformach od serwerowej i po webową i mobilną powoduje, że firmy z chęcią inwestują w technologię, która będzie w stanie być używana przez teoretycznie tego samego developera — będzie ją w stanie z kolei wykorzystać na różnych polach, w których ta firma działa.

Skoro mówisz, że faktycznie pod parasolem .NET coraz więcej, coraz szerzej technologii plus zastosowań może się zmieścić, to faktycznie może spowodować, że coraz więcej osób zacznie z tej korzystać.

To jest jedna rzecz, żeby odnieść sukces. Drugą rzeczą jest wsparcie i odtwórcy — tutaj mamy potężnego gracza w postaci Microsoftu, ale tez community — coby nie było, nawet super fancy technologia bez tego wsparcia community może się szybko rozpaść, nie będzie przyjęta. Developerzy są jednak takimi adwokatami — często przekonują do danej technologii. Jeśli się z tą technologią nie czują, nie ma tam tego community, to technologia też może nie przejść.

Jak to wygląda w przypadku .NET-a? Jakbyś mógł powiedzieć coś na temat community, wsparcia twórców. Jak to pomaga w zwiększeniu popularności tej technologii?

Fajnie, że wspomniałeś o tym dużym graczu. To też kwestia warta uwagi — jeśli chodzi o Microsoft, to nie wiem na ile ty czy twoi słuchacze śledzą poczynania czy słyszą o poczynaniach Microsoftu, ale raz na jakiś czas — ostatnio mam wrażenie, że coraz częściej — Microsoft „wybiera się na zakupy”. Jak „wybiera się na zakupy”, to oni jeńców nie biorą, bo już kupili jakiś czas temu GitHub. Wszyscy myśleli „O, GitHub się skończy”, a okazało się, że znowu przeżywa rozkwit. Mało osób wie o tym, że LinkedIn jest Microsoftu. Też wszyscy myśleli, że „O nie, będziemy uciekać, bo teraz będzie zalew reklam”. LinkedIn rozkwita.

Dzisiaj, dosłownie kilka godzin temu przeczytałem, że Microsoft prowadzi rozmowy o tym, żeby przejąć Discorda. Jeśli chodzi o developerów może nie do końca, bo bardziej chodzi im o to, żeby rozwijać swoje portfolio związane z XBoxem, natomiast wiemy też, że cała masa develoeprów odchodzi troszkę od Slacka, przechodzi bardziej w stronę Discorda. To też może być ciekawe rozwinięcie ich usług.

Wspominasz i chciałbyś usłyszeć trochę o community — mam wrażenie, że kilka lat temu, kiedy ja zaczynałem programować, kiedy stawiałem pierwsze kroki w .NET, to informacji w internecie nie było zbyt dużo. Nie było community albo nie było ono rozwinięte tak jak w tej chwili. Mieliśmy w Polsce i za granicą kilku blogerów, natomiast tych informacji też nie było nie wiadomo ile.

Microsoft kilka lat temu postanowił, że .NET będzie open source’owy — tak właśnie powstał .NET Core. Po to m.in. został kupiony GitHub, żeby właśnie tam zahostować całego .NET-a i w tej chwili ilość open source’owych rozwiązań .NET-owych jest naprawdę olbrzymia. Dodatkowo na GitHubie powstają solucje, które przedstawiają jako demo jakichś technologii, bibliotek, mamy dema najróżniejszych architektur, także na samym GitHubie można spędzić godziny obserwując najróżniejsze projekty, z których moglibyśmy się naprawdę bardzo dużo nauczyć.

Microsoft kilka lat temu postanowił, że .NET będzie open source’owy — tak właśnie powstał .NET Core. Po to m.in. został kupiony GitHub, żeby właśnie tam zahostować całego .NET-a i w tej chwili ilość open source’owych rozwiązań .NET-owych jest naprawdę olbrzymia. Dodatkowo na GitHubie powstają solucje, które przedstawiają jako demo jakichś technologii, bibliotek, mamy dema najróżniejszych architektur, także na samym GitHubie można spędzić godziny obserwując najróżniejsze projekty, z których moglibyśmy się naprawdę bardzo dużo nauczyć.

A jak wspomniałem o ankiecie Stack Overflow wcześniej — o .NET na Stack Overflow się bardzo dużo mówi, praktycznie codziennie dochodzą nowe pytania, nowe odpowiedzi i są one bardzo wysokiej jakości, także można bez żadnego problemu je znaleźć.

Nie mówiąc o tym, że sam staram się oczywiście propagować tę świadomość, że .NET nie jest taki straszny, jak go czasami ludzie malują, bo kilka razy w internecie spotkałem się z opinią, że C# czy . NET to nie jest dobra technologia na początek, bo próg wejścia jest nie wiadomo jak wysoki, a okazuje się, że jeżeli dobrze pokierujesz kilkoma osobami, które chcą się nauczyć, pokierujesz do odpowiednich źródeł, do odpowiednich materiałów i on wcale nie wydaje się już taki trudny, nie wydaje się taki straszny i ludzie w przeciągu kilku miesięcy tworzą naprawdę niesamowite rozwiązania webowe.

Tej pomocy naprawdę nie trzeba daleko szukać, także to community rośnie i jest dosyć przyjazne. Mam wrażenie — może to się zmieniło w ostatnich latach, jak patrze po internecie, że nie ma takiego zacietrzewienia u seniorów, którzy chcą koniecznie trzymać tę swoją wiedzę i się z nikim nie dzielą, tylko coś stało się kilka lat temu, że developerzy zaczęli wychodzić do ludzi i zaczęli chętniej dzielić się wiedzą i to nie tylko w .NET, a w ogóle w programowaniu, także mam wrażenie, że pomimo tego, że mamy teraz bardzo dużo osób, które chcą się przebranżowić, to te osoby pojawiają się właśnie ze względu na to, że mamy dużo wysokiej jakości materiałów do nauki.

Cieszę się, że to zauważasz, bo myślę, że to wsparcie community jest bardzo ważne.

Chciałbym zapytać cię o road mapę do .NET-a, czyli jaką przyszłość tej technologii przewiduje Microsoft? Co w najbliższym czasie planuje wypuścić, w jakim kierunku tę technologię popchnąć?

Microsoft od zawsze co parę lat stara się czymś zaskoczyć. Najpierw samym .NET-em i przez kilka lat rozwijał tę technologię, potem zaskoczył nas tym, że .NET będzie open source’owy, w końcu odpowie na zarzuty od Javy i zacznie być cross platformowy i nagle zaczęło się to rozwijać w bardzo ciekawą stronę, w stronę .NET Core’a. Mieliśmy wersję .NET Core 3.1 i nagle, w zeszłym roku w listopadzie przeskoczyliśmy na .NET-a 5. Bez Core’a, bez czwórki, po prostu .NET 5.

Po co? By oddzielić pewien etap. Pokazać, że zaczynamy znowu coś nowego. I pierwszy raz pojawiło się coś takiego o czym wspomniałeś, czyli .NET Roadmap. Microsoft dokładnie pokazał, co się będzie działo w najbliższych latach, jeśli chodzi o .NET-a. Tzn. teraz wiemy, jaką wersję mamy w tej chwili, jaką będziemy mieć w przyszłym roku, jaką za trzy lata.

W tej chwili co roku będziemy mieli nową cyferkę, która teoretycznie mogłaby niczego nie zmieniać, bo to jest tylko cyfra związana z wersją, natomiast też część tych wersji będzie oznaczona znaczkiem LTS, czyli long term support.

Taka wersja będzie wychodziła co dwa lata — w tej chwili mamy .NET-a 5., który tego LTS nie ma, to będzie dopiero od wersji 6. i tutaj pojawia się znowu ta sama analogia, która się pojawia bardzo często w przypadku Microsoftu. To znaczy, że oni co dwie wersje wypuszczają coś dobrego — zawsze się tak o Windowsie mówiło, że Windows XP był świetny, potem była Vista, o której wszyscy woleliby zapomnieć, potem 7 wspaniała, 8 nienajlepsza i teraz mamy 10, która faktycznie jest fajnym produktem i podobnie w tej chwili planują zrobić z .NET-em. .NET 6. — w związku z tym, że chcą oznaczyć ją jako LTS domyślam się, że będzie to bardziej dopracowana wersja 5., którą będą przez najbliższe trzy lata chcieli wspierać.

Co to oznacza w przypadku open source’owych projektów? Przede wszystkim dla korporacji, które wykorzystują i płacą za niektóre rozwiązania, że będą mieli dostęp do lepszego wsparcia od storny supportu Microsoftu, w związku z tym też będzie widoczny trend w upgrade’ach tych frameworków, w firmach, kiedy będzie warto przejść na nowszą wersję, kiedy będzie warto myśleć o jakichś zmianach technologicznych i w jaki sposób być może lepiej radzić sobie z tzw. technical dept, który w wielu firmach na pewno się pojawią w związku z tym, że pracujemy na starych wersjach oprogramowania.

Właśnie — na ten rok, 2021, przewidziane jest wydanie wersji 6., czyli LTS. Mówiłeś — Microsoft mocno stawia na wieloplatformowość. Jakie najważniejsze rzeczy, najważniejsze zmiany czekają nas w tej wersji oprócz trzyletniego wsparcia?

To jest to, co Microsoft już powiedział 2 lata temu — że Microsoft chce być wieloplatformowy, ale chce tych wiele platform zunifikować. W tej chwili mamy problem taki, że zupełnie inaczej programujemy na desktopy, zupełnie inaczej aplikacje mobilne, inne technologie wykorzystywane są w webie. To wg Microsoftu nie powinno tak wyglądać — powinno tak, że tworzymy, jak najmniej kodu, który powinien działać na jak największej ilości urządzeń. W związku z tym powstaje coś takiego jak MyUI, czyli Multi Platform App UI, który w przyszłości ma zostać rozszerzony o wszystkie platformy: tzn. teraz zaczyna się dziać na platformach mobilnych, na Xamarinie, natomiast ma on zostać też rozszerzony o desktopy i webówkę.

Z drugiej strony mamy coś takiego co się nazywa Blazor, który też jest cały czas rozwijany i Blazor zaczął być frameworkiem frontendowym w webie, a będzie powoli przechodził też na inne platformy.

Widać, że to jest kolejne podejście — jak już mówiłem na samym początku przy historii. Chcieli zunifikować swoje usługi, teraz chcą ponownie zunifikować to, w jaki sposób będziemy tworzyć kod. Myślę — pierwszy raz widzę, bo kilka razy już to słyszałem, już przy prezentacji Windowsa 8, że chcieliby zrobić coś takiego, żeby Windows experience był taki sam na desktopach, na urządzeniach mobilnych, na telefonach, na tabletach.

To nie wyszło do końca i to w pewien sposób zarzucili, zresztą wiemy, jak Windows 8 Mobile w ogóle skończył, lepiej zapomnieć o tej platformie, natomiast to jest kolejne podejście i pierwszy raz, szczerze mówiąc, widzę to, że to ma prawo się udać.

👉 Czytaj dalej na: https://porozmawiajmyoit.pl/poit-111-net/

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store