Tag Archives: Java

C++ unsafe and unsecure ?

My colleagues in the Microsoft world and others tell me that C ++ is outdated, too difficult, too old, too hard to master and there are even some who tell me that it is unsafe and unsecure!

I laugh.

If C ++ had all of these flaws, Microsoft wouldn’t make 95% of these products with it. I’m going to come back to unsafe and unsecure because it’s very interesting. But before a reminder: EVERYTHING YOU HAVE ON YOUR PC AND MAC IS DONE IN C ++. Windows, Office (Word, Excel, PowerPoint, Outlook), IE, Chrome, VLC, Notepad ++, Calc, MSPaint, Photoshop, File Explorer, Process Explorer, etc…

To sell .NET Marketing has tried to discredit C ++ because it is too rich, too powerful and does not need advertising or marketing. In the 2000s, marketing tried to sell the idea that a language that manipulates memory finely is likely to crash and that the panacea was the Garbage Collector. This reasoning is an intellectual scam.

Just because a language like C or C ++ allows you to manipulate memory finely to the byte does not mean that it crashes or corrupt memory. Marketing, which is a contingent of people coming out of business schools, knows nothing about the technique and therefore these people are making crude short cuts. It must be said.

For those who are curious, the NET or CLR (Common Language Runtime) virtual machine is made in C ++ so here, the loop is complete. If C ++ was that bad, CLR would not be done in C ++. The garbage collector and the JIT either! The problem is that NET has to fight against an opponent that was there before it, namely Java and that the competition is raging. Java is much more established in companies than NET and that in spite of billions invested in marketing and publicity.

So I ask the question: was trying to discredit C ++ a good way to sell NET to the developer world? I do not believe. C ++ is ISO standardized and has millions of developers. The C ++ language does not need advertising, it is the language of industry, medical, software publishing, games, etc. C ++ has been there for 40 years and has undergone extensive renewal. It’s no longer C ++ at Papa, the famous C ++ 98 or C + 03. We moved to Modern C ++, the one that frees memory automatically via intelligent pointers or smart pointers, that of lambdas, that of move semantic. Marketing doesn’t talk about it, of course… Marketing isn’t mathematics, it’s not scientific and that’s why we should be wary of it.

In the field of software design, you should never believe in marketing and always rely on scientific reasoning. You have to test the technologies and make your own opinion and always be factual.

I have access to the Windows source code and everything is done in C / C ++. It’s modern C ++ and it’s clean. Windows will always be written in C ++.

The last news of the moment is to push Rust as a kernel language to solve memory problems. This is a false debate because the kernel includes a Memory Manager (mm) which manages virtual memory and only C ++ can write such a module. Some researchers have no knowledge of operating systems and are trying to make the buzz around Rust with a marketing approach … that’s it, they are setting the scene. Let them speak, Microsoft will never rewrite Windows in Rust. There are millions of lines of code. And contrary to what newspapers say for managers like 01 Informatique, Microsoft does not rewrite the OS from scratch. That would be known. Microsoft has been evolving Windows for 25 years. And it’s C ++. No offense to Marketing.

Large software is made in C ++. Another Nth example? Chrome and NodeJS. We cannot salute the JavaScript revolution without thinking of C ++. NodeJS is pure C ++ and Chrome too. Microsoft has made it its new browser with Chromium. Chrome is browser-based software that powers billions of computers and is fast, reliable, and powerful. Long live C ++!

C ++ RENAISSANCE

POWER AND PERFORMANCE

“THE WORLD IS BUILT ON C ++”, Herb Sutter.

Send me your comments on my email: christophep@cpixxi.com.