Записная книжка разработчика

Мои проекты

Книга Шилдт Г. "С++ Базовый курс"

| Comments

Прочитал эту книгу, понравилось. Рассмотрен очень подробно весь синтаксис языка С++, и в конце дан обзор библиотеки STL с подробным рассмотрением нескольких шаблонов.

50226533

В самом конце есть глава, в которой описывается C++ для .Net. Эту главу я читать не стал, т.к считаю C++ и .Net очень странным сочетанием, хотя по отдельности я очень хорошо отношусь и к тому, и к другому.
Я писал на C++ когда-то давно проект под микроконтроллер (ARM7 TDMI и Cortex M3). Всё получилось, но я не могу сказать, что доволен результатом. Программа на C++ занимает больше памяти и потребляет больше стека при работе, чем аналогичная программа на plain C. Если для дестопа это не имеет значения, то для микроконтроллера это имеет очень большое значение. Выигрыш в смысле простоты и ясности кода тоже не очень большой. Да, на С++ можно описать классы и полиморфные иерархии классов, и производить манипуляции с экземплярами классов, но это всё добавляет в программу большую степень индиректности, и точно не упрощает отладку. Хотя код местами выглядит красиво. В общем, выигрыш для микроконтроллеров очень неочевиден.

Для дестопа всё ещё грустнее. Есть C#, простой язык, намного проще C++. Да, в C# есть много синтаксических конструкций, которых нет в C++, но это всё синтаксический сахар, его можно использовать, а можно и не использовать, а в своей базовой части C# проще, писать на нём проще, отлаживать и сопровождать программы тоже проще. Если не любите C#, или пишете не под Windows, то можно писать на Mono Java, тот же C# практически.

Таким образом, применение C++ в современном мире ограничено некоторыми нишами. Но я сейчас занимаюсь проектом на С++, поэтому решил повторить некоторые нюансы языка. Хотелось бы изучить "новый" стандарт (С++11, С++14), но пока есть более приоритетные задачи.