Jaki jest obecnie udział w rynku programów napisanych w .NET? [Zamknięte]

11

Obecnie migrujemy nasz program Visual Basic 6.0 do .NET . Docelowi odbiorcy to zwykli użytkownicy komputerów stacjonarnych w domu. Dyskutując o tym, zdaliśmy sobie sprawę, że nie możemy wymyślić programów głównego nurtu, które wydają się być napisane w .NET. Czy się mylimy? Czy jest na to dobry powód?

Dabblernl
źródło
6
Myślę, że Visual Studio i Paint.NET to dwa główne programy napisane w .NET.
Jonas,
1
Czy możesz dodać kod do bieżącego produktu, który informuje, jakie biblioteki .NET mają obecni użytkownicy?
@ ThorbjørnRavnAndersen: tak, możesz - Richard Grimes właśnie to zrobił, kiedy pojawiła się Vista, więc możesz użyć jego technik, aby zobaczyć, jakie pliki binarne są zbudowane z modułem ładującym CLR dla zainstalowanych aplikacji. grimes.demon.co.uk/dotnet/vistaAndDotnet.htm (pobierz na dole)
gbjbaanb 12.11.11

Odpowiedzi:

3

W zależności od definicji „programów głównego strumienia”, wydaje się, że nie ma ich zbyt wielu w VB6.

Oczywiście C # i VB.NET zajęły teraz prawie miejsce, w którym VB6 było ~ 10 lat temu. Co najmniej 98% to indywidualne oprogramowanie, którego nie można kupić w lokalnym sklepie z oprogramowaniem. Ale to nie znaczy, że nie ma tam żadnych programów .NET. Jest ich wiele - ale będziesz musiał ich szukać we właściwych miejscach.

Doktor Brown
źródło
18

Twojego klienta nie obchodzi, czy Twój program jest napisany w .NET, czy nie. Dlatego jeśli możesz zapewnić, że zdecydowana większość docelowych odbiorców będzie mogła zainstalować i uruchomić oprogramowanie bez problemów, jesteś dobry.

Bardzo trudno jest znaleźć dokładne informacje o penetracji .NET Framework , więc nie powinieneś polegać na żadnej.

Dlaczego nie kierować na profil klienta .NET i upewnić się, że jest on instalowany wraz z plikami binarnymi? To łatwe, proste i skuteczne.

.NET Framework 4 Client Profile to podzbiór .NET Framework 4, który jest zoptymalizowany dla aplikacji klienckich. Zapewnia funkcjonalność większości aplikacji klienckich, w tym Windows Presentation Foundation (WPF), Windows Forms, Windows Communication Foundation (WCF) i funkcje ClickOnce. Umożliwia to szybsze wdrożenie i mniejszy pakiet instalacyjny dla aplikacji ukierunkowanych na profil klienta .NET Framework 4.

Widzę kolejną dużą zaletę przeniesienia kodu VB6 na platformę .NET: możliwość tworzenia wersji oprogramowania działającego w systemie Linux i OSX przy użyciu Mono . Godny uwagi przykład aplikacji komputerowych napisanych w .NET i na różnych platformach jest dostępny tutaj .

Społeczność
źródło
11
w istotnym punkcie: klienci nie dbają o platformę, dopóki działa ona na ich systemach. ale nie tak słusznie w ostatnim akapicie: mono działa i jest imponującym osiągnięciem; ale to koszmar dla użytkowników końcowych. obietnica „platformy krzyżowej” platformy .NET jest martwa na wodzie.
Javier
@Javier: Cóż, z wyjątkiem Windows, Windows Phone i XBox 360. Jednak atrakcją systemu Windows w języku bajtecode nigdy nie był dla mnie kod wieloplatformowy; raczej to, że Windows nie jest już związany z określoną architekturą (x86 to bałagan). Kolejna wersja systemu Windows będzie również działać na ARM . Miło też, że oprogramowanie może teraz korzystać z funkcji specyficznych dla konfiguracji; w zasadzie wszystkie zalety podejścia Linux (kompilowanie oprogramowania na każdym nowym systemie), bez żadnych kłopotów.
BlueRaja - Danny Pflughoeft 11.11.11
@ BlueRaja-DannyPflughoeft: prawda, .net (CLR, naprawdę) dostarcza platformę typu „cross-windows-platform”. W rzeczywistości nie ma co kichać
Javier,
@BlueRaja: zapominasz, że rzeczy, które były wyświetlane na ARM to ... kod Microsoft C ++. Rzeczy takie jak sterowniki drukarki i pakiet Office. Nie są to aplikacje .NET, więc argument, że .NET jest niezbędny, jest całkowicie fałszywy.
gbjbaanb
@Javier: Czy mono jest takie złe podczas instalacji? Zainstalowałem aplikację mono (Banshee) na moim Mac OSx i nie napotkałem żadnego problemu. W systemie Windows instalacja mono nie jest wymagana. Jako programista planujący zrobić aplikację mono, byłbym bardzo szczęśliwy, gdybyś mógł dostarczyć mi artykuły lub odniesienia, które pokazują, co masz do powiedzenia.
8

Moje osobiste doświadczenie jest takie, że .NET dominuje w wewnętrznym rozwoju na poziomie przedsiębiorstwa. Większość z tych aplikacji nie została stworzona do użytku publicznego, a zatem nie jest częścią naszego codziennego słownictwa.

Istnieje jednak bardzo ważny powód, dla którego tak wiele dużych firm przyjęło te technologie: wydajność programisty i szczęście. C # to wspaniały, produktywny język programowania, a ekosystem .NET jest bogaty w istniejące biblioteki, dzięki czemu nie musimy wymyślać kół. Ponadto WCF, choć zdumiewająco skomplikowane, jest bardzo potężnym narzędziem do budowania komunikacji między różnymi systemami.

Jeśli chodzi o Twoją konkretną okoliczność, zajmę się przeniesieniem aplikacji tylko wtedy, gdy będziesz wprowadzał wiele ulepszeń i zmian w niej w przyszłości. Jeśli jest stabilny i działa w trybie konserwacji, będziesz żałować każdej decyzji oprócz pozostawienia jej bez zmian.

Adam Crossland
źródło
2
+1 za „C # jest cudowny”. To naprawdę wspaniały język
shashwat 10.10.13
2

W rzeczywistości, według TIOBE , C # (język .NET) jest obecnie czwartym najpopularniejszym językiem na świecie.

Zgadzam się również z innym plakatem, że klienci nie dbają o to, w jakim języku jest napisana Twoja aplikacja, o ile działa.

Gustav Bertram
źródło
3
Myślę, że liczba tagów w StackOverflow jest bardziej reprezentatywna niż ranking wyszukiwania TIOBE.
Jonas,
4
Nie, to tylko dlatego, że kodery C są prawdziwymi programistami, a prawdziwi programiści nie proszą o pomoc.
Gustav Bertram
2
Odczytywanie wnętrzności kozich jest prawdopodobnie dokładniejsze niż TIOBE. Nawiasem mówiąc, w żaden sposób nie opowiadam się za pozyskaniem wnętrzności kozich za nic poza przetwarzaniem substancji zjadanych przez kozę.
Adam Crossland,
@Gustav: tak, liczba tagów na C # na SO pokazuje, że jest to trudny język, z którym więcej osób potrzebuje pomocy :)
gbjbaanb 12.11.11
1

Zdecyduj, czy istnieją funkcje, których chce Twój rynek, które można tylko lub łatwiej utworzyć w .NET. Weź pod uwagę, że zatrudnienie nowych programistów jest kolejnym rynkiem do rozważenia. Możesz, ale nie musi, znaleźć więcej programistów VB.NET, które są odpowiednie dla twoich potrzeb (poziom doświadczenia, znajomość domeny itp.). Czy twoi obecni programiści naprawdę chcą dokonać zmiany?

Nie wiem o rynku użytkowników domowych, ale rynek biznesowy jest dość ciężki w aplikacjach .net.

JeffO
źródło
0

VB6 nie jest już obsługiwany przez MS (patrz: http://blogs.technet.com/b/lifecycle/archive/2008/04/16/end-of-support-for-visual-basic-6-0. aspx ). Więc jeśli masz problemy z punktu widzenia rozwoju, nie uzyskasz wsparcia ze źródła.

Z drugiej strony VB.NET jest nadal aktywnie rozwijany i wspierany.

Podobieństwo między platformą .NET Framework a środowiskiem Java JRE, a także podobieństwa między językiem C # i samą Javą, bardzo szybko rozwinęła społeczność programistów C # / .NET.

Podaż programistów VB6 zmaleje, podczas gdy VB.NET/C# prawdopodobnie wzrośnie i może posunąć twój produkt do przodu.

Jesse C. Slicer
źródło
0

nie możemy wymyślić programów głównego strumienia, które wydają się być napisane w .Net.

Jestem prawie pewien, że panel sterowania karty graficznej ATI Catalyst jest napisany w .NET - to w zasadzie każdy komputer z kartą graficzną ATI. Duża liczba zwykłych użytkowników komputerów stacjonarnych ...

Innym dobrym przykładem jest Samsung Kies - który zainstalował większość ludzi posiadających telefony Samsung.

MattDavey
źródło
Proszę wyjaśnić opinię?
MattDavey,
-1

Podejrzewam, że to nie ma znaczenia - tym, co może mieć większe znaczenie, będzie to, w czym będzie pisana większość programów w przyszłości. Teraz MS koncentruje się na aplikacjach Win8, być może lepiej byłoby martwić się o przyjęcie HTML5 + js i WinRT zamiast starszego .NET.

Ostatnią rzeczą, którą chcesz zrobić, to przenieść wszystko do platformy .NET, a następnie wykonać o wiele więcej przeróbek, aby działał dobrze w systemie Windows 8.

gbjbaanb
źródło
ha! prawda boli :) WinPhone8 faktycznie pokazuje, że tak jest, nigdy więcej XNA, jeśli chcesz fantazyjną grafikę 3D, potrzebujesz natywnego SDK.
gbjbaanb,
Nie widzę korelacji między obsługą XNA w WinPhone 8 a obsługą .NET Framework w Windows 8? (przy okazji to nie byłem tym, który cię ocenił, ale nazwanie .NET „dziedzictwem” trochę o to prosiłem)
MattDavey