NOP::Nuances of Programming
69.8K subscribers
3.18K photos
10 videos
12 files
4.52K links
Уникальные статьи и переводы — настольная книга программиста.


Любые вопросы по сотрудничеству: @ramilkr
Если нужен токен:
https://telega.in/c/nuancesprog
NOP::Humor - https://t.me/nophumor
NOP::Recruiter Удаленка- https://t.me/nopremote
Download Telegram
Распознаём 50 видов текста на C++ с Plywood

Текстовый файл не так прост, как иногда кажется. Из 50 кодировок и их форматов Блокнот Windows распознаёт 42, Notepad++ 38, VSC - 40. C++ фреймворк Plywood, нацеленный на простоту внедрения сторонних библиотек, понимает все 50 форматов текста. Как указывает автор, файлы с текстами написаны вручную специально для фреймворка. Тем не менее, Plywood справляется лучше других. Как устроено обнаружение кодировки в новом фреймворке? Давайте разберёмся. Код детектора вы найдёте в конце статьи. Лицензия - MIT.

https://nuancesprog.ru/p/9157

@nuancesprog #статьи #CPP
Дизайн физического движка

Планируете заняться разработкой сложных систем, но боитесь столкнуться с трудностями? Расскажем о том, как создать физический движок на C++. Подробно рассмотрим проектирование динамики, обнаружения столкновений и реакции на столкновения, а также некоторые другие опции.

https://nuancesprog.ru/p/9072

@nuancesprog #статьи #CPP
Какие ошибки обычно допускаются при обработке многопоточности? Какова в этом процессе роль мьютексов и как безопасно реализовать их блокировку/разблокировку? Рассматриваем эти и сопутствующие вопросы.

https://nuancesprog.ru/p/10545

@nuancesprog #статьи #CPP
Существует огромное количество языков программирования. И лучший способ понять, какой язык стоит применять в определённой сфере,  -  это увидеть их разницу на практическом примере.

https://nuancesprog.ru/p/11440

@nuancesprog #статьи #CPP #Python
Заглянем "под капот" процесса компиляции и поэтапно рассмотрим, как именно преобразуется высокоуровневый код в низкоуровневый исполняемый формат. В качестве примера взята программа C++ под Ubuntu.

https://nuancesprog.ru/p/11518

@nuancesprog #статьи #CPP
Обратим внимание на несколько важнейших понятий C ++, которые позволят повысить эффективность действий программиста, а также помогут в оптимизации кода.

https://nuancesprog.ru/p/12476

@nuancesprog #статьи #CPP
Напишем программу и пошагово разберем логику кода для перестановки цифр числа, подробно объясняя, что в ней происходит.

https://nuancesprog.ru/p/13303

@nuancesprog #статьи #CPP
Собрались перейти на Python с C++ или наоборот? Будьте готовы привыкнуть к списку отличительных особенностей синтаксиса, использованию пробелов, нюансам типизации и прочим фишкам, отличающим этот язык от популярных собратьев.

https://nuancesprog.ru/p/13773

@nuancesprog #статьи #Python #CPP
Рассмотрим преимущества и недостатки двух лучших в настоящее время языков. Определим, где каждый из них предпочтительнее использовать.

https://nuancesprog.ru/p/14524/

@nuancesprog #CPP #Java
Разбираемся в особенностях передачи сообщений между процессами. Рассмотрим как нужно писать для этого выразительный, чистый код.

https://nuancesprog.ru/p/14939/

@nuancesprog #CPP
Узнаем, для чего нужен шаблон проектирования прототипов, в чём его преимущество и чем он отличается от клонирования. Рассмотрим фабрику прототипов и использование шаблона проектирования прототипов для реализации виртуального конструктора копирования.

https://nsprg.ru/vXZlWm

VK: https://nsprg.ru/OoAKKx

Дзен: https://nsprg.ru/v3BlQx

@nuancesprog #CPP
Есть миллион причин любить Python (особенно специалистам по данным). Но сильно ли он отличается от более профессиональных низкоуровневых языков программирования, таких как С или С++? Скорее всего, многие дата-специалисты или пользователи Python задавались этим вопросом или однажды задумаются об этом.

https://nsprg.ru/x9pWMm

VK: https://nsprg.ru/vL5YLO

Дзен: https://nsprg.ru/mwYJNv

@nuancesprog #CPP #Python
Рассмотрим преимущества и недостатки двух лучших в настоящее время языков. Определим, где каждый из них предпочтительнее использовать.

https://nsprg.ru/OjAXkv

VK: https://nsprg.ru/mMkdGv

Дзен: https://nsprg.ru/OQM8wO

@nuancesprog #CPP #Java
Поэтапно увеличим производительность реализации парсера для огромного файла. Устраним копии и баги, воспользуемся профилировщиком, хеш-картой линейного зондирования, микрооптимизациями, распараллелим код.

https://nsprg.ru/OZYrBv

VK: https://nsprg.ru/vXP01v

@nuancesprog #CPP #CProgramming
Разбираемся в особенностях передачи сообщений между процессами. Рассмотрим как нужно писать для этого выразительный, чистый код.

https://nsprg.ru/mW22qO

VK: https://nsprg.ru/v3GGPv

Дзен: https://nsprg.ru/O5PPnv

@nuancesprog #CPP