Программирование
Вопросы о C#, Python, Java, алгоритмах и архитектуре кода.
Разница между AddTransient, AddScoped и AddSingleton в ASP.NET Core — когда использовать каждый lifetime, влияние на DbContext, потокобезопасность и Dispose.
Узнайте, как определить тип переменной в Python с помощью type() и isinstance(). Проверка типов данных: int, float, uint32 через NumPy, ctypes. Примеры кода, советы по диапазону и распространённые ошибки для точной типизации.
Узнайте, как проверить тип объекта в Python: используйте type() для точного класса и isinstance() для проверки списков, словарей и наследования. Примеры кода, отличия и лучшие практики для надежного кода без TypeError.
Узнайте, как удалить столбец из DataFrame Pandas с помощью del df['column'], pop() или drop(). Почему точечная нотация del df.column_name не работает? Объяснение __delitem__ vs __delattr__ с примерами и лучшими практиками pandas удалить столбец.
Подробное объяснение принципа IoC (инверсия контроля), его реализации через инъекцию зависимостей. Проблемы, которые решает ioc контейнер, примеры в Spring, когда использовать в программировании и связь с DI.
Идиоматичные способы проверки исключений в JUnit тестах: assertThrows в JUnit 5, ExpectedException в JUnit 4. Примеры кода, сравнение подходов и лучшие практики для junit тестов с проверкой сообщений.
Пошаговое создание рабочего пространства в VS Code с глобальными настройками для AVR и STM32 микроконтроллеров. Проект-специфичные settings.json, launch.json, tasks.json для сборки и отладки. Упрощает программирование STM32 в VS Code.
Узнайте, как безопасно удалить ключ из словаря Python без KeyError: используйте my_dict.pop(key, None), if key in dict: del или try/except. Примеры кода, сравнение методов для python удалить ключ и python удалить из словаря.
Разбираем идиому copy-and-swap в C++: суть, проблемы, которые она решает (exception safety, self-assignment), примеры реализации. Изменения в C++11 с move-семантикой. Когда применять для RAII-классов.
Разбираем, в чём разница между .gitignore и .gitkeep в репозиториях Git. .gitignore игнорирует файлы и папки, .gitkeep сохраняет пустые директории. Примеры, ошибки и лучшие практики использования файлов gitignore и gitkeep.
В чём разница между #include <filename> и #include "filename" в C/C++? Директива include c определяет поиск заголовочного файла: скобки — системные пути, кавычки — локальные. Избегаем ошибок include c и упрощаем разработку.
Пояснение: что такое стек и куча в программировании, где они находятся в памяти, кто управляет ими, чем отличаются по назначению, размерам и скорости доступа.
Динамический вызов функции модуля по строковому имени в Python с помощью getattr и importlib. Примеры кода, проверки безопасности, обработка async-функций и полный шаблон реализации call(module, func_name). Избегайте eval для безопасности.
Как правильно округлять float до 2 знаков в Python: решите проблему 13.949999999999999 с round(), f-строками и decimal. Python округление до 2 знаков без артефактов точности для финансов и измерений.
Как объявить и инициализировать массив в Java: new, литералы, циклы, Arrays.fill, стримы. Примеры для int, String, многомерных массивов. Типичные ошибки и советы для начинающих программистов.
Пояснение и примеры: как извлечь подстроку в Python с помощью срезов (s[start:end]), получить myString[2:] до конца, использовать отрицательные индексы и slice().
Настройте существующую локальную ветку Git для отслеживания удаленной с помощью git branch --set-upstream-to или git push -u. Пошаговое руководство: git fetch, проверка веток, устранение ошибок и примеры для git pull без аргументов.
Пошагово: как заставить Git забыть файл, который уже отслеживался, но теперь в .gitignore. Используйте git rm --cached или git rm -r --cached для папок.
Узнайте, как генерировать случайное целое число в C# с помощью класса Random.Next() и RandomNumberGenerator. Примеры кода, диапазоны, многопоточность, криптостойкие числа и избежание ошибок для надежного рандома.
Как в Python печатать без перевода строки или пробела: print(end=''), sys.stdout.write(), flush для непрерывного вывода '....'. Примеры для Python 2/3, индикатор прогресса и избежание ошибок.