3 ms·
Where C++ stands out is being wide and leaky at the same time. It allows high level programming, and yet you have to know about all those tiny low level nuances
by kvark 3y ago
Where C++ stands out is being wide and leaky at the same time. It allows high level programming, and yet you have to know about all those tiny low level nuances in order to avoid shooting yourself in the foot. In comparison, Java and JavaScript allow you to stay at one level and not look down.
- opportune 3y agoThat’s totally true. In practice I think most effective C++ programmers, while still not knowing nearly everything there is to know, adopt the mindset of “if I follow these rules, avoid XYZ, and don’t get overly fancy, I can avoid aiming the gun at my foot”. I’d be warier about someone claiming to know all the C++ features without having a lot of experience maintaining it or running it at scale, than someone who claims to know less features but has maintained it and ran it at scale. It’s very much a language where you need to be humble about what you don’t know and careful about introducing things you don’t understand well. I think this “use what you know” is actually true in most languages including Java and Javascript, it’s just that the failure modes usually manifest as poor performance rather than unexpected semantics like in C++.
- treprinum 3y ago...and then those effective C++ programmers get a code base where their peers throw ints in exceptions and other freakish stuff, their whole mental concept is destroyed and they need to learn to swim or sink.