Шаблон репозитория и разделение на уровни. Где я применяю безопасность?

При работе из командной строки argv возвращает список аргументов командной строки, где первый (в нулевом месте argv[0] мы получаем имя файла python, которое использовалось после имени pyhton).

с первого места и выше, значения относятся к порядку, в котором были получены аргументы. обратите внимание, что если вы используете необязательные аргументы (python myscript.py -p 127.0.0.1), они также учитываются в argv. поэтому вы получите argv[1] == -p

Правильно ли я сказал, что этот python ex3.py не передает ни одного аргумента командной строки, а python ex13.py first 2nd 3rd передает несколько?

[ 1111] нет, вы не правы, python ex3.py передает 1 аргумент, argv[0] = ex3.py.

10
задан Jim G. 4 October 2009 в 03:18
поделиться

1 ответ

Я был бы:

  • Запишите проверку защиты таким способом, которым она может быть применена в любом месте, которое Вы любите. Таким образом, можно осуществить рефакторинг, когда требования изменяются.

  • Если проверка защиты действительно будет всегда применяться, поместить его в слой репозитория (или лучше, в аспект, если Ваш язык будет поддерживать его) так, чтобы многочисленные услуги все совместно использовали коллективную безопасность, если они будут использовать тот же репозиторий. Иначе поместите его в сервис (или аспект, действующий на сервис).

  • передайте весь пользовательский объект механизму проверки безопасности:

    • если проверка защиты позже становится более сложной (зависит от других свойств пользователя), API не изменится;
    • это имеет больше семантического смысла - Вы проверяете, что у пользователя есть разрешение сделать что-то, не, который делает список стран.
3
ответ дан 4 December 2019 в 04:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: