c (22)

7 проблем в автотестах

В своїй практиці я зустрічав проєкти з різними підходами до тестування: деякі мали 99% покриттям юніт-тестами, а в інших автоматичне тестування було відсутнє взагалі. В цій статті я хочу звернути увагу на характерні проблеми з автоматичними тестами,...

Oleksandr Martyniuk · 12 березня 2021 · 413

ZeroIoC - IoC контейнер на Source Generator-ах

ZeroIoC IoC контейнер для .NET без рефлексії Головна затія - це створити такий IoC контейнер який би чудово працював на планформах із AOT компіляцією, таких як Xamarin, Unity та Native AOT. З виходом Roslyn Source Generator-ів реалізувати це стало на...

Stanislav Silin · 30 серпня 2021 · 342 · 7

Жадібні алгоритми

Жадібний алгоритм - інтуїтивний та ефективний спосіб розв'язання задач оптимізації. І хоча його реалізація приваблює своєю очевидністю, він не завжди оптимальний. Необхідно точно розуміти, коли застосовувати жадібний підхід, а коли його варто уникати...

Oleksandr Martyniuk · 30 липня 2020 · 3.2K

LINQ. Огляд

В цій статті пропоную розглянути LINQ як важливий компонент .NET фреймворку, його історію та роль. Чому він був створений і як врешті користуватись цим інструментом. В кінці розглянемо приклади на мові C#, які дадуть уявлення про те, що таке LINQ. LI...

Oleksandr Martyniuk · 01 серпня 2020 · 696

Чи варто переходити з Python на Nim заради продуктивності?

Nim — це поєднання синтаксису Python і продуктивності C Кілька тижнів тому я бродив по GitHub і натрапив на цікавий репозиторій: проєкт був повністю написаний на мові Nim. До цього я з ним не стикався, і в цей раз вирішив розібратися, що це за...

Alex · 23 липня 2020 · 299

Gmid - багатофункціональний проксі-сервер для Gemini

Gmid - багатофункціональний сервер з відкритим кодом для протоколу Gemini. Зокрема, його зручно використовувати у якості проксі серверу для віртуальних хостів, аналогічно тому як цю функцію виконує Nginx для HTTP. Це може бути зручно, коли немає змог...

p.s. · 09 березня · 15

Що таке синхронний та асинхронний колбек у C#?

Ця стаття допоможе вам зрозуміти синхронний та асинхронний колбек в C# та їх доцільне використання, включаючи приклади та міркування щодо ефективної обробки короткотривалих завдань, операцій вводу/виводу, паралелізму, швидкості реакції та масштабован...

Alex · 28 серпня 2023 · 120

Вийшли специфікації OpenCL 3.0

Організація Khronos Group випустила попередні специфікації фреймворку OpenCL 3.0. Розробники можуть їх потестувати, надіслати фідбек через GitHub, після цього специфікації удосконалять і підготують фінальну версію. Стандарт OpenCL визначає API й розш...

Codeguida · 4 роки тому · 2

Макет метода з out параметром за допомогою Moq

Код проекту Архів — 9 KB. GitHub. Вступ Moq — зручна та популярна бібліотека створення макетів об'єктів для платформи .Net. Вона використовується при модульному тестуванні, щоб ізолювати окремі класи від їх залежностей та впевнитись, що виконують...

Codeguida · 06 травня 2019

Взаємодія Java та C/C++

Java, попри деякі «недоліки», є потужною і, головне, в більшості випадків, самодостатньою мовою програмування. Під самодостатністю я розумію можливість написання програм, що вирішують якусь конкретну задачу без залучення інших мов програмування. Одна...

Codeguida · 12 грудня 2017 · 30

Fuzzing-тестування – ідеї та приклади

Фазинг — техніка тестування програмного забезпечення, а також ще один термін, у якого немає адекватного українського перекладу. Основна ідея полягає у тому, щоб подати на вхід програми велику кількість випадкових даних, сподіваючись, що це спровокує...

Codeguida · 17 жовтня 2017 · 38

Розумні вказівники у C

Я є палким прибічником C, однак іноді мені не вистачає певних високорівневих конструкцій. Мені не дає спокою незручність роботи з пам'яттю у C. Мене легко відволікти, тому я часто забуваю звільнити виділену пам'ять чи закрити файли. Дізнавшись про ро...

Codeguida · 31 липня 2017 · 11