TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #247 · 11.03

Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev

Hashtags

Резултати

Намерени 3 подобни публикации

Търсене: #ability

当前筛选 #ability清除筛选
Journey to Fluency

@fluencyinenglish · Post #7231 · 11.07.2019 г., 15:44

#vocabulary #collocations #ability @fluencyinenglish @fluencyinenglish @fluencyinenglish a‧bil‧i‧ty /əˈbɪləti/ noun (plural abilities) 1 [countable] the state of being able to do something ❇️ability to do something the ability to walk The health center serves all patients, regardless of their ability to pay. ❇️ [countable, uncountable] someone’s level of skill at doing something The test measures your mathematical ability. mixed ability classes ❇️of high/low etc ability students of average ability There are musicians of all abilities. ❇️somebody's abilities as something He showed his abilities as a leader @fluencyinenglish @fluencyinenglish @fluencyinenglish 🔹🔹Grammar Ability is followed by an infinitive with ‘to’, not by an -ing form. You say:I admire his ability to listen. ✗Don’t say: I admire his ability of listening. @fluencyinenglish @fluencyinenglish @fluencyinenglish 👉COLLOCATIONS high/low/average ability great/considerable ability remarkable/outstanding/exceptional ability mixed ability (=at different levels) uncanny ability (=an unusual ability that is difficult to explain) 🔹He has an uncanny ability for spotting investment opportunities. natural ability (also innate ability formal)(=an ability that you are born with) physical/athletic ability artistic/creative ability musical ability acting ability mental ability intellectual/academic ability verbal/linguistic ability (=language skills) The test is intended to measure the children's linguistic ability. mathematical ability proven ability (=that you have proved through your achievements) @fluencyinenglish @fluencyinenglish @fluencyinenglish 👉VERBS have the ability to do something (also possess the ability to do somethingformal) show/demonstrate the ability to do something lack the ability to do something @fluencyinenglish @fluencyinenglish @fluencyinenglish 👉PHRASES a level of ability/ability level a range of ability/ability range a test of ability/an ability test an ability group (=a group that students are taught in, based on their level of ability) @fluencyinenglish @fluencyinenglish @fluencyinenglish

Journey to Fluency

@fluencyinenglish · Post #6333 · 14.08.2018 г., 09:27

#vocabulary #collocations #ability @fluencyinenglish 💎Ability: skill/power to do sth شایستگی ، توانایی ، لیاقت ،صلاحیت ، قابلیت ، استطاعت 💎صفاتی که معمولا با ability می آیند. @fluencyinenglish Exceptional Extraordinary Great Outstanding Remarkable Uncanny Inherent Innate/natural ____________________________ VERB + ABILITY در ادامه ability را با افعالی که می توان به کار برد را مشاهده می کنید. @fluencyinenglish Have Demonstrate Show Acquire Develop Lack Lose Appreciate Recognize Examples: 🔵Both players demonstrated their ability to hit the ball hard. 🔵Fox's abilities were soon recognized. ____________________________ PHRASES @fluencyinenglish ⚪️a level of ability: There was a high level of ability among the school leavers. ⚪️a range of ability/abilities: I taught a wide range of abilities. @fluencyinenglish