Программирование
Вопросы о C#, Python, Java, алгоритмах и архитектуре кода.
Что такое рефлексия в программировании и зачем она нужна? Подробно о рефлексии Java: Reflection API, примеры Class.forName, getDeclaredField, invoke. Плюсы, минусы, использование в фреймворках и метапрограммировании.
Правильные версии C#: 1.0, 2.0, 3.0 и далее с датами релизов. Объяснение, почему нет C# 3.5 — это путаница с .NET Framework 3.5. Полная хронология, история и советы по поиску на Microsoft Learn.
Как разбить yaml строки на несколько строк в YAML: используйте folded (>) для сглаживания в пробелы или literal (|) для сохранения yaml перенос строки. Chomping, кавычки без экранирования, примеры в PyYAML и Ansible. Избегайте конкатенации +.
*args и **kwargs в Python: как одинарная * собирает дополнительные позиционные в tuple, а двойная ** — именованные в dict. Примеры, порядок параметров и ошибки.
Как реализовать задержку времени в Python-скрипте: time.sleep для блокирующих пауз, asyncio.sleep для async, примеры throttling, GUI и многопоточности. python sleep, python задержка, пауза python.
Подробное объяснение разницы между методами __str__ и __repr__ в Python. __str__ для человекочитаемого вывода в print(), __repr__ для отладки и eval(). Примеры, лучшие практики и fallback-механизм.
Как создавать глобальные переменные в Python, использовать ключевое слово global в функциях, обращаться к ним из разных функций и избегать ошибки UnboundLocalError. Область видимости, примеры кода и лучшие практики для переменных в функциях.
Узнайте, как изменить сообщение последнего непушенного коммита с помощью git commit --amend или нескольких с git rebase -i. Пошаговое руководство по amend, reword, добавлению файлов и восстановлению ошибок для чистой истории Git.
Самый чистый способ валидации десятичных чисел в JavaScript. Функция IsNumeric проходит все тесты: '-1.5', '.42' (true), '99,999', 'blah' (false). С regex, Number.isFinite, кроссплатформенно. Забудьте isNaN!
Разница между интерфейсами и типами (type) в TypeScript: синтаксис, declaration merging, union, extends, implements. Когда использовать typescript интерфейсы и typescript типы, примеры кода и рекомендации.
Разница между ArrayList и LinkedList в Java: когда выбрать ArrayList для быстрого доступа, а LinkedList для вставок/удалений. Сравнение производительности, памяти и примеры кода для списков в Java.
В Python нет string.contains, используйте 'in', str.find() или str.index() для проверки подстроки в строке. Примеры кода, альтернативы с regex и pandas, производительность и ошибки. Замена somestring.contains на питоничный код.
Как проверить, что бинарник соответствует исходному коду без полной сборки: объясняем воспроизводимые сборки, проверку хешей, подписи и доступные инструменты.
Руководство по созданию BPB для FAT32: расчёт BPB_FATSz32, BPB_TotSec32, BPB_RootClus и связанных полей. Формулы, пример для 128 МБ и ссылки на спецификации.