Има такъв сценарий: когато разработвате сложна система, установявате, че функциите на някои класове стават все по-сложни, йерархията на класовете става все по-хаотична и става много трудно да добавите нова функция или да промените стара функция всеки път. Започвате да се чудите дали има нещо нередно с вашия дизайн и искате ли да препроектирате системата/функцията? Редизайнът обаче означава инвестиране на много време и усилия и може да доведе до нови проблеми. Не можете да не въздъхнете: твърде~ трудно~~~

Ако се натъкнете на проблем като този, тогава, поздравления, има ефективен начин да ви помогнем да разрешите този вид проблем, което ще споделим днес — мостовият режим.

Режим на когнитивен мост

Моделът на моста е много мощен модел на проектиране, структурен модел на проектиране, който можете просто да си представите като мост, който свързва „двете страни“.

Мостов модел Можете да разделите голям, сложен клас или йерархия на класове на две отделни части: абстрактната част и реалната част. Предимството на това е, че тези две части могат да се модифицират и разширяват независимо, без да се засягат една друга. Това е като да строите недвижими имоти на отделни блокове от „двете страни“. Можете да построите небостъргач от едната страна и сламена къща от другата. Има ли влияние между тях? Не, те могат да се променят и разширяват независимо, без да се засягат един друг.

Така че, когато нашата система или функционален модул стават все по-сложни и йерархията става все по-хаотична, имаме нужда от този метод за управление на такава сложност.

Компоненти на мостов режим

След предварително разбиране на мостовия режим, вие също трябва да знаете какви са компонентите на мостовия режим, в противен случай просто знаете, че неговата концепция не може да бъде приложена в реални проекти. По-долу нека да разгледаме от какви части се състои мостовият режим.

Абстрактна част

Абстрактната част е абстрактен клас в мостовия модел, който дефинира някои основни и свойства. Тези методи и свойства позволяват някои основни функции в нашата система, като например в графичен редактор, може да имаме основни функции като рисуване на линии, чертане на кръгове, запълване на цветове и т.н.

Възможно е обаче да има много специфични реализации на тези функции, като например линиите за рисуване могат да бъдат плътни линии...