Materiały edukacyjne w web java vs c#

0

Jak wygląda dostęp do dobrych materiałów webowych w java? Głównie chodzi mi o rzeczy typu spring. Jestem ze świata c# i u nas nie wygląda to za dobrze. Czytasz sobie dokumentacje msdn i masz tam przykłady typu encja na twarz, kontekst bazy danych w kontrolerze itd. Czytasz sobie praktycznie jedyną książkę do asp.net: ASP.NET MVC 5. Zaawansowane programowanie i masz tam przykłady typu repozytorium, które jest zaprezentowane jako nakładka na ORM. Próbowałem znaleźć jakąkolwiek dobrze napisaną aplikacje w asp.net mvc5 i jest bardzo ciężko. Znalazłem nawet repozytoria, które są w topce na githubie (często tytułowane "best practices"), a były przypadki, że i na 4p krytykowane te projekty.

Jak to więc jest u was javowcy? Mam wrażenie, że jest u was więcej materiału dobrej jakości, niż u nas. Co o tym myślicie?

Wołam kilka osób, które wypowiadały się również w temacie o asp.net mvc5 @._. @somekind

0

Tak, świata Javy jest bardziej "demokratyczny", powstaje tam więcej idei np architektonicznych, materiałów, alternatywnych implementacji
O ile feature-feture język C# bym uznał za lepszy, to ekosystem Javy.

Co do szczegółów, 'spring' ma czasem miejsce religii, wytworzył się mentalny vendor-locking. Ma niemały sprzeciw, choć nie na tym forum.
Zainteresuj się J7EE czy J8EE (Ale niech cię ręka boska broni przed materiałami i przesądami sięgającymi J2EE).
Architektura: wielowartswowe też spotykają ironię, czy delikatną krytykę, choćby z bardzo ludzkiego powodu, że wiele naszych projektów nigdy nie dożyje "wersji 2.0", warstwy nigdy nie otrzymają alternatywnej implementacji itd... wzorce repozytorium, DAO, DTO albo mają prostą formalną (nawet wytworzoną automatycznie) warstwę (więc czy sa potrzebne???), albo mogą zanikać.

1
Pijany Kura napisał(a):

Jak wygląda dostęp do dobrych materiałów webowych w java? Głównie chodzi mi o rzeczy typu spring. Jestem ze świata c# i u nas nie wygląda to za dobrze. Czytasz sobie dokumentacje msdn i masz tam przykłady typu encja na twarz, kontekst bazy danych w kontrolerze itd.

A wiesz, skąd się wziął zwrot encja na twarz i pchasz? Z prezentacji Javowca na temat powszechnych praktyk w javowych projektach. Czy to wystarczy Ci jako odpowiedź na Twoje pytania?

Ogólnie wiele zła w branży "enterprise" pochodzi w Javie. Takie idee jak tysiąc warstw w aplikacji, tworzenie warstw abstrakcji na zapas, konfiguracja IoC albo ORM przez XML wzięły się właśnie z tamtego świata.

Czytasz sobie praktycznie jedyną książkę do asp.net: ASP.NET MVC 5. Zaawansowane programowanie i masz tam przykłady typu repozytorium, które jest zaprezentowane jako nakładka na ORM.

Zgadza się. To książka pokazująca technologię, a nie dobre wzorce. Nie wiem czy istnieją idealne książki, ale podstawową zasadą jakiejkolwiek edukacji jest moim zdaniem czerpanie wiedzę z różnych źródeł.

Próbowałem znaleźć jakąkolwiek dobrze napisaną aplikacje w asp.net mvc5 i jest bardzo ciężko. Znalazłem nawet repozytoria, które są w topce na githubie (często tytułowane "best practices"), a były przypadki, że i na 4p krytykowane te projekty.

Te projekty są wręcz doskonałe do nauki. Łamią wszystkie możliwe best practices, więc wystarczy zrobić zupełnie odwrotnie i będzie dobrze. ;)

AnyKtokolwiek napisał(a):

Tak, świata Javy jest bardziej "demokratyczny"

W przypadku C# i .NET społeczność bierze udział w rozwoju, głosuje na ficzery i wszyskto jest transparentne. Chcesz to porównać do działalności Oracle?

Co do szczegółów, 'spring' ma czasem miejsce religii, wytworzył się mentalny vendor-locking.

Chyba właśnie zaorałeś swój argument o demokracji.

0
somekind napisał(a):

W przypadku C# i .NET społeczność bierze udział w rozwoju, głosuje na ficzery i wszyskto jest transparentne. Chcesz to porównać do działalności Oracle?

Najśmieszniejsze jest to, że Javowcy nie korzystają praktycznie z niczego pochodzącego od Oracle. Nawet jdk to z reguły openjdk, a nie java oraclowa. Jedyne, co jest od Oracle to składnia języka. W tym kontekście nieważne, jaka jest polityka Oracle, bo nie jest on tym samym, co Microsoft dla .net.

To tak, jakby programiści .net korzystali z Mono, zamiast .net framework, Microsoft zaprojektował język C#, ale nie korzystać z runtime Microsoftu, tylko odpowiednika OpenSource. Różnica jest taka, że OpenJdk jest podobno lepsze niż zamknięta Java od Oracle, porównując Mono do .net framework nie można tego samego powiedzieć.

1 użytkowników online, w tym zalogowanych: 0, gości: 1