Comments 7
Жутковато.
Если вам очень нужно (в 2016 году очень нужно?) объявить глобальную переменную — просто объявите ее в заголовочном файле как extern. После этого в реализации объявляете эту переменную и работаете с ней сколько угодно.
Если вам очень нужно (в 2016 году очень нужно?) объявить глобальную переменную — просто объявите ее в заголовочном файле как extern. После этого в реализации объявляете эту переменную и работаете с ней сколько угодно.
Я в своей команде подчиненным руки отрывал за синглтоны и статику.
Использование синглтона гарантирует уникальность и, что важно, потокобезопасность переменнойи при чем тут это? Напоминает «То их на хвост нанижет, то их понюхает, то их полижет — Очки не действуют никак»
Что это за говностатьи? MSLibrary? Что это вообще за ерунда…
Да тут целый букет антипаттернов. Супер, давайте значит, будем пропагандировать shared mutable state, да ещё и запихнем его в синглтон. Но нет, мы на этом не остановимся, давайте ещё прикольнее сделаем, давайте обернем это всё ещё и в #define.
Естественно, я тут не пишу, что это всё вообще запрещено, в любом случае принципы проектирования прийдется нарушить, вопрос только в какой степени. Но советовать такое без предложения альтернатив как-то некультурно даже. Кстати, вы даже не написали как ваше решение с синглтоном позволяет исключить «опасность попытки одновременного изменения ее значения из разных потоков». Всё таки целевая аудитория у такого решения — юные неокрепшие умы, они просто скопируют ваше решение и всё.
Естественно, я тут не пишу, что это всё вообще запрещено, в любом случае принципы проектирования прийдется нарушить, вопрос только в какой степени. Но советовать такое без предложения альтернатив как-то некультурно даже. Кстати, вы даже не написали как ваше решение с синглтоном позволяет исключить «опасность попытки одновременного изменения ее значения из разных потоков». Всё таки целевая аудитория у такого решения — юные неокрепшие умы, они просто скопируют ваше решение и всё.
Sign up to leave a comment.
MSLibrary. ПРОСТО: объявляем глобальные переменные с помощью класса singleton, для iOS и не только…