Jestem zainteresowany, aby dowiedzieć się, ile prawdziwych serwerów aplikacji WWW jest obsługiwanych przez system Windows?
Nauczę się C # i ASP.NET i chcę przekonwertować siebie z wbudowanego programisty na programistę aplikacji internetowych.
Moi znajomi powiedzieli mi, że istnieje więcej serwerów opartych na Linuksie niż serwerów Windows. Wspomniał także, że stos umiejętności Java jest znacznie bardziej użyteczny niż .NET w świecie aplikacji internetowych.
Moje doświadczenia z Javą i C # są raczej takie same. Jestem jednak doświadczonym programistą C ++.
Czy ktoś może mi coś zasugerować?
Wielkie dzięki
Odpowiedzi:
W przeciwieństwie do @John Fisher (+1) jestem facetem z Javy.
Zawsze jestem zazdrosny o świat Windows / .Net, ponieważ wszystko wydaje się być znacznie bardziej zintegrowane, przynajmniej dla kogoś, kto nie zna wszystkich szczegółów i pułapek.
Miejsce Java jest nieco bardziej chaotyczne, dlatego wytwarza szereg dość innowacyjnych pomysłów (np. Hadoop, Spring itp.) Poza JCP, który promuje oficjalne standardy JavaSE i JavaEE. Ponieważ JCP jest napędzany przez wiele różnych (komercyjnych) organizacji, czasami jest daleko w tyle (np. Funkcje lambda w Javie), ponieważ znalezienie porozumienia między wszystkimi uczestnikami zajmuje tylko trochę czasu.
Obie strony mają wiele zalet i wad. Niemniej jednak, z technicznego punktu widzenia, tak naprawdę nie ma znaczenia, czy używać Javy, czy .Net, ponieważ tworzenie stron internetowych polega bardziej na myśleniu w skalowalności i ogólnej złożoności, jeśli chodzi o np. 10 tys. Jednoczesnych użytkowników uzyskujących dostęp do twojego systemu.
Z punktu widzenia architektury oprogramowania .Net i Java (frameworki EE +) są dość podobne, oba zapewniają interfejsy API do rozwiązywania wszystkich typowych problemów (np. MVC, Rest, JSON, trwałość, przesyłanie wiadomości - żeby wymienić tylko kilka): w obliczu dzisiejszego świata.
Podsumowując - spójrz na obie koncepcje i wybierz jedną. To nie jest decyzja na całe życie.
źródło
Nie jestem pewien, czy liczba serwerów naprawdę ma znaczenie. Co ma znaczenie: czy możesz osiągnąć cele niezawodnie, szybko i tanio dzięki {x}?
Jeśli chodzi o platformę .NET, rzadko byłoby uzyskać odpowiedź „nie” na to pytanie. (Nie jestem javą, więc nie mogę nic na to poradzić.)
Serwery Linux vs. Windows również nie są całkiem odpowiednie. Możesz tworzyć aplikacje sieciowe .NET do uruchamiania na serwerach Linux, używając Mono .
źródło
Dobrze pracując intensywnie w Javie i trochę w .NET, powiedziałbym kategorycznie i absolutnie, że .NET jest znacznie ładniejszym środowiskiem do pracy.
Jest to o wiele bardziej spójne i zintegrowane środowisko programistyczne, a platforma „.NET” jest kompletna . Java jest znacznie bardziej jak poszukiwanie skarbów - istnieją dobre biblioteki i frameworki, ale musisz aktywnie wyszukiwać i oceniać prawie wszystko, czego potrzebujesz do praktycznego projektu, a prawidłowe skonfigurowanie środowiska programistycznego może zająć kilka dni.
Istnieje o wiele więcej * serwerów nix niż serwer Windows (i są tańsze do wynajęcia), ale niewiele z nich obsługuje serwer J2EE - więc liczba serwerów nie ma znaczenia. Jest to bardziej przypadek .ASP vs. PHP.
Głównym powodem, dla którego preferuje się Javę nad .NET, jest fakt, że wiele firm z listy Fortune 500 ustandaryzowało się na jednej z dwóch dużych platform J2EE: Webshpere IBM lub Weblogic Oracle. Poza tym wydaje się, że gigantyczna, niszowa Java jako platforma aplikacji internetowych popadła w niełaskę.
źródło
Obecnie debata jest bardziej php vs asp.net niż asp.net vs jsp. Obecnie nie widzę wielu rozwiązań jsp / tomcat. W każdym razie, dlaczego nie nauczyć się zarówno asp.net, jak i jsp? Są to podobne pomysły i myślę, że jsp stanowi dobre ramy dla zrozumienia asp.net. Zgadzam się z @John, że Linux vs Windows jest naprawdę nieistotny. .NET działa dobrze w Linuksie i Apache. Jeśli znasz JAVA, to może poświęć kilka tygodni na napisanie kodu JSP, a następnie przejście na asp.net i c #. Zobacz, który Ci się podoba i stamtąd.
źródło