ASP.NET - kilka pytań początkującego

0

Witam! :) Piszę sobie troszkę w C#, ale chciałbym powoli zająć się tworzeniem w ASP.NET, znam podstawy HTML i CSS (pozdro codecademy, polecam :p). Mam kilka pytań odnośnie ASP.NET.

  1. Czym jest ASP.NET Web Pages, wszyscy zawsze pytają się co wybrać: WebForms czy MVC, a na stronie asp podane są 3 frameworki, z czego o Web Pages nie mogę znaleźć zbyt dużo informacji.

  2. Jak duża znajomość składni C# i ogółem skill w programowaniu jest potrzebny, żeby pisać w ASP.NET (w sensie - jak bardzo jest to trudne?)

  3. Czy MVC jest tak trudne, jak go malują? Czy mając zerowe doświadczenie w webie i niedużą wiedzę programistyczną powinienem rzucać się na głęboką wodę, czy lepiej wybrać WebForms?

  4. Jak mocno w poszczególnych modelach wymagana jest znajomość frontendu (html, css, js). Wyczytałem, że WinForms bierze na siebie dużą część tej działki - jak dużą i ile muszę zrobić sam. Jak to jest z MVC?

Liczę na pomocne odpowiedzi, z góry dzięki :)

0

Moim zdaniem na większość tych pytań wystarczy Ci google ;] Ale co do pytania 3: nie jest trudne ani proste, takich pytań się nie zadaje, bo dla jednego będzie banalne a dla drugiego nie. Ja nigdy w życiu nie ruszyłem web forms, a jakoś nie mam żadnych problemów z MVC, jedna książką (ASP.NET MVC4 zaawansowane programowanie, Adam Freeman) kilka kursów w internecie http://www.asp.net/mvc i śmigasz.
Pytanie 4: to też zależy co chcesz zrobić, nie da się tak odpowiedzieć. Ogólnie rzecz biorąc masz szablony widoków np. "Create", "Edit", "List" itd. które generujesz na podstawie modelu czyli zwykłej klasy c#. Jeśli masz listę to zrobi Ci podstawową tabelę, którą potem możesz obłożyć css, ale nie musisz. Wejdź sobie w link który podałem, przeczytaj i powinno się rozjaśnić.

0
Wizzie napisał(a):
  1. Czym jest ASP.NET Web Pages, wszyscy zawsze pytają się co wybrać: WebForms czy MVC, a na stronie asp podane są 3 frameworki, z czego o Web Pages nie mogę znaleźć zbyt dużo informacji.

Jest na stronie głównej: http://www.asp.net/web-pages

  1. Jak duża znajomość składni C# i ogółem skill w programowaniu jest potrzebny, żeby pisać w ASP.NET (w sensie - jak bardzo jest to trudne?)

Trudno programować nie znając w ogóle składni.

  1. Czy MVC jest tak trudne, jak go malują? Czy mając zerowe doświadczenie w webie i niedużą wiedzę programistyczną powinienem rzucać się na głęboką wodę, czy lepiej wybrać WebForms?

WebForms jest trudniejsze, bo trzeba dobrze zrozumieć wszystkie obejścia na bezstanowość HTTP, które WebFormsy wymagają, trzeba znać kolejność zdarzeń cyklu życia strony, i sporo podobnych, nienaturalnych dla WWW zagadnień.

  1. Jak mocno w poszczególnych modelach wymagana jest znajomość frontendu (html, css, js). Wyczytałem, że WinForms bierze na siebie dużą część tej działki - jak dużą i ile muszę zrobić sam. Jak to jest z MVC?

Zakładam, że chodziło Ci o WebForms, a nie WinForms.
Jeśli tworzysz projekt, to na dzień dobry dostajesz jakieś gotowe szablony, przy czym w MVC są chyba ładniejsze. Do tego, w MVC dużo łatwiej zmienić kod HTML czy CSS i dostosować aplikację do swoich potrzeb. W WebFormsach jest to niemożliwe w niektórych przypadkach, zaś ich domyślne CSSy są kompatybilne tylko z IE.

0

Jest na stronie głównej: http://www.asp.net/web-pages

Aż tak ślepy nie jestem :o Chodziło mi o to, że wszyscy pytają się co wybrać: MVC czy WebForms, a nikt nigdy nie wspomina o WebPages - znaczy, że jest jakieś gorsze, czy coś? :D

  1. Jak duża znajomość składni C# i ogółem skill w programowaniu jest potrzebny, żeby pisać w ASP.NET (w sensie - jak bardzo jest to trudne?)

Trudno programować nie znając w ogóle składni.

Myślałem, że pytanie jest dosyć sprecyzowane :D Rzecz w tym, czy muszę dużo pisać aplikacji desktopowych, a później zająć się ASP.NET, czy mogę po poznaniu podstaw od razu wskoczyć w temat?

WebForms jest trudniejsze, bo trzeba dobrze zrozumieć wszystkie obejścia na bezstanowość HTTP, które WebFormsy wymagają, trzeba znać kolejność zdarzeń cyklu życia strony, i sporo podobnych, nienaturalnych dla WWW zagadnień.

Ciekawe, gdzie nie spojrzałem, to wszędzie głosili, że WebForms jako "event-driven programming" jest łatwiejsze do ogarnięcia. Czyli dobrze jest zacząć od MVC?

0
Wizzie napisał(a):

Chodziło mi o to, że wszyscy pytają się co wybrać: MVC czy WebForms, a nikt nigdy nie wspomina o WebPages - znaczy, że jest jakieś gorsze, czy coś? :D

To jest jakieś cholera wie co dla początkujących. ;)
http://www.codeproject.com/Ar[...]Forms-MVC-and-Web-Pages-Oh-my

Rzecz w tym, czy muszę dużo pisać aplikacji desktopowych, a później zająć się ASP.NET, czy mogę po poznaniu podstaw od razu wskoczyć w temat?

W ogóle nie musisz pisać aplikacji desktopowych. Podstaw języka i tak się uczy w konsoli, a potem można przejść bezpośrednio do web.

Ciekawe, gdzie nie spojrzałem, to wszędzie głosili, że WebForms jako "event-driven programming" jest łatwiejsze do ogarnięcia. Czyli dobrze jest zacząć od MVC?

No tak, WebForms to programowanie zdarzeniowe. Ale nie powiedziałbym, że to łatwiejsze. W MVC masz prostą zasadę: kliknięcie w przycisk = żądanie -> wywołanie metody kontrolera -> aplikacja coś robi -> zwrócenie widoku (najczęściej HTML). W WebFormsach masz zdarzenia, a potem się zastanawiasz, które się wykonują w jakiej kolejności, czemu nagle coś znika, albo się nie binduje. Tyle tylko, że aby osiągnąć w MVC efekt np. dynamicznego załadowania części strony, albo np. edytor in-place, trzeba się pobawić w JS (albo jakimś frameworku), a w WebFormsach, tego typu rzeczy są gotowe.

Ale ja i tak bym zaczynał od MVC, bo nawet jeśli robisz w WebFormsach, to w pewnym momencie znajomość HTML/CSS/JS staje się i tak niezbędna, a poza tym, nowe projekty coraz częściej są tworzone jako MVC.

0

W ogóle nie musisz pisać aplikacji desktopowych. Podstaw języka i tak się uczy w konsoli, a potem można przejść bezpośrednio do web.

Właściwie to ja uczę się na aplikacja desktopowych ;p Ale faktycznie, skończę książkę i od razu zabiorę się za MVC.

Co do frontendu, to muszę go znać, czy mogę się go uczyć w trakcie nauki ASP.NET?

0

Możesz się uczyć w trakcie. Zresztą, podstawy są relatywnie proste.

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