Zbliża się projekt, dzięki któremu niektóre kody, które będę pisać, mogą być wdrażane na dowolnym sprzęcie, który potencjalni klienci mają. Jest to aplikacja biznesowa, która będzie działać przez 24 godziny na dobę, więc wyobrażam sobie, że większość komputerów-hostów będzie serwerami typu serwerowego, ale mniejsi klienci mogą na przykład mieć zwykły komputer.Najbardziej odpowiedni niezależny od platformy język programowania
Jeszcze kilka szczegółów na temat kodu będę pisał:
nie będzie GUI.
Będzie musiał komunikować się z innym urządzeniem "czarną skrzynką" na zamówienie przez sieć Ethernet.
Będzie musiał komunikować się z bazą danych MySQL gdzieś w sieci.
Nie mam żadnych problemów z wydajnością: a) liczba połączeń z czarną skrzynką będzie niewielka, około 1 na sekundę, a ilość wymienianych danych będzie niewielka (około 1K za każdym razem), b) liczba odczytów/zapisów w bazie danych będzie niewielka, około 5 na minutę, i znowu ilość wymienianych danych będzie niewielka i c) przetwarzanie, które należy wykonać, jest dość uproszczone.
Nic, co robię, jest bardzo "bliskie metalowi", więc nie chcę używać języków, które są zbyt niskie. Łatwość rozwoju i łatwość wdrożenia to moje główne priorytety.
Nie oczekuję, że będzie idealne rozwiązanie, więc mogę żyć z takimi rzeczami jak, na przykład, konieczność posiadania nieco innych plików konfiguracyjnych dla komputerów z systemem Windows niż dla skrzynek Linux itp. Chciałbym uniknąć konieczności kompilować oprogramowanie dla każdego hosta, jeśli to możliwe.
będzie cenię swoje przemyślenia co do których rozwój językowy uważasz za najbardziej odpowiednie.
Cheers,
Jim
+1 Java. Nigdy go nie używałem, ale to jest to, na co zostało zbudowane, prawda? – Assembler
Tak. Java jest naprawdę potężnym językiem i może działać tak szybko, jak C w większości przypadków. Nadal ma wiele problemów, ale nie sądzę, by wpłynęły one na PO. Nie pisałem też żadnej Javy przez 2-3 lata. Uwielbiam .NET teraz :) – ddd
-1 dla C/C++ (w oparciu o wymagania OP), ale +1 dla Javy, więc myślę, że wyrównuje do 0. – cletus