Högnivåspråk med stöd för kod skriven i C

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Jul 2001

Högnivåspråk med stöd för kod skriven i C

På min arbetsplats har vi nu lite planer på att skriva om ett större program från Delphi 7. I huvudsak är det för Windows och ett GUI vi pratar om här. Frågan som naturligt uppkommer är ju då vilket språk vi ska skriva det i. Till vardags arbetar vi främst i C då vi utvecklar mycket inbyggda system. Därför finns det ett intresse av att kunna återanvända en hel del bibliotek som vi sen tidigare har skrivit i C.

De krav jag hittills identifierat är:

  • Gott GUI-stöd för Windows.

  • Kunna inkludera eller ropa på C-rutiner.

  • Inte för nischat.

C++ är ju ett naturligt val eftersom det enkelt går att kombinera med C-kod. Sen verkade både C# och Java klara av att köra C-kod som bibliotek. Python hade också någon variant av det där. Finns sedan tidigare spridd erfarenhet både i t ex Java och C# men det behöver inte styra för mycket.

Vad har folk för favoriter? Argument?

Swec @ 2001 / Chalmerist - Javisst!
'Den som har flest prylar när han dör vinner!'

Trädvy Permalänk
Moderator
Plats
Linköping
Registrerad
Apr 2004

C++ med Qt är ett trevligt alternativ, men c#- och java-folk blir kanske avskräckta av det där med c++.
SWIG är ganska användbart för att koppla ihop c/c++-kod med andra språk, men jämfört med att anropa direkt är det ju ändå rätt omständligt.

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Jul 2001
Skrivet av Elgot:

C++ med Qt är ett trevligt alternativ, men c#- och java-folk blir kanske avskräckta av det där med c++.
SWIG är ganska användbart för att koppla ihop c/c++-kod med andra språk, men jämfört med att anropa direkt är det ju ändå rätt omständligt.

SWIG var ett bra tips! Ser ut att gå att inkludera header-filer direkt. Får jag definitivt testa!

Varken C++ eller Qt har jag någon erfarenhet av. Får kika och se hur lättanvänt det ser ut att vara.

Swec @ 2001 / Chalmerist - Javisst!
'Den som har flest prylar när han dör vinner!'

Trädvy Permalänk
Medlem
Plats
I en mörk gränd
Registrerad
Okt 2001

C#/.net klarar att anropa c/c++/native dll:er och tillsammans med WPF för GUI får man mycket funktionalitet gratis.

"Say unto thine own heart, I am mine own redeemer"
Don't touch me when I'm crazy off that airplane glue

Trädvy Permalänk
Moderator
Plats
Linköping
Registrerad
Apr 2004
Skrivet av DarkBob:

C#/.net klarar att anropa c/c++/native dll:er och tillsammans med WPF för GUI får man mycket funktionalitet gratis.

Nåja, så mycket mera gratis än från godtyckligt annat alternativ får man väl inte? Och har man inte utsatts för wpf tidigare är det ju en ganska obehaglig tröskel.

Trädvy Permalänk
Medlem
Plats
I en mörk gränd
Registrerad
Okt 2001

Om man ser till hur mycket funktionalitet ramverket innehåller samt hur mycket hjälp och information som finns på stackoverflow/msdn tycker jag man får rätt mycket gratis. Sen är det klart att det är lite tröskel men den tänker jag att man besegrar lätt med hjälp av google

"Say unto thine own heart, I am mine own redeemer"
Don't touch me when I'm crazy off that airplane glue

Trädvy Permalänk
Moderator
Plats
Linköping
Registrerad
Apr 2004
Skrivet av DarkBob:

Om man ser till hur mycket funktionalitet ramverket innehåller samt hur mycket hjälp och information som finns på stackoverflow/msdn tycker jag man får rätt mycket gratis. Sen är det klart att det är lite tröskel men den tänker jag att man besegrar lätt med hjälp av google

Jag säger väl inte direkt emot dig, bara att man på liknande sätt får "mycket gratis" även om man väljer Qt, Java eller c# utan wpf. Det ligger ju lite i stora ramverks natur att erbjuda gott om hjälpklasser och verktyg.

Trädvy Permalänk
Medlem
Plats
Karlstad
Registrerad
Dec 2002

Tänk även till ifall det skulle finnas någon orsak att kunna köra det på linux/mac os senare också. Använder man qt så har man väl en del redan klart för *nix?

[size="1"]*signatur raderad*, referrallänkar behöver vi inte gömma i signaturer (§8 marknadsföring)[/size] Till MOD: Ditt smartskafft, man gömmer inte något som är helt synligt!