Все потоки
Поиск
Написать публикацию
Обновить
72.87

macOS *

Настольная ОС компании Apple

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

Эволюция Material Design для AvaloniaUI

Время на прочтение3 мин
Количество просмотров8.8K

image


Material.Avalonia — быстрый способ стилизовать под Material Design приложение, написанное на AvaloniaUI — кросс-платформенном XAML фреймворке для .NET.


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

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

Фреймворки и библиотеки для кроссплатформенной разработки десктопных программ

Время на прочтение7 мин
Количество просмотров58K

В этой статье я расскажу вам о некоторых самых популярных фреймворках, которые помогут вам при разработке программ для компьютеров под управлением Windows/MacOS/Linux. Если вы опытный программист, то вряд ли найдете в этой статье что-то новое для себя. Она скорее для новичков, которые ищут простое решение своей проблемы — быстрое написание хорошей (на сколько это возможно) кроссплатформенной программы.

Читать далее

Материальный дизайн. Создание анимаций в Kivy

Время на прочтение10 мин
Количество просмотров17K

Приветствую всех любителей и знатоков языка программирования Python!

В этой статье я покажу, как работать с анимациями в кроссплатформенном фреймворке Kivy в связке с библиотекой компонентов Google Material DesignKivyMD. Мы рассмотрим структуру Kivy проекта, использование material компонентов для создания тестового мобильного приложения с некоторым количеством анимаций. Статья будет не маленькая с большим количеством GIF анимаций поэтому наливайте кофе и погнали!
Читать дальше →

Об ужасной документации Apple

Время на прочтение7 мин
Количество просмотров18K


В последние год-два я пришёл к осознанию того, что основной преградой к выполнению моей работы является документация. Или, если конкретнее, откровенный дефицит документации, предоставляемой Apple для своих платформ.

Apple предоставляет разработчикам набор инструментов — API, позволяющий нам создавать приложения для iOS, iPadOS, macOS и tvOS. Во многих случаях разобраться в том, как пользоваться этими API, достаточно просто. Как отвёртку можно использовать очень немногими способами, так и во многих случаях есть только один очевидный способ применения API.
Читать дальше →

Дополнительные компоненты для кроссплатформеннной библиотеки материального дизайна KivyMD

Время на прочтение9 мин
Количество просмотров5.9K

Приветствую, уважаемые любители и знатоки Python!

Если вы используете в своих приложениях Python и такие кроссплатформенные инструменты как фреймворк Kivy и библиотеку материального дизайна KivyMD, тогда вам точно будет интересно эта статья, в которой я расскажу о дополнительных компонентах для расширения набора материальных виджетов библиотеки KivyMD

stol-p1 – подставка для ноутбука и айпада в стиле Оригами

Время на прочтение3 мин
Количество просмотров6.1K
image

stol-p1 — проект Оригами подставки для работы на ноутбуке и планшете, который я разрабатываю с ребятами последние 7 месяцев. Он имеет 5 разных позиции для удобной работы за ноутом.

В нём имеется:

  • Держатель для стакана

  • Беспроводная зарядка

  • Держатель для планшета и книжек

  • LED лампа

  • Анти соскальзывающая поверхность

  • Складная подставка

image

stol-p1 – это мой самый амбициозный проект который я когда либо делал, мы с друзьями попытались сделать что то по настоящему крутое, что могло бы пригодиться в доме или в офисе. Под катом можете посмотреть подробное описание.
Читать дальше →

Jungle town: как мы хотели изменить мир к лучшему, создавая детскую игру

Время на прочтение11 мин
Количество просмотров6K

image




История нашей игры началась в 2016 году с покупки приставки Apple TV. Это был очень желанный девайс, на котором я обнаружил несколько игр, в том числе детских. Одна из них была от знаменитой студии, и она настолько мне понравилась, что я сказал своей супруге и музе: «Дорогая, я хочу сделать игру для нашей дочери!» Она меня поддержала.


Мысль о создании своей игры или приложения появлялась у меня и раньше, но мне казалось это нереальным, просто запредельным. А в тот момент загорелся огонь, и я решил идти только вперед. «Нужны ведь деньги и единомышленники, чтобы создать игру», — скажете вы. Да, все верно. На тот момент я был топовым видеографом и хорошо зарабатывал, поэтому наивно думал, что мы с супругой найдем команду и будем просто финансировать и руководить проектом.

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

Как заряжать макбук

Время на прочтение2 мин
Количество просмотров79K


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

TL;DR Для лучшей энергоэффективности зарядку в Mac Book Pro необходимо втыкать справа, а монитор слева.
Читать дальше →

Пишем автодополнение для ваших CLI проектов

Время на прочтение15 мин
Количество просмотров6.9K

Приветствие


Всем привет! Хочу поделиться своим опытом написания кроссплатформенного проекта на C++ для интеграции автодополнения в CLI приложения, усаживайтесь поудобнее.



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

Говорим и показываем: как мы создали сервис синхронного просмотра видео ITSkino на основе VLC

Время на прочтение4 мин
Количество просмотров5.4K


О том, что самоизоляция — это не только «тук-тук-тук» в крышку гроба экономики, но и новые «горизонты возможностей», уже написано немало статей. Правда, многие из них вызывают в памяти басню Крылова про лису и виноград. Но всё же в одном карантинные коучи правы: вся эта ситуация заставляет изобретать — не обязательно какие-то глобальные штуки, которые изменят новый мировой порядок. Иногда — просто небольшие продукты, которые помогли сделать самоизоляцию чуть более выносимой. Об одном из них, плеере ITSkino, мы уже вкратце писали. А сейчас хотим рассказать, как и что мы делали, чтобы наделить VLC функцией синхронного просмотра потокового или локального видео у неограниченного количества человек одновременно.
Читать дальше →

Выступления и презентации в стиле Apple: на примере WWDC20

Время на прочтение9 мин
Количество просмотров5.9K
К нам часто приходят клиенты с запросом «Хотим в стиле Apple», и теперь на один такой запрос станет больше – он будет касаться презентаций для онлайн-конференций. Сооснователь студии дизайна информации VisualMethod сделала подробный разбор, на каких элементах строился сценарий вводного дня #WWDC20. Разбор состоит из трех блоков: цель, контент и дизайн. Полезен всем, кто делает презентации и выступает публично.

image

Управление несколькими JDK в Mac OS, Linux и Windows WSL2

Время на прочтение4 мин
Количество просмотров22K
И снова здравствуйте. В преддверии старта курса «Разработчик Java» подготовили для вас перевод интересной статьи.





Если вам, как и мне, приходится одновременно работать с несколькими проектами (как с легаси, так и с современными), а возможно, вы разрабатываете какую-то библиотеку или утилиту для пользователей с разными версиями Java, то вы поймете проблему с переключением между разными JDK.



В наши дни установка, управление и переключение между JDK при разработке становится непростой задачей, потому что большое количество разработчиков все еще работает с Java 8, хотя многие уже переходят на Java 11. Эта проблема может быть решена разными способами. В этой статье мы рассмотрим некоторые из них.
Читать дальше →

Самое важное с конференции Apple WWDC'20

Время на прочтение5 мин
Количество просмотров32K
Сегодня вечером прошла 31-я конференция Apple для разработчиков ― впервые полностью в формате онлайн. В этом репортаже мы перечислили наиболее значимые нововведения, которые были представлены сотрудниками компании для своих операционных систем и устройств.


Ближайшие события

Как найти ошибки в C# проекте, работая под Linux и macOS

Время на прочтение20 мин
Количество просмотров2.8K

Picture 8

PVS-Studio – известный статический анализатор кода, позволяющий найти множество каверзных ошибок, скрытых в исходниках. Недавно завершился бета-тест новой версии, в которой появилась возможность анализа C# проектов под Linux и macOS. Кроме того, теперь анализатор можно интегрировать с кроссплатформенной IDE от JetBrains – Rider. Данная статья позволит познакомиться с этими возможностями на примере проверки open source проекта RavenDB.
Читать дальше →

Apple Mac и причудливые устройства. LTO, SAS, Fibre Channel, eSATA

Время на прочтение11 мин
Количество просмотров5.1K
Темой настоящей статьи является подключение к Маку внешних устройств по интерфейсам SAS, Fibre Channel (FC), eSATA. Сразу оговоримся, что для решения задачи доступа к таким устройствам существует путь здорового человека: собрать дешёвый PC, воткнуть туда карту контроллера HBA SAS или FC (например, простейший адаптер LSI), подключить к этому контроллеру свои устройства, установить на PC любой линукс и работать с Мака через сеть. Но это банально и неинтересно. Мы пойдём путём хардкора и будем подключать свои устройства непосредственно к Маку.
Читать дальше →

Нетривиальные анимации в SwiftUI

Время на прочтение8 мин
Количество просмотров5.9K

Идея


На WWDC 2019 была представлена SwiftUI — технология коренным образом влияющая на создание UI в приложениях для экосистемы Apple. Нам в Distillery стало интересно в ней разобраться чуть глубже, чем это подано в примерах от Apple. В идеале нужно было запилить какой-нибудь полезный для iOS команды и сообщества UI компонент. С идеями по этому поводу оказалось туго, поэтому решили пилить что-то просто забавное. Вдохновил вот этот концепт:


image


Особенно интересным показалось обилие нетривиальной анимации. Таким образом, по ходу реализации хотелось проверить, насколько SwiftUI удобен и приспособлен для чего-то более сложного, чем почти статический UI из примеров WWDC 2019.

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

Строим pipeline для доставки Graal Native Image конечным пользователям

Время на прочтение7 мин
Количество просмотров1.2K

В данной статье я хочу описать свой опыт по доставке Graal Native Image конечным пользователям Mac OS и Linux в одну команду при помощи Travis CI.


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


Пожалуй начнем.


У меня есть:


  • Java приложение со всеми конфигурациями для сборки native image.

Что хочу получить:


  • Собрать native image при помощи Travis
  • Собрать rpm и deb дистрибутивы, а также архив для mac версии
  • Залить полученные пакеты на Bintray
  • Дать пользователям возможность загрузить приложение через пакетный менеджер
  • Максимально автоматизировать процесс.
Поехали

sMock — Swift mocking framework для Unit-tests (спасибо gMock за идеи)

Время на прочтение5 мин
Количество просмотров4.4K

Проблема


Переходя в мир Swift из ObjC/C++, я столкнулся с проблемой при написании юнит-тестов: отсутствием инструментов для создания Mock-объектов.


При написании декомпозированного кода мы часто скрываем детали реализации за интерфейсами (протоколами). А также проверять функциональность того или иного объекта отдельно от других очень удобно, подменяя его составняе части моками.


Погуглив, я нашел несколько фреймворков Swift Mocking на github. Но ни один из них не явился мне ясным и очевидным в использовании (по одной или нескольким причинам):


  • имеет тучу зависимостей
  • не имеет интуитивного синтаксиса
  • требуется кодогенерация / написание вручную большого количества вспомогательного кода
  • не интегрирован с XCTest (позволяет мокать, но не тестировать)
  • иметь много возможностей, сваленых в кучу одного фреймворка (неразбериха что и зачем)
  • должен использоваться с ограниченным количеством предопределенных/встроенных типов

Эта ситуация была для меня неприятной, и напротяжении около года я использовал обходные пути и самописные моки.
Самописные Mock-объекты просты, но они


  • каждый раз разные (изобретаем велосипед)
  • или каждый раз одинаковые (копипаст)
  • неочевидные в использовании

Решение


В мире C ++ существует популярный и чудесный фреймворк gTest / gMock (от Google).
Он позволяет создавать Mock-объекты очень наглядно и компактно. Также он имеет интуитивно понятный синтаксис, который позволяет просто «читать» (не изучать) написанный тестовый код.

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

Производство Material иконок для MacOSX приложения Home Assistant на Electron

Время на прочтение3 мин
Количество просмотров8.8K
В первой серии я заварил умный дом на Home Assistant. В процессе я влюбился в Home Assistant и подумал, не написать ли десктопное приложение для этой системы. У Home Assitant есть прекрасный web-интерфейс и показалось разумным завернуть его в Electron, чтобы получить красивую иконку в доке, родные нотификации, menu bar для быстрого доступа и прочие zeroconf. Home Assistant для всего что можно использует Material Icons: для дашбордов, для состояний, для кнопок, для всего. Это значит, что надо подтянуть весь набор материальных иконок в приложение Electron.
Читать дальше →

Как защищать процессы и расширения ядра в macOS

Время на прочтение8 мин
Количество просмотров4.3K
Привет, Хабр! Сегодня мне хотелось бы поговорить о том, как можно защитить процессы от посягательств злоумышленников в macOS. Например, это полезно для антивируса или системы резервного копирования, особенно в свете того что под macOS существует сразу несколько способов “убить” процесс. Об этом и о методах защиты читайте под катом.

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

Вклад авторов