Ответы пользователя по тегу GraphQL
  • Как работает backend на примере стеков graphQL и Apollo, nodejs, express?

    @holllop
    Давайте по порядку разберем ваши вопросы:
    1) Если у вас есть данные в формате JSON и вы хотите их хранить в базе данных, то самый простой способ - это использовать базу данных, которая поддерживает JSON, например PostgreSQL с расширением JSONB. Вы можете сохранить JSON-данные в столбце с типом данных JSONB и индексировать поля внутри JSON для быстрого доступа к данным. Также можно использовать ORM (Object-Relational Mapping), такой как Sequelize или TypeORM, для работы с JSON в базе данных.
    2) GraphQL - это язык запросов и спецификация, которая позволяет клиентским приложениям запрашивать только необходимые данные с сервера. Однако, GraphQL также может использоваться в качестве API-сервера, который обрабатывает запросы от клиентов, возвращает запрошенные данные или выполняет мутации для изменения данных. Таким образом, GraphQL может использоваться как язык запросов, так и как средство создания API.(я сам часто смотрю в сторону Graph))
    3) Apollo - это набор библиотек для работы с GraphQL на клиентской и серверной стороне. Apollo Client - это библиотека для работы с GraphQL на стороне клиента, которая предоставляет инструменты для выполнения запросов к серверу GraphQL и управления данными в приложении. Apollo Server - это библиотека для работы с GraphQL на стороне сервера, которая позволяет создавать GraphQL API и обрабатывает запросы от клиентского приложения. Apollo Server и Apollo Client - это часто используемые инструменты для работы с GraphQL.
    4) API-сервер на основе GraphQL может быть реализован с использованием различных инструментов, таких как GraphQL.js, Apollo Server, Express.js или других. GraphQL сам по себе является спецификацией языка запросов, а Apollo Server и другие инструменты предоставляют реализацию этой спецификации для создания API-сервера. Node.js и Express.js могут использоваться как основа для создания и обработки запросов API-сервера на базе GraphQL.
    5) Apollo Server - это реализация спецификации GraphQL, которая предоставляет инструменты для разработки сервера GraphQL. Он обрабатывает запросы от клиентов, анализирует их и выполняет запросы к базе данных или другим источникам данных. Таким образом, Apollo Server является часто используемым инструментом для создания сервера GraphQL, который предоставляет мощные возможности для работы с GraphQL-схемой и запросами.
    Ответ написан
    Комментировать
  • Какой стек необходим для изучения GraphQL и Apollo?

    @holllop
    Ну смотри. Если ты собираешься изучить работу с GraphQL и Apollo, то нужны хотя бы базовые знания по Node.js, так как Apollo в значительной степени связан с экосистемой Node.js и использует его для создания серверов GraphQL.
    Теперь к основным темам которые желательно знать(список не полный тут только те, что я вспомнил):
    1. Express.js: Express является популярным фреймворком для Node.js, и его знание будет полезным при создании сервера GraphQL с помощью Apollo. Рекомендуется изучить основы Express.js, такие как маршрутизация, обработка запросов и ответов, и middleware.
    2. Работа с базами данных: Apollo и GraphQL часто используются для запросов и манипуляций данных в базах данных. Поэтому полезно знать основы работы с базами данных в Node.js, такие как использование ORM (например, Sequelize или Mongoose), выполнение запросов SQL или MongoDB и работу с моделями данных.
    3. Асинхронное программирование: В GraphQL и Apollo запросы часто выполняются асинхронно. Поэтому знание принципов асинхронного программирования в JavaScript, таких как использование промисов, асинхронных функций и async/await, будет полезным.
    4. REST API: Хорошее понимание понятий и принципов работы с REST API также может быть полезным при изучении GraphQL, так как GraphQL может быть использован как альтернатива REST API. Рекомендуется изучить основы RESTful API и понимание различий между REST и GraphQL.
    Это те что мне первые приходят на ум возможно дополню список
    Ответ написан
    3 комментария