JavaRush /Курси /Java Syntax Zero /Мобільна програма JavaRush

Мобільна програма JavaRush

Java Syntax Zero
Рівень 4 , Лекція 2
Відкрита

1. Проблема всіх мобільних програм

Довгий час студенти JavaRush просили мобільну програму для навчання. І ми їх розуміємо — у сучасному світі телефон набагато доступніший, ніж повноцінний комп'ютер із IntelliJ IDEA. Значно простіше протягом дня виділити кілька разів по 15 хвилин, ніж сісти за навчання на 1–2 години.

Навчання на JavaRush було б значно ефективнішим, якби ми придумали, як використовувати всі наявні можливості. От тільки як увіпхнути в телефон IDE?

Ми довго вважали, що це неможливо в принципі. Це підтверджувалося й на прикладі конкурентів: з усіх своїх комп'ютерних програм, які навчають програмування, вони викинули написання коду й замінили його на тести.

Проте на початку 2019 року ми зробили прорив. Замість того, щоб копіювати великі IDE, ми вирішили зосередитися на проблемах, з якими стикаються користувачі під час написання коду. Наше рішення ґрунтувалося на декількох простих принципах:

  • Читання коду важливіше за написання коду
  • Введений код важливіший за спосіб його введення
  • Керування курсором має бути простим та інтуїтивно зрозумілим
  • Немає одного-єдиного правильного способу розв'язання задачі.

2. Наше рішення

Нам вдалося створити досить гарне рішення, яке відповідало всім принципам.

Перегляд коду

По-перше, ми вирішили розділити режим перегляду коду й режим редагування коду. У режимі перегляду коду проведення пальцем слугує не для переміщення курсору, а для прокручування тексту. Та й переглядати код зручніше, коли клавіатура не займає пів екрана.

Підказки

Для кожної задачі було створено набір ключових слів, з яких користувач міг би скласти розв'язання. Тепер не має потреби набирати слова літеру за літерою: можна просто тицяти слова-підказки в правильному порядку, і все. Натомість завжди можна перемкнутися на звичний спосіб набору коду: з клавіатури по літерах.

Слів-підказок має вистачати для того, щоб користувач міг написати свій варіант розв'язання задачі. Водночас їх не повинно бути надто багато: зайві слова просто заважатимуть. Якщо таких слів багато, їх слід розділити на категорії, якщо мало — відображати всі разом.

Ну і певна річ, слова-підказки мають бути унікальними для кожної задачі. Для кожної з 1500 задач, які є на JavaRush. Ми витратили два місяці тільки на вдосконалення алгоритму генерації підказок. І все одно потім довелося обробляти підказки для кожної задачі вручну.

Результат вражає, однак ми, мабуть, і надалі працюватимемо над його покращенням.

Курсор

Керування курсором заслуговує окремої розповіді. Пересувати курсор пальцем незручно. По-перше, палець закриває код, а по-друге, найчастіші дії з курсором — це його переміщення на 1–2 символи назад або вперед.

Ми створили спеціальну кнопку-джойстик, яка дає змогу керувати курсором, не закриваючи код. А ще додали спеціальні кнопки для посимвольного переміщення курсора. І все це для того, щоб, набираючи код, ви думали про код, а не про те, як же його таки набрати!


3. Огляд мобільної програми

Спочатку в нашій мобільній програмі було чотири розділи:

  • Курс Java
  • Задачі
  • Допомога
  • Групи

А тепер розкажемо про ці розділи докладніше.

Курс Java

У розділі «Курс Java» відображається список усіх рівнів JavaRush, згрупованих за квестами. Для кожного рівня відображається список його лекцій. Ви легко можете перейти до останньої лекції: для цього є спеціальна кнопка «Почати/Продовжити».

Задачі

У цьому розділі відображаються всі задачі, які доступні користувачеві. Їх розподілено на три списки: «нові задачі», «задачі в прогресі» та «розв'язані задачі».

Після дотику до певної задачі відкривається мобільне середовище розробки MobileIDE, де ви можете переглянути умову задачі, вимоги до неї та код, а також написати своє розв'язання. Надіслати задачу на перевірку також можна одним дотиком.

Допомога

У цьому розділі відображаються запитання щодо задач. Ви можете переглядати запитання інших користувачів і написані ними коди розв'язання, давати їм поради й рекомендації. Робити це майже так само просто, як і на сайті.

До того ж, ви можете ставити свої запитання щодо задач. Ваш код буде додано до запитання автоматично: нічого нікуди копіювати не потрібно.

Групи

У розділі «Групи» ви можете приєднатися до тематичних груп, а також читати й публікувати статті. Набирати текст у телефоні не дуже зручно, тому зараз цей розділ призначений здебільшого для читання матеріалів, розміщених у вебверсії розділу.

Станом на грудень 2020 року в мобільній програмі вже 11 розділів.

Коментарі (16)
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ
Viktoriia Kramskaia Рівень 4
15 липня 2025
для айфону немає додатку ?
Зепп Бранниган Рівень 1 Moderator
17 липня 2025
Наразі додаток для iOS в стані розробки.
Volodymyr Burbeza Рівень 6
13 жовтня 2024
Цікаво чому ця лекція не на початку, а на четвертому рівні?
theylovevalera Рівень 51
12 березня 2023
От тільки розділу "Ігри" в додатку немає(
Roma Chernesh Рівень 16
21 листопада 2022
Дуже зручний мобільний додаток! Спасибі, що надали можливість бета-тестерам безкоштовно їм скористуватися:) Розумію, що через рік-два вже вийде версія на айфони, а потім цей атракцион небаченної щедрості закінчиться. Тому, як той, хто ще встиг спробувати, скажу: ВСЕ ДУЖЕ КРУТО
Владислав Рівень 1
24 травня 2025
так і не вийшла.
Костянтин Рівень 1
29 січня 2022
А як можна об'єднати акаунт у браузері з акаунтом на мобіле?
Вадим Рівень 4
16 лютого 2022
якщо маєте Premium доступ на ноуті, то скачуєте додаток на смарт, входите під своїми даними з ноута і вуаля. Маєте вільний доступ на ноуті та смарті. А якщо робили підписку на Mobile Premium, то тут вже складніше. В мене була така ситуація, але власники Javarush вчасно підсказали що і як зробити.
Daryna Рівень 6
12 жовтня 2021
додаток тільки для андроіда?
Зепп Бранниган Рівень 1 Moderator
12 жовтня 2021
Додаток для iOS наразі у розробці.
16 листопада 2022
есть новости?)
Зепп Бранниган Рівень 1 Moderator
17 листопада 2022
На жаль, додаток все ще не готовий до релізу.
Timmofeii Рівень 9
3 вересня 2023
есть новости?)
littlis Рівень 12
8 листопада 2023
а зараз?)
Oksana V. Рівень 4
14 липня 2024
схоже, що розробка затяглася
1 березня 2025
сильно так затяглася))))