powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Общая теория программирования
7 сообщений из 7, страница 1 из 1
Общая теория программирования
    #39223065
aliskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я сам додумался до разделения ошибок на два уровня.

1 уровень: пользовательские ошибки (юзер ввел неправильный пароль, попал на профиль удаленного (deleted) пользователя, попал на приватный топик). Ошибка выводится на вебстранице с html оформлением.

2 уровень: ошибки ЗЛОГО пользователя (злой пользователь в get или post запросе накосячил особым образом). То есть данные ошибки не могут появиться у обычного пользователя. ЗЛОМУ пользователю выводится только одна строка об ошибке. Все.

Вопрос: Какие книги, ресурсы посоветуете почитать по правильному созданию проэктов (о правилах верного подхода к программированию)?

*2 Знаю что лучше злому вообще ничего не выводить. Но сейчас мне такие выводы об ошибках нужны для того чтобы понять в каких местах ошибки.
...
Рейтинг: 0 / 0
Общая теория программирования
    #39223077
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliskin,

Раздели ошибки по приоритетам. Предупреждения/не критические ошибки/все пропало. И лучше выводить их все с более менее подробным описанием.
...
Рейтинг: 0 / 0
Общая теория программирования
    #39223087
aliskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спс, за идею.

Но если задавать вопросы по каждому поводу, то мне всего интернета не хватит %:). Книги мне уже посоветовали на другом кворуме.

Архитектура ПО

Structure and Interpretation of Computer Programs - 2nd Edition. Harold Abelson, Gerald Jay Sussman, Julie Sussman
Русский перевод: Структура и Интерпретация Компьютерных Программ. Харольд Абельсон, Джеральд Джей Сассман


Алгоритмы и структуры данных


The Algorithm Design Manual. Steven S Skiena. 2008
Русский перевод: Алгоритмы. Руководство по разработке. Стивен Скиена. 2014 г.
Introduction to Algorithms, 3rd Edition. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. 2009
Русский перевод: Алгоритмы. Построение и анализ. Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. 2015 г.

The Art of Computer Programming. Donald E. Knuth. 2011
Русский перевод: Искусство программирования. Дональд Э. Кнут. 2015 г.

Проектирование и стиль кода

Стив Макконнелл — «Совершенный код» (Code Complete).
Мартин Фаулер — «Рефакторинг. Улучшение существующего кода»
Роберт Мартин — «Чистый код. Создание, анализ и рефакторинг» (Clean Code: A Handbook of Agile Software Craftsmanship)


Навыки разработчика


Эндрю Хант, Дэвид Томас — «Программист-прагматик. Путь от подмастерья к мастеру»

Организация процесса разработки

Том ДеМарко — «Deadline. Роман об управлении проектами»
Роберт Мартин — «Быстрая разработка программного обеспечения»
Джоэл Спольски — «И снова о программировании».
Джо Мараско — «IT-проекты. Фронтовые очерки»
Стив Макконнелл — «Сколько стоит программный проект»
...
Рейтинг: 0 / 0
Общая теория программирования
    #39223169
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliskinспс, за идею.
На кворуме тебе ничего посоветовать не могли в принципе.

По первому вопросу топика:
Твои ошибки первого уровня это не ошибки, а нормальное поведение - юзера ошибаются, программа отказывается выполнять некорректную команду. Объяснение некорректности полезно и правильно.
Твои ошибки второго уровня - не должны происходить в принципе. Если ты их допускаешь, то ты допускаешь в свою систему хакеров которые воруют твою информацию. Если твой "злой пользователь накосячил особым образом", то ты просто игнорируешь такую команду и посылаешь на дом к этому пользователю полицию. И даже "за вами уже выехали" текст показывать "злому пользователю" не надо. Чтобы не спугнуть гаденыша.

Перечисленные книги все равно почитай, полезно будет.
...
Рейтинг: 0 / 0
Общая теория программирования
    #39223221
aliskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlТвои ошибки второго уровня - не должны происходить в принципе. Если ты их допускаешь, то ты допускаешь в свою систему хакеров которые воруют твою информацию. Если твой "злой пользователь накосячил особым образом", то ты просто игнорируешь такую команду и посылаешь на дом к этому пользователю полицию. И даже "за вами уже выехали" текст показывать "злому пользователю" не надо. Чтобы не спугнуть гаденыша.

Перечисленные книги все равно почитай, полезно будет.

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

Вот именно на этапе проверки данных и будут "получается" ошибки второго уровня. То есть, недопущение дальнейшего исполнения кода (повторюсь: потому что с теми данными будет не нужное МНЕ поведение программы).

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

Я понял что \в рабочем_вебе лучше ничего не выводить злому пользователю.
...
Рейтинг: 0 / 0
Общая теория программирования
    #39223236
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aliskinЯ понял что \в рабочем_вебе лучше ничего не выводить злому пользователю.Отправить ему что-то вроде хттп-кода 500 и пусть радуется. А саму ошибку в лог - для статистики или для разбора.
...
Рейтинг: 0 / 0
Общая теория программирования
    #39223253
aliskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

хм-м... прекрасная идея с оформлением ошибки. классно!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Общая теория программирования
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]