Spring czy warto

Odpowiedz Nowy wątek
JesiennyWiatr
2012-09-25 19:17
JesiennyWiatr
0

Witam,
Potrzebuje pomocy w wyborze technologi webowych. Poważnie zastanawiam się nad Spring. Napiszę dlaczego.

  1. Mam miłe doświadczenia z moimi pierwszymi aplikacjami internetowymi w ASP.NET MVC3. Podobno Spring jest podobny.
  2. Jest duże community, nie brakuje ofert pracy.
  3. Stoi za tym duża firma i jest już szeroko stosowane.
  4. Jestem początkującym jeśli chodzi o web, więc ilość materiałów w tym przypadku jest bardzo zachęcająca.
  5. Przyzwyczaiłem się do drobnych wstawek kodu C# w widokach Razor View (początkowo było to nieco irytujące).

Czego oczekuje:

  1. Dobry maper ORM (coś jak Entity Framework). Zastanawiałem się nad Hibernate + PostgreSQL.
  2. Bezproblemowa współpraca z urządzeniami mobilnymi (Android, iOS) za pomocą REST (z tego co widzę Spring wydał toolkit na Androida, więc będzie mi po drodze).
  3. Naukę zacznę od frameworka niekomponentowego. Dzięki czemu lepiej poznam niskopoziomowe zagadnienia tzn. CSS + HTML i potem będę w stanie skutecznie docenić komponentowe wynalazki np. Wicket w celu tworzenia własnych widgetów oraz JSF jeśli będę musiał (tylko dlatego, że jest standardem).
  4. Przyjazne IDE. Z tego co widzę Spring wydało toolkit dla Eclipse.

Mój stan umiejętności:

  1. Dopiero wchodzę w technologie webowe. Mam zamiar uczyć się CSS, jQuery itp. Umiem na tyle, by zastosować gotowe szablony do aplikacji w ASP.NET MVC. Buduje w pełni funkcjonalne, ale nie do końca ładne aplikacje.

Chciałbym więc zapytać w czym Spring jest słabe. Słyszałem, że trzeba używać sporo XML. Ten sam problem pojawiał się w ASP.NET MVC, gdzie definiowało się łączenie z bazami danych tzn. connctionString. Będę wdzięczny za wskazanie wad tego rozwiązania.

Dlaczego nie używam ASP.NET:

  1. Mono nie spełnia moich oczekiwań.
  2. Hosting na IIS póki co nie wchodzi w grę.
  3. Zależy mi na dobrej cross-platformowości.

PYTANIA:

  1. Czy Spring ssie, jeśli tak dlaczego? Na co warto uważać?
  2. Czy tworząc RESTful WebService używać natywnych narzędzi czy JAX-RS?
  3. Czy korzystając ze Spring muszę tykać JSF, JSP i inne technologie mające złą sławę, w sensie niezbyt przyjemne.

Pozdrawiam,

Pozostało 580 znaków

2012-09-25 19:36
Moderator

Rejestracja: 16 lat temu

Ostatnio: 2 godziny temu

1

Spring to nie tylko MVC i web
Jako ORM proponuje używać JPA, uniezależni cię to od dostawcy ORMa
Faktycznie jest do Springa Eclipse STS który jest dość fajny
W springu nie trzeba korzystać z XMLa. Wszystko można robić adnotacjami. Która wersja jest lepsza? Kwestia gustów

  1. Nie ssie, ale jest dość spory - musisz wybrać sobie które fragmenty cię interesują
  2. Nie, ale Spring wygodnie się z nimi integruje.

Masz problem? Pisz na forum, nie do mnie. Nie masz problemów? Kup komputer...

Pozostało 580 znaków

mućka
2012-09-25 19:56
mućka
0

Polecam poczytac o JavaConfig - od springa 3 jest to nowa, pakowana razem ze springiem mozliwosc konfiguracji bez XML.
Przyklad:

@Configuration
public class AppConfig {
  @Bean
  public MyService myService() {
      return new MyServiceImpl();
  }
}

public static void main(String[] args) {
  ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class);
  MyService myService = ctx.getBean(MyService.class);
  myService.doStuff();
}

Moim zdaniem dziala swietnie, jest to moj ulubiony sposob konfiguracji DI (a uzywam na co dzien google guice, CDI, spring xml i @Autowired, nawet wlasne DI).

Pozostało 580 znaków

mućka
2012-09-25 19:58
mućka
1

A teraz z nieco innej strony - nie znosze springa. Nie znosze sposobu w jaki jest napisany. Nie znosze tego ze jest to typowy 'glue framework'. Ma takie troche 'starodawne' odczucie - nie jest to framework nowy, jest w nim sporo nalecialosci, ktore dodatkowo przez jego popularnosc ciezko jest usunac ze wzgledu na kompatybilnosc wsteczna. Nie lubie tego jak wielkie jest to kure****...

Pozostało 580 znaków

JesiennyWiatr
2012-09-25 20:14
JesiennyWiatr
0
mućka napisał(a):

A teraz z nieco innej strony - nie znosze springa. Nie znosze sposobu w jaki jest napisany. Nie znosze tego ze jest to typowy 'glue framework'. Ma takie troche 'starodawne' odczucie - nie jest to framework nowy, jest w nim sporo nalecialosci, ktore dodatkowo przez jego popularnosc ciezko jest usunac ze wzgledu na kompatybilnosc wsteczna. Nie lubie tego jak wielkie jest to kure****...

A jaki framework dla Javy jest nowoczesny i zarazem popularny z dobrym community? Odnoszę wrażenie, że różnych opcji masa, ale jest to takie niespójne i pomieszane.

Pozostało 580 znaków

WiosennyDeszczyk
2012-09-25 20:45
WiosennyDeszczyk
0

W Javie jest wiele frameworków, ale według mnie nie ma tak fajnego jak ASP.NET MVC. Nie wiem dlaczego przesiadasz się na dużo bardziej toporny język. Teraz wielu programistów przechodzi z Javy na C#.

Pozostało 580 znaków

mućla
2012-09-25 21:12
mućla
0

Cipo wiem, zes durak.

Pozostało 580 znaków

JesiennyWiatr
2012-09-25 21:18
JesiennyWiatr
0

Nie mam możliwości postawienia IIS ze względu na koszt utrzymania serwera z Windows (powiedzmy projekt non-profit i mamy ograniczony budżet na utrzymanie naszego stuffu, do tego sami musimy skonfigurować serwer itp. Z Java nie ma pod tym względem żadnego problemu.). Mono jeszcze się do tego nie nadaje. Może w przyszłych projektach, gdy otwarte ASP.NET będzie współgrało z PostgreSQL się zastanowimy, bo czas uczenia się ASP.NET jest nieduży.

MVC poznałem przez przypadek na studiach i na pewno korzystałbym z niego nadal, bo jestem w szoku jak szybko można generować funkcjonalny soft, czekam aż Mono dojrzeje i będzie gotowe na produkcje.

Tymczasem czytam następujące porównanie:
http://blog.42.nl/articles/java-and-the-frontend-what-to-choose

Teraz pytanie z innej beczki: czy jest coś od czego można przyjemnie rozpocząć naukę Spring? Konkretna książka / strona z howto? Sam zaraz poszukam, ale tego jest dość dużo i będę wdzięczny za wskazówki.

Zapoznałem się z JPA vs Hibernate i wiem, że Hibernate to JPA + dużo ułatwień i nowoczesnego softu, dostępnego również dla .NET. Dlatego najchętniej znajdę budowę strony:

  1. Kontroler CRUD: Hibernate + Spring.

Pozostało 580 znaków

2012-09-25 21:25

Rejestracja: 9 lat temu

Ostatnio: 6 lat temu

0

http://static.springsource.or[...]ork-reference/html/index.html tylko, że jest tego - w skrócie - dużo. :P


Idiots, idiots everywhere.

Pozostało 580 znaków

mućka
2012-09-25 21:26
mućka
0

Jest Spring in Action wydanie 3 (czytalem po angielsku) - uwazam za dobre wprowadzenie.

Pozostało 580 znaków

JesiennyWiatr
2012-09-25 21:50
JesiennyWiatr
0

Ok zajrzę tam. Co fajnego zrobił MS: http://www.asp.net/mvc/tutori[...]ing-started-with-ef-using-mvc
Dlatego pisałem, że nauka ASP trwa szybko - genialne tutoriale. Jeśli ktoś zna podobne zasoby to będę wdzięczny.

Ale trzeba być otwartym i poradzić sobie wszędzie. :) Java to jednak świat przemysłu więc większy wysiłek niekoniecznie musi być stratą czasu. Dzięki za rekomendacje. Z tego co widziałem po osobach chcących w przyszłości programować w tym języku wymaga się znajomości kilku frameworków, więc sensownie poznać ten świat, nie wszystko musi być sexy.

Po głowie chodzą mi jeszcze dwie rzeczy:

  1. Czy widok z użyciem JSP w Spring to coś zupełnie normalnego i poprawnego w 2012 r. coś jak Razor View? Czy raczej nastawiać się na coś innego. Pytam, ponieważ JSP to stara technologia.
  2. Czy JRuby On Rails to dojrzały produkt czy też hipsterska technologia, której nikt nie używa. Na stronie jest napisane iż jest to szybkie jak JVM, umożliwia korzystanie z dobrodziejstw bibliotek Javy itp. Wpadłem na pomysł, aby uczyć się tego równolegle ze względu na zbliżoną filozofię do MVC (pisałem kiedyś skrypty w Ruby i podoba mi się). Widzę dużo analogii. Nie brakuje materiałów do zwykłych Railsów. Jeśli ktoś tego używa i jest ok to chyba warto mieć takiego asa w kieszeni oprócz czystej Javy?

Pozostało 580 znaków

Odpowiedz

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