Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Development platform decision

Development platform decision

Scheduled Pinned Locked Moved The Lounge
c++jsonhelpcsharpjava
51 Posts 30 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H HakunaMatada

    Hi all, I am in a dillema. We specialize in Desktop Apps and currently use VC++ with ATL and WTL for our products. Now our president wants to move to a faster development platform. He says MFC and .NET are not options (I dunno why). I had recommended .NET but he says look for other alternatives. I have considered RUBY, PYTHON and Java but dunno which is the best platform to go with. My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default. Can anyone help me choose between the above mentioned three options or are there some more? Or should we stick with VC++? HELP!!!

    --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

    J Offline
    J Offline
    JacquesDP
    wrote on last edited by
    #8

    Visual Studio and dotnet, get something like Iron Speed or Code Rush to bring development time down. Then you could use C#, VB, C++.

    He who laughs last is a bit on the slow side

    1 Reply Last reply
    0
    • Steve EcholsS Steve Echols

      Check out the VCF: http://vcf-online.org/[^]. I recently ported an app from ATL/WTL over to it, and it's very .net like and easy use and customize.


      - S 50 cups of coffee and you know it's on!

      M Offline
      M Offline
      Monty2
      wrote on last edited by
      #9

      It looks very promising, how was your experience?


      I don't believe in failure. It is not failure if you enjoyed the process.

      Steve EcholsS 1 Reply Last reply
      0
      • M merckel

        And if in addition you want to add the multi platform without so much additional effort, you may take a look at wxWidgets...and with such solution, why not stick with VC++?...

        J Offline
        J Offline
        Jeremy Falcon
        wrote on last edited by
        #10

        merckel wrote:

        wxWidgets

        You beat me to it. It also does have the added benefit of being easy to learn if you're used to MFC IMO.

        Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

        P 1 Reply Last reply
        0
        • M Monty2

          It looks very promising, how was your experience?


          I don't believe in failure. It is not failure if you enjoyed the process.

          Steve EcholsS Offline
          Steve EcholsS Offline
          Steve Echols
          wrote on last edited by
          #11

          Having experience with C#, J something, ATL/WTL, MFC and Win32 API, I found it very easy to port my app over. There's a lot of the best of other frameworks. There were a few bumps along the way, but nothing that couldn't be resolved with a little digging and asking questions on the forums. Having the source code is really helpful, because when something doesn't work as expected, you can figure out how it was designed to work and how you're supposed to use it, which is way different than blindly poking an API with a stick to figure out why it's not working. Quite refreshing really. Check out the GRip success story for more. :-O


          - S 50 cups of coffee and you know it's on!

          • S
            50 cups of coffee and you know it's on!
            Code, follow, or get out of the way.
          1 Reply Last reply
          0
          • H HakunaMatada

            Hi all, I am in a dillema. We specialize in Desktop Apps and currently use VC++ with ATL and WTL for our products. Now our president wants to move to a faster development platform. He says MFC and .NET are not options (I dunno why). I had recommended .NET but he says look for other alternatives. I have considered RUBY, PYTHON and Java but dunno which is the best platform to go with. My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default. Can anyone help me choose between the above mentioned three options or are there some more? Or should we stick with VC++? HELP!!!

            --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

            W Offline
            W Offline
            WillemM
            wrote on last edited by
            #12

            I hate to say it, because I don't like code generators: http://www.genwise.com[^] This application seems to cut down on the development time rather drastically and it allows you to customize templates, so you can add P/Invoke code for those Win32 things you need to do. It's an idea, but it's not pretty and I would advice you to setup a decent development process using XP or something like that. It streamlines the way you develop instead of buying expensive tools that just move the problem to another spot in the process.

            WM. What about weapons of mass-construction?

            1 Reply Last reply
            0
            • H HakunaMatada

              Hi all, I am in a dillema. We specialize in Desktop Apps and currently use VC++ with ATL and WTL for our products. Now our president wants to move to a faster development platform. He says MFC and .NET are not options (I dunno why). I had recommended .NET but he says look for other alternatives. I have considered RUBY, PYTHON and Java but dunno which is the best platform to go with. My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default. Can anyone help me choose between the above mentioned three options or are there some more? Or should we stick with VC++? HELP!!!

              --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

              J Offline
              J Offline
              Jeremy Falcon
              wrote on last edited by
              #13

              HakunaMatada wrote:

              Now our president wants to move to a faster development platform.

              Is he even a programmer? Or, was he one of those guys that programmed 20 years ago and still wants to play developer even though they are still clueless now as was then when someone suggested a change of career? :rolleyes:

              HakunaMatada wrote:

              My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default.

              I'll have to second wxWidgets[^]. It's cross platform and has a good-sized community, printed books, etc. for learning. If you're used to MFC, it's trivial to learn. It's drawback would be native support for web services, but you can code support for that relatively easy with its XML support.

              Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

              S 1 Reply Last reply
              0
              • C Christian Graus

                HakunaMatada wrote:

                Any specific reasons that I shouldn't?

                Python is a scripting language, can you even write desktop apps in it ?

                HakunaMatada wrote:

                nd my boss says he has specific reasons why he doesn't want to use .NET.

                I'd love to hear them.

                Christian Graus - C++ MVP 'Why don't we jump on a fad that hasn't already been widely discredited ?' - Dilbert

                H Offline
                H Offline
                HakunaMatada
                wrote on last edited by
                #14

                Christian Graus wrote:

                I'd love to hear them.

                That's classified! ;P

                --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

                P 1 Reply Last reply
                0
                • C Christian Graus

                  HakunaMatada wrote:

                  Any specific reasons that I shouldn't?

                  Python is a scripting language, can you even write desktop apps in it ?

                  HakunaMatada wrote:

                  nd my boss says he has specific reasons why he doesn't want to use .NET.

                  I'd love to hear them.

                  Christian Graus - C++ MVP 'Why don't we jump on a fad that hasn't already been widely discredited ?' - Dilbert

                  J Offline
                  J Offline
                  Jeremy Falcon
                  wrote on last edited by
                  #15

                  Christian Graus wrote:

                  I'd love to hear them.

                  Maybe he read an article titled "Why every developer should learn C#." I know. I'm evil. I admit it. :laugh:

                  Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

                  1 Reply Last reply
                  0
                  • J Jeremy Falcon

                    HakunaMatada wrote:

                    Now our president wants to move to a faster development platform.

                    Is he even a programmer? Or, was he one of those guys that programmed 20 years ago and still wants to play developer even though they are still clueless now as was then when someone suggested a change of career? :rolleyes:

                    HakunaMatada wrote:

                    My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default.

                    I'll have to second wxWidgets[^]. It's cross platform and has a good-sized community, printed books, etc. for learning. If you're used to MFC, it's trivial to learn. It's drawback would be native support for web services, but you can code support for that relatively easy with its XML support.

                    Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

                    S Offline
                    S Offline
                    S Douglas
                    wrote on last edited by
                    #16

                    Jeremy Falcon wrote:

                    I'll have to second wxWidgets[^].

                    Have you personally worked with wxWidgets? Any pitfalls / odd licensing agreements?


                    I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:

                    J 1 Reply Last reply
                    0
                    • S S Douglas

                      Jeremy Falcon wrote:

                      I'll have to second wxWidgets[^].

                      Have you personally worked with wxWidgets? Any pitfalls / odd licensing agreements?


                      I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:

                      J Offline
                      J Offline
                      Jeremy Falcon
                      wrote on last edited by
                      #17

                      S Douglas wrote:

                      Have you personally worked with wxWidgets? Any pitfalls / odd licensing agreements?

                      For home projects I have. It's not exactly the same as MFC, but if you know one you can learn the other because the concepts are right on par with one another. Only pitfall that I can really think of is some of the UI components do look a bit dated, but you can make custom ones if desired. About the licensing, I haven't noticed anything, but you know how it goes... IANAL. :-D

                      Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

                      S 1 Reply Last reply
                      0
                      • J Jeremy Falcon

                        S Douglas wrote:

                        Have you personally worked with wxWidgets? Any pitfalls / odd licensing agreements?

                        For home projects I have. It's not exactly the same as MFC, but if you know one you can learn the other because the concepts are right on par with one another. Only pitfall that I can really think of is some of the UI components do look a bit dated, but you can make custom ones if desired. About the licensing, I haven't noticed anything, but you know how it goes... IANAL. :-D

                        Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

                        S Offline
                        S Offline
                        S Douglas
                        wrote on last edited by
                        #18

                        Jeremy Falcon wrote:

                        UI components do look a bit dated,

                        You say dated, I say functional, I actually don’t like the Fisher price UIs that are popular now.


                        I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:

                        J K 2 Replies Last reply
                        0
                        • S S Douglas

                          Jeremy Falcon wrote:

                          UI components do look a bit dated,

                          You say dated, I say functional, I actually don’t like the Fisher price UIs that are popular now.


                          I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:

                          J Offline
                          J Offline
                          Jeremy Falcon
                          wrote on last edited by
                          #19

                          S Douglas wrote:

                          You say dated, I say functional, I actually don’t like the Fisher price UIs that are popular now.

                          Well, to each his own. Although, you know as well as I do, XP themes, etc. doesn't automatically make something less functional. Let's at least play fair. ;P

                          Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

                          S 1 Reply Last reply
                          0
                          • J Jeremy Falcon

                            S Douglas wrote:

                            You say dated, I say functional, I actually don’t like the Fisher price UIs that are popular now.

                            Well, to each his own. Although, you know as well as I do, XP themes, etc. doesn't automatically make something less functional. Let's at least play fair. ;P

                            Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

                            S Offline
                            S Offline
                            S Douglas
                            wrote on last edited by
                            #20

                            Jeremy Falcon wrote:

                            Let's at least play fair.

                            WHY? :) It's more fun to complain :rolleyes:


                            I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:

                            J 1 Reply Last reply
                            0
                            • S S Douglas

                              Jeremy Falcon wrote:

                              Let's at least play fair.

                              WHY? :) It's more fun to complain :rolleyes:


                              I'd love to help, but unfortunatley I have prior commitments monitoring the length of my grass. :Andrew Bleakley:

                              J Offline
                              J Offline
                              Jeremy Falcon
                              wrote on last edited by
                              #21

                              S Douglas wrote:

                              It's more fun to complain

                              :-D

                              Jeremy Falcon A multithreaded, OpenGL-enabled application.[^]

                              1 Reply Last reply
                              0
                              • H HakunaMatada

                                Hi all, I am in a dillema. We specialize in Desktop Apps and currently use VC++ with ATL and WTL for our products. Now our president wants to move to a faster development platform. He says MFC and .NET are not options (I dunno why). I had recommended .NET but he says look for other alternatives. I have considered RUBY, PYTHON and Java but dunno which is the best platform to go with. My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default. Can anyone help me choose between the above mentioned three options or are there some more? Or should we stick with VC++? HELP!!!

                                --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

                                S Offline
                                S Offline
                                Stuart Dootson
                                wrote on last edited by
                                #22

                                Here's a wild and wacky idea - GNUstep[^] - this is a similar programming setup to the Cocoa libraries on OS X. Those are pretty nice to develop in (debuggging's not so great, as it uses GDB). Compliance to your requirements is:

                                1. Hmmmm - you can never say you've met this one - what is 'the minimum'...
                                2. It uses GNU Objective C. That can call out to any C API, including Windows ones. It's built on native windowing, so you'll probably be able to access HWNDs, messages etc?
                                3. The base libraries contain an XML parser[^]. There are the GNUStepWeb[^] libraries for Web services, based on WebObjects[^].
                                1 Reply Last reply
                                0
                                • H HakunaMatada

                                  Hi all, I am in a dillema. We specialize in Desktop Apps and currently use VC++ with ATL and WTL for our products. Now our president wants to move to a faster development platform. He says MFC and .NET are not options (I dunno why). I had recommended .NET but he says look for other alternatives. I have considered RUBY, PYTHON and Java but dunno which is the best platform to go with. My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default. Can anyone help me choose between the above mentioned three options or are there some more? Or should we stick with VC++? HELP!!!

                                  --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

                                  A Offline
                                  A Offline
                                  Anna Jayne Metcalfe
                                  wrote on last edited by
                                  #23

                                  Erm...it sounds like your "president" has lost time with reality. As Christian has rightly pointed out, Python, Java etc are not best suited to desktop app development. If you want speed of development, .NET is the way to go. If you want tight efficient code with the most responsive UI possible, choose one of the native frameworks with C++. It sounds like you're there already. If your compnay is pushing rapid development in this way they are almost certainly neglecting quality. If you can't turn it around, my advice would be to take your skills to a company that has a more balanced perspective. :rose:

                                  Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                                  H E 2 Replies Last reply
                                  0
                                  • C Christian Graus

                                    Ruby, and Python ? For desktop apps ? Java is even worse.  Does he mean speed to run, or speed to develop ? If he means speed to run, he's an idiot.  C++ is always going to be fastest, unless you recommend Win32 and C.

                                    HakunaMatada wrote:

                                    Development time must come down to a minimum.

                                    VB.NET - you don't have to write ANY code to create pretty, badly put together applications

                                    HakunaMatada wrote:

                                    Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff.

                                    C#, VB.NET, or C++.

                                    HakunaMatada wrote:

                                    Must be able to connect to Web services easily and better if it contains XML pasring libraries by default

                                    C# or VB.NET. Looks like your boss is a moron.  He wants those things, but only if they're not on the most widely supported platform that provides them ?

                                    Christian Graus - C++ MVP 'Why don't we jump on a fad that hasn't already been widely discredited ?' - Dilbert

                                    A Offline
                                    A Offline
                                    Anna Jayne Metcalfe
                                    wrote on last edited by
                                    #24

                                    Well said. 5. :rose:

                                    Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                                    1 Reply Last reply
                                    0
                                    • H HakunaMatada

                                      Hi all, I am in a dillema. We specialize in Desktop Apps and currently use VC++ with ATL and WTL for our products. Now our president wants to move to a faster development platform. He says MFC and .NET are not options (I dunno why). I had recommended .NET but he says look for other alternatives. I have considered RUBY, PYTHON and Java but dunno which is the best platform to go with. My requirements are: 1) Development time must come down to a minimum. 2) Must provide support to access the Win32 API because we use a lot of those for custom windows, Sidebar interfaces and stuff. 3) Must be able to connect to Web services easily and better if it contains XML pasring libraries by default. Can anyone help me choose between the above mentioned three options or are there some more? Or should we stick with VC++? HELP!!!

                                      --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

                                      V Offline
                                      V Offline
                                      Vivek Rajan
                                      wrote on last edited by
                                      #25

                                      Question: Is this a shrink wrapped standalone product ? If not, Ruby is an excellent choice. With FxRuby you can create powerful desktop apps, which wont be as responsive as C++/MFC but will compare very favorably with Java. .NET will fall somewhere in the middle. We have developed several in house desktop UI tools in Ruby and I can vouch for its ease of development and maintenance. We are a windows shop and we had mucked around with C# and Java, before standardizing on Ruby for all our inhouse and add-on tools. The thing is we have totally sidestepped CLR based languages at the moment. Our hardcore stuff is done in C++ and all side tools and in Ruby. If you are interested in the types of tools you can create using FxRuby, see one of our popular tools Asterisk VoIP Call analyzer[^]

                                      H 1 Reply Last reply
                                      0
                                      • A Anna Jayne Metcalfe

                                        Erm...it sounds like your "president" has lost time with reality. As Christian has rightly pointed out, Python, Java etc are not best suited to desktop app development. If you want speed of development, .NET is the way to go. If you want tight efficient code with the most responsive UI possible, choose one of the native frameworks with C++. It sounds like you're there already. If your compnay is pushing rapid development in this way they are almost certainly neglecting quality. If you can't turn it around, my advice would be to take your skills to a company that has a more balanced perspective. :rose:

                                        Anna :rose: Linting the day away :cool: Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"

                                        H Offline
                                        H Offline
                                        HakunaMatada
                                        wrote on last edited by
                                        #26

                                        Anna-Jayne Metcalfe wrote:

                                        my advice would be to take your skills to a company that has a more balanced perspective.

                                        :rolleyes: Now that is an interesting thought...

                                        --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

                                        1 Reply Last reply
                                        0
                                        • V Vivek Rajan

                                          Question: Is this a shrink wrapped standalone product ? If not, Ruby is an excellent choice. With FxRuby you can create powerful desktop apps, which wont be as responsive as C++/MFC but will compare very favorably with Java. .NET will fall somewhere in the middle. We have developed several in house desktop UI tools in Ruby and I can vouch for its ease of development and maintenance. We are a windows shop and we had mucked around with C# and Java, before standardizing on Ruby for all our inhouse and add-on tools. The thing is we have totally sidestepped CLR based languages at the moment. Our hardcore stuff is done in C++ and all side tools and in Ruby. If you are interested in the types of tools you can create using FxRuby, see one of our popular tools Asterisk VoIP Call analyzer[^]

                                          H Offline
                                          H Offline
                                          HakunaMatada
                                          wrote on last edited by
                                          #27

                                          Thanks for sharing your experience. :)

                                          --- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: It’s rather simple to write an unmanaged C++ application that crashes when it performs a callback. It’s impossible to write a managed application that does the same, thanks to delegates. - Jeff Prosise

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups