... czy może sprawy stają się coraz bardziej skomplikowane?
Wydaje mi się, że musisz wiedzieć wiele rzeczy, aby „właściwie” opracować aplikację internetową MS w tych dniach. W dawnych, złych czasach, kiedy nie wiedzieliśmy nic lepszego, mieliśmy tabele bazy danych, ASP.NET, ADO.NET, a ty zbudowałeś aplikację internetową przy użyciu stosunkowo prostych koncepcji.
W dzisiejszych czasach wydaje się, że istnieje wiele ram, aby „pomóc” zrobić to „dobrze”, ale nie jestem przekonany, że dzięki temu wszystko jest łatwiejsze i lepsze. Mam przeczucie, że będę w tak niewielkiej mniejszości z tym sentymentem, ale czy jest ktoś jeszcze, kto uważa, że sprawy trochę się oszalały?
wcf
linq
mvc
entity-framework
Czeladnik
źródło
źródło
Odpowiedzi:
Wszystkie te rzeczy są opcjonalne, używaj ich, jeśli są pomocne, nie rób, jeśli nie są. To takie proste. Z pewnością możesz pisać dobre / odpowiednie aplikacje internetowe bez żadnego z tych akronimów w swoim rozwiązaniu.
Osobiście uważam, że MVC jest dość lekkim i łatwym w użyciu frameworkiem (znacznie łatwiejszym do rozpoczęcia niż formularze internetowe, imo). Podobnie LINQ zapewnia powszechny sposób sprawdzania czegokolwiek; także dobre. EF i WCF i ja mieliśmy nasze nieporozumienia, ale kiedy tak jest, nie używam ich.
źródło
Nie, nie bardzo. LINQ jest największą rzeczą od czasu krojenia chleba podczas interakcji z bazą danych.
Należy pamiętać, że te rzeczy są zbudowane na innych rzeczach. LINQ nie zwiększa liczby rzeczy, które musisz wiedzieć, aby stworzyć stronę internetową ASP.NET, ponieważ teraz nie musisz znać SQL. A LINQ to OO, co jest znacznie bardziej zgodne z regularnym tworzeniem aplikacji, co sprawia, że jest to kompletne łatwiejsze do zrobienia niż SQL i znacznie łatwiejsze do integracji z C #.
Jeśli nie uważasz, że LINQ jest łatwiejszy niż SQL, być może powinieneś opublikować przykłady czegoś trudniejszego w nowych paradygmatach.
Co ważniejsze, wcześniej strony internetowe miały znacznie mniejszą funkcjonalność. Jak zamierzasz tworzyć nowe witryny, które działają lepiej, skalują się lepiej i oferują nowe funkcje w tym samym kodzie?
źródło
Gdyby stare koncepcje, o których wspomniałeś, już nie działały, zgodziłbym się, że byłoby szalone, ale nowsze ramy są alternatywami. Ślepa akceptacja byłaby szalona. Musisz uzasadnić. Osobiście sam SQL nie stanowi dla mnie problemu. Próbując dodać niektóre funkcje współczesnych stron internetowych, formularze internetowe już go nie wycinają.
Jestem pewien, że niektórzy klasyczni ludzie ASP mieli takie samo zdanie na temat .NET, ale niewielu może nadal się z tym spierać. Zbudowałem kilka stron w klasycznej ASP i nie chciałbym wrócić.
źródło
„Trochę oszalał”. Dokładnie tak opisałbym rozwiązanie
DataSet
ADO.NET, ASP.NET. :)Zgadzam się, że jest o wiele więcej do nauczenia się, ale każda ze wspomnianych platform poprawiła programowanie .NET.
źródło
Powiedziałbym, że jest to problem globalny, który może wpłynąć prawie na każdą platformę lub platformę (programistyczną). Po wydaniu nowego frameworka wygląda zwykle na mały i zwarty, ale z biegiem czasu nowe funkcje / funkcjonalność / interfejsy API są dołączane (albo przez mapę drogową / żądanie, nowe koncepcje / trendy / technologie lub po prostu przez ewolucję), staje się „rozdęty”. Zacząłeś od „jednego sposobu robienia rzeczy”, a teraz jest więcej możliwości do wyboru (i - nie wiesz / nie jesteś pewien - który wybrać). Nauczenie się nowych rzeczy może być czasochłonne, ale mogą one zaoferować Ci znacznie bardziej elastyczne / szybsze / lepsze rozwiązania tych samych problemów, które zostały wcześniej rozwiązane przez ograniczony zestaw opcji.
Kiedyś natknąłem się na zabawny cytat - „cały kod zamienia się w s #! T, mając wystarczająco dużo czasu i rąk” - który IMHO podsumowuje, dlaczego nowe rzeczy w istniejących ramach powinny się pojawić, aby wprowadzić nowe pomysły w życie i dokonać ewolucji.
źródło