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

macOS *

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

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

Создание desktop приложения с помощью Golang и Fyne

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

Сегодня мы будем разрабатывать desktop приложение на Golang


Разработка golang desktop приложения — не совсем типичная задача для golang программиста.
Читать дальше →

Формируем View в SwiftUI, исходя из условий

Время на прочтение2 мин
Количество просмотров4.3K
Иногда нам нужно сформировать SwiftUI View, учитывая некоторые условия. Например, в приведенном коде мы определяем HomeView, который может содержать ProfileView, в случае если в LogInManager есть loggedInUser. Мы пытаемся это реализовать, используя стандартный оператор if:
Читать дальше →

Во дни сомнений, во дни тягостных раздумий

Время на прочтение3 мин
Количество просмотров5.4K
В данной статье мне хочется рассказать, как я визуализировал статистику по происходящей пандемии, и поделиться с какими особенностями можно встретиться, используя для этого Avalonia UI.


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

Используй время правильно: автоматизация процессов в Tinder

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

Думаю многие любят знакомиться в соц. сетях и пользуются приложениями (например Tinder),
но часто уходит много времени на то, что бы ставить лайки и отправлять первые
сообщения. Я считаю что это монотонные действия которые только отталкивают от
общения и знакомства. Если ты программист, зачем быть как все, давай вместе со
мной автоматизируем процесс монотонных действий и оставим свое внимание только
для приятного общения, но обо всём по порядку.
Читать дальше →

Инструментарий фронтенд-специалиста: полезные утилиты и фичи для ускорения разработки

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


Прошли те времена, когда фронтендеру достаточно было открыть «Блокнот», написать несколько строк кода, проверить его в браузере и загрузить на сервер через FTP. Современная разработка пользовательского интерфейса сильно усложнилась. Экосистема JavaScript растет и изменяется настолько стремительно, что в ней легко запутаться. В этом посте я расскажу, что использует фронтенд-команда Parallels для оптимизации работы.
Читать дальше →

Beta-тест C# анализатора PVS-Studio на Linux и macOS

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

Picture 1

Всё больше пользователей C# анализатора PVS-Studio интересуются возможностью его использования для проверки C# кода на Linux и macOS. И сегодня у нас хорошие новости.
Читать дальше →

Улучшения специальных возможностей в Visual Studio 2019 for Mac

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

Выпуск Visual Studio 2019 for Mac версии 8.4.4 включает в себя многочисленные изменения в цветовой палитре значков, предупреждений и сообщений об ошибках. Новый внешний вид легко бросается в глаза, а новая цветовая гамма еще более заметна. В это статье я расскажу, почему эти изменения действительно важны и что именно было изменено.

В настоящее время более 1 миллиарда человек имеют ту или иную форму инвалидности. Людям практически ежедневно приходится сталкиваться с различными проблемами. К ним относятся ограничения подвижности, когнитивные и нервные нарушения, проблемы с речью и слухом. В связи с этим мы хотим рассказать об улучшениях визуальной доступности в самых последних версиях Visual Studio for Mac.
Читать дальше →

Управление Mac в мире Windows

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


Большинство организаций используют System Center Configuration Manager для автоматизации процессов системного администрирования. Одна незадача: базовая функциональность SCCM ограничена для macOS. Поскольку с каждым годом количество «яблочной» техники в компаниях растет, проблема становится все актуальнее. О том, как эффективно управлять Mac-устройствами в корпоративной среде, используя при этом существующую инфраструктуру, рассказывает руководитель команды разработки Parallels Mac Management Тимофей Фуряев.
Читать дальше →

Swift 5.2 — что нового?

Время на прочтение3 мин
Количество просмотров8.1K
Первая бета Swift 5.2 только что появилась в Xcode 11.4 beta, и в ней произошли изменения в языке, наряду с сокращением размера кода и используемой памяти, а также появилась новая система диагностики, которая позволит быстрее выявлять ошибки.
Читать дальше →

Протокольно-ориентированное программирование в Swift 5.1

Время на прочтение10 мин
Количество просмотров16K
Протоколы — фундаментальное свойство Swift. Они играют важную роль в стандартных библиотеках Swift и являются обычным способом абстракции кода. Во многом они похожи на интерфейсы в других языках программирования.

В этом руководстве мы представим вам подход к разработке приложений, называемый «протокольно-ориентированным программированием», который стал практически основным в Swift. Это действительно то, что вам необходимо уяснить при изучении Swift!

В этом руководстве вы:

  • поймёте разницу между объектно-ориентированным и протокольно-ориентированным программированием;
  • разберётесь со стандартной реализаций протоколов;
  • научитесь расширять функционал стандартной библиотеки Swift;
  • узнаете, как расширять протоколы при помощи дженериков.
Читать дальше →

Использование перехватов операций для бэкапа файлов в macOS “на лету”

Время на прочтение6 мин
Количество просмотров4.2K
Привет, Хабр! Меня зовут Денис Копырин, и сегодня я хочу рассказать о том, как мы решали проблему бэкапа по требованию на macOS. На самом деле интересная задача, с которой я столкнулся в институте, выросла в итоге в большой исследовательский проект по работе с файловой системой. Все подробности – под катом.

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

Visual Studio for Mac: управляйте своей IDE с помощью клавиш

Время на прочтение3 мин
Количество просмотров4.4K
Великие дебаты в области вычислительной техники имеют одну общую тему. Будь то противостояние табов и пробелов или Vi и Emacs, поток, связывающий эти дебаты вместе, —эффективность использования клавиатуры. Правда в том, что, когда мы тратим массу часов, работая программах, использование горячих клавиш становится для нас чем-то автоматическим, такой же мышечной памятью, какой обладают великие пианисты или спортсмены.

Если вы вдруг дадите виртуозному пианисту пианино, где клавиши вдвое шире, а клавиши диез/бемоль находятся ниже, а не выше естественных клавиш, то ему придется постараться, чтобы воспроизвести даже самые простые мелодии, пока он изучает новую аранжировку. Аналогично, когда речь заходит о сочетаниях клавиш в вашей любимой IDE, любое изменение может быстро дезориентировать. К счастью, Visual Studio for Mac предлагает обширные возможности настраивания привязок клавиш, которые позволяют настраивать сочетания клавиш по своему вкусу.

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

Чистим Dock и делаем приложение без xCode

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


Мы сделаем программу для запуска приложений из панели статуса.
Вам понадобится terminal, Swift версии 3.1 или выше и любой текстовый редактор.
Я проверял работу на macOS Sierra 10.12.6 и macOS Catalina 10.15.
Читать дальше →

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

Делаем кроссплатформенное нативное десктоп приложение на Angular

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

angular-nodegui


Как вы уже наверно знаете, Angular уже есть во многих платформах:



Ну и, конечно, здесь не хватало десктопа (не будем пока про Electron).

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

Есть ли вирусы под Мас?

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


Есть ли «вирусы» под Mac? Если совсем коротко, то скорее да, чем нет. Хотите узнать, почему такой немного странный ответ?
Читать дальше →

Xcode 11 и XCFrameworks: новый формат упаковки фреймворков

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


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


В случае разработки под платформу iOS, да и в целом, экосистему Apple, есть два варианта подключать библиотеки в качестве зависимостей:


  1. Собирать их каждый раз при сборке приложения.
  2. Собирать их заранее, используя уже собранные зависимости.

При выборе второго подхода становится логичным использовать CI/CD системы для сборки библиотек в готовые к употреблению артефакты.


Однако, необходимость собирать библиотеки под несколько платформ или архитектур процессора в экосистеме Apple, зачастую, требует проводить не всегда тривиальные операции, как при сборке библиотеки, так и конечного продукта, который её использует.


На этом фоне, было сложно не заметить и крайне интересно изучить, одно из нововведений от Apple, представленное на WWDC 2019 в рамках презентации Binary Frameworks in Swift — формат упаковки фреймворков — XCFramework.


XCFramework имеет несколько преимуществ, в сравнении с устоявшимися подходами:


  1. Упаковка зависимостей под все целевые платформы и архитектуры в единый bundle из коробки.
  2. Подключение bundle в формате XCFramework, как единой зависимости для всех целевых платформ и архитектур.
  3. Отсутствие необходимости в сборке fat/universal фреймворка.
  4. Нет необходимости избавляться от x86_64 слайсов (slice) перед загрузкой конечных приложений в AppStore.

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

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

Avalonia мои за и против

Время на прочтение3 мин
Количество просмотров13K
Я очень много пишу про Авалонию и часто восторгаюсь этим фреймворком, но, как и у любой технологии, у нее есть свои достоинства и недостатки, о них и хотелось бы поговорить.

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

Как подписывать приложения для macOS Catalina 10.15

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

[Прим. пер.: переведя вызвавший широкое обсуждение на Хабре пост, я заинтересовался новыми правилами для разработчиков ПО, введёнными компанией Apple. В этой статье рассказывается о личном опыте освоения правил одним из разработчиков игр.]

Введение


В новой версии macOS Apple сделала обязательными некоторые требования к приложениям, которые раньше были рекомендациями: 64-битные исполняемые файлы, подписывание и нотаризация. Не удовлетворяющие этим требованиям приложения больше запускаться не будут.

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

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

Я только что закончил разбираться с тем, как реализовать соответствие этим требованиям для моей игры Airships: Conquer the Skies. Airships работают на Java, а потому требуют ещё и JVM, но в целом всё остальное будет применимо для большинства разработчиков.

Вот что я узнал о подписывании и нотаризации приложения для Mac, которое не было скомпилировано непосредственно Xcode. Учтите, что информация получена из моих собственных исследований и может быть точной не на 100%. Вопросы и поправки приветствуются.
Читать дальше →

Как я не смог включить MacBook из-за удаления TeamViewer

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

Тем кому лень читать полностью, в конце я добавил простое решение.

Вчера я столкнулся с совершенно неожиданным стечением обстоятельств во время очередного обновления MacOS. Я вообще очень люблю обновления ПО, всегда хочется посмотреть на новые возможности той или иной программы. Когда летом я увидел, что можно скачать и поставить MacOS 10.15 Catalina Beta, я сознательно не стал этого делать, понимая, что beta может содержать значительное количество багов, а MacBook мне нужен ежедневно по работе. И вот вчера я увидел долгожданное уведомление.

image

Я с радостью нажал кнопку «Обновить сейчас» и стал ждать загрузки. Пока у меня скачивалось обновление, я решил сделать что-нибудь «полезное», а именно поудалять какой-нибудь ненужный хлам с ноута. И в этот раз под категорию хлам у меня попал TeamViewer.

Проблема тут вовсе не в TeamViewer.
Читать дальше →

Представляем управление пакетами NuGet на уровне решения в Visual Studio для Mac

Время на прочтение2 мин
Количество просмотров2.9K
Visual Studio 2019 для Mac версии 8.3 поставляется со многими новыми функциями, кратко изложенными в этом посте в блоге. Возможность управлять пакетами на уровне решения была одной из тех возможностей, которых большинству из вас не хватало в Visual Studio для Mac. Новый диспетчер пакетов NuGet уровня решения является одной из крутых новых функций Visual Studio 2019 для Mac версии 8.3.

Мы внесли улучшения, чтобы помочь вам легче находить пакеты. Это включает в себя улучшенный функционал при поиске новых пакетов, понимание того, какие пакеты уже установлены в вашем проекте, и поиск пакетов с доступными обновлениями. В этом посте мы сосредоточимся на функционале управления пакетами для решения. Однако большая часть функционала, включая установку, обновление и просмотр установленных пакетов, имеет аналогичный новый функционал и на уровне проекта.

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

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