Habr.com

Ленты новостей Хабр
Все публикации подряд на Хабре
Обновлено: 15 мин. 47 сек. назад

[Перевод] Dart / Flutter — применяя zero / empty объекты ко всему

ср, 04/02/2025 - 02:45

Больше техническая заметка, чем статья, поэтому постараюсь изложить мысли как можно кратче.

Приходя из JS/TS мира, когда я впервые написал на Dart, самой прекрасной вещью, помимо многих было использование функций isEmpty или isNotEmpty для String, List, Map, и так далее. Это было невероятно просто и прекрасно не писать каждый раз  .length == 0.

Также, очень полезным паттерном были empty/zero значения как Duration.zero, Offset.zero, и другие.

Спустя время, я нашел привычку использовать похожий принцип для работы с различными случаями, а также пришел к мысли - что если мы используем такие значения для большей части объектов, избавляясь от null (не для всех случаев, но тем не менее)? Немного поискав, нашел похожий паттерн в Go и других языках, и продолжил думать.

Читать далее

Мессенджерные войны. Эпизод I. Скрытая угроза

ср, 04/02/2025 - 01:29

О чем эта статья? О влиянии такой популярной технологии, как система мгновенной передачи сообщений (мессенджеров) на бизнес.

Для кого эта статья? Для всех, кто использует мессенджеры в своей профессиональной деятельности для коммуникаций с коллегами - с руководством, с подчиненными.

Какой профит от этой статьи? На основе изложенного мной материала вы сможете сделать однозначные выводы, чтобы предпринять простые шаги для качественного, существенного улучшения вашего бизнеса.

Читать далее

Курсовой проект по проектированию ракет-носителей

ср, 04/02/2025 - 01:01

Для того, чтобы стать профессионалом в области проектирования ракет-носителей необходимо очень усердно работать, однако фундаментом служит углублённое обучение в вузе. Важным этапом обучения является выполнение профильного курсового и дипломного проектов.

В ходе курсового и дипломного проектирования по курсу "Проектирование ракет-носителей и их комплексов" студент должен на практике применить полученные знания по определению облика ракеты-носителя (РН) как части единого космического ракетного комплекса, обосновать её основные проектно-конструкторские параметры, обеспечивающие выполнение поставленных в задании тактико-технических требований.

Вот решил написать небольшую памятку как выполнять курсовой проект по проектированию ракет-носителей.

Читать далее

Топ‑5 VPN-сервисов для пользователей из России в 2025 году

ср, 04/02/2025 - 00:36

В условиях ужесточения блокировок в Рунете и роста потребности в приватности, выбор надёжного VPN стал как никогда актуален. При этом хочется подобрать сервис практичный, без навязчивой рекламы и маркетингового шума. В этой статье мы поделимся независимым обзором пяти лучших VPN-сервисов для РФ на 2025 год, сравнив их по цене, используемым протоколам, простоте подключения, наличию пробных периодов и дополнительным «фишкам». Выбор основан на реальном опыте и отзывах — никакой рекламы, только факты и здравый смысл.


Примечание: Все цены указаны в рублях. Для удобства мы рассматриваем помесячную стоимость (а при наличии — и посуточную/понедельную). Ищите сводную таблицу сравнения в конце статьи.

Читать дальше →

Очередной сериализатор для JavaScript, но есть нюанс…

ср, 04/02/2025 - 00:16

Пару лет назад начал разрабатывать редактор текстовых квестов на JavaScript и обратил внимание на то, что неплохо было бы добавить в JSON-сериализатор поддержку ссылок на объекты. Чтобы можно было одним методом сохранить и загрузить состояние объекта, не нарушая его целостность и связь с внешним миром. Что-то подобное есть в PHP при работе метода serialize.

Спустя год начал разрабатывать пошаговую стратегию, в которой такой метод был бы идеальным для реализации сохранений и сетевого режима (пересылка сохранений от игрока к игроку, как это реализовано в Heroes of Might&Magic 3). Имея такой метод, можно было бы не заботиться о сохранении/загрузке объектов игрового мира при их изменениях. Например, добавим лучнику привязку его стрел к конкретному типу дерева. Или в морском пароме создадим массив перевозимых юнитов. При обычной тактике обработки данных это создало бы немало проблем для организации сохранения ссылок.

В итоге, кроме банальной организации внутренних ссылок, идея разрослась амбициозными планами, а именно:

Читать далее

«Рынок зарплат специалистов в сфере кибербезопасности перегрет» (с) Ъ

ср, 04/02/2025 - 00:05

«Рынок зарплат специалистов в сфере кибербезопасности перегрет. Зарплаты специалистов могут доходить до 230к рублей!» ©

Именно такая статья вышла в честь первого апреля в Коммерсантъ. (Чтоб не гнать лишний траффик этим шутникам можете ознакомиться с текстом, например, тут) Но, я решил представить, что эта статья была не шуточной, и поделиться своим (очень важным) мнением на её счёт...

Итак, небольшой исторический экскурс. Давайте вернём 2017 год! У России (как и у большинства постсоветских, да и у всех развивающихся стран) в тот момент уже было «Три пути — вебкам, закладки и АйТи» ©. Люди приходящие в АйТи и диджитал профессии из регионов получали весьма неплохие для этих самых регионов деньги по простой причине — грамотные специалисты достаточно легко могли найти удалёнку на Мск\СПб, а то и, вовсе, на зарубежном рынке. Как итог — работодателям в регионах приходилось поднимать зарплаты, чтобы удержать, если не лучших, то, хотя бы, средних специалистов.

Безопасников тогда это раздолье обходило стороной — безопасник на удалёнке — это что‑то немыслимое для большинства компаний в те годы. А, значит, ни Мск, ни СПб не «пылесосили» регионы (ну, разве что, с целью релокации, на которую готово было не так много людей, так как в таком случае росла не только ЗП, но и стоимость жизни). Поэтому, в зарплатах средних разработчиков и средних безопасников из регионов тогда наблюдалась очень хорошая разница...

Читать далее

3 вопроса на собеседование о многопоточности в Java

вт, 04/01/2025 - 23:42

Привет, Хабр!

Сегодня рассмотрим несколько вопросов на собеседовании, которые могут встретиться: чем synchronized отличается от ReentrantLock, что такое happens-before и как оно влияет на volatile и final и почему ConcurrentHashMap.computeIfAbsent() не всегда безопасен?

Читать далее

Система «Федерация». Часть 6.2/10 Критериальная модель – функциональная часть

вт, 04/01/2025 - 22:41

Блоки критериев «Общие сведения», «Корпоративная архитектура», «Прикладная архитектура», «Архитектура данных» и т.д., оценивают систему «в целом» – по сути это набор функциональных и нефункциональных требований к системе, но без специфики функционала системы. Нужно оценивать и функционал системы, по ее прямому назначению. Для этого в критериальной модели для каждого типа систем предусмотрена специализированная часть.

Сравнение АБС с CRM выглядит удивительно, сравнивать нужно системы одного класса, одной функциональной области. Суть этой части критериальной модели – типовые функциональные и нефункциональные требования к системам. Функциональные области у нас есть в типовой архитектуру (см. часть 4 Размечаем площадку), вот по этим областям и будем оценивать системы.

Читать далее

Я больше не вижу багов…

вт, 04/01/2025 - 22:08

Привет! Я — Маша, которая заваривает qaшу (и иногда крепкий кофе, когда глаза уже отказываются фокусироваться на экране).

Сегодня хочу поговорить о проблеме, с которой сталкивался, наверное, каждый тестировщик (и не только). В один "прекрасный" день ты садишься проверять фичу или делать регресс, а баги просто перестают быть видны. Ты кликаешь, прогоняешь сценарии, но будто слепнешь — всё кажется рабочим. А потом оказывается, что пропустил очевидный косяк, и по цепочке начинается: чувство вины → стресс → ещё большая усталость → ещё больше ошибок.

Знакомо? Тогда давайте разберёмся, как выбраться из этой ямы, пока она не превратилась в профессиональное выгорание.

Читать далее

Обману тебя: чем психологи могут помочь красным командам?

вт, 04/01/2025 - 22:03

В данной статье предложим новый взгляд на работу Red Team для создания самых изощрённых симуляций атак, в которых код заменяется эмоциями, а уязвимости скрываются не в ПО, а в человеческой психике.

Читать далее

Используем несколько баз данных в Laravel

вт, 04/01/2025 - 21:08

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

В этой статье мы разберём:

Практические кейсы, когда действительно нужно использовать несколько СУБД

Пошаговую настройку подключений к разным базам в Laravel

Реализацию моделей и отношений между ними

Плюсы и минусы такого подхода

Вы узнаете, как грамотно организовать работу с несколькими источниками данных без ущерба для производительности и читаемости кода.

Читать далее

Состояние JavaScript: что расскажут на HolyJS 2025 Spring

вт, 04/01/2025 - 20:30

В каком состоянии сейчас JavaScript-разработка? Насколько значим стал TypeScript? Напишут ли уже нейросети за нас юнит-тесты? Что можно закодить в вебе с помощью Emscripten? (спойлер: например, «Героев Меча и Магии»).

Конференции всегда помогали «держать руку на пульсе» и понимать состояние индустрии. А в этот раз перед HolyJS мы ещё и затеяли опрос TechRadar, где разработчики отвечают, чем именно они пользуются. И на конференции узнаем ответы.

До начала HolyJS 2025 Spring осталось меньше недели, и мы публикуем на Хабре полную программу докладов. Возможно, по ней вы поймёте, хотите ли на конференцию. А возможно, просто пробежитесь глазами по названиям, и уже по ним поймёте, что волнует JS-разработчиков в 2025 году.

Читать далее

Шестая дивизия в боях за Клендату: оболганный подвиг

вт, 04/01/2025 - 20:18

Первая Межзвездная война в массовом сознании сама по себе обросла огромным количеством исторических мифов, но, безусловно, самый мифологизированный ее эпизод - это Первая битва за Клендату 2297 года. С самого окончания войны и снятия режима военной цензуры каждая годовщина сражения неминуемо сопровождается ритуальными завываниями журналистов-диссидентов из числа неграждан о том, что звездный маршал Диеннс отправил людей на убой. Самый большой вклад в черную легенду о Клендату, пожалуй, сделал известный диссидент, антивоенный активист и, возможно, мормонский экстремист П.Верхувен, снявший известный фильм о Шестой дивизии «Полярис». Увы, вместо увековечивания памяти геройского соединения, вынесшего самые тяжелые бои 2297 года, картина вышла тенденциозной чернухой, не имеющей почти ничего общего с реальной историей...

Would you like to know more?

Отладка с sys._getframe в Python

вт, 04/01/2025 - 20:11

Привет, Хабр!

Сегодня в коротком формате разберемся с тем, что же творится внутри CPython, когда функции вызывают друг друга: sys._getframe, f_back, f_globals, f_locals, а также создадим свои декораторы.

Читать далее

[Перевод] Хранение 1 ТБ в виртуальной памяти на компьютере с 64 ГБ памяти с использованием Chronicle Queue

вт, 04/01/2025 - 19:46

Java разработчики часто сталкиваются с проблемой обработки очень больших наборов данных в рамках ограничений виртуальной машины Java (JVM). Когда размер кучи значительно увеличивается — часто более чем на 32 ГБ, — время паузы при сборке мусора (GC) может увеличиваться, что приводит к снижению производительности. В этой статье рассматривается, как Chronicle Queue обеспечивает хранение и эффективный доступ к набору данных размером 1 ТБ на компьютере с 64 ГБ оперативной памяти.

Читать далее

Шутливый PNG

вт, 04/01/2025 - 19:46

Используйте этот файл осознанно и никому не передавайте, чтобы не нарушить чью-то комфортную работу компьютера. Файл подкачки не освобождается, проверял в Linux, но даже с этой проблемой Linux работает без проблем.

Вот, 1 апреля, можно и подшутить над своим компьютером, дав ему несовсем вменяемый файл png. Объясняю как это сделать.

Впервую очередь, чтобы без лишних усилий, мы просто берем и скачиваем исходники libpng16. Исходники нам нужны, чтобы присвоить правильные CRC сумму для заголовка картинки.

Идем в файл pngrutil.c и ищем функцию png_crc_error и в конце функции добавляем printf

Читать далее

Подготовка к ССК (2). Менеджмент информационной безопасности. Оценка рисков информационной безопасности

вт, 04/01/2025 - 19:07

В этой статье мы рассмотрим оценку рисков информационной безопасности, которая является ядром системы менеджмента информационной безопасности. Понимание процесса оценки рисков необходимо Сертифицированному Специалисту по Кибербезопасности для грамотного выстраивания СМИБ.

Читать далее

«У вас тема белая»: подборка забавных сайтов

вт, 04/01/2025 - 19:05

День дурака — это вполне легальный повод шутить глупые шутки, разыграть друзей и от души повеселиться. С последним уже много лет как помогает всемирная сеть благодаря скопившимся в ней мемам, видео и различным онлайн-ресурсом. 

Помимо серьёзных сайтов, предназначенных для важных повседневных задач, в сети полно различных забавных страничек — генераторов, смешных тестов, абсурдных симуляторов или простых как палка приколов.

В честь праздника дураков собрали подборку необычных сайтов, которые могут поднять вам настроение или немного развлечь.

Для удобства все сайты мы поделили на три категории: генераторы различных смешных картинок и текстов, мини-игры и прочие развлечения, а также попросту безобидные или попросту бессмысленные шутки.

Читать далее

Сейчас на сайте

Сейчас на сайте 0 пользователей и 0 гостей.