Сообщение Re[11]: Оставаться в С++ или уходить? от 30.09.2019 10:16
Изменено 30.09.2019 10:16 lpd
Re[11]: Оставаться в С++ или уходить?
Здравствуйте, Stanislav V. Zudin, Вы писали:
SVZ>В манагед языках нормально, когда права владения объектом футболятся по всему приложению — GC разберется.
Ну может так проще реализовать логику типичной развесистой архитектуры enterprise, то есть это объективно удобно.
SVZ>А когда тот же приём начинают применять в С++, да еще и взаимные шаред поинтеры между объектами устанавливают, когда между ними можно либо выстроить отношения вледелец-подчиненный, либо завести отдельного арбитра для управления временем жизни, то вот и получаем косяки на ровном месте.
SVZ>Короче, С++ требует более вдумчивого проектирования. Ява с Шарпом прощают больше
Ну так это недостаток С++, который и ограничивает его область применения. Скорее всего, отсутствие сборки мусора — одна из основных причин, почему из бэкенда и вытеснили С++. Никто не хочет в большой программе при добавлении каждого нового указателя думать, а не получится ли кольцевая сылка. Зачем это?
Я не особенно опытный архитектор, но как-то писал сервер для мобильных клиентов на С++, и круговые ссылки там были(умные указатели, естественно, не использовал).
Язык должен позволять выразить любую архитектуру, причем простым и удобным образом. А не требовать от разработчиков соблюдать какие-то искуственные правила.
SVZ>В манагед языках нормально, когда права владения объектом футболятся по всему приложению — GC разберется.
Ну может так проще реализовать логику типичной развесистой архитектуры enterprise, то есть это объективно удобно.
SVZ>А когда тот же приём начинают применять в С++, да еще и взаимные шаред поинтеры между объектами устанавливают, когда между ними можно либо выстроить отношения вледелец-подчиненный, либо завести отдельного арбитра для управления временем жизни, то вот и получаем косяки на ровном месте.
SVZ>Короче, С++ требует более вдумчивого проектирования. Ява с Шарпом прощают больше
Ну так это недостаток С++, который и ограничивает его область применения. Скорее всего, отсутствие сборки мусора — одна из основных причин, почему из бэкенда и вытеснили С++. Никто не хочет в большой программе при добавлении каждого нового указателя думать, а не получится ли кольцевая сылка. Зачем это?
Я не особенно опытный архитектор, но как-то писал сервер для мобильных клиентов на С++, и круговые ссылки там были(умные указатели, естественно, не использовал).
Язык должен позволять выразить любую архитектуру, причем простым и удобным образом. А не требовать от разработчиков соблюдать какие-то искуственные правила.
Re[11]: Оставаться в С++ или уходить?
Здравствуйте, Stanislav V. Zudin, Вы писали:
SVZ>В манагед языках нормально, когда права владения объектом футболятся по всему приложению — GC разберется.
Ну может так проще реализовать логику типичной развесистой архитектуры enterprise, то есть это объективно удобно.
SVZ>А когда тот же приём начинают применять в С++, да еще и взаимные шаред поинтеры между объектами устанавливают, когда между ними можно либо выстроить отношения вледелец-подчиненный, либо завести отдельного арбитра для управления временем жизни, то вот и получаем косяки на ровном месте.
SVZ>Короче, С++ требует более вдумчивого проектирования. Ява с Шарпом прощают больше
Ну так это недостаток С++, который и ограничивает его область применения. Скорее всего, отсутствие сборки мусора — одна из основных причин, почему из бэкенда и вытеснили С++. Никто не хочет в большой программе при добавлении каждого нового указателя думать, а не получится ли кольцевая сылка. Зачем это?
Я не особенно опытный архитектор, но как-то писал сервер для мобильных клиентов на С++, и круговые ссылки там были(умные указатели, естественно, не использовал).
Язык должен позволять выразить любую архитектуру, причем простым и удобным образом. А не требовать от разработчиков соблюдать какие-то искуственные правила, усложняя их жизнь разнообразием видов weak/shared/unique поинтеров.
SVZ>В манагед языках нормально, когда права владения объектом футболятся по всему приложению — GC разберется.
Ну может так проще реализовать логику типичной развесистой архитектуры enterprise, то есть это объективно удобно.
SVZ>А когда тот же приём начинают применять в С++, да еще и взаимные шаред поинтеры между объектами устанавливают, когда между ними можно либо выстроить отношения вледелец-подчиненный, либо завести отдельного арбитра для управления временем жизни, то вот и получаем косяки на ровном месте.
SVZ>Короче, С++ требует более вдумчивого проектирования. Ява с Шарпом прощают больше
Ну так это недостаток С++, который и ограничивает его область применения. Скорее всего, отсутствие сборки мусора — одна из основных причин, почему из бэкенда и вытеснили С++. Никто не хочет в большой программе при добавлении каждого нового указателя думать, а не получится ли кольцевая сылка. Зачем это?
Я не особенно опытный архитектор, но как-то писал сервер для мобильных клиентов на С++, и круговые ссылки там были(умные указатели, естественно, не использовал).
Язык должен позволять выразить любую архитектуру, причем простым и удобным образом. А не требовать от разработчиков соблюдать какие-то искуственные правила, усложняя их жизнь разнообразием видов weak/shared/unique поинтеров.