Бекенд розробка - це як нижня частина айсбергу, яку користувач, зазвичай не бачить, але яка дуже важлива. Якщо ви плануєте розробити мобільний застосунок, то вельми часто виникає задача зробити серверну частину, з якою мобільний застосунок буде взаємодіяти. І ми добре знаємося на цьому. У своїй роботі ми використовуємо Ktor Framework. Дізнайтеся нижче як ми розробляємо RESTful сервіси і звʼяжіться з нами для більш предметного обговорення вашої задачі. Ми зможемо запропонувати вам оптимальне вирішення, оскільки маємо більш ніж 25 річний досвід автоматизації процесів.
Для розробки серверної частини ми надаємо перевагу Kotlin, оскільки ця мова має більш лаконічний синтаксис і, за нашим відчуттям, дозволяє зменшити кількість коду на 40% порівняно з Java. Менша кількість коду дозволяє легше орієнтуватися у великих проєктах. А їхня сумісність з Java дозволяє використовувати усе різномаїття бібліотек, що написані на Java.
Ktor надає гнучку архітектуру, що дозволяє легко налаштовувати та розширювати компоненти для створення RESTful API. Він інтегрується з іншими Kotlin-бібліотеками, забезпечуючи ефективну та швидку розробку. Крім того, Ktor підтримує асинхронне програмування, що робить його ідеальним для високонавантажених систем.
Для наших проєктів ми використовуємо вільну систему керування базами даних MySQL. Вона містить достатній фукціонал, щоб покрити основну масу задач для виробничіх застосунків. І в переважній більшості випадків достатньо використання безкоштовної версії MySQL, що дозволяє знизити загальну вартість рішення. Перевагою використання MySQL також є те, що готовий застосунок можна використовувати у Linux середовищі, а також запакувати у Docker контейнер
Ми розуміємо важливість тестування у розробці. Це дозволяє зменшити кількість помилок під час розвитку рішення, а значить менше збоїв у експлуатації і більш задоволений користувач. Тому у нас правило, що має бути покрито тестами більш ніж 70% коду. Це неодноразово допомагало нам виявити помилки до того, як система буде розгорнута на продуктивному середовищі. Так, тести сповільнюють загальний темп розробки, особливо на початку проєкту, але потім вони дозволяють уникнути годин і навіть днів роботи над пошуком неочікуваних помилок.Тому замовляючи розробку у нас ви можете бути певні, що якість продукту буде високою.
Для розробки ми використовуємо власний сервер GIT, що дозволяє працювати з приватним репозиторіями. Система версіонування коду відслідковує хто вніс зміни у код, а привʼязка змін до задач дозволяє також зрозуміти для чого і знайти усі повʼязані зміни. Це дозволяє, з однієї сторони, лідеру розробки виконувати контроль змін у коді (Code Review), а з іншої сторони розробник може в будь-який момент відкотитися до робочої версії, якщо внесені зміни призвели до "падіння" системи. Використання GIT репозиторія є складовою якості програмного коду і розробленого застосунку.
Ми маємо досвід роботи з Linux і Docker. Надаємо перевагу розгортанні готових застосунків саме на Linux. Оскільки ця система дозволяє застосунку працювати більш стабільно. Крім того використання Linux у роботі дозволяє знизити фінальну вартість рішення.
Стек технологій
Технології, які ми використовували в роботі
● Kotlin● Java● Ktor Framework● MySQL● PostgreSQL● MongoDB● Linux