🍉 Подборка лучших статей «Библиотеки программиста» за август: сохраняй в заметки, чтобы не пропустить #самыйсок
🍇 18 основных паттернов микросервисной архитектуры
🦄 5 мифов о работе в IT, которые мешают начать карьеру программиста
😨 Страх ошибок: как он мешает вам писать код
🌐 9 основных паттернов для проектирования распределенных систем
🐘🔮 Иллюзия согласованности в PostgreSQL: как избежать неприятных сюрпризов
💪🛠 Прокачай свой бэкенд: 9 инструментов, которые стоит знать
🏗 Структуры данных для разработчиков: 10 самых важных
💻 15 продвинутых лайфхаков для работы в терминале Linux
🎮🚀 Saturated Outer Space: как инди-разработчики перезапускают игру и бросают вызов жанровым стереотипам
🏄 6+ главных алгоритмов балансировки нагрузки
🚀 Ускорьте свою базу данных: 7 проверенных методов масштабирования и оптимизации
🐘🧠 Оптимизация использования памяти в PostgreSQL: секреты профессионалов
🍇 18 основных паттернов микросервисной архитектуры
🦄 5 мифов о работе в IT, которые мешают начать карьеру программиста
😨 Страх ошибок: как он мешает вам писать код
🌐 9 основных паттернов для проектирования распределенных систем
🐘🔮 Иллюзия согласованности в PostgreSQL: как избежать неприятных сюрпризов
💪🛠 Прокачай свой бэкенд: 9 инструментов, которые стоит знать
🏗 Структуры данных для разработчиков: 10 самых важных
💻 15 продвинутых лайфхаков для работы в терминале Linux
🎮🚀 Saturated Outer Space: как инди-разработчики перезапускают игру и бросают вызов жанровым стереотипам
🏄 6+ главных алгоритмов балансировки нагрузки
🚀 Ускорьте свою базу данных: 7 проверенных методов масштабирования и оптимизации
🐘🧠 Оптимизация использования памяти в PostgreSQL: секреты профессионалов
Любопытные обсуждение на Reddit от новичка в .NET-разработке. Мол, Blazor учить легче, но в то же время он не развивается так быстро как популярные JavaScript-фреймворки.
💬 А вы как думаете?
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека питониста | Python, Django, Flask
🛠️ API-документация без головной боли: ТОП-11 инструментов
Ручное создание документации отнимает много времени и чревато ошибками. Представляем подборку инструментов, которые автоматизируют процесс и помогут вам сосредоточиться на разработке, а не на написании документации.
🔗 Читать статью
Ручное создание документации отнимает много времени и чревато ошибками. Представляем подборку инструментов, которые автоматизируют процесс и помогут вам сосредоточиться на разработке, а не на написании документации.
🔗 Читать статью
Быстрый обзор причин, по которым F# может стать отличной альтернативой Python. Вы узнаете, почему функциональные возможности F# делают его привлекательным выбором для различных задач: от создания прототипов до разработки более крупных приложений.
👉 Читать | Смотреть
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
5 Reasons F# is a great Python alternative for scripting, side projects, and enterprise applications
In this video we compare and contrast F# and Python and some reasons why you might choose F# for your next ad hoc script, side project, or enterprise app.
Original blog post with all links: https://hamy.xyz/labs/2024-03_fsharp-python
Chapters
00:55 - Low…
Original blog post with all links: https://hamy.xyz/labs/2024-03_fsharp-python
Chapters
00:55 - Low…
📃 Создание source-only NuGet-пакетов: гайд от Эндрю Лока
Вместо dll-библиотек source-only пакеты содержат только исходники C#-кода (обычно файлы .cs), которые затем компилируются в целевой проект. Автор рассказывает, как и зачем их создавать.
👉 Читать
Вместо dll-библиотек source-only пакеты содержат только исходники C#-кода (обычно файлы .cs), которые затем компилируются в целевой проект. Автор рассказывает, как и зачем их создавать.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🛠️ Пример параметризованного теста xUnit
Вместо того, чтобы добавлять множество различных тестовых методов с разными входными данными, заданными в теле метода, мы создаем один метод, передаем в него входные данные и ожидаемые результаты для каждого теста в виде параметров.
Это означает меньшее количество тестовых методов (что упрощает изменение логики тестов) и возможность быстро увидеть все входные данные и ожидаемые результаты для конкретного метода вместе.
В примере используется атрибут
#dotnet #csharp #tip by Dave Callan
Вместо того, чтобы добавлять множество различных тестовых методов с разными входными данными, заданными в теле метода, мы создаем один метод, передаем в него входные данные и ожидаемые результаты для каждого теста в виде параметров.
Это означает меньшее количество тестовых методов (что упрощает изменение логики тестов) и возможность быстро увидеть все входные данные и ожидаемые результаты для конкретного метода вместе.
В примере используется атрибут
[ClassData]
, который загружает тестовые данные из отдельного класса, реализующего IEnumerable<object[]>
.#dotnet #csharp #tip by Dave Callan
Привет, друзья! 👋
Мы готовим статью о будущем AI и его влиянии на разработку. Нам важно ваше мнение! ✨
1️⃣ Как вы думаете, AI действительно изменит мир разработки? 🤖
2️⃣ Какие плюсы и минусы использования AI в разработке вы видите? 💡
3️⃣ Есть ли у вас примеры успешного применения AI в ваших проектах? 🛠️
Поделитесь своими идеями в комментариях! Самые интересные идеи и предложения мы обязательно включим в нашу статью. Спасибо за участие! 🙌
Мы готовим статью о будущем AI и его влиянии на разработку. Нам важно ваше мнение! ✨
1️⃣ Как вы думаете, AI действительно изменит мир разработки? 🤖
2️⃣ Какие плюсы и минусы использования AI в разработке вы видите? 💡
3️⃣ Есть ли у вас примеры успешного применения AI в ваших проектах? 🛠️
Поделитесь своими идеями в комментариях! Самые интересные идеи и предложения мы обязательно включим в нашу статью. Спасибо за участие! 🙌
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Please open Telegram to view this post
VIEW IN TELEGRAM
Условие:
Даны две строки s и f (начальная и конечная) и словарь D (набор слов).
Нужно определить, можно ли преобразовать s в f, используя только слова из словаря D. При этом каждое преобразование должно менять только один символ, а длина слова должна оставаться неизменной. Если преобразование возможно, нужно найти кратчайшую последовательность таких преобразований и вернуть ее длину. Если преобразование невозможно, вернуть "Преобразование невозможно".
Пример ввода 1:
D = ["cat", "cot", "dot", "dog", "bat", "dag"]
s = "cat"
t = "dog"
Вывод:
Минимальное количество шагов для преобразования 'cat' в 'dog': 3
Пример ввода 2:
D = ["cat", "cot", "bat"]
s = "cat"
t = "dog"
Вывод:
Минимальное количество шагов для преобразования 'cat' в 'dog': Преобразование невозможно
Please open Telegram to view this post
VIEW IN TELEGRAM
🛠 Autofac — IoC container для .NET. Он управляет зависимостями между классами, чтобы приложение можно было легко изменять по мере масштабирования и сложности. А достигается это за счет обработки обычных .NET-классов как компонентов.
👉 GitHub
var builder = new ContainerBuilder();
builder.Register(c => new TaskController(c.Resolve<ITaskRepository>()));
builder.RegisterType<TaskController>();
builder.RegisterInstance(new TaskController());
builder.RegisterAssemblyTypes(controllerAssembly);
var container = builder.Build();
👉 GitHub
Спустя годы проекты обрастают тёмными местами, в которые никто не хочет соваться, поскольку их сложно понять и легко сломать. Константин Волоховский, тимлид из PVS-Studio, рассказывает про кейс рефакторинга такого кода с переводом на ООП рельсы при помощи паттернов, причём с современным стилем.
Автор не в первый раз пишет про применение ООП на практике — одна из прошлых статей буквально так и называлась (правда с примерами на Java). Только там он фокусировался на применении поведенческих паттернов, здесь же речь пойдёт больше о паттернах порождающих, так что можно воспринимать эту статью как продолжение.
Please open Telegram to view this post
VIEW IN TELEGRAM
Привет, друзья! 👋
Готовим статью «Лучший ноутбук для программирования в 2024 году» и хотим узнать ваше мнение! 👇💻✨
Готовим статью «Лучший ноутбук для программирования в 2024 году» и хотим узнать ваше мнение! 👇💻✨
Какие 3 характеристики ноутбука вы считаете критически важными для программирования? 🤔
Anonymous Poll
81%
Процессор
84%
Оперативная память
36%
NVME-накопитель
37%
Качество экрана
28%
Автономность
18%
Клавиатура
17%
Система охлаждения
2%
Другое (напишите в комментариях)
Какой бюджет, по-вашему, оптимален для покупки ноутбука программисту в 2024 году? 💰
Anonymous Poll
6%
До 50 000 ₽
39%
50 000 — 100 000 ₽
37%
100 000 — 150 000 ₽
18%
Более 150 000 ₽
💬 Поделитесь опытом: на каком ноутбуке вы сейчас работаете и почему он вам нравится (или не нравится)? 🌟
Ждем ваши ответы в комментариях! Самые полезные советы войдут в нашу статью. 📝💡
Спасибо за участие! 🙌
Ждем ваши ответы в комментариях! Самые полезные советы войдут в нашу статью. 📝💡
Спасибо за участие! 🙌