Topic: C# vs C++

Viewing 10 posts - 1 through 10 (of 10 total)
  • #2014
    LiquidProj3ct
    Participant

    I’m thinking into learn a new programming language. This time i’d like it would be useful for audio apps. A friend, who don’t know nothing about host/vst/midi/etc, recomended me C# because it’s free and easy. free&easy is very likely to high cpu demanding programs.

    What language do you recomend me to learn in order to develop some audio apps (plugins and minihosts mainly)?

    This question is mainly for Frits, however if someone know these languages you can answer also.

    Best regards

    #16015
    pj geerlings
    Participant

    AFAIK, C# is not really suited for high-performance apps – it is more of a “human interface speed” kind of thing …

    C++ (and some assembly) are the way to go

    peace,
    pj

    #16016
    Zynewave
    Keymaster

    I have no experience with C#, but I believe C# is easier to learn than C++. The VST SDK as provided by Steinberg is written in C++, but a quick search for “C# VST” on google reveals that someone has written a C# wrapper for VST plugins:

    http://www.codeplex.com/vstnet

    #16018
    druid
    Participant

    C# might be easier, but if you plan coding a fair amount, I can’t help but feel that C++ will do you better in the long run, and should perform a little better (some argue however that with today’s computers, the speed difference is ignorable if not negligible).

    #16020
    LiquidProj3ct
    Participant

    Thanks you guys, i’ll start to learn today C++ because someday I’d like do a very special MIDI plugin and it would be CPU friendly

    #16025
    kyran
    Participant

    I suggest you look at C++ toolkits like juce or qt.

    They both bring you crossplatform support out of the box and have a lot of the hard work done for you. It will make C++ much easier to handle too. Not at the “easy of coding” level of C# or java, because you still have to manage memory, but still.

    Juce is especially suited for real time audio apps. It’s made by the guy who later on made tracktion IIRC.

    Both are free of charge if you open source your app. (Qt is LGPL, so you could make a commercial packet with that one)

    #16027
    LiquidProj3ct
    Participant

    Thanks you Kyran, it will be very useful, i’m learning the basics yet 😳

    #16277
    LiquidProj3ct
    Participant

    Uhm… a small noob question… I’m mastering DOS apps yet 😳 but when I start with win32 apps, should I use windows forms? or windows api? or only qt/juce/whatever? I don’t want that the final user have to install another programs for use my plugins (as framework)

    #16279
    kyran
    Participant

    Just use qt or juce. You can include the libraries in your binary, so the user doesn’t need to worry about downloading them.
    Besides, they give you crossplatform compatibility out of the box.

    If you’re going for a desktop application I’d go with qt (check out qt developer as your IDE, it’ll set it all up for you with minimal hassle), for real time audio I’d use juce. (you can still use qt developer, but it’ll be just as handy as visual studio now)

    #16281
    LiquidProj3ct
    Participant

    Thanks you kyran, it was very useful. Yesterday I saw qt developer, is very nice for guis, but i hadn’t no idea if it would be useful for my purpose, i think that not, sadly.

    Thanks 🙂

Viewing 10 posts - 1 through 10 (of 10 total)
  • You must be logged in to reply to this topic.
© 2021 Zynewave