История изменений
Исправление vbr, (текущая версия) :
В С функции являются первичным строительным блоком. Дизайн программы строится исходя из функциональной декомпозиции задачи. Классы используются только там, где они действительно нужны. В С++ всё с точностью до наоборот. Дизайн программы строится исходя из ООП декомпозиции задачи. Классы натягиваются на всё, что движется, а на то, что не движется - натягиваются синглтоны.
В С++ есть ублюдочная стандартная библиотека и не менее ублюдочный буст. В стиле С она не используется, классы коллекций пишутся по месту при необходимости.
Среди поклонников С++ есть мода на вычисления во время компиляции. Когда из шаблонов делается второй недоязык и программы начинают писать на этом недоязыке. На С так не делают. Если нужно сгенерировать программу программой, то пишут программу, генерирующую код программы. Но нужно это крайне редко. Единственная причина использовать шаблоны это написать класс типа ring_buffer или функцию max.
В С++ любят имитировать бурную деятельность, создавая 10 видов указателей, 5 кастов и прочую чушь. В С так не делают. Указатель это указатель. Каст это каст. Программа на С опасна, полна уязвимостей и это хорошо. Это просто принимается за реальность, исправляя по мере возможности, а не пытаются с этим бороться.
Ещё не слишком формализуемый признак, но всё же. В С каждая строчка делает очевидную вещь. Ничего неочевидного, скрытого не происходит. В C++ в одной строчке легко может скрываться что угодно. В C не используют оператор битового сдвига для ввода/вывода, к примеру. Для ввода-вывода есть функции read/write. В C++ даже запятая может быть перегружена и вызывать код произвольной сложности.
Исправление vbr, :
В С функции являются первичным строительным блоком. Дизайн программы строится исходя из функциональной декомпозиции задачи. Классы используются только там, где они действительно нужны. В С++ всё с точностью до наоборот. Дизайн программы строится исходя из ООП декомпозиции задачи. Классы натягиваются на всё, что движется, а на то, что не движется - натягиваются синглтоны.
В С++ есть ублюдочная стандартная библиотека и не менее ублюдочный буст. В стиле С она не используется, классы коллекций пишутся по месту при необходимости.
Среди поклонников С++ есть мода на вычисления во время компиляции. Когда из шаблонов делается второй недоязык и программы начинают писать на этом недоязыке. На С так не делают. Если нужно сгенерировать программу программой, то пишут программу, генерирующую код программы. Но нужно это крайне редко. Единственная причина использовать шаблоны это написать класс типа ring_buffer или функцию max.
В С++ любят имитировать бурную деятельность, создавая 10 видов указателей, 5 кастов и прочую чушь. В С так не делают. Указатель это указатель. Каст это каст. Программа на С опасна, полна уязвимостей и это хорошо. Это просто принимается за реальность, исправляя по мере возможности, а не пытаются с этим бороться.
Ещё не слишком формализуемый признак, но всё же. В С каждая строчка делает очевидную вещь. Ничего неочевидного, скрытого не происходит. В C++ в одной строчке легко может скрываться что угодно. В C не используют оператор битового сдвига для ввода/вывода, к примеру. Для ввода-вывода есть функции read/write.
Исправление vbr, :
В С функции являются первичным строительным блоком. Дизайн программы строится исходя из функциональной декомпозиции задачи. Классы используются только там, где они действительно нужны. В С++ всё с точностью до наоборот. Дизайн программы строится исходя из ООП декомпозиции задачи. Классы натягиваются на всё, что движется, а на то, что не движется - натягиваются синглтоны.
В С++ есть ублюдочная стандартная библиотека и не менее ублюдочный буст. В стиле С она не используется, классы коллекций пишутся по месту при необходимости.
Среди поклонников С++ есть мода на вычисления во время компиляции. Когда из шаблонов делается второй недоязык и программы начинают писать на этом недоязыке. На С так не делают. Если нужно сгенерировать программу программой, то пишут программу, генерирующую код программы. Но нужно это крайне редко. Единственная причина использовать шаблоны это написать класс типа ring_buffer или функцию max.
В С++ любят имитировать бурную деятельность, создавая 10 видов указателей, 5 кастов и прочую чушь. В С так не делают. Указатель это указатель. Каст это каст. Программа на С опасна, полна уязвимостей и это хорошо. Это просто принимается за реальность, исправляя по мере возможности, а не пытаются с этим бороться.
Ещё не слишком формализуемый признак, но всё же. В С каждая строчка делает очевидную вещь. Ничего неочевидного, скрытого не происходит. В C++ в одной строчке легко может скрываться что угодно.
Исправление vbr, :
В С функции являются первичным строительным блоком. Дизайн программы строится исходя из функциональной декомпозиции задачи. Классы используются только там, где они действительно нужны. В С++ всё с точностью до наоборот. Дизайн программы строится исходя из ООП декомпозиции задачи. Классы натягиваются на всё, что движется, а на то, что не движется - натягиваются синглтоны.
В С++ есть ублюдочная стандартная библиотека и не менее ублюдочный буст. В стиле С она не используется, классы коллекций пишутся по месту при необходимости.
Среди поклонников С++ есть мода на вычисления во время компиляции. Когда из шаблонов делается второй недоязык и программы начинают писать на этом недоязыке. На С так не делают. Если нужно сгенерировать программу программой, то пишут программу, генерирующую код программы. Но нужно это крайне редко. Единственная причина использовать шаблоны это написать класс типа ring_buffer или функцию max.
В С++ любят имитировать бурную деятельность, создавая 10 видов указателей, 5 кастов и прочую чушь. В С так не делают. Указатель это указатель. Каст это каст. Программа на С опасна, полна уязвимостей и это хорошо. Это просто принимается за реальность, исправляя по мере возможности, а не пытаются с этим бороться.
Исправление vbr, :
В С функции являются первичным строительным блоком. Дизайн программы строится исходя из функциональной декомпозиции задачи. Классы (пусть даже в имитируемом виде) используются только там, где они действительно нужны и без них никак. В С++ всё с точностью до наоборот. Дизайн программы строится исходя из ООП декомпозиции задачи. Классы натягиваются на всё, что движется, а на то, что не движется - натягиваются синглтоны.
В С++ есть ублюдочная стандартная библиотека и не менее ублюдочный буст. В стиле С она не используется, классы коллекций пишутся по месту при необходимости.
Среди поклонников С++ есть мода на вычисления во время компиляции. Когда из шаблонов делается второй недоязык и программы начинают писать на этом недоязыке. На С так не делают. Если нужно сгенерировать программу программой, то пишут программу, генерирующую код программы. Но нужно это крайне редко. Единственная причина использовать шаблоны это написать класс типа ring_buffer или функцию max.
В С++ любят имитировать бурную деятельность, создавая 10 видов указателей, 5 кастов и прочую чушь. В С так не делают. Указатель это указатель. Каст это каст. Программа на С опасна, полна уязвимостей и это хорошо. Это просто принимается за реальность, исправляя по мере возможности, а не пытаются с этим бороться.
Исходная версия vbr, :
В С функции являются первичным строительным блоком. Дизайн программы строится исходя из функциональной декомпозиции задачи. Классы (пусть даже в имитируемом виде) используются только там, где они действительно нужны и без них никак. В С++ всё с точностью до наоборот. Дизайн программы строится исходя из ООП декомпозиции задачи. Классы натягиваются на всё, что движется, а на то, что не движется - натягиваются синглтоны.
В С++ есть ублюдочная стандартная библиотека и не менее ублюдочный буст. В стиле С она не используется, классы коллекций пишутся по месту при необходимости.
Среди поклонников С++ есть мода на вычисления во время компиляции. Когда из шаблонов делается второй недоязык и программы начинают писать на этом недоязыке. На С так не делают. Если нужно сгенерировать программу программой, то пишут программу, генерирующую код программы. Но нужно это крайне редко.
В С++ любят имитировать бурную деятельность, создавая 10 видов указателей, 5 кастов и прочую чушь. В С так не делают. Указатель это указатель. Каст это каст. Программа на С опасна, полна уязвимостей и это хорошо. Это просто принимается за реальность, исправляя по мере возможности, а не пытаются с этим бороться.