Какой язык использовать для разработки интерфейсной части мессенджера?
Я пытаюсь разработать такую программу, как Windows Live Messenger, для развлечения и личного использования, используя Node.js для серверной части мессенджера, и у меня возникли два вопроса:
- Является ли Node.js хорошим выбором для бэкэнда?
- Какой язык (языки) я должен использовать для интерфейса?
Большое спасибо.
2 ответа
Язык бэкэнда не имеет значения вообще. Python, node.js, ruby, perl, C#, java, scala, golang, если вы предоставляете интерфейс, который может использоваться клиентом. (как правило, интерфейс веб-службы RESTful, но это не обязательно.)
Язык интерфейса зависит от целевой платформы. Вы должны использовать родной язык для клиентской платформы для максимально упрощенного процесса разработки. C# для Windows, Java для Android, Swift для IOS, JavaScript для веб-сайтов. Если вы хотите "написать один раз, запустить где угодно", рассмотрите React Native.
Но имейте в виду, что любая стратегия "однажды запусти куда угодно" будет преследоваться трудными для отладки кроссплатформенными ошибками, на практике почти всегда дешевле поддерживать клиента для каждой платформы, потому что легче отлаживать в нативном язык.
Другой альтернативой является Ruby. С помощью http://reactrb.org/ и rails вы легко создадите такую систему. На самом деле учебник на вышеуказанном сайте (в разделе документы / учебник) представляет собой простое приложение для чата.