Форум программистов, компьютерный форум, киберфорум
Async
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Старый
HTTP/3 и Java
Запись от JVM_Whisperess размещена 27.10.2025 в 21:52
Показов 3807 Комментарии 0

Нажмите на изображение для увеличения
Название: HTTP3 и Java.jpg
Просмотров: 213
Размер:	89.7 Кб
ID:	11338
Сижу я как-то за кофе с коллегой из команды фронтенда. Он хвастается, что их новый сервис на Node.js отдает данные по HTTP/3 уже полгода. А я думаю - а когда же Java подтянется? Браузеры научились работать с третьей версией протокола еще в 2022-м. Больше трети всех сайтов уже используют его. А вот в экосистеме Java до недавнего времени - тишина....
Аватар для JVM_Whisperess
Старый
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (2)
Запись от ArchitectMsa размещена 23.10.2025 в 13:11 / Microservice it all!
Показов 3668 Комментарии 0

Нажмите на изображение для увеличения
Название: Шардинг и горизонтальное масштабирование ботов.jpg
Просмотров: 241
Размер:	179.6 Кб
ID:	11330
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (1)

Шардинг и горизонтальное масштабирование ботов



Вертикальное масштабирование упирается в физические границы железа довольно быстро. У меня был момент когда бот обрабатывал 300 тысяч пользователей на сервере с 32 гигами RAM и 16 ядрами....
Аватар для ArchitectMsa
Старый
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (1)
Запись от ArchitectMsa размещена 23.10.2025 в 13:05 / Microservice it all!. Обновил(-а) ArchitectMsa 23.10.2025 в 13:11
Показов 4025 Комментарии 0

Нажмите на изображение для увеличения
Название: Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений.jpg
Просмотров: 197
Размер:	209.9 Кб
ID:	11325
Архитектура телеграм-ботов на Python и Феномен 15 миллиардов сообщений (2)

Каждый день через экосистему телеграм-ботов проходит 15 миллиардов сообщений. Не в теории, а прямо сейчас - пока читаешь этот абзац, где-то обрабатывается несколько миллионов запросов. Десять миллионов активных ботов обслуживают миллиард пользователей, и это уже не просто автоответчики с парой команд.

Я помню, как лет пять назад запустил своего первого бота на VPS за 5...
Аватар для ArchitectMsa
Старый
CPU-bound и I/O-bound асинхронные и синхронные операции на C#
Запись от UnmanagedCoder размещена 19.10.2025 в 20:20 / C# .Net and all about
Показов 4400 Комментарии 0

Нажмите на изображение для увеличения
Название: CPU-bound и IO-bound асинхронные и синхронные операции на C#.jpg
Просмотров: 209
Размер:	75.0 Кб
ID:	11319

Суть различий между CPU-bound и I/O-bound операциями



Что происходит внутри процессора при разных типах нагрузки



Возьмем простой пример - вычисление SHA256 хеша от большого файла. Процессор реально потеет: каждый байт прогоняется через серию битовых операций, сдвигов, XOR. Регистры заполнены данными,...
Аватар для UnmanagedCoder
Старый
Партиционирование Kafka и доставка сообщений из нескольких партиций
Запись от JVM_Whisperess размещена 18.10.2025 в 20:15
Показов 4295 Комментарии 0

Нажмите на изображение для увеличения
Название: Партиционирование Kafka.jpg
Просмотров: 220
Размер:	71.3 Кб
ID:	11314
Когда впервые сталкиваешься с Kafka, партиции кажутся простой технической деталью - ну разбили топик на части, и что? Типичная ошибка джуна, которую я сам совершал лет семь назад. Тогда на проекте в финтехе мы обрабатывали платежные транзакции, и я наивно полагал, что...
Аватар для JVM_Whisperess
Старый
Что такое MCP сервер и как его создать. Часть 2
Запись от run.dev размещена 17.10.2025 в 21:22 / JavaScript, TypeScript etc...
Показов 3983 Комментарии 0

Нажмите на изображение для увеличения
Название: Что такое MCP сервер и как его создать 3.jpg
Просмотров: 239
Размер:	32.1 Кб
ID:	11312
Когда я впервые попытался подключить свой MCP сервер к Claude Desktop, думал что это будет как с любым другим API - указал эндпоинт, авторизовался, готово. Но нет. MCP требует конфигурирования на стороне клиента, и каждое приложение делает это по-своему. Причём документация местами отсутствует или устарела, приходилось разбираться методом проб и ошибок.

Что такое MCP сервер и как его создать. Часть 1

Клиентские приложения для...
Аватар для run.dev
Старый
Что такое MCP сервер и как его создать. Часть 1
Запись от run.dev размещена 17.10.2025 в 21:21 / JavaScript, TypeScript etc.... Обновил(-а) run.dev 17.10.2025 в 21:23
Показов 3469 Комментарии 0

Нажмите на изображение для увеличения
Название: Что такое MCP сервер и как его создать.jpg
Просмотров: 252
Размер:	50.4 Кб
ID:	11310
Model Context Protocol - это не очередной API и не замена REST. Это скорее мост между вашей языковой моделью и реальным миром данных. Представьте: у вас есть Claude или другой AI-ассистент, который умеет болтать, но не имеет доступа к вашим базам данных, файлам или внешним сервисам....
Аватар для run.dev
Старый
asyncio и асинхронное программирование в Python: синхронизация, продвинутые примеры, асинхронный парсер
Запись от py-thonny размещена 07.10.2025 в 21:20 / pythonic man's blog. Обновил(-а) py-thonny 07.10.2025 в 21:23
Показов 3507 Комментарии 0

Нажмите на изображение для увеличения
Название: asyncio и асинхронное программирование в Python синхронизация, асинхронный парсер.jpg
Просмотров: 287
Размер:	68.1 Кб
ID:	11270
1. asyncio и асинхронное программирование в Python: конкурентность, корутины, таски, async/await, event loop
2. asyncio и асинхронное программирование в Python: паттерны, футуры, примеры, работа с БД
3. asyncio и асинхронное программирование в Python: синхронизация, продвинутые примеры, асинхронный парсер

Продвинутые техники



Когда базовые паттерны освоены, asyncio открывает возможности...
Аватар для py-thonny
Старый
Python MCP или как подключить свою LLM ко всему миру - Развертывание MCP-серверов, Универсальный MCP-сервер с разными источниками данных
Запись от IndentationError размещена 04.10.2025 в 12:48 / AI coming for you. Обновил(-а) IndentationError 04.10.2025 в 18:36
Показов 3965 Комментарии 0

Нажмите на изображение для увеличения
Название: Развертывание MCP-серверов, Универсальный MCP-сервер с разными источниками данных.jpg
Просмотров: 363
Размер:	143.8 Кб
ID:	11259
1. Python MCP или как подключить свою LLM ко всему миру - Что такое MCP, первый запуск
2. Python MCP или как подключить свою LLM ко всему миру - Создаем MCP-сервер
3. Python MCP или как подключить свою LLM ко всему миру - Продвинутые сценарии
4. Python MCP или как подключить свою LLM ко всему миру - Развертывание MCP-серверов, Универсальный MCP-сервер с разными источниками данных


Развертывание и эксплуатация

...
Аватар для IndentationError
Старый
Python MCP или как подключить свою LLM ко всему миру - Продвинутые сценарии
Запись от IndentationError размещена 03.10.2025 в 18:54 / AI coming for you. Обновил(-а) IndentationError 04.10.2025 в 18:35
Показов 2781 Комментарии 0

Нажмите на изображение для увеличения
Название: Python MCP или как подключить свою LLM ко всему миру - Продвинутые сценарии.jpg
Просмотров: 173
Размер:	143.3 Кб
ID:	11258
1. Python MCP или как подключить свою LLM ко всему миру - Что такое MCP, первый запуск
2. Python MCP или как подключить свою LLM ко всему миру - Создаем MCP-сервер
3. Python MCP или как подключить свою LLM ко всему миру - Продвинутые сценарии
4. Python MCP или как подключить свою LLM ко всему миру - Развертывание MCP-серверов, Универсальный MCP-сервер с разными источниками данных

Продвинутые сценарии использования



Освоив...
Аватар для IndentationError
Старый
Python MCP или как подключить свою LLM ко всему миру - Создаем MCP-сервер
Запись от IndentationError размещена 03.10.2025 в 10:38 / AI coming for you. Обновил(-а) IndentationError 04.10.2025 в 18:35
Показов 3597 Комментарии 0

Нажмите на изображение для увеличения
Название: Python MCP или как подключить свою LLM ко всему миру - Создаем MCP-сервер.jpg
Просмотров: 184
Размер:	128.0 Кб
ID:	11257
1. Python MCP или как подключить свою LLM ко всему миру - Что такое MCP, первый запуск
2. Python MCP или как подключить свою LLM ко всему миру - Создаем MCP-сервер
3. Python MCP или как подключить свою LLM ко всему миру - Продвинутые сценарии
4. Python MCP или как подключить свою LLM ко всему миру - Развертывание MCP-серверов, Универсальный MCP-сервер с разными источниками данных

Создание собственного MCP-сервера



Теория...
Аватар для IndentationError
Старый
Python MCP или как подключить свою LLM ко всему миру - Что такое MCP, первый запуск
Запись от IndentationError размещена 02.10.2025 в 21:34 / AI coming for you. Обновил(-а) IndentationError 04.10.2025 в 18:34
Показов 3340 Комментарии 0

Нажмите на изображение для увеличения
Название: Python MCP или как подключить свою LLM ко всему миру.jpg
Просмотров: 163
Размер:	137.9 Кб
ID:	11256
1. Python MCP или как подключить свою LLM ко всему миру - Что такое MCP, первый запуск
2. Python MCP или как подключить свою LLM ко всему миру - Создаем MCP-сервер
3. Python MCP или как подключить свою LLM ко всему миру - Продвинутые сценарии
4. Python MCP или как подключить свою LLM ко всему миру - Развертывание MCP-серверов, Универсальный MCP-сервер с разными источниками данных

Anthropic выпустила Model Context Protocol - открытый...
Аватар для IndentationError
Старый
Символы в TypeScript
Запись от run.dev размещена 20.09.2025 в 22:00 / JavaScript, TypeScript etc...
Показов 2816 Комментарии 0

Нажмите на изображение для увеличения
Название: Символы в TypeScript.jpg
Просмотров: 170
Размер:	87.7 Кб
ID:	11189
Символы — один из примитивных типов в JavaScript, введенный в ECMAScript 2015 (ES6). В отличие от других примитивов (строк, чисел, булевых значений), главная особенность символов — их уникальность. Каждый символ, созданный с помощью конструктора Symbol(), гарантированно уникален:

TypeScript
1
2
3
const sym1 = Symbol();
const sym2 = Symbol();
console.log(sym1 === sym2); // всегда false, даже если конструкторы вызваны одинаково
Эта...
Аватар для run.dev
Старый
Рейтинг: 5.00. Голосов: 1.
Улучшения производительности в .NET 10
Запись от stackOverflow размещена 18.09.2025 в 20:59. Обновил(-а) mik-a-el 29.09.2025 в 12:19
Показов 4364 Комментарии 1

Нажмите на изображение для увеличения
Название: Улучшения производительности в .NET 10.jpg
Просмотров: 243
Размер:	161.6 Кб
ID:	11182
Раньше, работая с .NET 8 и .NET 9, я частенько ловил себя на мысли: "Ну куда ещё быстрее?". Казалось, что платформа достигла потолка в производительности, и дальнейшие улучшения будут измеряться в пределах погрешности измерений. Как же я ошибался! Команда .NET сумела...
Аватар для stackOverflow
Старый
Python и FastAPI: руководство для начинающих
Запись от py-thonny размещена 30.08.2025 в 16:04 / pythonic man's blog
Показов 3304 Комментарии 0

Нажмите на изображение для увеличения
Название: Python и FastAPI руководство для начинающих.jpg
Просмотров: 204
Размер:	220.8 Кб
ID:	11088
FastAPI появился относительно недавно (в 2018 году), но уже успел стать популярным по всему миру. И причин тому несколько.

Во-первых, скорость. FastAPI основан на Starlette и Pydantic, что делает его одним из самых быстрых Python-фреймворков доступных сегодня. В моих тестах он регулярно показывает производительность на уровне Go или Node.js, что раньше казалось немыслимым для Python. Помню, как на одном проекте мы переписали часть бэкенда с Flask на FastAPI,...
Аватар для py-thonny
Старый
Как загружать данные в Kotlin с корутинами (Вторая часть)
Запись от mobDevWorks размещена 23.08.2025 в 11:02 / Mobile or nothing
Показов 2904 Комментарии 0

Нажмите на изображение для увеличения
Название: Как загружать данные в Kotlin с корутинами 2.jpg
Просмотров: 215
Размер:	182.8 Кб
ID:	11066
Как загружать данные в Kotlin с корутинами (Первая часть)

Retrofit с корутинами - это сочетание, которое изменило мой взгляд на работу с HTTP API. Помню времена, когда каждый сетевой запрос превращался в танцы с колбэками, обработкой потоков и ручным парсингом JSON. С появлением поддержки suspend-функций в Retrofit 2.6 всё стало...
Аватар для mobDevWorks
Старый
Как загружать данные в Kotlin с корутинами (Первая часть)
Запись от mobDevWorks размещена 22.08.2025 в 21:01 / Mobile or nothing
Показов 3275 Комментарии 0

Нажмите на изображение для увеличения
Название: Как загружать данные в Kotlin с корутинами.jpg
Просмотров: 201
Размер:	227.4 Кб
ID:	11065
Помню, как пять лет назад я сидел с ноутбуком в любимой кофейне и пытался разобраться с очередным NullPointerException в коде загрузки данных. Тогда я еще использовал AsyncTask и Thread, постоянно боролся с утечками памяти в ViewModel и проклинал callback hell. Знакомая картина?

Переход на корутины Kotlin стал для меня настоящим откровением - не сразу, конечно. Первые месяцы я относился к ним...
Аватар для mobDevWorks
Старый
Создание облачных приложений Rust: руководство по архитектуре микросервисов
Запись от golander размещена 19.08.2025 в 21:03 / go go just go
Показов 4430 Комментарии 0

Нажмите на изображение для увеличения
Название: Создание облачных приложений Rust.jpg
Просмотров: 290
Размер:	139.7 Кб
ID:	11059
Когда три года назад передо мной встала задача реинжинирить платформу электронной коммерции с нуля, я долго размышлял над выбором языка. Java показалась слишком прожорливой по памяти, Go - слишком примитивной для сложной бизнес-логики, а вот Rust... Rust заставил меня пересмотреть весь подход к архитектуре распределенных систем.

Зачем Rust для микросервисов в облаке



Честно говоря, первый опыт с Rust был болезненным....
Аватар для golander
Старый
Event-Driven архитектуры в C# - выбираем правильного брокера сообщений
Запись от ArchitectMsa размещена 10.08.2025 в 19:39 / Microservice it all!
Показов 4041 Комментарии 0

Нажмите на изображение для увеличения
Название: Event-Driven архитектуры в C# - выбираем правильного посредника сообщений.jpg
Просмотров: 290
Размер:	163.7 Кб
ID:	11045
Недавно я консультировал проект интернет-магазина, где для оформления заказа требовалось последовательно вызывать сервисы: корзины, проверки доступности товаров, расчета доставки, создания заказа, списания средств. Типичная картина! Но что происходило, когда...
Аватар для ArchitectMsa
Старый
Swift 6.1 - улучшения параллелизма, Package Traits и многое другое
Запись от mobDevWorks размещена 08.08.2025 в 20:00 / Mobile or nothing
Показов 3082 Комментарии 0

Нажмите на изображение для увеличения
Название: Swift 6.1 - улучшения параллелизма, Package Traits.jpg
Просмотров: 290
Размер:	135.9 Кб
ID:	11043
Apple выпустила Swift 6.1 вместе с Xcode 16.3. И хотя многие могут посчитать это просто очередным минорным обновлением, я, покопавшись в деталях релиза, пришёл к выводу, что изменения действительно стоящие. Этот релиз открывает новые возможности, особенно в области параллельного...
Аватар для mobDevWorks
Старый
Рейтинг: 5.00. Голосов: 1.
Data Science и C#
Запись от stackOverflow размещена 05.08.2025 в 21:27
Показов 3583 Комментарии 0

Нажмите на изображение для увеличения
Название: Data Science и C#.jpg
Просмотров: 320
Размер:	217.9 Кб
ID:	11038
Когда-то при упоминании языков для анализа данных все автоматически думали только о Python, R и, может быть, немного о Scala. C# воспринимался исключительно как инструмент для энтерпрайз-разработки, создания десктопных приложений под Windows и, в лучшем случае, бэкенда для веб-сервисов. Прошло несколько лет, и ситуация кардинально...
Аватар для stackOverflow
Старый
Представления как элементы данных для пользовательских итераторов - Создание собственного итератора-представления
Запись от bytestream размещена 03.08.2025 в 12:49
Показов 3684 Комментарии 0

Нажмите на изображение для увеличения
Название: Представления как элементы данных для пользовательских итераторов 2.jpg
Просмотров: 410
Размер:	196.7 Кб
ID:	11028
Я хочу показать, как создать собственный итератор, используя представления в качестве членов класса. Для меня этот подход стал настоящим откровением, когда я пытался решить классическую проблему обхода вложенных структур данных.

Итератор для вектора векторов



Представьте типичную задачу с собеседования: у вас есть вектор векторов, и вам нужно реализовать итератор,...
Аватар для bytestream
Старый
Spring Kafka - синхронные и асинхронные запросы
Запись от Javaican размещена 01.08.2025 в 20:30 / Making Java great for ever
Показов 5020 Комментарии 0

Нажмите на изображение для увеличения
Название: Spring Kafka - синхронные и асинхронные запросы.jpg
Просмотров: 323
Размер:	183.8 Кб
ID:	11026
Когда я впервые столкнулся с Apache Kafka, меня поразила его архитектура, заточеная под асинхронное взаимодействие. Этот брокер сообщений, созданный изначально в недрах LinkedIn, а сейчас развиваемый Apache Foundation, проектировался как высокопроизводительная шина для потоковой обработки данных, где сообщения публикуются, хранятся в упорядоченых логах и затем потребляются одним или несколькими получателями.

Введение в Request-Reply паттерн в Kafka


...
Аватар для Javaican
Старый
Управление Arduino из Windows Forms приложения C#. Программирование Arduino и отправка команд, датчики
Запись от Wired размещена 30.07.2025 в 19:28 / [hard]Wired World. Обновил(-а) mik-a-el 30.07.2025 в 19:32
Показов 3832 Комментарии 0

Нажмите на изображение для увеличения
Название: Управление Arduino из Windows Forms приложения C# 2.jpg
Просмотров: 239
Размер:	85.3 Кб
ID:	11023
Теперь, когда мы разобрались с интерфейсом и коммуникацией на стороне C#, пора уделить внимание программированию самой платы Arduino. Тут важно понимать, что код для микроконтроллера отличается от привычного C# не только синтаксисом, но и подходом к организации программы. Вместо событийной модели у нас циклическая структура, а ресурсы сильно ограничены.

Все части статьи:
Управление Arduino из Windows Forms приложения C#. Подключение Arduino и создание приложения...
Аватар для Wired
Старый
Управление Arduino из Windows Forms приложения C#. Подключение Arduino и создание приложения
Запись от Wired размещена 30.07.2025 в 19:28 / [hard]Wired World. Обновил(-а) Wired 30.07.2025 в 19:30
Показов 3370 Комментарии 0

Нажмите на изображение для увеличения
Название: Управление Arduino из Windows Forms приложения C#.jpg
Просмотров: 177
Размер:	172.6 Кб
ID:	11022
Когда я впервые взял в руки Arduino, то сразу понял - это отличный инструмент для быстрого прототипирования и экспериментов с электроникой. Но со временем возникла потребность создать для своих проектов более удобный и функциональный интерфейс, чем предлагает стандартная среда Arduino IDE. Тут-то и приходит на помощь связка Arduino с Windows Forms приложением на C#.

Все части статьи:
Управление Arduino из Windows Forms приложения C#. Подключение Arduino и создание приложения...
Аватар для Wired
Старый
Рейтинг: 5.00. Голосов: 1.
Собеседование по JavaScript - Опыт выживания
Запись от run.dev размещена 26.07.2025 в 21:38 / JavaScript, TypeScript etc...
Показов 2206 Комментарии 1

Нажмите на изображение для увеличения
Название: Собеседование по JavaScript - Опыт выживания.jpg
Просмотров: 269
Размер:	234.9 Кб
ID:	11014
Когда речь заходит о технических собеседованиях по JavaScript, статистика может напугать даже бывалого разработчика. По данным за последние годы, около 67% кандидатов проваливают собеседования по JavaScript при первой попытке. И это неудивительно - ведь язык только кажется простым на поверхности, а копнешь глубже - и оказываешся в кроличьей норе особенностей...
Аватар для run.dev
Старый
Руководство по генераторам Python
Запись от py-thonny размещена 24.07.2025 в 21:25 / pythonic man's blog
Показов 2657 Комментарии 0

Нажмите на изображение для увеличения
Название: Руководство по генераторам Python.jpg
Просмотров: 285
Размер:	121.0 Кб
ID:	11012
Представьте, что вам нужно обработать огромный файл размером в несколько гигабайт. Попытка загрузить его целиком в память закончится либо аварийным завершением программы, либо превратит ваш компьютер в задумчивую черепаху. Как быть? В этот момент на сцену выходят генераторы – одна из самых недооцененных фишек Python, которая может радикально изменить подход к обработке данных.

Генераторы в Python...
Аватар для py-thonny
Старый
Serverless AWS Lambda и C#
Запись от stackOverflow размещена 22.07.2025 в 21:03
Показов 4002 Комментарии 0

Нажмите на изображение для увеличения
Название: Serverless AWS Lambda в C#.jpg
Просмотров: 284
Размер:	105.7 Кб
ID:	11009
AWS Lambda - сервис бессерверных вычислений от Amazon, который в корне меняет подход к созданию бэкенд-систем. За 15 лет работы архитектором я перепробовал множество подходов - от выделенных серверов до контейнеров, но Lambda предлагает нечто принципиально иное. Она полностью...
Аватар для stackOverflow
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru