LINUX.ORG.RU

[C++] «Статичный» класс vs набор функций в неймспейсе?

 


0

2

Функции в отдельном пространстве имён:

namespace BitParser
{
bool getBitAt(int buffer, int bitIndex) {
    // Реализация
}

// Ещё десяток функций
}

Класс со статичными методами:

class BitParser
{
public:
    static bool getBitAt(int buffer, int bitIndex) {
        // Реализация
    }
    
    // Ещё десяток статичных методов.

private:
    /// Конструктор приватный, ведь такие объекты создавать нельзя.
    BitParser() {}
};

Что лучше и почему?

★★★★★

Последнее исправление: Obey-Kun (всего исправлений: 1)

Ответ на: комментарий от anonymous

В реальных проектах такое гогно вырезается при первом обнаружении.

В реальных проектах на рефакторинг не всегда есть бюджет, а значит и время

Dudraug ★★★★★
()
Ответ на: комментарий от Dudraug

> > В реальных проектах такое гогно вырезается при первом обнаружении.

В реальных проектах на рефакторинг не всегда есть бюджет, а значит и время

А где это вы работаете, что переиминовать функцую и избежать потенциальных багов - это über-рефакторинг и на это нет средств?

Даже в бюрократической мотороле подобные фиксы просто «протаскивались» в довесок в разным багфиксам.

anonymous
()
Ответ на: комментарий от anonymous

А где это вы работаете, что переиминовать функцую и избежать потенциальных багов - это über-рефакторинг и на это нет средств?

Дело в том, что при нормальном способе компиляции это вообще не ошибка и не баг. Проект может быть большим, над каждым компонентом работает разный человек и такие вещи всплывают уже при компиляции под целевую платформу, тогда и правятся. В реальном программер-бизнесе и не такое встречается.

Dudraug ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.