Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе.
Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода.
Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу".
С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой.
Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого.
Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :)
Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие.
#dev
🇺🇸 Un homme âgé de 69 ans a tué par balle ses partenaires d’affaires au Texas, selon ABC.
Le tireur a ouvert le feu lors d’une réunion dans un centre commercial de la ville de Carrollton, faisant un mort et trois blessés. Plus tard, l’homme a abattu une autre personne dans son appartement.
#étatsunis#fusillade#victimes
🇺🇸 Au moins douze personnes ont été blessées dans une fusillade dimanche près du lac Arcadia dans l'Oklahoma, aux États-Unis, a rapporté la chaîne CBS News.
La chaîne KWTV-DT a indiqué plus tôt que la police avait trouvé quatre personnes présentant des blessures par balle à l’intérieur d’un véhicule.
#étatsunis#fusillade#victimes
🇺🇸 Des images de la fusillade à Virginia Beach.
Les faits se sont produits dans une rue après une altercation verbale entre deux groupes de jeunes. Au moins huit personnes ont été blessées, rapporte la chaîne ABC.
#étatsunis#fusillade#victimes
🇺🇸 Au moins douze personnes ont été blessées dans une fusillade dimanche près du lac Arcadia dans l'Oklahoma, aux États-Unis, a rapporté la chaîne CBS News.
Neuf blessés ont été transportés dans un centre médical de la capitale de l’État et trois autres vers un hôpital d’Edmond, ont précisé des responsables médicaux à la chaîne.
La chaîne KWTV-DT a indiqué plus tôt que la police avait trouvé quatre personnes présentant des blessures par balle à l’intérieur d’un véhicule.
Vidéo: Luke Brenner/X
#étatsunis#fusillade#victimes
🇹🇷 Une fusillade est survenue dans une école dans le sud-est de la Turquie, le tireur a été neutralisé, a rapporté la chaîne de télévision NTV. Quatre personnes ont été tuées, selon les autorités.
#turquie#fusillade#victimes
🇹🇷 Seize personnes ont été blessées lors d'une fusillade dans un établissement scolaire en Turquie, rapporte la chaîne de télévision TGRT.
L'assaillant a ouvert le feu de manière aléatoire dans la cour intérieure. Il a ensuite fait irruption dans le bâtiment, où il a continué à tirer. Certains élèves ont quitté l’établissement en sautant par les fenêtres.
L'assaillant, né en 2007, est décédé au cours de l'opération de police, a annoncé le gouverneur de la province de Sanliurfa, Hasan Sildak.
#turquie#fusillade#victimes
🇺🇦 La police nationale ukrainienne va mener une enquête administrative après que deux policiers ont fui les lieux d'une fusillade à Kiev, laissant des civils sans protection, a déclaré le ministre de l'Intérieur du pays, Igor Klimenko.
J'ai chargé le chef de la police nationale ukrainienne, Ivan Vygovski, de mener une enquête administrative sur les actions des policiers lors de l'attentat terroriste à Kiev et de fournir toutes les informations au Bureau d'enquête d'État,
a écrit M. Klimenko sur sa chaîne Telegram.
#ukraine#police#fusillade
🇧🇷 Un adolescent de treize ans a ouvert le feu dans une école située dans le nord-ouest du Brésil. Deux employés sont morts, plusieurs élèves ont été blessés, selon le site G1.
#brésil#fusillade#victimes
🇲🇽 Le nombre de blessés lors de la fusillade survenue sur le site archéologique de Teotihuacan, au Mexique, est passé à 13 personnes, a fait savoir le cabinet de sécurité mexicain.
#mexique#fusillade#victimes
🇷🇺Un étudiant a ouvert le feu dans le hall d'un établissement scolaire à Anapa. Il a été interpellé. Le bilan fait état d'un mort et de deux blessés, selon la chaîne Telegram de la Direction principale du ministère de l'Intérieur pour le territoire de Krasnodar.
D'après les premiers éléments, un étudiant de cet établissement a ouvert le feu aujourd'hui dans le hall d'un institut professionnel d'Anapa avec une arme non identifiée. Une personne est morte, deux personnes ont été blessées et reçoivent des soins. L'auteur présumé a été interpellé,
indique le communiqué.
#russie#fusillade#anapa
🇹🇭Un jeune homme a ouvert le feu dans une école dans le sud de la Thaïlande et a blessé plusieurs personnes, a rapporté le journal Khaosod.
Selon l’édition, le drame s'est produit dans la ville de Hat Yai, dans la province de Songkhla. La fusillade a fait des blessés, mais le nombre exact de victimes n'est pas connu. Selon les informations préliminaires, le suspect s'est introduit dans l'école peu avant la fin des cours et a pris en otage plus de 300 élèves et enseignants. Il est signalé que le tireur a 18 ans. Il a été interpellé.
#thaïlande#fusillade#bilan
🇺🇸 Un inconnu a ouvert le feu dans un centre commercial de l'État américain de Louisiane, rapporte Newsweek. Tout le monde a été évacué et aucun blessé n'est à déplorer.
#étatsunis#fusillade#louisiane