Сандейфактс №3
Что нового в Teamup (для 1.1.0):
- Сообщение о новой версии вверху главного экрана, если доступно обновление.
- Выбор игры на отдельном экране и поиск игры из списка.
- Обложки у игр.
- Отображение любимой игры в профиле, если пользователь выбрал такую.
- Изменен внешний вид навигационной панели внизу.
- Исправлена работа уведомлений: теперь они работают.
Что нового в Teamup (для 1.1.0):
- Сообщение о новой версии вверху главного экрана, если доступно обновление.
- Выбор игры на отдельном экране и поиск игры из списка.
- Обложки у игр.
- Отображение любимой игры в профиле, если пользователь выбрал такую.
- Изменен внешний вид навигационной панели внизу.
- Исправлена работа уведомлений: теперь они работают.
🤯1
Сандейфактс №4
Что нового в Teamup (для 1.1.0):
- Выбор любимой игры на этапе регистрации. Ранее это можно было сделать только в настройках профиля, наверно поэтому многие и не знали что можно выбрать любимую игру.
- Исправлен баг с переключением статуса "в сети".
Следующий Сандейфактс №5 скорее всего будет последним для версии тимапа 1.1.0, после него будет выпущено обновление.
Что нового в Teamup (для 1.1.0):
- Выбор любимой игры на этапе регистрации. Ранее это можно было сделать только в настройках профиля, наверно поэтому многие и не знали что можно выбрать любимую игру.
- Исправлен баг с переключением статуса "в сети".
Следующий Сандейфактс №5 скорее всего будет последним для версии тимапа 1.1.0, после него будет выпущено обновление.
👍1
Плохой код лучше пустого файла
Будучи новичком в программировании, ты можешь задумываться о том, насколько хороший код пишешь.
Вот ты сделал крутой проект, все работает исправно, но под капотом - тьма тьмущая. Код сильно навороченный, сложный и непонятный. Структуры проекта нет, все написано чуть ли не в одном файле.
И это абсолютно нормально. У меня было то же самое. Бывало я даже полностью переписывал свой проект, потому что поддерживать его было уже невыносимо.
В программировании, как и любом другом деле, лучше сделать плохо, чем не сделать ничего. Плохой код лучше пустого файла. В следующий раз сделаешь нормально. А лучше вообще переписать то, что написано плохо.
В следующих постах я расскажу о лайфаках, которые позволят писать более красивый и понятный код.
Будучи новичком в программировании, ты можешь задумываться о том, насколько хороший код пишешь.
Вот ты сделал крутой проект, все работает исправно, но под капотом - тьма тьмущая. Код сильно навороченный, сложный и непонятный. Структуры проекта нет, все написано чуть ли не в одном файле.
И это абсолютно нормально. У меня было то же самое. Бывало я даже полностью переписывал свой проект, потому что поддерживать его было уже невыносимо.
В программировании, как и любом другом деле, лучше сделать плохо, чем не сделать ничего. Плохой код лучше пустого файла. В следующий раз сделаешь нормально. А лучше вообще переписать то, что написано плохо.
В следующих постах я расскажу о лайфаках, которые позволят писать более красивый и понятный код.
👍3
Как красиво проверить данные на валидность
Задача: проверить входные данные (почту, пароль и повторенный пароль) на валидность перед регистрацией. Перед нами два решения.
В первом случае мы используем обычный условный оператор if и строим ветвление. Если требование выполняется, мы идем дальше, иначе - пишем ошибку. Такой код будет работать, но он будет довольно навороченный. Можно с легкостью запутаться во всех этих ветвлениях.
Есть более изящный способ выполнить все проверки. Во втором примере мы, наоборот, проверяем данные на отсутствие корректности, и, если требование не выполняется, пишем ошибку и вовсе выходим из функции через оператор return: дальнейший код не выполняется. Как ты сам можешь заметить, такой код более понятный и приятный глазу.
В моем коде выполняется три проверки. Как ты думаешь, какое еще условие можно сюда дописать?
Задача: проверить входные данные (почту, пароль и повторенный пароль) на валидность перед регистрацией. Перед нами два решения.
В первом случае мы используем обычный условный оператор if и строим ветвление. Если требование выполняется, мы идем дальше, иначе - пишем ошибку. Такой код будет работать, но он будет довольно навороченный. Можно с легкостью запутаться во всех этих ветвлениях.
Есть более изящный способ выполнить все проверки. Во втором примере мы, наоборот, проверяем данные на отсутствие корректности, и, если требование не выполняется, пишем ошибку и вовсе выходим из функции через оператор return: дальнейший код не выполняется. Как ты сам можешь заметить, такой код более понятный и приятный глазу.
В моем коде выполняется три проверки. Как ты думаешь, какое еще условие можно сюда дописать?
Сандейфактс №5
Что нового в Teamup (для 1.1):
- Галочки "отправлено/прочитано" на сообщениях. Если одна галочка, сообщение просто отправлено, если две, оно прочитано собеседником (в чате) или, как минимум, одним членом команды (собственно в команде).
В ближайшие дни (а может и часы) будет выпущено обновление Teamup 1.1
Что нового в Teamup (для 1.1):
- Галочки "отправлено/прочитано" на сообщениях. Если одна галочка, сообщение просто отправлено, если две, оно прочитано собеседником (в чате) или, как минимум, одним членом команды (собственно в команде).
В ближайшие дни (а может и часы) будет выпущено обновление Teamup 1.1
This media is not supported in your browser
VIEW IN TELEGRAM
Опа-на!
Неожиданно выяснилась проблема: при заходе в команду приложение...просто вылетает!
Очень хорошо то, что я решил пробежаться по приложению перед релизом. В результате этого выявился баг, связанный с вылетом Teamup предположительно после попытки подключения к войсу. Причем на предыдущей версии 1.0 все работает исправно.
Что поделать, придется фиксить...
Неожиданно выяснилась проблема: при заходе в команду приложение...просто вылетает!
Очень хорошо то, что я решил пробежаться по приложению перед релизом. В результате этого выявился баг, связанный с вылетом Teamup предположительно после попытки подключения к войсу. Причем на предыдущей версии 1.0 все работает исправно.
Что поделать, придется фиксить...
Обновление Teamup 1.1
Всё, вроде как все проблемы исправил, можно выкатывать релиз.
Что нового:
- Возможность регистрироваться через почту и пароль.
- Звуковые сигналы после завершения формирования команды и при подключении к войсу.
- Шумоподавление в войсе.
- Выбор игры на отдельном экране и поиск игры из списка.
- Обложки у игр.
- Отображение любимой игры в профиле, если пользователь выбрал такую.
- Исправлен баг с переключением статуса "в сети".
- Галочки "отправлено/прочитано" на сообщениях.
Скачать Teamup можно как обычно
с сайта, Rustore, облака или файлом снизу.
Всё, вроде как все проблемы исправил, можно выкатывать релиз.
Что нового:
- Возможность регистрироваться через почту и пароль.
- Звуковые сигналы после завершения формирования команды и при подключении к войсу.
- Шумоподавление в войсе.
- Выбор игры на отдельном экране и поиск игры из списка.
- Обложки у игр.
- Отображение любимой игры в профиле, если пользователь выбрал такую.
- Исправлен баг с переключением статуса "в сети".
- Галочки "отправлено/прочитано" на сообщениях.
Скачать Teamup можно как обычно
с сайта, Rustore, облака или файлом снизу.
RuStore
Teamup в каталоге RuStore
🚀 Teamup — Быстрый поиск тиммейтов по нажатию одной кнопки 📱 Скачайте бесплатно на смартфон, ТВ или планшет. Официальная версия (1.1.0) в RuStore — до 1 тыс установок, рейтинг 0,0★. Безопасно для 12+.
Сандейфактс №6
Что нового в Teamup (для 1.2):
- Создание публичных команд (может вступить кто угодно).
- Выбор своей любимой игры и изменение аватарки прямо на экране профиля.
Что нового в Teamup (для 1.2):
- Создание публичных команд (может вступить кто угодно).
- Выбор своей любимой игры и изменение аватарки прямо на экране профиля.
Сандейфактс №7
Что нового в Teamup (для 1.2):
- Прикрепление игры к команде.
- Исправлена проблема с выбором картинок (аватарок, вложений в сообщения, иконок команд).
- Доработаны публичные команды.
Что нового в Teamup (для 1.2):
- Прикрепление игры к команде.
- Исправлена проблема с выбором картинок (аватарок, вложений в сообщения, иконок команд).
- Доработаны публичные команды.
Сандейфактс №8
Нового функционала пока нет, исправляем существующие проблемы.
Что нового в Teamup (для 1.2):
- Исправляем проблему с функционалом, работающим в реальном времени (чат, галочки "прочитано/не прочитано", автоматическое перенаправление в команду после поиска)
- Исправляем проблему с неполной загрузкой данных при входе в приложение
Нового функционала пока нет, исправляем существующие проблемы.
Что нового в Teamup (для 1.2):
- Исправляем проблему с функционалом, работающим в реальном времени (чат, галочки "прочитано/не прочитано", автоматическое перенаправление в команду после поиска)
- Исправляем проблему с неполной загрузкой данных при входе в приложение
👍1
Лучше длинные, понятные названия, чем короткие и непонятные.
При названии переменных, классов функций лучше думать наперед.
Назвав переменную коротким непонятным именем, ты возможно сэкономишь пару секунд (а то и доли секунд) при ее использовании в коде. Также меньше клавиш придется нажимать, что тоже удобно.
Но вернувшись к своему проекту позже, ты обнаружишь, что написал абсолютно нечитабельный код. Придется вспоминать, что ты имел ввиду под этими названиями. Также стоит понимать, что в будущем (а может уже и сейчас) ты будешь работать в команде с другими программистами. И им будет трудно понимать твой код, если ты будешь плохо называть свои переменные.
Поэтому не поленись потратить пару секунд и подумать над именем своей новой переменной, функции или объекта. Лично я иногда даже захожу в переводчик, чтобы правильно назвать объект на английском (я надеюсь ты не называешь переменные на русском).
При названии переменных, классов функций лучше думать наперед.
Назвав переменную коротким непонятным именем, ты возможно сэкономишь пару секунд (а то и доли секунд) при ее использовании в коде. Также меньше клавиш придется нажимать, что тоже удобно.
Но вернувшись к своему проекту позже, ты обнаружишь, что написал абсолютно нечитабельный код. Придется вспоминать, что ты имел ввиду под этими названиями. Также стоит понимать, что в будущем (а может уже и сейчас) ты будешь работать в команде с другими программистами. И им будет трудно понимать твой код, если ты будешь плохо называть свои переменные.
Поэтому не поленись потратить пару секунд и подумать над именем своей новой переменной, функции или объекта. Лично я иногда даже захожу в переводчик, чтобы правильно назвать объект на английском (я надеюсь ты не называешь переменные на русском).
Что выступает в качестве сервера для Teamup?
Для создания голосовой связи в приложении мне понадобился свой сервер. Он должен был быть тихим и небольшим, так как работать должен был дома. Raspberry PI идеально подошла для таких задач.
Raspberry PI 4 - это маленькая зеленая палата, которая, представляет собой полноценный компьютер. На ней можно запустить любую операционную систему, например, специально для нее созданную Raspberry Pi OS на базе Debian.
Она поддерживает любое ПО, которое есть на линуксах. Я без проблем смог поставить на нее Docker и запустить в нем Livekit для обеспечения голосовой связи в Teamup.
Вообще, портативный домашний сервер - это лишь один из примеров использования данной штуковины. Из Raspberry pi можно сделать и ретро консоль, и умный дом, и даже свою Яндекс Алису. Как говорится, все ограничивается лишь вашим воображением.
Более подробно про то, как я делал сервер, можно посмотреть в новом видео на канале.
СМОТРЕТЬ
Для создания голосовой связи в приложении мне понадобился свой сервер. Он должен был быть тихим и небольшим, так как работать должен был дома. Raspberry PI идеально подошла для таких задач.
Raspberry PI 4 - это маленькая зеленая палата, которая, представляет собой полноценный компьютер. На ней можно запустить любую операционную систему, например, специально для нее созданную Raspberry Pi OS на базе Debian.
Она поддерживает любое ПО, которое есть на линуксах. Я без проблем смог поставить на нее Docker и запустить в нем Livekit для обеспечения голосовой связи в Teamup.
Вообще, портативный домашний сервер - это лишь один из примеров использования данной штуковины. Из Raspberry pi можно сделать и ретро консоль, и умный дом, и даже свою Яндекс Алису. Как говорится, все ограничивается лишь вашим воображением.
Более подробно про то, как я делал сервер, можно посмотреть в новом видео на канале.
СМОТРЕТЬ
👍1