Wybór technologii dla forum internetowego

0

Cześć,

Chciałbym zasięgnąć Waszej rady odnośnie wyboru technologii. Mam doświadczenie zawodowe w zakresie tworzenia aplikacji desktopowych w C#.NET. Zamierzam stworzyć forum, którego kod powinien być dostępny open source (np. na github). Chcę w nim utworzyć funkcjonalności, które spodziewam się, że nie byłyby dostępne przy użyciu standardowych rozwiązań, a zatem musiałbym napisać sporo customowego kodu.

Naturalnym wyborem byłby ASP.NET MVC, jako że programuję w C#. Ponieważ stworzenie dużej aplikacji wymaga czasu, mógłbym się w którymś momencie zdecydować na podanie swojego konta bankowego, aby w dobrowolny sposób uczestnicy mogli dokonywać wpłat, a zatem byłoby to zastosowanie komercyjne. Niestety, nie znam się na licencjach Microsoftu na tyle, aby podjąć samemu dobrą decyzję odnośnie wyboru technologii.

Wymagania mam duże, to znaczy chciałbym położyć nacisk na aspekty takie jak: bezpieczeństwo, prywatność, wiarygodność, stabilność, skalowalność, testowalność i wygodę korzystania. Funkcjonalności mogą być implementowane po rozbiciu ich na mniejsze zadania.

Mogę się nauczyć nowego języka i technologii, jeśli byłoby to konieczne. Jakie rozwiązania proponujecie w tym zakresie? (Pytam również o bazę danych).

Z góry dzięki!

1

W przypadku produktów open-source nie obowiązuje cię żadna specjalna polityka licencyjna - masz za darmo dostęp do Visual Studio Community, ASP.NET i ASP.NET Core są produktami otwartoźródłowymi. Jeżeli nigdy nie pisałeś w ASP.NET Core, to polecam się zainteresować, sporo starego (skoro znasz C#/.NET) + sporo nowego. Plus, to, że działa na wielu platformach też zwiększa ostatecznie popularność twojego rozwiązania.

1

Ja bym wziął phpBB i zmienił to, co potrzebuję. Zresztą tak kiedyś zrobiłem. Dorobiłem customową funkcjonalność w dość szybkim czasie.

0

Dzięki! W takiej sytuacji zdecydowałbym się na One ASP.NET. Co byście (pod kątem licencji) proponowali do części bazodanowej i samego hostingu? Zdaję sobie sprawę, że czeka mnie dużo nauki, ale jestem na to gotowy. Korzystałem do tej pory w pracy z MS SQL oraz Oracle SQL, jednak obie są płatne. Ewentualnie mógłbym zacząć od darmowej wersji SQL, która ma ograniczenia na ilość danych, z tego, co pamiętam. Tylko potem, gdyby forum się rozrosło, musiałbym po prostu mieć dobry sposób migracji do alternatywnej bazy danych. Czy są jakieś dobre darmowe rozwiązania?

A co do hostingu to pamiętam jeden kurs z Pluralsight, według którego można część hostingu napisać samemu w kodzie (zamiast korzystać z IIS), jednak nie pamiętam już czy dotyczyło to forum czy tylko web service'ów (nigdy nie pisałem kodu forum internetowego).

Dzięki!

1

Moment, chcesz napisać forum internetowe, czy też uruchomić forum internetowe? Bo w momencie, kiedy piszesz, to ciebie nie obchodzi z jakiej bazy danych ktoś skorzysta - i tak zapewne użyjesz jakiegoś ORM-a. Analogicznie, nie obchodzi cię hosting.

Niemniej - zacznij od darmowej wersji SQL Servera, możesz też oprzeć się na MariaDB, PostrgreSQL czy dowolnym systemie bazodanowym. Użyj ORM-a, np. Entity Framework Core, aby się uniezależnić od bazy. Do hostingu będziesz potrzebował czegoś, co obsługuje .NET Core - czyli jakiegoś VPS-a z Linuksem, Windows, czy też Azure. Nie potrzebujesz IIS-a, bo w ASP.NET Core masz Kestrel, na którym się go uruchamia (a IIS robi co najwyżej za reverse proxy).

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