Микроконсультации для быстрого и недорогого ускорения ваших проектов

У вас есть вопросы, а у нас есть ответы. Вот что такое Codementor! У меня был недавний опыт работы с клиентом на этой платформе, в котором Я смог оказать наибольшую помощь в кратчайшие сроки и, следовательно, за наименьшие деньги. Я называю эту службу Микроконсультация.

Я использую Codementor уже некоторое время и использовал его в основном для обучения людей один на один, а иногда и для внештатных проектов. Недавно клиент попросил меня о чем-то новом.

Он был разработчиком PHP + MySQL, который хотел изучить Node + React и переписать существующее приложение, которое у них было в производстве, в этих средах. Он часами проводил исследования в Интернете и был изнурен этим. Что не было для меня неожиданностью. Ландшафт веб-разработки, состоящий из инструментов, фреймворков и множества мнений, столь же сложен, как и любой другой.

Я помню, когда я изучал веб-разработку на Dev Bootcamp 4 года назад, читая о том, почему какой-то новый инструмент, о котором я никогда не слышал, был будущим, и почему я должен «забыть» какой-то «старый» инструмент (обычно малыш по человеческим меркам) , и желание лечь на пол и умереть. Интернет полон кликбейтных статей, полных мнений, легких по существу статей с заголовками вроде «Почему ты идиот для изучения Rails, и почему, если ты не выучишь все, что угодно, JS, ты умрешь бездомным и одиноким».

картинки

Хотя я немного глуп, в этом нет ничего смешного, когда ваша будущая способность обеспечивать зависит от изучения того, что вам нужно знать.

Именно здесь микроконсультация может сэкономить массу времени и нервов. Иногда нам просто нужно, чтобы кто-то быстро ответил на несколько вопросов и указал нам правильное направление.

Я очень благодарен моему клиенту, который был в таком же положении, как и я, и показал мне, насколько эффективными могут быть микроконсультации. Вот краткое изложение того, что я послал ему в ответ на его вопросы, которые я предоставляю вам бесплатно.

В: Что значит использовать «только экспресс»?

А: Express — это доминирующая среда MVC для создания веб-API в узле. Большинство серверных частей узла используют экспресс. Он легкий и дает свободу вводить новшества, а также испортить его. Существуют и другие фреймворки, созданные на основе Express, которые добавляют функциональность и структуру и могут ускорить процесс сборки, но также добавляют уровни абстракции, которые могут сбить с толку новичка в Node.

Я бы не обязательно предлагал «только экспресс», так как экспресс использует «промежуточное ПО» для добавления функциональности, и было бы глупо не воспользоваться преимуществами существующего промежуточного ПО.

В: Что случилось с сиквелом? Должен ли я использовать его?

О: Абсолютно. Sequelize — это ORM для использования баз данных SQL с Node.

В: А как насчет этой новинки GraphQL?

О: GraphQL потрясающий! Однако, поскольку вы уже знакомы с базой данных MySQL и запускаете ее, я бы посоветовал вам просто использовать sequenceize, чтобы вы могли придерживаться того, что знаете о БД, и сохранить свои возможности для новых вещей для Node/React. Это особенно верно для стандартных приложений Restful CRUD. SQL по-прежнему отлично работает для них.

Учитывая ваши конкретные цели, я бы предложил создать серверную часть с базой данных SQL и поработать над пониманием Node и Express на серверной части, а также React на интерфейсе, а затем изучить GraphQL после этого. Однако это не слишком сложно. Если вы чувствуете прилив энергии, изучая его, дерзайте!

В: А как насчет йоги?

О: Я мало что знаю о йоге, кроме того, что это механизм компоновки, который может работать на разных платформах, и что React Native использует его встроенно. Я думаю, вы можете просто изучить React Native и позволить этому диктовать ваше использование йоги, и не думайте слишком много об этом. Я бы не советовал пытаться использовать его вне React Native, хотя вы вполне можете это сделать, вероятно, было бы проще использовать что-то вроде Material.ui или React-bootstrap для вашей веб-версии.

Вопрос: призма?

О: Prisma выглядит интересно и может заменить Sequelize. Он работает как с базами данных SQL, так и с NoSQL, что очень удобно. Он может похвастаться функциями Typesafe, что круто, но не обязательно для того, что вы делаете. Он также может похвастаться использованием функций async и await, как и Sequelize. В целом, я бы сказал, что на это стоит обратить внимание в будущем, но я бы остановился на Sequelize, у которого больше сообщества.

Вопрос: экспресс-график?

A: То же, что и выше, для graphql. Это просто промежуточное ПО для подключения graphql к Express.

Вопрос: Аполлон?

О: Инструменты разработки и облачные сервисы для Graphql. Похоже, это хороший вариант, если вы решите использовать Graphql, но опять же, я бы посоветовал пока оставить это и придерживаться MySQL.

В: Является ли oidc хорошим способом обработки аутентификации?

О: Короче говоря, да. Изучая это, следите за руководствами, в которых используется Okta, так как это конкретная платформа Saas, которая вам не нужна. Они сделали много руководств, которые показывают, как использовать их сервис. Это выглядит как отличная платформа, но, с моей точки зрения, это скорее то, что вы, возможно, захотите обновить, чем то, что можно использовать с самого начала.

У меня был хороший опыт использования как Passport, так и моего собственного использования промежуточного программного обеспечения сеансов и bcrypt. Я бы посоветовал сделать это проще, держаться подальше от JWT и использовать OAuth2 только в том случае, если ваши клиенты действительно хотят использовать Google или FB для входа в систему. Нет ничего плохого в основных имени пользователя/пароле. 😃

В: действительны ли эти руководства? или есть лучше? я должен следовать только один?

А: Выглядит хорошо. Он использует JWT, которого я не фанат. По этой причине я бы не советовал использовать это для создания вашего приложения, но похоже, что он хорошо показывает, как создавать остальную часть, так что это может быть полезно для обучения. Я бы согласился с его утверждением, что GraphQL лучше, чем REST, для 90% приложений с большой долей морской соли.

A: Это выглядит довольно идеально для моего взгляда на то, что вы пытаетесь сделать. Ничего особенного, просто продолжайте + экспресс 😃

А: При этом используется Pug, механизм шаблонов, который вам не нужен для создания JSON API. Он также использует промежуточное программное обеспечение Okta, которое вам нужно только в том случае, если вы хотите использовать их средства управления пользователями SASS, которые, как я уже упоминал, выглядят очень многообещающе, но могут быть излишними с небольшой пользовательской базой. Как я уже упоминал, нет ничего плохого в простом Auth. Я бы пропустил это пока.

В: Что мне следует думать о производительности с React и Node?

A: Node/Express обладает высокой производительностью.

Реакт тоже. Для мобильных устройств, если вы используете React Native, у вас будет прекрасно быстрое приложение, потому что оно компилируется в байт-код.

Если производительность не очень важна, и вам не нужно, чтобы ваше приложение общалось напрямую с телефоном, вы можете просто создать приложение React и запустить его на телефоне через веб-просмотр. У меня нет времени углубляться в это прямо сейчас. Но это хорошая причина создать приложение React перед созданием приложения ReactJS. Также можно пойти в другом направлении и написать нативное приложение для реагирования и запустить его в браузере с помощью React-Native-Web. Это ново и, вероятно, сложно, и, вероятно, оно того не стоит.

В: Я читал, что в одной из платформ, которые я перечислил, есть некоторая функциональность, которая называется «подписка», и мне кажется, что она может наблюдать за базой данных и обновлять страницу клиента в режиме реального времени по мере ее изменения. хотя, возможно, это было бы полезным улучшением.

А: Да, вы говорите о веб-сокетах. Он поддерживает соединения открытыми и может отправлять обновления в реальном времени с клиента на сервер и наоборот. Проверь это:

Мне потребовалось меньше часа, чтобы написать это, и клиент был в восторге от этого. Это могло бы сэкономить им десятки часов и придать уверенности в том, что они смогут продолжить работу над своим проектом. По их словам, это пишут

«Хороший парень. Очень помог. Решил мою проблему почти сразу».

й

** Если вы находитесь в той же лодке и вам нужен кто-то, кто ответит на несколько вопросов и укажет вам правильное направление с помощью записи, как указано выше, я бы посоветовал вам нажать кнопку с моим красивым лицом в правом нижнем углу страницы. экран. ** Пожалуйста, не стесняйтесь сначала использовать чат, чтобы обсудить со мной, прежде чем мы создадим внештатную работу.

В зависимости от глубины ваших вопросов, Вероятно, я смогу ответить на все из них за 30-120 минут, что означает 30-120 долларов. Я могу с уверенностью сказать, что это невероятная сделка. Дайте мне знать, что вам нужно и ваш бюджет, и давайте продвинем вас вперед на пути обучения, вашего проекта и вашей уверенности. И в следующий раз, когда вы увидите статью, предлагающую вам забыть о каком-то мощном инструменте с тысячами активных пользователей, над изучением которого вы усердно работали, почему бы не оставить комментарий, вежливо сообщив им, куда они могут поместить свою кликбейт, тревогу, производящую чепуху.

Всем удачного кодирования!

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *