2009-04-15 22 views
5

Niedługo poinformuję firmę o projekcie i nie jestem zbyt pewny, w jakim języku programowania powinienem doradzać.W jakim języku używam swojego projektu?

Jest to dość prosta (na komputer) aplikacja z centralnym źródłem danych w sieci do przechowywania i edycji części składających się na maszynę. Maszyna musi zostać skonfigurowana w aplikacji, a przy takiej konfiguracji generowane są dokumenty produkcyjne (instrukcje, oprogramowanie, zestawienie materiałów). (np. jeśli część A i B zostanie dodana do skonfigurowanej maszyny, wówczas należy zastosować odmianę X w rozdziale 5 instrukcji, jeśli ma to sens)

Istnieje kilka niestandardowych komponentów takich jak drzewo z radiem & checkboxy i musi mieć w sobie jakąś kontrolę wersji. Do edytowania rozdziałów podręczników potrzebny jest edytor WYSIWYG. Nie musi działać na platformach innych niż Windows, ponieważ będzie używany tylko w sieci firmowej i wszyscy będą uruchamiać okna.

Myślałem o Jawie z powodu ogromnej liczby przydatnych bibliotek i darmowych IDE. Sam jestem programistą Java, więc nie znam innych języków programowania. Jakieś przemyślenia na temat jakiego języka powinienem używać i dlaczego? Sądzę, że w firmie jest trochę wiedzy VB/VBA i Delphi (nie jest to firma informatyczna i nie planuję jej samodzielnie).

Dzięki za hałdy!

+0

Przepraszam za jedzenie jednego tagu językowego w mojej edycji, ale uważam, że tag "który-język" jest bardziej odpowiedni dla tego pytania niż "asp.net". W każdym razie możesz cofnąć moje wydanie. –

+0

Zrobiłeś krótką listę języków/frameworków, których chcesz użyć? Nawet jeśli Java, jakie IDE? Twoje pytanie jest bardzo szerokie i nie jest * bezpieczne * zadawanie tego rodzaju szerokich pytań i poleganie na odpowiedzi w celu podjęcia decyzji o jednej z najbardziej krytycznych decyzji dotyczących produktu. A jeśli nie zamierzasz polegać na odpowiedziach tutaj, to po co pytasz? –

Odpowiedz

22

Od co się opisać z aplikacji i środowiska, nic nie może pokonać Delphi!

Jest to idealne opakowanie dla Delphi, aby błyszczeć:
- natywna aplikacja komputerowa o najszybszych osiągach i połączeniu.
- mnóstwo wspaniałych (często darmowych) komponentów; prawdopodobnie znajdziesz drzewo
- bardzo potężne, ale proste do zastosowań DB
- bardzo aktywny i pomocny społeczności

Zobacz również why I recommended it for another SO user.

+5

Mimo że Delphi jest aplikacją ogólnego przeznaczenia, dla aplikacji bazodanowych takich jak Ty opisujesz to naprawdę robi niesamowite. Masz maksymalne opcje dla baz danych i metod dostępu do danych, dzięki czemu możesz znaleźć ten, który idealnie pasuje do Twojej sytuacji! –

0

Cóż, istnieje wiele mądrości w używaniu tego, co wiesz (Java).

Jednak, aby przeciwdziałać "z powodu ogromnej liczby przydatnych bibliotek i wolnych IDE" - .NET ma również ogromną bazę biblioteczną i darmowe IDE (w tym edycje Express Visual Studio). Dla .NET, C# byłby "bliższym" językiem dla Javy niż VB.

Myślę, że skończysz z Javą, choć (dzięki znajomości - nie zawsze jest zła rzecz).

4

Zależy. Na wiele rzeczy. Jakiego języka znasz? Jakiej bazy danych używasz (MS SQL ma pewne zalety, gdy jest używany z językiem .NET, ale może być również używany z java, lub ...)?

Biblioteki (przynajmniej dla mnie) nie są głównym punktem decyzyjnym, ponieważ istnieje wiele bibliotek również dla innych języków.

Jeśli nie programujesz samodzielnie, poproś programistę wykonującego tę pracę. Projekty mają inne znaki niż technologia, takie jak wykorzystany czas i wydane pieniądze. Jeśli wybierzesz język, który programista zna, jest bardziej prawdopodobny czas i koszt.

Twoje pytanie jest zbyt otwarte, aby dać dokładną odpowiedź. Ale może to pomaga ci o tym myśleć.

2

Z oznaczonych języków należy unikać asp.net, ponieważ jest to aplikacja komputerowa. Poza tym wszystkie inne języki wykonałyby dobrą robotę. Sprowadzałoby się to do osobistych preferencji (co ważniejsze osobistych preferencji dewelopera).

0

Kiedy budujemy systemy po stronie klienta używamy .Net (C# zazwyczaj). Robimy Javę na zapleczu, ale wygląda na to, że nie masz tradycyjnego zaplecza. Dla wszystkich bibliotek i frameworków dostępnych dla Javy większość elementów interfejsu UI wysokiej jakości znajduje się obecnie w przestrzeni .Net.

6

Cóż można opisać scenariusz nie jest bardzo język specyficzny, więc oto kilka podpowiedzi:

  • ogólnie, Java jest absolutnie ok, ale:
  • W oknach świata, można żyć łatwiejsze .net languages, ze względu na bezpośredni dostęp do COM/activex do łączenia fragmentów dokumentacji w Adobe lub Word
  • ponieważ w firmie jest trochę wiedzy o vb, może zadanie utrzymanie oprogramowania staje się tańsze.

Proponuję C#, ponieważ poprzez mono, możesz przejść do Linux gdzie i jeśli to konieczne.

cóż, to moje 2 centy.

1

Jestem programistą Java ja tak nie jestem bardzo znane z innych języków programowania.

Jeśli zamierzasz pisać oprogramowanie, powinieneś używać Javy. Jesteś już zaznajomiony z tym i Twoja znajomość może pomóc Ci rozkoszować się klientem.

1

Jeśli nie piszesz, musisz dowiedzieć się, kto jest i wziąć pod uwagę ich doświadczenie. Posiadanie ich do nauki nowego języka tylko dlatego, że nie wiesz, co jest im obce, nie jest dobrym pomysłem.

Java będzie działać, C# będzie działać (osobiście bym to zrobił), to naprawdę zależy od doświadczenia, które masz dostępne.

Co to jest w przypadku "niestandardowych" komponentów? Jeśli są dostępne zewnętrzne elementy sterujące, które mogą narzucać język/platformę do pracy. Istnieje wiele darmowych elementów sterujących i przykładów w językach Java i C#, a rozszerzanie standardowych elementów sterujących Java/.NET może nawet działać lepiej niż w przypadku kontrolerów innych firm.

Wygląda na to, że musisz dowiedzieć się więcej o aplikacji i innych rzeczach, zanim będziesz mógł doradzić komuś, co należy dalej robić.

3

Należy używać dowolnie języka jest:

1) najbardziej odpowiednie dla projektu

Na przykład: Jeśli projekt wymaga przetwarzania w czasie rzeczywistym, należy używać języka, który sprzyja wykonywaniu tego zadania .

2) Ty (i Twój zespół) czujesz się najlepiej.

Musisz omówić ze swoim zespołem, czy wszystkie języki, które obecnie znasz między wami są odpowiednie (pamiętając o punkcie 1). Jeśli żadna z nich nie jest odpowiednia, to w jakim języku (z punktu 1 na uwadze) będzie najbardziej wygodnie w nauce, rozwoju i wspieraniu (utrzymaniu) przez cały okres życia projektu.

To brzmi jak bardzo lakoniczna rada, ale uważam, że jest to niezwykle ważne.Jeśli twój projekt ma się udać, potrzebujesz języka, z którym możesz "żyć" i będziesz pracować z tobą, a nie przeciwko tobie. Jeśli byłeś pracownikiem drewna, możesz użyć młotka do wkręcania śrub do kawałka drewna, ale czy nie byłoby ci wygodniej używając śrubokręta?

0

Myślę, że to naprawdę nie ma znaczenia, w jakim języku programowania i środowisku programujesz, o ile dobrze go poznasz. C++, Java i C# mają dobre biblioteki i wszystkie mają swoje mocne i słabe strony. Ważne jest, abyś znał specyfikę języka, środowisko programistyczne, debugger, dobry profiler, standardowe biblioteki, najlepsze biblioteki stron trzecich itp. Ponadto po pewnym czasie możesz ponownie użyć własnego kodu jako dobrze. Na przykład wspominasz o zaawansowanym widżecie drzewa. W naszej firmie mamy własne drzewo (w C++), które możemy dopracować tak, jak chcemy.

0

Kiedy zarządzasz rozwojem, a ktoś inny wykonuje implementację i konserwację, proponuję negocjować z nimi język programowania.

Kiedy musisz przeprowadzić konserwację, skoncentruj się na językach, które znasz.

Jeśli wykonujesz wszystkie/większość pracy, po prostu użyj języka, który znasz, kiedy nie masz wystarczająco dużo czasu, aby nauczyć się nowego języka. Zwłaszcza jeśli aplikacja jest ważna i musi być całkiem wolna od błędów. (chociaż nigdy nie było "ostatniego błędu", jak wszyscy wiemy) ;-)

Ilość bibliotek stron trzecich nie jest dobrym kryterium, ponieważ nie odzwierciedla ich jakości (może większość to bzdura) i wielu Biblioteki to także duża szansa na wybranie niewłaściwej.

Nie zapomnij sprawdzić, czy wybrany język jest w stanie wykonać zadanie. (Szybkość, ograniczenia platformy, pamięć, ...)

16

dla aplikacji komputerowych (plus z bazą danych/win32) polecam delphi. możesz znaleźć wiele dobrych komponentów dostępnych.

19

Myślę, że jeśli masz wiedzę Delphi w swojej firmie: jest to bardzo dobry wybór dla aplikacji Desktop i jako avar says: możesz znaleźć wiele dobrych komponentów tutaj Torry's Delphi Pages.

Polecam ten article

+1

Po drugie zalecam Delphi. Pracowałem w innych językach, w tym w najnowszym C# .NET. Wciąż wolę Delphi dla aplikacji komputerowych. Dodatkowo ma najprostsze wdrożenie (brak czasu pracy!). –

7

Prawdopodobnie chcesz wybrać język, w którym Twój zespół ma największe doświadczenie. Osobiście jestem w Delphi i wydaje mi się, że to może być dobry wybór dla tego, co opisujesz. Delphi jest bardzo odpowiedni dla aplikacji Desktop rozmawiających z bazą danych. Jednak jeśli twoja drużyna (ci, którzy piszą i utrzymują aplikację) są bardziej doświadczeni w Javie/C#/VB, powinieneś pójść z tym.

Powiązane problemy