паттерн Repository/Unit Of Work.Честно говоря это не очень популярно из-за того, что изолировать при помощи интерфейса не всегда нужно, часто структуры будет достаточно, в которой есть подключение к бд и поле для данных. Есть такой пример. Если у вас планируется несколько источников данных, то возможно вам будет удобнее делать на интерфейсах, но by design интерфейс обычно содержит 1-2 метода, а городить на каждую структуру интерфейс с 5-7 методами немного странное решение для го(с моей точки зрения), чтобы лучше понять го можно прочитать книгу кернигана и книгу 100 go mistakes(примерно так называется), чтобы получше понять суть языка.
просто нет достойных ORMок для GolangБолее приемлимым вариантов считается использование sql билдеров или генерация запросов, честно говоря к этому спорное отношение и где-то вполне себе используют орм.
Мне пришла мысль, что можно указать логин и хэш пароля прямо в .env файлеНа самом деле немного странное решение, вполне нормально хранить эти данные в бд, если не ошибаюсь в wp так и делают.
К роуту авторизации этого пользователя можно предоставлять только с определённого пула IP-адресов, которые храним в этом же файле окружения вместе с ключами шифрования JWT.Так не стоит делать, если это нужно то лучше написать в отдельноё middleware, которое будет уметь это делать, эта задача к системе ролей никак не относится.
Раз в этом файле хранятся ключи шифрования, то полагаю место достаточно надёжное и почему бы так не поступить.Довольно неудобно менять пароль, по сути нужно перезапускать систему для этого
создать одного главного админа который будет либо единственным в своём роде, либо сможет раздавать такой же уровень правВообще это не такая и редкая ситуация когда только 1 человек знает все пароли, но стоит предусмотреть возможность чтобы была возможность того, чтобы админ мог создавать пользователей с любыми ролями и привилегиями. Я же правильно понял, что вы хотите создать систему ролей которую можно будет применить к любому проекту, то глупо ограничивать пользователя, пусть делает что ему нужно, с вашей стороны нужно обеспечить гибкую систему ролей.
Заказчику нужно что-то очень похожее на "бот сеть", те у нас есть 25-50 таких расширенийВозможно он хочет одно и тоже расширение но с разными логотипами и обоями для рабочих столов, которые формально будут разными. Возможно он хочет систему, в которой будет простой интерфейс для покупки и после отправки запроса, будет имитироваться работа браузера и совершаться покупки, ну а бот сеть это обычно одна и та же программа, которая работает на нескольких узлах в сети. Если непонятно что делать, то нужно у заказчика спрашивать.
Аналогичны вопросы с авторизацией, но до нее еще дойдемТокен это и есть по сути авторизация, по нему нужно понимать имеет право ли пользователь осуществлять действия или нет.
Проблема: Из за слишком большого количества обращений апи подает слишком часто.Что это означает? Что он подаёт или это падает?
Вопрос: как можно снизить нагрузку?В вашем случае видимо реже обращаться к апи.
учить на Борланд С++
нужно изучить STL, я открывал по ним статейки и закрывал их с мыслями что за архаизм
Можно ли любое GUI положение сперва реализовать в консольном варианте, а потом уже привязывать к нему GUI?Если вы правильно пишите логику, то что для консоли, что для gui вам нужно будет только сделать интерфейс, если сам gui простой, то занимает это немного времени. Некоторые вообще пишут графику поверх консольных приложений.
Все по схеме - долго думал, прицелился, но запутался в своих мыслях и прострелил себе ногу. И вот в этот раз, наконец то я подумал - а что если любое приложение даже на этапе рисования на бумажках, начинать не с рисования ГУЙев и кнопочек, а именно с консольного ввода вывода информации? А потом привязывать к интерфейсам ввода-вывода ГУЙ и продумывать окошечки-кнопочки. А ведь об этом мне надо было задумываться еще будучи в универе - когда я написал всего два полезных для себя приложения, и оба были консольные.В общем писать сразу в GUI даже приложение на 1000 строк мне кажется сомнительным. Как по мне проще в консоли функционал весь написать/проверить (с тестовыми данными), а потом просто привязать к кнопке эту функцию.