Теперь, когда у вас есть базовые представления о Combine, давайте рассмотрим, как Combine может улучшить SwiftUI. При разработке реального приложения часто требуется страница регистрации для создания аккаунта. В этой главе мы создадим простую экранную форму регистрации с тремя текстовыми полями. Наше внимание будет сосредоточено на валидации формы, поэтому реальная регистрация выполняться не будет. Вы узнаете, как использовать Combine для валидации каждого из полей ввода и организации кода в модели представления.
developer
Замки, драконы и сундуки: как возник классический сеттинг игрового фэнтези? Часть 4: рождение Dungeons & Dragons
К началу 1970-х годов в США оформилось большое и активное сообщество игроков в настольные игры — которое в значительной степени пересекалось с любителями всё более популярного тогда жанра фэнтези. Ранние настолки происходили из военных игр, использовавшихся с XIX века для подготовки офицеров — и долгое время они изображали исключительно реальные или теоретические боевые столкновения. Идея сделать настолку в жанре фэнтези появилась у человека по имени Гэри Гайгэкс после того, как он реализовал настольную игру про средневековые бои — и решил добавить в неё фэнтезийных войск. Когда к этой концепции добавилась идея отдельных юнитов-героев и ролевого отыгрыша — на свет появилась Dungeons & Dragons. Мать всех современных ролевых игр и основа для сферического в вакууме фэнтезийного сеттинга, который во многом именно благодаря ей возник из множества разных миров, разных авторов.
Все части цикла статей о возникновении классического сеттинга игрового фэнтези:
Git. Руководство по оформлению веток и коммитов
Статей на тему что такое git и как им пользоваться на просторах интернета не мало. Я же хочу предложить вам несколько иной взгляд на привычные вещи, а именно, на оформление веток и коммитов, рассмотреть что такое WIP-коммиты, для чего они нужны и как с помощью них можно повысить свою продуктивность и поддерживать чистоту в истории вашего репозитория, в особенности, если вы работаете в команде. Поехали.
iOS-разработчики в 2024 году: какие нужны скилы и как проходит процесс найма
Команда Яндекс Практикума провела исследование и готова рассказать, как обстоят дела в найме начинающих iOS-разработчиков: какие навыки требуются джуниорам для работы, о чём их спрашивают на собеседованиях и сколько откликов им нужно отправить, чтобы получить приглашение на интервью.
Учишь русский, учишь Java, едешь в Россию работать, или Как я «зашёл в ИТ» 10 лет назад
Писатель Дмитрий Глуховский как-то предложил водителю автобуса из Саратова свой вариант карьерного плана в ИТ. Моя карьера сложилась почти по этому плану. Только я учил Java.
Hola, Хабр. Меня зовут Джулио, я ведущий бэкенд-разработчик в IBS. Я родился и вырос в Перу, но уже несколько лет живу и работаю в России.
Я приехал сюда студентом 23 года назад, изучал радиофизику в питерском университете, несколько лет работал техническим переводчиком и менеджером проектов по информационной безопасности, а потом решил «зайти в айти». Работал в ИТ-компаниях в России, Перу и Польше. Меньше чем за 10 лет прошёл путь от джуна до сеньора.
Эта статья о том, как я «зашёл в айти», когда ещё не существовало Скиллбокса и Яндекс Практикума. Расскажу, как учился программированию десять лет назад, чем отличаются собеседования в ИТ-компаниях Перу и России и кому не стоит становиться разработчиком.
Под капотом загрузчика
Привет, Хабр!
Мы, сервисные инженеры, сталкиваемся с GRUB2 ежедневно. А вот когда стало любопытно посмотреть на загрузчик комплексно, то в интернете и в учебнике Linux нашли лишь несколько команд: как заново проинсталлировать загрузчик и обновить текущую конфигурацию. «А почему так мало?», — была наша первая мысль. Решили восполнить пробел — так появилась эта статья. А для иллюстрации попросили нейросетку изобразить, «как выглядят эпичные проблемы с GRUB» -- вот что вышло.
Всё что нужно знать про ECS
Привет, Хабр! В этой статье я расскажу всё, что знаю про Entity-Component-System и попытаюсь развеять различные предубеждения об этом подходе. Здесь вы найдете много слов о преимуществах и недостатках ECS, об особенностях этого подхода, о том как с ним подружиться, о потенциальных граблях, о полезных практиках, а также в отдельном разделе коротко посмотрим на ECS фреймворки для Unity/C#.
Измерение продуктивности разработчиков. Ответ McKinsey
«На прошлой неделе McKinsey опубликовала статью под названием «Да, вы можете измерить продуктивность разработчиков программного обеспечения». Эта статья вызвала настоящий переполох в сообществе разработчиков ПО. Кент Бек — инженер-программист и создатель экстремального программирования —написал что «Отчет настолько абсурден и наивен, что нет смысла подробно его критиковать».
Хотя мне не понравилось куда клонит этот отчет, я решил взглянуть на положительную сторону: то, как участие McKinsey сигнализирует о растущей потребности даже в «традиционных» компаниях лучше понимать, как работают команды разработчиков программного обеспечения.
Но что-то было не так. Через несколько часов после публикации этой статьи я уже созванивался с Кентом, поскольку мы пытались определитьточно почему мы оба были разочарованы этим отчетом. Мы почти сразу оказались на одной волне и решили, что можем помочь сообществу разработчиков программного обеспечения, изложив словами то, что мы обсуждали. Ниже приведен наш ответ, написанный мной и Кентом Беком, одним "общим голосом".
Сам себе экосистема: итоги. Как работают мои самопальные клиенты ВК, YouTube, Telegram на смартфонах 13-летней давности
Рубрика «сам себе экосистема» уже успела стать постоянной в моем блоге. Для тех, кто читает меня в первый раз, расскажу: одним из основных направлений блога всегда был моддинг и попытка использования устройств прошлых лет в современных реалиях. Именно поэтому я пишу клиенты нужных мне сервисов с нуля, дабы иметь возможность пользоваться такими замечательными смартфонами, как Xperia Pro, Xperia Play, Desire Z и конечно же Motorola Droid, а в статьях я делюсь с вами не только причинами своей мотивации, но и рассказываю, как разрабатываются приложения для 10+ летних смартфонов с нуля и с минимальным набором зависимостей и детали реализации тех или иных фишек. В сегодняшнем материале мы подведем с вами промежуточные итоги и узнаем, справляются ли смартфоны 14 летней давности с современными сервисами?
Краткое сравнение популярных функций измерения времени
Какую реальную точность можно ожидать от функции возвращающей время, а сколько времени она выполняется сама? Попытка замерить и сравнить несколько десятков функций, доступных программисту на C++.
Как создать аудиоплеер. Часть 2. Использование ExoPlayer
Всем привет! Меня зовут Дмитрий Булгаков, я Android-разработчик в HiFi-стриминге Звук, и я продолжаю рассказывать вам о том, как можно создать аудиоплеер в приложении. Во второй части гайда мы поговорим об использовании ExoPlayer.
Добро пожаловать на разбор!
Машинное обучение в браузере
Меня зовут Алексей, сегодня мы с вами поговорим, как можно ускорить вычисления машинного обучения веб приложения с помощью WASM, WebGL или WebGPU.
Когда фронтенд‑разработчик слышит о машинном обучении в браузере, первое, что приходит ему на ум, это вопрос: «Как это может быть применено? Мы же работаем в браузере на JS, который, как известно, медленный (по сравнению с компилируемыми языками)».
Doom. Часть 4. Технические ограничения как стимул творческого потенциала на примере 12 вадов
Как известно 640 КБ должно было хватить всем, но прогресс пошёл другим путём и ныне только пустой файл проекта на каком-нибудь Unity многократно превышает указанный объём, как и, например, размер картриджа, в который в своё время Blizzard умудрились уместить Rock n' Roll Racing (1993) в версии для Sega Genesis, или же, иной раз, одна картинка для статьи на Хабре.
«А поменяйте мне фсе зубы» — история пациента с Хабра
Когда он впервые сел ко мне в кресло, у него не было вообще ни одного целого зуба. Это не преувеличение ради красного словца — реально ни одного! Спустя год и примерно пятьдесят визитов в клинику у Вани улыбка, как говорится, — на миллион! Точнее, на три.
Он сам захотел рассказать здесь свою историю. Поэтому вот.
Это Иван, он прошёл зубной квест на хард-левеле и радуется
Сначала будут Ванины впечатления, а потом я, Леван, его ортопед, расскажу, как мы реставрировали его зубы. И заодно про то, как мы работали со сложным пациентом, который мог сорваться и уйти в закат с любого приёма, плюс дополнительно у нас не возникла симпатия с первого раза, что неудивительно, если знать его анамнез.
С 200 до 500 знаков в минуту — 4 года учусь писать код быстрее. Рассказываю о самых эффективных методах в статье
Опытные разработчики каждый день пишут тонны кода (а еще более опытные не пишут его совсем), и если ты хочешь быть продуктивным — нужно учиться писать быстрее. Сегодня на связи — Даниил Лихачев, python-разработчик в ДАЛЕЕ. Делюсь известными и не очень способами по ускорению написания кода.
Сравнение алгоритмов ограничения частоты запросов
▍ Зачем ограничивать частоту?
Представьте чат в Twitch со множеством активных пользователей и одним спамером. Без ограничения частоты сообщений единственный спамер может запросто заполнить всю беседу сообщениями. При ограничении частоты у каждого пользователя появляется равная возможность участия.
Ограничитель частоты позволяет управлять частотой обрабатываемого вашим сервисом трафика, блокируя запросы, превосходящие заданное пороговое значение за период времени. И это полезно не только для борьбы со спамом в чатах. Например, ограничение частоты отправки формы логина позволяет защититься от брутфорс-атак, оставляя при этом пользователю право на ошибку.
Конечные точки API тоже часто ограничивают по частоте запросов, чтобы их ресурсы не монополизировал единственный пользователь. Представьте, что вам нужно, чтобы пользователи могли обращаться к затратной конечной точке не чаще ста раз в минуту. Это можно отслеживать при помощи счётчика, обнуляющегося каждую минуту. Все запросы после сотого в пределах этой минуты будут блокироваться. Это один из простейших алгоритмов ограничения частоты, называющийся fixed window limiter (ограничитель с фиксированным окном). Это распространённый способ управления трафиком к сервису.
Но не всегда всё так просто.
Когда начинается и заканчивается каждое одноминутное окно? Если я запущу поток запросов ближе к концу окна, смогу ли превысить лимит? Ёмкость окна восстанавливается по одному запросу за раз, или сразу на всё количество?
В этом посте мы рассмотрим три самых популярных алгоритма, чтобы ответить на каждый из этих вопросов.
Corepack в Node.js: возможности и перспективы
Привет!
Меня зовут Алексей Голодников, я фронтенд-разработчик в ЮMoney. Недавно я рассказывал на митапе Frontend Mix про обновление наших веб-приложений до Node.js 20. После доклада в секции вопросов подняли тему Corepack, и я решил рассказать о нём подробнее.
Corepack — это инструмент, который поставляется вместе с Node.js, начиная с версий 14.19.0/16.9.0. Он помогает упростить работу с популярными альтернативными менеджерами пакетов, такими как yarn и pnpm. В этой статье рассмотрим, как работает Corepack, какие у него преимущества и недостатки, а также узнаем мнения разработчиков Node.js и npm об этом инструменте и его будущем в экосистеме.
Главная тайна Солнца: почему корона звезды жарче ее поверхности
Среди главных загадок Солнечной системы современные ученые называют аномальную температуру в короне Солнца. На расстоянии в 70 000 километров от поверхности звезды она не падает, а стремительно возрастает до огромных значений. Почему это происходит, существует множество теорий. Но ни одна из них не была признана подлинной, а анализ физических процессов, происходящих в Солнечной системе, позволяет выдвинуть новую гипотезу.
Солнечные аномалии
Солнечная корона — это внешняя наиболее горячая и разреженная часть атмосферы Солнца, простирающаяся от его хромосферы до Земли и далее. От поверхности Солнца она отделена сравнительно тонким переходным слоем, температура которого резко возрастает примерно в 100 раз с 4 000–15 000 К до 1 000 000–2 000 000 К. Своих максимальных значений она достигает на высоте примерно 1/10 радиуса Солнца, а затем начинает снижаться.
На орбите Земли она составляет примерно 100 000 К. В то же время, в активных областях Солнца температура повышается примерно на 500 000 К, а при вспышках на Солнце может достигать десятков миллионов градусов Кельвина. При этом верхняя граница короны Солнца до сих пор точно не установлена, а ее оптическое излучение прослеживается на десятки миллионов километров. Есть и другие интересные критерии солнечной короны.
Как не бояться задавать глупые вопросы и копать вглубь
В апреле мы провели Naumen Analyst Meetup, на котором обсудили важные для аналитиков навыки. Например, способности эффективно общаться с заказчиком, доходчиво объяснять, внимательно слушать и самое главное — задавать правильные вопросы.
Junior-специалистам, как правило, сложнее всего дается последний пойнт. О нем и был доклад Саши Николаева, руководителя группы бизнес-анализа в Naumen, «Как не бояться задавать глупые вопросы и копать в глубь».
Сумасшествие «Артемиды» или почему она обречена на провал
Более полувека назад, 7 декабря 1972 года, с космодрома на мысе Канаверал стартовала ракета, уносящая к Луне трех астронавтов и луноход. После трехдневного полета двое из них спустились на поверхность Луны в хрупком посадочном модуле. В течение трех дней астронавты исследовали лунный ландшафт, собирали образцы пород и испытывали луноход. Затем они вернулись на орбиту, где их ждал третий член экипажа. Вместе они отправились обратно на Землю, приводнившись в южной части Тихого океана 19 декабря 1972 года. Эта миссия, получившая название «Аполлон-17», стала последним на сегодняшний день случаем, когда человек покидал пределы низкой околоземной орбиты.
NASA планирует вернуть американских астронавтов на Луну в конце 2026 года в рамках миссии «Артемида-3». Подобно «Аполлон-17», два астронавта проведут около недели на лунной поверхности, собирая образцы и делая памятные селфи. Однако, в отличие от исторической миссии, «Артемида-3» будет осуществлена без лунохода.
Несмотря на внешнюю схожесть с «Аполлон-17», «Артемида-3» значительно отличается по сложности и стоимости. В то время как «Аполлон-17» была запущена одной ракетой и стоила $3,3 миллиарда (в пересчете на 2023 год), «Артемида-3» потребует десятка запусков тяжелых ракет и обойдется в астрономическую сумму, которую NASA отказывается раскрывать. По оценкам экспертов, стоимость миссии может достигать 7–10 миллиардов долларов.
Сложность «Артемиды-3» поражает: одноразовый посадочный модуль станет самым тяжелым космическим аппаратом в истории, а научный результат миссии — небольшая коробка с лунными образцами — будет меньше, чем у «Аполлона-17». Более того, вся программа зависит от технологий, которые еще предстоит разработать и протестировать в течение ближайших полутора лет.
Возникает закономерный вопрос: если мы смогли отправить человека на Луну полвека назад, почему это так сложно сделать сейчас, учитывая технологический прогресс?
Information
- Rating
- Does not participate
- Location
- Уфа, Башкортостан(Башкирия), Россия
- Date of birth
- Registered
- Activity