LINUX.ORG.RU

Избранные сообщения bvn13

Как закодить ИИ?

 

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

bool Game::Move_UpAI(int i,int j)
{
	if (i != 0 && Matrix[i - 1][j] == 0)
	{
		Matrix[i - 1][j] = Matrix[i][j];
		Matrix[i][j] = 0;
		ChessY[Matrix[i][j] - 1] += 0.2;
		std::cout << "MoveUp AI" << std::endl;
		return true;
	}
	else
		return false;
}
void Game::ReccurentWalk(int numbernotuse)
{
	current = -1, currentI = -1, currentJ = -1;
	for (int i = 10; i < 18; i++)
		if (!ai[i] )
		{
			current = i;
			if (current == numbernotuse)
				continue;
			break;
		}
	for (int i = 0; i < 8; i++)
		for (int j = 0; j < 8; j++)
			if (Matrix[i][j] == current)
			{
				currentI = i;
				currentJ = j;
				break;
			}
	if (!Move_UpAI(currentI, currentJ))
		if(!Move_LeftAI(currentI, currentJ))
		{
			ReccurentWalk(current);
		}
	//	Move_LeftAI(currentI, currentJ);
}
void Game::AI()
{
	if (secondplayer)
	{
		secondplayer = false;
		firstplayer = true;
		ReccurentWalk(-2);
		if (currentI == 0 && currentJ == 0)
		{
			ai[9] = true;
			ReccurentWalk(9);
		}

bad_master
()

Добро пожаловать в Сити 17!

 , , ,

Так получилось, что на днях мне наконец доставили Valve Index, предзаказанный ещё в начале марта. Как раз к выходу нативной линуксовой версии Half-Life: Alyx!

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

( читать дальше... )

im-0
()

SMR: новая технология записи делает HDD непригодными для работы в RAID

 , ,

Группа Hardware and Drivers

Для увеличения плотности записи производители HDD перешли к технологии SMR (Shingled Magnetic Recording).

К сожалению, новая технология мешает использовать диски в составе RAID. И что ещё хуже, производители никак не отмечают использование SMR в спецификации на HDD.

Будьте внимательны при выборе жестких дисков.

источники:

>>> Подробности (habr.com)

router
()

Half-Life: Alyx стала доступна для GNU/Linux

 , , ,

Группа Игры

Half-Life: Alyx это VR-возвращение компании Valve к серии Half-Life. Это история о невозможной борьбе против инопланетной расы известной как Комбайн, происходящей между событиями Half-Life и Half-Life 2. Играя за Аликс Вэнс, вы – единственный шанс человечества на выживание.

Версия для Linux использует исключительно Vulkan-рендерер, поэтому необходима соответствующие видеокарта и драйверы поддерживающие этот API. Valve рекомендует использовать AMD графику и RADV драйвер для наилучших результатов.

Также стали доступны официальные инструменты разработчика и соответственно Steam Workshop, куда пользователи могут загружать модификации и опциональный режим Vulkan для Windows. Неделями ранее, был выпущен саундтрек первой главы игры.

>>> Подробности (steampowered.com)

a1batross
()

Нужен совет, как организовать домашнее облако

 , , , ,

Доброй ночи.

Есть сильное желание разрулить бардак с файлами, который сейчас творится у меня на компьютерах. Сделать синхронизацию, регулярные бекапы и прочее. Пробовал пользоваться публичными облаками, но не зашло - Google Drive, OneDrive не поддерживают Linux, а отечественным сервисам нет доверия. Есть постоянно работающая машина, хочется организовать на ней файлопомойку. Я бы разделил все файлы на три категории:

  1. Небольшие файлы типа документов, которые нужно синхронизировать между всеми машинами
  2. Большие файлы, которые синхронизировать не нужно, но должна быть возможность оперативно достать их при необходимости. Храниться будут на отдельном диске.
  3. Архивы и бекапы, доступ к которым нужен крайне редко и которые хранятся в публичном облаке в зашифрованном виде (спасибо, rclone)

Из того, что уже успел попробовать:

  • Nextcloud. То, что он тормозит, это ладно. Десктопный клиент уже второй раз отказывается синхронизироваться. Первый раз это был явный баг с поддержкой HTTP/2, который довольно оперативно пофиксили, во второй раз просто молча отказывался что-либо делать. Штатный конфиг MySQL постоянно что-то писал на диск, терзая SD-карту. Плагин для работы с внешними хранилищами дико глючный, с WebDAV отказывается показывать размеры файлов и дату изменения, с FTP через раз выдает ошибку при попытке выгрузки файла. Понятно, что можно дальше разбираться и дебажить, но в какой-то момент накипело, начал искать альтернативы.
  • Seafile. Не поддерживает внешние хранилища. Для последней версии нет сборки под ARM. Попробовал собрать сам, система сборки работает на каких-то костылях и вызывает ощущение фрустрации. Пришлось вставлять несколько workaround, чтобы нормально заработало за nginx. В общем, доверия этому инструменту у меня нет.
  • Syncthing. Та вещь, которой пользовался несколько лет до того, как решил привести всё в порядок. Работала сравнительно стабильно, но временами всё же тупила - либо не видела изменения, либо не торопилась отправлять их другим пирам, либо внезапно останавливала передачу. Это было в районе версии 1.2, если кто-то может подтвердить, что за это время подтянули стабильность, буду очень благодарен. Ну и другой важный минус - нужно где-то отдельно искать веб-интерфейс для оперативного доступа, кроме filestash пока что ничего не нашёл.
  • Resilio Sync. Долгое время не решался пробовать, ограничивался Syncthing. На днях попробовал, вроде работает. Если ситуация со стабильностью лучше, чем у Syncthing, буду пользоваться этой утилитой. Та же проблема с веб-интерфейсом, про которую писал выше.

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

h31
()

Опубликованы видео со всех конференций ontico 2019 + TeamLeadConf 2020

 , , , ,

Группа Конференции и встречи

записи с предыдущих конференций можно найти на их канале в youtube

router
()

KDE и сенсорный экран

 , ,

Всем привет. Имеется ноутбук с сенсорным экраном – Dell E7250. Дистрибутив – Manjaro, последнее ядро 5.5, версия Plasma 5.17.5.

Сенсорный экран прекрасно работает, но такое чувство, что он просто эмулирует тачпад. То есть, им можно перемещать курсор, но, например, прокрутка страницы проведением по ней пальцем не работает.

Можно ли настроить KDE таким образом, чтобы поведение тачскрина было аналогично его поведению в Android или Windows? Чтобы работали жесты, мультитач и т.п.?

Alden
()

Список лучших открытых программ для творчества (2016)

 , creativity, ,

Группа Open Source

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

Основные программы

  • GIMP — редактор растровой графики;
  • Inkscape — редактор векторной графики;
  • Scribus — настольная издательская система;
  • MyPaint — виртуальный «холст» для художников;
  • Blender — полигональный 3D-редактор;
  • Krita — редактор растровой графики, хорошо подходящий для рисования.

Редакторы видео

  • Kdenlive;
  • Flowblade;
  • Pitivi;
  • Shotcut;
  • OpenShot.

Утилиты

  • SwatchBooker — создание и и конвертирование цветовых палитр;
  • GNOME Color Manager — модуль управления цветом;
  • GNOME Wacom Control — настройка планшетов Wacom;
  • Xournal — создание «пометок на полях»;
  • PDF Mod — простой редактор PDF;
  • SparkleShare — надстройка к Git для совместной работы над проектами.

Обработка фотографий

  • darktable — инструмент сортировки и поточной обработки фотографий в файлах RAW;
  • Entangle — удалённый спуск затвора на DSLR, подключённых к ПК;
  • Hugin — сборка фотопанорам.

2D-анимация

  • Synfig Studio;
  • Blender Grease Pencil (входит в состав Blender);
  • Krita.

Редакторы аудиофайлов и инструменты для создания музыки

  • Audacity — многодорожечный аудиоредактор;
  • Ardour — цифровая рабочая станция для звукозаписи (DAW);
  • Hydrogen — драм-секвенсер;
  • Mixxx — программа для DJ;
  • Rosegarden — MIDI-секвенсер с нотным редактором;
  • MuseScore — нотный редактор.

Специализированные инструменты

  • MakeHuman — создание трёхмерных моделей людей и человекоподобных персонажей;
  • Natron — инструмент композитинга для создания спецэффектов;
  • FontForge — редактор шрифтов;
  • Valentina — создание выкроек одежды;
  • Calligra Flow — создание диаграмм.

P. S. А что используете вы для воплощения своего творческого потенциала?

>>> Подробности (opensource.com)

atsym
()

Состоялся релиз Fedora 32!

 ,

Группа Red Hat

Fedora — свободный дистрибутив GNU/Linux, разрабатываемый при поддержке компании Red Hat. Этот релиз содержит большое количество изменений, в числе которых обновление следующих компонентов:

  • Gnome 3.36
  • GCC 10
  • Ruby 2.7
  • Python 3.8

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

Также, в Fedora Workstation включен по умолчанию EarlyOOM, который должен положительно повлиять на ситуации, связанные с нехваткой оперативной памяти.

Скачать новый дистрибутив, а также выбрать подходящую редакцию вы можете по ссылке: https://getfedora.org/

Для обновления с 31 версии необходимо выполнить в терминале следующие команды:

sudo dnf upgrade --refresh
sudo dnf install dnf-plugin-system-upgrade
sudo dnf system-upgrade download --releasever=32
sudo dnf system-upgrade reboot

>>> Подробности (fedoramagazine.org)

r0ck3r
()

Очень тихий звук в Bluetooth наушниках на максимальной громкости.

 , , , ,

Привет, ЛОР. Продолжаю плясать на граблях Bluetooth гарнитуры и убунты. В прошлый раз Вы мне очень помогли, надеюсь на Вас и сейчас, ибо советы в гугле закончились.

Дано: Ubuntu 20.04 и Huawei Freebuds 3, цепляются по Bluetooth стандартно, протокол A2DP, проблема: Очень тихий звук, даже на максимальной громкости. При сопряжении с телефоном максимальная громкость намного выше, так что проблема точно где-то в связке именно с ноутбуком. Советы из гугла покрутить настройки пульсы ничего не дали, идеи закончились. Заранее всем спасибо за ответы.

В прошлый раз очень помогли, потому скастую и сюда: xaizek и cvv

Jefail
()

Куда уйти от ext4 ?

 ,

Основная причина - фиксированное количество inodes.
В процессе работы может быть много мелких файлов.
Заранее задать inodes при создании ФС больше на порядок - не вариант, да и не нравится мне эта концепция фиксированного значения.

Почитываю про btrfs, не совсем понял её поведение при hard reset, а он может быть, примем как условие, ups не предлагать.

x905
()

Вред 5G. С цифрами и ссылками на санитарные нормы

 

Вот человек озаботился и сопоставил http://fdd5-25.net/publications/?p=4690#more-4690

Скажу прямо. Для того чтобы доказать или опровергнуть вредность 5G нам не нужно поминать масонов, рептилойдов, либо же Билла Гейтса. Достаточно обратиться к физике и государственным санитарным нормативам. Так как все величины и переменные заранее известны. Поэтому, пользуясь научным методом сравнительного анализа даже в формате маленькой публикации можно разобраться в этой запутанной истории.

Кстати, не знал, что

Владельцы социальных медиа ввели цензуру на обсуждение проблематики стандарта 5G на подведомственных им площадках.

Это в любом случае прэлэстно.

praseodim
()

Механических клавиатур тред

 ,

Механика вечная, говорили они. Миллионы нажатий, говорили они.

После трёх лет работы, Gateron Brown стали пропускать нажатия.
Похоже на какое-то засорение, т.к. через день-два восстанавливается нормальная работа.
Три или четыре свича так за последние два месяца.

Выглядит как отсутствие реакции, пока не вгонишь клавишу до дна. И тогда может тоже не сработать. Пробовал дуть, как-то не очень помогает. Вроде и условия хорошие по чистоте: клава задвигается в стол. Но всё равно вот так.

Чтобы было что-то, пока думаю на что апгрейдиться, побежал в ближайший интернет-магазин и купил не глядя самую дешёвую механику со съёмным кабелем.
Ей оказалась Havit/Volcano TKL. На удивление, бомж-level механики за прошедшее время очень подрос. Свичи не нонейм, а Kailh Blue Low Profile, на кликбарах. Стабы не дребезжат вообще (!), только левый шифт чуть-чуть.

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

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

Минусы: пробел немного тяжеловат, дешманские laser-etched капы, которые быстро отполируются, киберкотлетическая подсветка, нет управления плеером.

За ~$50 из локального магаза, это отлично.

Теперь вот думаю, на что переехать. Хотелось бы остаться на Gateron Brown: всё-таки пока они работают, они прекрасны.
Думаю в сторону досок с заменяемыми свичами: можно будет держать пакетик запасных и менять по мере появления глюков.
Из дёшево и сердито вижу GMMK TKL, но ещё один скелет как-то не хочется.

Что скажете?

aidaho
()

в арче не думают?

 ,

[user@myarch ~]$ pacman -Ss doom
[user@myarch ~]$

ни chocolate-doom, ни prboom(+), ни gzdoom, ни doom shareware wad :(

первый раз такое вижу в Linux (*BSD... да даже в kolibrios есть первый дум!) дистрибутиве за последние 20 лет

вот и дожили

(да, в aur что-то такое есть, но aur далекоооо не так удобен, как реп, я aur не считаю. хотя какой-нибудь думец придётся собирать)

buratino
()

Опубликован полностью свободный проект прибора ИВЛ AmboVent

 , , ивл, ,

Группа Open Source

https://1nn0v8ter.rocks/AmboVent-1690-108
https://github.com/AmboVent/AmboVent

Copyright ©2020. THE AMBOVENT GROUP FROM ISRAEL herby declares: No Rights Reserved. Anyone in the world have Permission to use, copy, modify, and distribute this software and its documentation for educational, research, for profit, business and not-for-profit purposes, without fee and without a signed licensing agreement, all is hereby granted, provided that the intention of the user is to use this code and documentation to save human lives anywhere in the world. For any question, contact dreliram@gmail.com


Речь идет о базовом и дешевом аппарате стоимостью всего 500 долларов. Его цель — поддержание или спасение жизни в случае отсутствия более продвинутого оборудования под рукой. Эти аппараты предназначены в основном для стран третьего мира и на случай глобальных катастроф.

В основе нового прибора находится насос амбо с автоматическим приводом и «умной» компьютерной системой. Аппарат был разработан всего за 10 дней группой инвесторов и сотрудников университетов под руководством д-ра Давида Алькахера. Вся информация о приборе открыта для разработчиков и инженеров всего мира. Проектная группа уже работает с заинтересованными сторонами из 20 стран.

Испытания нового аппарата проводил профессор Йоав Минц, руководитель Центра инноваций хирургической роботики в «Хадассе» и исследователь Еврейского университета.

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

Профессор Минц описал ход клинических опытов: «Мы усыпили свинью и ввели трубку аппарата AmboVent в легкие животного. Мы использовали свиней, потому что их величина, анатомическое строение тела и кровеносная система напоминают человеческие. Когда подопытное животное находилось в состоянии искусственной комы, мы проверяли единственную функцию новой машины — исправную подачу кислорода в легкие, без нанесения дополнительного вреда внутренним органам. Наш опыт показал, что машина с успехом прошла все испытания. Кислород поступал вовремя, в нужном объеме и поддерживал жизнь животного в течение продолжительного времени».

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

>>> Подробности (vesty.co.il)

bbk123
()

Mail.ru перезапускает мессенджер ICQ

 , , , ,

Mail.ru перезапускает популярный в прошлом мессенджер ICQ.

Теперь он называется ICQ New и использует машинное обучение для того, чтобы эффективнее следить за вами. Встроенный алгоритм Smart Reply анализирует привычки и профиль пользователя, и может отсылать максимально персонализированные автоматические ответы на сообщения. Теперь можно даже не заходить в чат - мессенджер ответит за вас сам. В остальном, ничего особенного, что могло бы хоть как-то пошатнуть авторитет существующих мессенджеров. Видимо, хайп на волне популярности Zoom не дает покоя, вот и Mail.ru захотел отхватить кусочек пирога, в очередной раз перезапуская ICQ.

https://meduza.io/news/2020/04/06/mail-ru-group-perezapustila-messendzher-icq

И главное, не забывайте, что…

https://habr.com/ru/news/t/358864/

notrobot
()

Ubuntu Sway

 , , ,

На свежеустановленной Ubuntu 20.04 решил попробовать Sway. Поставил больше из любопытства, сильно увлекаться настройками не хотелось. Но совсем без настраивания, конечно, не обошлось.

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

### Output configuration
#
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
output * bg #111111 solid_color

output LVDS-1 resolution 1920x1080 position 0,0

# You can get the names of your outputs by running: swaymsg -t get_outputs
Экранное разрешение сразу определилось верно, а вот фон «рабочего стола» я убрал, заменив на цвет как у верхней панели.

Настроил переключение раскладок по CapsLock и тачпад. Все это тоже достаточно подробно описано в файле config:

### Input configuration

input "2:14:ETPS/2_Elantech_Touchpad" {
    dwt enabled
    tap enabled
    natural_scroll enabled
    middle_emulation enabled
}

input "1:1:AT_Translated_Set_2_keyboard" {
    xkb_layout "us, ru"
    xkb_options "grp:caps_toggle,grp_led:caps"
}

# You can get the names of your inputs by running: swaymsg -t get_inputs
# Read `man 5 sway-input` for more information about this section.
Верхняя панель — waybar. Напоминает i3blocks для i3wm — каждый элемент является блоком со своим именем и своими параметрами. Для каждого блока можно назначать действия при нажатии кнопок мыши, а также при прокрутке (например, так можно регулировать громкость). Трей работал, там отображался nm-applet и update-notifier, но первый мне не нужен, а второй периодически падал, поэтому трей убрал. У многих блоков есть альтернативный режим отображения — по клику на часах отображается дата, а у блока с Wi-fi показывается состояние проводного подключения. Блок с индикатором батареи умеет мигать цветом при разрядке батареи до определенного значения. Для этих настроек у waybar есть отдельный конфиг, а для настройки цветов и шрифтов отдельный файл CSS. Индикаторы правой части панели, слева направо: раскладка, часы, блокировка хранителя экрана, громкость, сеть, батарея, яркость экрана.

Индикатор раскладки взял с Хабра и немного изменил, чтобы имена раскладок отображались не целиком. Сам скрипт kb_layout.sh (чтобы работал, нужно установить jq):

query='select(.change == "xkb_layout") | .input.xkb_active_layout_name | sub("English \\(US\\)"; "En") | sub("Russian"; "Ru")'
swaymsg -m -t SUBSCRIBE "['input']" | jq --unbuffered -r "$query"
Индикатор на панели, нужно вписать это в конфиг waybar, а в список модулей в нужном месте вписать «custom/kblayout»:
"custom/kblayout": {
    	"exec": "~/.config/sway/kb_layout.sh"
    	}
    },
Единственный нюанс — сразу после запуска Sway индикатор не отображается, появляется только после первого переключения раскладки. Что делать с этим, я не знаю, может, кто дополнит. Добавление в автозагрузку через exec не работает.

Цвета взял стандартные для Ubuntu, потому что серо-синие и черно-синие комбинации как-то приелись. Приложения используются из GNOME. Изначально в Sway темы GTK и значки настроены не были, настраивать их через файлы конфигурации было лень, поэтому запустил gnome-tweak и все настроил через него. Шрифт интерфейса — Ubuntu. Вообще, моим глазам настройки шрифтов нравятся только в Ubuntu. Не знаю, почему, но даже Kubuntu и Xubuntu для глаз неприятны, именно в плане рендеринга шрифтов. Если бы не это — наверное, попробовал бы Debian с i3wm. Для значков на верхней панели использовал Font Awesome.

Для уведомлений использую Dunst, но его почти не настраивал. Mako, который «Dunst для Wayland», у меня запускаться отказался, есть баг, но почему-то закрыт. Приложения запускаю через wofi. Sway запускаю через GDM3. Подсветка клавиатуры на ноутбуке заработала сразу, для яркости экрана установил brightnessctl и добавил себя в группу video, для громкости pactl:

bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% 
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
bindsym XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym XF86MonBrightnessUp exec brightnessctl set +5%

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

Silent
()

Обычная рабочка

 , ,

Почти дефолт, подкрашеный grc, а ну и в zsh пользуется fast-syntax-highliting вместо дефолта, т. к. умеет красить все еще и темы присутствуют.
Из рабочего — квм и докер.
Void, mate (на этот раз не стали ждать полгода — на следующий день после релиза обновили).
Sublime не купленный.

izmena
()

Замена скайпу для видеоконференций/вебинаров

 , , ,

Подкинули задачку - найти замену скайпу, поскольку он и раньше надоедал глюками до/после обновления, а сейчас еще и качество упало.

Деятельность образовательная, в идеале желателен вебинар (чтобы преподаватель видел всех, а все видели только преподавателя), но подойдет и просто видеоконференция. Желательно, конечно, что-то опенсорсное, но закрытое решение за вменяемые тоже подойдет.

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

Что смотрел-пробовал:

- Jitsi. Всё здорово, картинка бегает, но из-за софтового энкодинга/декодинга WebRTC процы «захлебываются» уже на трех абонентах

- BBB. Слишком монструозный, конские требования

- Apache Openmeetings. WebRTC со всеми вытекающими, плюс бета

- appear.in. Всё на английском, чуть получше Jitsi, но тоже начинает лагать после трех абонентов

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

araks
()

Фронт для браузерки - выбор подхода

 , ,

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

Задумал сделать фронт, отдельный для мобильных устройств, с применением современных супер-пупер технологий. Раньше у меня был выбор только между версткой для мобильных браузеров и разработкой мобильных приложений. Т.к. фронт нужен для браузерной игры, то выбор был очевиден. Но когда стал углубляться в тему, выяснил, что между этими двумя подходами есть еще два промежуточных. Для облегчения дальнейшего изложения условно назову браузерную верстку буквой А, а мобильные приложения буквой D, тогда:

  • A - браузерная верстка, использую Javascript, React
  • B - веб-приложения, имитирующие нативные (PWA), использую Ionic React
  • C - кроссплатформенные приложения, использую React Native
  • D - нативная разработка с помощью Java/Kotlin/Swift

Некоторые соображения при выборе:

  • по javascript/jQuery у меня есть какой-то опыт, по остальному нет, поэтому сейчас нужно выбрать, что изучать, но лучше, чтобы новые знания могли использовать предыдущий опыт;
  • смысл браузерной игры в том, что разработчику не нужно создавать специального клиента, который загружается на маркеты. А пользователям не нужно ничего скачивать, достаточно использовать браузеры;
  • хотелось бы интерфейса, удобного на мобильных устройствах, например, чтобы при движении пальца на экран выскальзывала навигационная панель сбоку;
  • кроссплатформенность предпочтительна, один раз сделал, на обеих платформах использовал

Пока склоняюсь к PWA, но нужно точно выяснить еще некоторые вопросы:

язык разработки javascript:

  • A - да
  • B - да
  • C - да
  • D - нет

кроссплатформенно:

  • A - да
  • B - да
  • C - да
  • D - нет

интерфейс, схожий с нативными приложениями:

  • A - нет
  • B - да
  • C - да
  • D - да

нужно выкладывать в маркеты (и платить за это):

  • A - нет
  • B - нет
  • C - да
  • D - да

нужно скачивать клиента:

  • A - нет
  • B - нет
  • C - да
  • D - да

сложность разработки в порядке возрастания

  • A
  • B
  • C
  • D

производительность в порядке возрастания

  • ?
  • ?
  • C
  • D

Все ли я правильно расписал, и верно ли склоняюсь к PWA? Может что-то еще упустил?

a-lexx
()