Czy F # oferuje coś szczególnie przydatnego do tworzenia stron internetowych opartych na bazie danych?

18

W tym roku moja organizacja ostatecznie zaktualizowała się do MS Visual Studio 2010. Jedną z wielkich nowych funkcji oferowanych przez Visual Studio 2010 jest język programowania F #.

Rozumiem, że F # oferuje funkcjonalny paradygmat programowania, podobny do Lisp. Jednak w przeciwieństwie do Lisp, F # jest kompilowany w kod zarządzany dla środowiska .net.

Obecnie pracuję nad tworzeniem aplikacji internetowych opartych na bazach danych. Obecnie pracuję z aplikacją n-tier z kodem SQL na zapleczu i aplikacją WWW CJA .net AJAX na interfejsie. Chciałbym wiedzieć, czy F # oferuje coś, co byłoby szczególnie przydatne dla tego rodzaju rozwoju.

Ciastka Z Mąki Ryżowej
źródło
Czy twoje oprogramowanie wykonuje analizy finansowe lub statystyczne? Nie twierdzę, że po to jest F # (to o wiele więcej niż to), ale wyróżnia się w tym obszarze i ogólnie rzecz biorąc „wstaw x, wyjdź”.
AndrewC,
Nawiasem mówiąc, należy również pamiętać o powiązanym utrzymaniu każdego kodu napisanego w języku F #. Czy zamierzasz szkolić programistów w tym języku? Nie chcesz być jedyną osobą, która rozumie określony obszar twojego systemu.
AndrewC,
Nie ma analizy finansowej ani statystycznej. Zasadniczo jest to po prostu rejestracja
Rice Flour Cookies,

Odpowiedzi:

9

F # nie robi nic, czego C # nie może. Wszystkie ostatecznie kompilują się do tego samego CLR, więc nie ma jednej technologii, która byłaby dla Ciebie niezwykle przydatna. Możesz nawet zadzwonić do F # z C # i odwrotnie.

W zależności od problemów projektowanie F # może zapewnić prostszy i bardziej zwięzły kod.

Języki funkcjonalne również bardzo dobrze nadają się do testów jednostkowych. To i fakt, że istnieje znacznie mniej zmiennych danych oznacza, że ​​twój kod, jeśli dobrze napisany, będzie miał znacznie mniej błędów.

Mogę powiedzieć z własnego doświadczenia, że ​​nauczenie się niektórych F # może naprawdę poprawić twoje umiejętności w C # i pomóc ci myśleć o problemach w nowy sposób.

Nauka koncepcji programowania funkcjonalnego może również naprawdę pomóc w Javascript (który jest językiem funkcjonalnym).

Tom Squires
źródło
6

Jedną z funkcji najnowszej wersji F #, której nie ma w C #, są dostawcy typu .

Typy dostarczane przez dostawców typu F # są zwykle oparte na zewnętrznych źródłach informacji. Na przykład dostawca typu F # dla SQL zapewni typy, właściwości i metody, których potrzebujesz do pracy bezpośrednio z tabelami dowolnej bazy danych SQL, do której masz dostęp. Podobnie dostawca typów dla usług sieciowych WSDL zapewni typy, właściwości i metody potrzebne do bezpośredniej pracy z dowolną usługą internetową WSDL.

Dostawca typu SQL Server jest szczególnie łatwy w użyciu. Oto przewodnik, jak go używać.

JonnyBoats
źródło