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. is Visual C++ obsolete?

is Visual C++ obsolete?

Scheduled Pinned Locked Moved The Lounge
c++javaquestioncareer
47 Posts 34 Posters 2 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.
  • R rudolfsson

    I'd say that regular Windows application development in C++ is pretty much obsolete, it's just so much easier to develop GUIs using .NET languages that using VC++ just doesn't make much sense, hence the lack of available jobs. C++ itself though is still very much alive and kicking, and having solid C++ skills is still definitely a benefit. Even though the GUI stuff is done in C#/Java there is still a need for writing high performance components in native languages. As several people suggested already, why not learn C# (if you want to keep doing Windows app development) or Java (if you want a broader selection of platforms)? Learning either of these is a piece of cake for an experienced C++ programmer, you can pick up the basics in a day or two. The best way to stay competitive in today's job market is to have an extensive toolbox, so knowing multiple languages and platforms is critical. Best of luck with your job hunting!

    R Offline
    R Offline
    richard_k
    wrote on last edited by
    #37

    Indeed. I think C++ is the expression language if you spend a lot of your time 'close to the metal'. I've been systems/communications level programming since the early 80s.. C++ has been my bread and butter for literally half my career (since the mid 90s). Its only recently that I've had to get into .NET, since WCF has made it feasible to write distributed messaging systems (reasonably) easily.

    1 Reply Last reply
    0
    • J JoeGonzalez

      Im looking for Visual C++ jobs and I can't find any that are not related to embeded or 3d development. Is Visual C++ application development obsolete? All the job postings I find are for Java and VB net developers. I have been programming Imaging systems for the last 12 years. Now I am lookingfor a new job and can't find a good fit.

      S Offline
      S Offline
      Stefan_Lang
      wrote on last edited by
      #38

      I'd say you may have looked in the wrong places, or just were a bit unlucky. The jobs are there, definitely. That said, I expect the desktop application development segment is much less volatile than the current 'hype' sectors, such as web apps. Therefore I wouldn't be surprised if the relation between actual jobs to job offerings is a lot lower for desktop apps than for the latter. Besides, is there a reason you specifically mentioned Visual C++? It's not that other IDEs or programming environments are all that hard to learn. Also: are you aware that "Visual Studio" includes C++, both managed and native? The full IDE name is often listed as "Visual Studio.Net" even if it is not used for .Net development! Did you consider that in your search?

      1 Reply Last reply
      0
      • R richard_k

        Not really, you have the Dalvik JVM part right.. but its running on top of a light version of Linux, which is basically all C and C++. The majority of code running android is C/C++, not java. Java is the application expression language. Its certainly important, but not the majority of the system level software that makes up Android. I don't have definitive stats.. but its probably 60/40 between Linux enabling system software and the Android Java Framework.

        D Offline
        D Offline
        Daniel Casserly
        wrote on last edited by
        #39

        Cool but unless you gonna commit code to the Linux Kernel you'll more likely be coding in Java for the android platform.

        Three types of people in this world, those that can count and those that can't www.casserlyprogramming.com

        R 1 Reply Last reply
        0
        • D Daniel Casserly

          Cool but unless you gonna commit code to the Linux Kernel you'll more likely be coding in Java for the android platform.

          Three types of people in this world, those that can count and those that can't www.casserlyprogramming.com

          R Offline
          R Offline
          richard_k
          wrote on last edited by
          #40

          Sorry, again this is not true. I've personally written C++ to run at the native level that is called by Java programs running in Dalvik (I did this in a commercial context, not just as an experiment). In this sense the Dalvik JVM works like any other JVM. The native level is always accessible to you. There are a number of applications where this capability is extremely useful. My take is that 90%-95% of apps don't use this feature at all.. but for the 5%-10% that do, its super useful.

          D 1 Reply Last reply
          0
          • R richard_k

            Sorry, again this is not true. I've personally written C++ to run at the native level that is called by Java programs running in Dalvik (I did this in a commercial context, not just as an experiment). In this sense the Dalvik JVM works like any other JVM. The native level is always accessible to you. There are a number of applications where this capability is extremely useful. My take is that 90%-95% of apps don't use this feature at all.. but for the 5%-10% that do, its super useful.

            D Offline
            D Offline
            Daniel Casserly
            wrote on last edited by
            #41

            Yeah I agree, hence my comment " more likely " I can't forsee me with my limited work on the Android ever having to dip into the native code.

            Three types of people in this world, those that can count and those that can't www.casserlyprogramming.com

            1 Reply Last reply
            0
            • K Kevin Marois

              JoeGonzalez wrote:

              All the job postings I find are for Java and VB net developers

              Ever heard of C#?

              JoeGonzalez wrote:

              Now I am lookingfor a new job and can't find a good fit.

              You're a C++ developer and you "only find Java and vb.Net" jobs?? That's strange. It would be a hell of alot easier to go from C++ or Java to C#, instead of to vb.Net.

              If it's not broken, fix it until it is

              Y Offline
              Y Offline
              Ytrail
              wrote on last edited by
              #42

              Kevin Marois wrote:

              It would be a hell of alot easier to go from C++ or Java to C#, instead of to vb.Net.

              Finally, somebody says something that makes sense! :)

              ~ Somebody left a footprint...o0=... here...

              1 Reply Last reply
              0
              • J JoeGonzalez

                Im looking for Visual C++ jobs and I can't find any that are not related to embeded or 3d development. Is Visual C++ application development obsolete? All the job postings I find are for Java and VB net developers. I have been programming Imaging systems for the last 12 years. Now I am lookingfor a new job and can't find a good fit.

                J Offline
                J Offline
                JohnAspras
                wrote on last edited by
                #43

                I Dont understand why people are asking this Question here and then about C++... C++ IS the de facto Language to build something that matters... here is a VERY VERY small list of "Programs" all of you use every day made in C++ --OS-- Windows Linux Mac --Browsers-- Mozilla FireFox Chrome --IDE's -- Since we are all programmers here "i guess.." CodeBlocks Anjuta Visual Studio Eclipse .. .. All main stream games "returning to the original question about 3d and embeded" all REAL development firms use strictly C++ and a drop of assembly where is needs it. "these are the big cahunas" like EA or Blizzard, Konami, or Eidos, ID, Unreal, etc.... most other firms "that make a dollar" simply use a game engine made in C++ and write code in a script language for game logic, but that is about 5% of the actual running code.. if you "JoeGonzalez" want a job in this field you must look in to these sort of companies, yes they are allways hiring. Yes they will hire you if you have the talent. Maybe its because alot of programmers knowadays like it "easy" not "top notch" programming wise..

                1 Reply Last reply
                0
                • R richard_k

                  Yup.. the emphasis here is on the framework side of it. C# is not hard coming from C++... but the .NET framework is a VERY large piece of work. Once you know what is there it is just a delight to use.. but learning it is a committed effort.

                  M Offline
                  M Offline
                  Milad tr
                  wrote on last edited by
                  #44

                  there's a book i like, "Microsoft .NET for Programmers" by "Fergal Grimes".

                  R 1 Reply Last reply
                  0
                  • A Amir Hossein Jamshidi

                    I have been programming in java and c# for two years(I know that it is not any thing in comparison to your 12 years skill), but I always feel that I don't have some thing . some thing like performance , speed and power . power for developing for every thing from embedded systems , drivers , game developing , 3d modeling and simulation and many other . Would you like to change our skills! :-\ :rose::rose::rose:

                    M Offline
                    M Offline
                    Milad tr
                    wrote on last edited by
                    #45

                    I'm not sure about java, but in .net there are very rare cases that you can't find proper set of assemblies and classes to guarantee performance. Except for the cases in which you need low level access to system resources or when you're designing multi-platform applicatins, .net seems to be a perfect tool in hand to make softwares. About a year ago, i was given the task make a software to control a box-camera designed for scientific purposes(16 Megapixels of 16bit, gray scaled pixels). The software had to have lots of features and had to be built in about 2 weeks. The best tool for me was .NET to ensure that i will finish the project before the deadline, but i was just not sure if the performace will be as well as if i had coded it with c++, when the software had to do lots of calculations on each pixel before drawing. The 1st version rendered a full image in about 45second which was too slow. But using the right assemblies, classes and methods dramatically improved the performance and the 2nd version rendered the same image in less than 2 seconds. same as the test c++ application i made later. The only problem with .net is that sometimes the bare algorithm using fors and ifs may not help you getting the performance you need due to the memory management system the CLR provides. (Specially when lots of cycles should be passed). Sometimes you need to use other tools (classes inside special namespaces) to get the performance you need.

                    R 1 Reply Last reply
                    0
                    • M Milad tr

                      there's a book i like, "Microsoft .NET for Programmers" by "Fergal Grimes".

                      R Offline
                      R Offline
                      richard_k
                      wrote on last edited by
                      #46

                      :thumbsup:

                      1 Reply Last reply
                      0
                      • M Milad tr

                        I'm not sure about java, but in .net there are very rare cases that you can't find proper set of assemblies and classes to guarantee performance. Except for the cases in which you need low level access to system resources or when you're designing multi-platform applicatins, .net seems to be a perfect tool in hand to make softwares. About a year ago, i was given the task make a software to control a box-camera designed for scientific purposes(16 Megapixels of 16bit, gray scaled pixels). The software had to have lots of features and had to be built in about 2 weeks. The best tool for me was .NET to ensure that i will finish the project before the deadline, but i was just not sure if the performace will be as well as if i had coded it with c++, when the software had to do lots of calculations on each pixel before drawing. The 1st version rendered a full image in about 45second which was too slow. But using the right assemblies, classes and methods dramatically improved the performance and the 2nd version rendered the same image in less than 2 seconds. same as the test c++ application i made later. The only problem with .net is that sometimes the bare algorithm using fors and ifs may not help you getting the performance you need due to the memory management system the CLR provides. (Specially when lots of cycles should be passed). Sometimes you need to use other tools (classes inside special namespaces) to get the performance you need.

                        R Offline
                        R Offline
                        richard_k
                        wrote on last edited by
                        #47

                        The cool thing about .NET is.. if you write your original app in C# and have performance issues, you can always call out to native for the small parts that are causing you issues. You are never stuck. It won't save you from a bad programmer, but it will save you from non-optimal 3rd party implementations.

                        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