{"id":83923,"date":"2024-11-15T08:24:58","date_gmt":"2024-11-15T04:54:58","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/"},"modified":"2024-11-15T08:24:58","modified_gmt":"2024-11-15T04:54:58","slug":"understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/","title":{"rendered":"\u062f\u0631\u06a9 \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644: \u0631\u0627\u0647\u0646\u0645\u0627\u06cc \u062c\u0627\u0645\u0639"},"content":{"rendered":"<p>Summarize this content to 400 words in Persian Lang<br \/>\n            \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631\u060c \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u0627\u0628\u0632\u0627\u0631 \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0628\u0631\u0627\u06cc \u062c\u062f\u0627 \u06a9\u0631\u062f\u0646 \u0627\u0646\u062a\u0632\u0627\u0639 \u0627\u0632 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u0631\u062c\u0633\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f \u0648 \u0628\u0647 \u0647\u0631 \u062f\u0648 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f. \u0627\u06cc\u0646 \u0628\u0647 \u0648\u06cc\u0698\u0647 \u062f\u0631 \u0647\u0646\u06af\u0627\u0645 \u0628\u0631\u062e\u0648\u0631\u062f \u0628\u0627 \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647 \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u0634\u0645\u0627 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062c\u062f\u0627\u0633\u0627\u0632\u06cc \u0631\u0627\u0628\u0637 \u0627\u0632 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u062f\u0648\u0646 \u0627\u062c\u0628\u0627\u0631 \u0622\u0646\u0647\u0627 \u0628\u0647 \u0633\u0627\u062e\u062a\u0627\u0631\u0647\u0627\u06cc \u0633\u0641\u062a \u0648 \u0633\u062e\u062a \u062f\u0627\u0631\u06cc\u062f\u060c \u0645\u0641\u06cc\u062f \u0627\u0633\u062a. \u0627\u06cc\u0646 \u0628\u0647 \u0634\u0645\u0627 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u06cc\u06a9 \u06a9\u0644\u0627\u0633 \u0628\u0632\u0631\u06af \u06cc\u0627 \u0645\u062c\u0645\u0648\u0639\u0647 \u0627\u06cc \u0627\u0632 \u06a9\u0644\u0627\u0633 \u0647\u0627\u06cc \u0646\u0632\u062f\u06cc\u06a9 \u0628\u0647 \u0647\u0645 \u0631\u0627 \u0628\u0647 \u062f\u0648 \u0633\u0644\u0633\u0644\u0647 \u0645\u0631\u0627\u062a\u0628 \u0645\u062c\u0632\u0627 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0646\u06cc\u062f &#8211; \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc &#8211; \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0645\u0633\u062a\u0642\u0644 \u0627\u0632 \u06cc\u06a9\u062f\u06cc\u06af\u0631 \u062a\u0648\u0633\u0639\u0647 \u06cc\u0627\u0628\u0646\u062f.<\/p>\n<p>\u0627\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u0628\u0647 \u0628\u0631\u0631\u0633\u06cc \u0627\u06cc\u0646 \u0645\u0648\u0636\u0648\u0639 \u0645\u06cc \u067e\u0631\u062f\u0627\u0632\u062f \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644\u060c \u0645\u0641\u0627\u0647\u06cc\u0645 \u0622\u0646 \u0631\u0627 \u062a\u0648\u0636\u06cc\u062d \u062f\u0647\u06cc\u062f\u060c \u0645\u062b\u0627\u0644 \u0647\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u06cc\u062f \u0648 \u0646\u062d\u0648\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0622\u0646 \u0631\u0627 \u062f\u0631 \u062c\u0627\u0648\u0627 \u0628\u0647 \u0646\u0645\u0627\u06cc\u0634 \u0628\u06af\u0630\u0627\u0631\u06cc\u062f.<\/p>\n<p>  \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0686\u06cc\u0633\u062a\u061f<\/p>\n<p>\u0631\u0627 \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u06cc\u06a9 \u0627\u0644\u06af\u0648\u06cc \u0633\u0627\u062e\u062a\u0627\u0631\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0628\u0631\u0627\u06cc &#8220;\u062c\u062f\u0627 \u06a9\u0631\u062f\u0646&#8221; \u06cc\u06a9 \u0627\u0646\u062a\u0632\u0627\u0639 \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u0622\u0646 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u062a\u0627 \u0627\u06cc\u0646 \u062f\u0648 \u0628\u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f. \u0627\u06cc\u0646 \u0627\u0644\u06af\u0648 \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0632\u0645\u0627\u0646\u06cc \u0645\u0641\u06cc\u062f \u0627\u0633\u062a \u06a9\u0647 \u0686\u0646\u062f\u06cc\u0646 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u0645\u06a9\u0646 \u0628\u0631\u0627\u06cc \u06cc\u06a9 \u0627\u0646\u062a\u0632\u0627\u0639 \u0645\u0639\u06cc\u0646 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f\u060c \u0648 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u0627\u0632 \u062a\u0639\u062f\u0627\u062f \u0632\u06cc\u0627\u062f\u06cc \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0647\u0645\u0647 \u062a\u0631\u06a9\u06cc\u0628\u200c\u0647\u0627\u06cc \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0627\u062c\u062a\u0646\u0627\u0628 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u0628\u0647 \u0632\u0628\u0627\u0646 \u0633\u0627\u062f\u0647 \u062a\u0631:<\/p>\n<p>\u0627\u0646\u062a\u0632\u0627\u0639 \u0628\u0647 \u0646\u0645\u0627\u06cc \u0633\u0637\u062d \u0628\u0627\u0644\u0627 (\u0645\u062b\u0644\u0627\u064b \u0631\u0627\u0628\u0637 \u06cc\u0627 \u06a9\u0644\u0627\u0633 \u0627\u0646\u062a\u0632\u0627\u0639\u06cc) \u0627\u0634\u0627\u0631\u0647 \u062f\u0627\u0631\u062f.<\/p>\n<p>\u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0633\u0637\u062d \u067e\u0627\u06cc\u06cc\u0646 (\u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u06a9\u0644\u0627\u0633 \u0647\u0627 \u06cc\u0627 \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u0628\u062a\u0646\u06cc) \u0627\u0634\u0627\u0631\u0647 \u062f\u0627\u0631\u062f.<\/p>\n<p>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u06cc\u06a9 \u067e\u0644 (\u0631\u0627\u0628\u0637) \u0628\u06cc\u0646 \u0627\u06cc\u0646 \u062f\u0648 \u0639\u0646\u0635\u0631 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0628\u0647 \u0634\u0645\u0627 \u0627\u06cc\u0646 \u0627\u0645\u06a9\u0627\u0646 \u0631\u0627 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u06cc\u06a9\u06cc \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u0623\u062b\u06cc\u0631 \u0628\u0631 \u062f\u06cc\u06af\u0631\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/p>\n<p>  \u0686\u0647 \u0632\u0645\u0627\u0646\u06cc \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645\u061f<\/p>\n<p>\u0634\u0645\u0627 \u0628\u0627\u06cc\u062f \u0627\u0644\u06af\u0648\u06cc Bridge \u0631\u0627 \u062f\u0631 \u0633\u0646\u0627\u0631\u06cc\u0648\u0647\u0627\u06cc \u0632\u06cc\u0631 \u062f\u0631 \u0646\u0638\u0631 \u0628\u06af\u06cc\u0631\u06cc\u062f:<\/p>\n<p>\u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0647\u0645 \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u0647\u0645 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f\u060c \u0648 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u0627\u0632 \u0627\u0646\u0641\u062c\u0627\u0631 \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633\u200c\u0647\u0627 \u06a9\u0647 \u0627\u0632 \u062a\u0644\u0627\u0634 \u0628\u0631\u0627\u06cc \u062a\u0631\u06a9\u06cc\u0628 \u0647\u0631 \u0627\u0646\u062a\u0632\u0627\u0639 \u0628\u0627 \u0647\u0631 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0646\u0627\u0634\u06cc \u0645\u06cc\u200c\u0634\u0648\u062f\u060c \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u06a9\u0646\u06cc\u062f.<br \/>\n\u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0645\u06cc \u062e\u0648\u0627\u0647\u06cc\u062f \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0631\u0627 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 \u062e\u0648\u062f \u0628\u0647\u0628\u0648\u062f \u0628\u062e\u0634\u06cc\u062f.<br \/>\n\u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u063a\u06cc\u06cc\u0631 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u062f\u0648\u0646 \u062a\u063a\u06cc\u06cc\u0631 \u0627\u0646\u062a\u0632\u0627\u0639 \u062f\u0627\u0631\u06cc\u062f (\u06cc\u0627 \u0628\u0631\u0639\u06a9\u0633).<\/p>\n<p>  \u0627\u062c\u0632\u0627\u06cc \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644<\/p>\n<p>\u0627\u0644\u06af\u0648\u06cc \u067e\u0644 \u0634\u0627\u0645\u0644 \u0627\u062c\u0632\u0627\u06cc \u06a9\u0644\u06cc\u062f\u06cc \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<p>\u0627\u0646\u062a\u0632\u0627\u0639: \u0627\u06cc\u0646 \u0631\u0627\u0628\u0637 \u06a9\u0646\u062a\u0631\u0644 \u0633\u0637\u062d \u0628\u0627\u0644\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u062d\u0627\u0648\u06cc \u0627\u0631\u062c\u0627\u0639 \u0628\u0647 \u06cc\u06a9 \u0634\u06cc \u0627\u0632 \u0646\u0648\u0639 \u0627\u0633\u062a Implementor \u0648 \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u0628\u0631\u062e\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u0628\u0647 \u0622\u0646 \u0645\u062d\u0648\u0644 \u06a9\u0646\u062f.<\/p>\n<p>Refined Abstraction: \u06cc\u06a9 \u0646\u0633\u062e\u0647 \u062a\u0635\u0641\u06cc\u0647 \u0634\u062f\u0647 \u0627\u0632 Abstraction \u06a9\u0647 \u0631\u0627\u0628\u0637 \u0627\u0635\u0644\u06cc \u0627\u0646\u062a\u0632\u0627\u0639 \u0631\u0627 \u06af\u0633\u062a\u0631\u0634 \u0645\u06cc \u062f\u0647\u062f.<\/p>\n<p>\u0645\u062c\u0631\u06cc: \u0627\u06cc\u0646 \u0631\u0627\u0628\u0637 \u0631\u0627 \u0628\u0631\u0627\u06cc \u06a9\u0644\u0627\u0633 \u0647\u0627\u06cc \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f. \u0627\u06cc\u0646 \u062e\u0648\u062f \u0627\u062c\u0631\u0627\u06cc \u0645\u0644\u0645\u0648\u0633 \u0646\u06cc\u0633\u062a\u060c \u0628\u0644\u06a9\u0647 \u067e\u0644\u06cc \u0628\u0631\u0627\u06cc \u0622\u0646 \u0627\u0633\u062a.<\/p>\n<p>ConcreteImplementor: \u0627\u062c\u0631\u0627\u06cc \u0645\u0644\u0645\u0648\u0633 Implementor \u0631\u0627\u0628\u0637\u06cc \u06a9\u0647 \u0627\u062c\u0631\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a \u062a\u0639\u0631\u06cc\u0641 \u0634\u062f\u0647 \u062f\u0631 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f Implementor.<\/p>\n<p>  \u0633\u0627\u062e\u062a\u0627\u0631 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/p>\n<p>        Abstraction<br \/>\n            |<br \/>\n   +&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+<br \/>\n   |                  |<br \/>\nRefinedAbstraction  Implementor<br \/>\n                        |<br \/>\n             +&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-+<br \/>\n             |                   |<br \/>\n    ConcreteImplementorA    ConcreteImplementorB<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u062b\u0627\u0644: \u0633\u06cc\u0633\u062a\u0645 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/p>\n<p>\u0628\u06cc\u0627\u06cc\u06cc\u062f \u0627\u0632 \u0645\u062b\u0627\u0644 a \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645 \u0633\u06cc\u0633\u062a\u0645 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 \u0628\u0631\u0627\u06cc \u0627\u0646\u0648\u0627\u0639 \u062f\u0633\u062a\u06af\u0627\u0647 \u0647\u0627\u06cc \u0627\u0644\u06a9\u062a\u0631\u0648\u0646\u06cc\u06a9\u06cc \u0628\u0631\u0627\u06cc \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u0646 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644. \u062a\u0635\u0648\u0631 \u06a9\u0646\u06cc\u062f \u0645\u0627 \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641\u06cc \u0627\u0632 \u062f\u0633\u062a\u06af\u0627\u0647 \u0647\u0627 (\u0645\u0627\u0646\u0646\u062f \u062a\u0644\u0648\u06cc\u0632\u06cc\u0648\u0646\u060c \u0631\u0627\u062f\u06cc\u0648) \u0648 \u06a9\u0646\u062a\u0631\u0644 \u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 (\u0645\u0627\u0646\u0646\u062f BasicRemote\u060c AdvancedRemote) \u062f\u0627\u0631\u06cc\u0645.<\/p>\n<p>\u0628\u062f\u0648\u0646 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644\u060c \u0627\u06af\u0631 \u0628\u062e\u0648\u0627\u0647\u06cc\u0645 \u0627\u06cc\u0646 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0631\u0627 \u062a\u0631\u06a9\u06cc\u0628 \u06a9\u0646\u06cc\u0645\u060c \u0628\u0631\u0627\u06cc \u0647\u0631 \u062a\u0631\u06a9\u06cc\u0628 \u0628\u0647 \u06cc\u06a9 \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u0645 \u06a9\u0647 \u0645\u0646\u062c\u0631 \u0628\u0647 \u0633\u0644\u0633\u0644\u0647 \u0645\u0631\u0627\u062a\u0628 \u06a9\u0644\u0627\u0633 \u0628\u0632\u0631\u06af\u06cc \u0645\u06cc \u0634\u0648\u062f:<\/p>\n<p>BasicRemoteTV\u060c AdvancedRemoteTV\u060c BasicRemoteRadio\u060c AdvancedRemoteRadio\u060c \u0648 \u063a\u06cc\u0631\u0647.<\/p>\n<p>\u0627\u06cc\u0646 \u0628\u0647 \u0633\u0631\u0639\u062a \u063a\u06cc\u0631\u0642\u0627\u0628\u0644 \u06a9\u0646\u062a\u0631\u0644 \u0645\u06cc \u0634\u062f. \u062f\u0631 \u0639\u0648\u0636\u060c \u0628\u0627 \u0627\u0639\u0645\u0627\u0644 \u0627\u0644\u06af\u0648\u06cc Bridge\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 \u0622\u0646 \u0631\u0627 \u062c\u062f\u0627 \u06a9\u0646\u06cc\u0645 \u0631\u0627\u0628\u0637 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 \u0627\u0632 \u0631\u0627\u0628\u0637 \u062f\u0633\u062a\u06af\u0627\u0647\u060c \u0633\u06cc\u0633\u062a\u0645 \u0631\u0627 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u062a\u0631 \u0648 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u062a\u0631 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>  \u0627\u0644\u06af\u0648\u06cc \u067e\u0644 \u06af\u0627\u0645 \u0628\u0647 \u06af\u0627\u0645 \u062f\u0631 \u062c\u0627\u0648\u0627<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f Implementor \u0631\u0627\u0628\u0637<\/p>\n<p>\/\/ The Implementor defines the interface for implementation classes.<br \/>\npublic interface Device {<br \/>\n    void turnOn();<br \/>\n    void turnOff();<br \/>\n    void setVolume(int volume);<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 \u06f2: \u067e\u06cc\u0627\u062f\u0647\u200c\u06a9\u0646\u0646\u062f\u0647\u200c\u0647\u0627\u06cc \u0628\u062a\u0646 \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u06af\u0627\u0647\u200c\u0647\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/p>\n<p>\/\/ ConcreteImplementorA: A TV device<br \/>\npublic class TV implements Device {<br \/>\n    private boolean on = false;<br \/>\n    private int volume = 10;<\/p>\n<p>    @Override<br \/>\n    public void turnOn() {<br \/>\n        on = true;<br \/>\n        System.out.println(&#8220;TV is now ON&#8221;);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void turnOff() {<br \/>\n        on = false;<br \/>\n        System.out.println(&#8220;TV is now OFF&#8221;);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void setVolume(int volume) {<br \/>\n        this.volume = volume;<br \/>\n        System.out.println(&#8220;TV Volume set to &#8221; + volume);<br \/>\n    }<br \/>\n}<\/p>\n<p>\/\/ ConcreteImplementorB: A Radio device<br \/>\npublic class Radio implements Device {<br \/>\n    private boolean on = false;<br \/>\n    private int volume = 5;<\/p>\n<p>    @Override<br \/>\n    public void turnOn() {<br \/>\n        on = true;<br \/>\n        System.out.println(&#8220;Radio is now ON&#8221;);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void turnOff() {<br \/>\n        on = false;<br \/>\n        System.out.println(&#8220;Radio is now OFF&#8221;);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void setVolume(int volume) {<br \/>\n        this.volume = volume;<br \/>\n        System.out.println(&#8220;Radio Volume set to &#8221; + volume);<br \/>\n    }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f Abstraction \u06a9\u0644\u0627\u0633<\/p>\n<p>\/\/ The Abstraction defines the interface for using the remote control.<br \/>\npublic abstract class RemoteControl {<br \/>\n    protected Device device;<\/p>\n<p>    public RemoteControl(Device device) {<br \/>\n        this.device = device;<br \/>\n    }<\/p>\n<p>    public abstract void turnOn();<br \/>\n    public abstract void turnOff();<br \/>\n    public abstract void setVolume(int volume);<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u0627\u06cc\u062c\u0627\u062f \u0627\u0646\u062a\u0632\u0627\u0639\u0627\u062a \u0627\u0635\u0644\u0627\u062d \u0634\u062f\u0647 \u0628\u0631\u0627\u06cc \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/p>\n<p>\/\/ RefinedAbstraction: A basic remote control<br \/>\npublic class BasicRemote extends RemoteControl {<\/p>\n<p>    public BasicRemote(Device device) {<br \/>\n        super(device);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void turnOn() {<br \/>\n        device.turnOn();<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void turnOff() {<br \/>\n        device.turnOff();<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void setVolume(int volume) {<br \/>\n        device.setVolume(volume);<br \/>\n    }<br \/>\n}<\/p>\n<p>\/\/ RefinedAbstraction: An advanced remote control with additional features<br \/>\npublic class AdvancedRemote extends RemoteControl {<\/p>\n<p>    public AdvancedRemote(Device device) {<br \/>\n        super(device);<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void turnOn() {<br \/>\n        device.turnOn();<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void turnOff() {<br \/>\n        device.turnOff();<br \/>\n    }<\/p>\n<p>    @Override<br \/>\n    public void setVolume(int volume) {<br \/>\n        device.setVolume(volume);<br \/>\n    }<\/p>\n<p>    \/\/ Additional functionality like mute<br \/>\n    public void mute() {<br \/>\n        System.out.println(&#8220;Muting the device&#8221;);<br \/>\n        device.setVolume(0);<br \/>\n    }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 5: \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/p>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u0645 \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc Bridge \u0628\u0631\u0627\u06cc \u06a9\u0646\u062a\u0631\u0644 \u062f\u0633\u062a\u06af\u0627\u0647 \u0647\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641 \u0631\u06cc\u0645\u0648\u062a \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645:<\/p>\n<p>public class BridgePatternExample {<br \/>\n    public static void main(String[] args) {<br \/>\n        \/\/ Use TV with Basic Remote<br \/>\n        Device tv = new TV();<br \/>\n        RemoteControl basicRemote = new BasicRemote(tv);<\/p>\n<p>        basicRemote.turnOn();<br \/>\n        basicRemote.setVolume(20);<br \/>\n        basicRemote.turnOff();<\/p>\n<p>        System.out.println(&#8220;\\n&#8212;&#8220;);<\/p>\n<p>        \/\/ Use Radio with Advanced Remote<br \/>\n        Device radio = new Radio();<br \/>\n        RemoteControl advancedRemote = new AdvancedRemote(radio);<\/p>\n<p>        advancedRemote.turnOn();<br \/>\n        advancedRemote.setVolume(15);<br \/>\n        ((AdvancedRemote) advancedRemote).mute();<br \/>\n        advancedRemote.turnOff();<br \/>\n    }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u062e\u0631\u0648\u062c\u06cc:<\/p>\n<p>TV is now ON<br \/>\nTV Volume set to 20<br \/>\nTV is now OFF<\/p>\n<p>&#8212;<br \/>\nRadio is now ON<br \/>\nRadio Volume set to 15<br \/>\nMuting the device<br \/>\nRadio is now OFF<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0632\u0627\u06cc\u0627\u06cc \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/p>\n<p>\u062a\u0641\u06a9\u06cc\u06a9 \u0646\u06af\u0631\u0627\u0646\u06cc \u0647\u0627: \u0627\u0644\u06af\u0648 \u0627\u0646\u062a\u0632\u0627\u0639 (\u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631) \u0631\u0627 \u0627\u0632 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc (\u062f\u0633\u062a\u06af\u0627\u0647) \u062c\u062f\u0627 \u0645\u06cc \u06a9\u0646\u062f\u060c \u06a9\u0647 \u0627\u0635\u0644\u0627\u062d \u06cc\u06a9\u06cc \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u0623\u062b\u06cc\u0631 \u0628\u0631 \u062f\u06cc\u06af\u0631\u06cc \u0622\u0633\u0627\u0646 \u062a\u0631 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>\u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0628\u0647\u0628\u0648\u062f \u06cc\u0627\u0641\u062a\u0647: \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u062f\u0633\u062a\u06af\u0627\u0647 \u06cc\u0627 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0631 \u0642\u0633\u0645\u062a \u062f\u06cc\u06af\u0631 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/p>\n<p>\u06a9\u0627\u0647\u0634 \u062a\u06a9\u0631\u0627\u0631 \u06a9\u062f: \u0628\u0627 \u0627\u062c\u0627\u0632\u0647 \u062f\u0627\u062f\u0646 \u0628\u0647 \u0627\u0646\u062a\u0632\u0627\u0639\u0627\u062a \u0648 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0647\u0627 \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0627\u0632 \u0627\u06cc\u062c\u0627\u062f \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633 \u0647\u0627\u06cc \u063a\u06cc\u0631 \u0636\u0631\u0648\u0631\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u062f.<\/p>\n<p>  \u0645\u0639\u0627\u06cc\u0628 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/p>\n<p>\u0627\u0641\u0632\u0627\u06cc\u0634 \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc: \u0627\u0641\u0632\u0648\u062f\u0646 \u06cc\u06a9 \u0644\u0627\u06cc\u0647 \u0627\u0636\u0627\u0641\u06cc \u0627\u0632 \u0627\u0646\u062a\u0632\u0627\u0639 \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u06a9\u062f \u0631\u0627 \u0628\u0647 \u062e\u0635\u0648\u0635 \u0628\u0631\u0627\u06cc \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u0633\u0627\u062f\u0647 \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u062f.<\/p>\n<p>\u063a\u06cc\u0631 \u062c\u0647\u062a: \u0627\u0636\u0627\u0641\u0647 \u0634\u062f\u0646 \u063a\u06cc\u0631\u0645\u0633\u062a\u0642\u06cc\u0645 \u0628\u06cc\u0646 \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u06af\u0627\u0647\u06cc \u0627\u0648\u0642\u0627\u062a \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0631\u06a9 \u06a9\u062f \u0631\u0627 \u0633\u062e\u062a \u062a\u0631 \u06a9\u0646\u062f.<\/p>\n<p>  \u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<\/p>\n<p>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0631\u0648\u0634\u06cc \u0632\u06cc\u0628\u0627 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647 \u0627\u0633\u062a \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u0647\u0645 \u0627\u0646\u062a\u0632\u0627\u0639\u0627\u062a \u0648 \u0647\u0645 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0622\u0646 \u0647\u0627 \u0628\u0627\u06cc\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f. \u0628\u0627 \u062c\u062f\u0627 \u06a9\u0631\u062f\u0646 \u0627\u06cc\u0646 \u0646\u06af\u0631\u0627\u0646\u06cc \u0647\u0627\u060c \u0627\u0644\u06af\u0648\u06cc Bridge \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc\u060c \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0633\u06cc\u0633\u062a\u0645 \u0631\u0627 \u0628\u0647\u0628\u0648\u062f \u0645\u06cc \u0628\u062e\u0634\u062f.<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u067e\u0633\u062a \u0646\u062d\u0648\u0647 \u0627\u0639\u0645\u0627\u0644 \u0627\u0644\u06af\u0648\u06cc Bridge \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 a \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u06cc\u0645 \u0633\u06cc\u0633\u062a\u0645 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0646\u0645\u0648\u0646\u0647 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc Bridge \u062f\u0631 \u062c\u0627\u0648\u0627\u060c \u062f\u06cc\u062f\u06cc\u0645 \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 \u062f\u0633\u062a\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646 \u0628\u0627 \u0686\u0646\u062f\u06cc\u0646 \u0646\u0648\u0639 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0627\u0646\u0641\u062c\u0627\u0631 \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633\u200c\u0647\u0627 \u06a9\u0646\u062a\u0631\u0644 \u06a9\u0631\u062f.<\/p>\n<p>  \u0645\u0646\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u0645\u0637\u0627\u0644\u0639\u0647 \u0628\u06cc\u0634\u062a\u0631<\/p>\n<p>\u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc: \u0639\u0646\u0627\u0635\u0631 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0634\u06cc \u06af\u0631\u0627 \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f \u062a\u0648\u0633\u0637 \u0627\u0631\u06cc\u0634 \u06af\u0627\u0645\u0627\u060c \u0631\u06cc\u0686\u0627\u0631\u062f \u0647\u0644\u0645\u060c \u0631\u0627\u0644\u0641 \u062c\u0627\u0646\u0633\u0648\u0646\u060c \u062c\u0627\u0646 \u0648\u0644\u06cc\u0633\u06cc\u062f\u0632.<\/p>\n<p>\u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0627\u0648\u0644 \u0633\u0631 \u062a\u0648\u0633\u0637 \u0627\u0631\u06cc\u06a9 \u0641\u0631\u06cc\u0645\u0646\u060c \u0627\u0644\u06cc\u0632\u0627\u0628\u062a \u0631\u0627\u0628\u0633\u0648\u0646.<br \/>\nRefactoring Guru &#8211; \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/p>\n<div data-article-id=\"2105073\" id=\"article-body\">\n<p>\u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631\u060c <strong>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644<\/strong> \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u0627\u0628\u0632\u0627\u0631 \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0628\u0631\u0627\u06cc \u062c\u062f\u0627 \u06a9\u0631\u062f\u0646 \u0627\u0646\u062a\u0632\u0627\u0639 \u0627\u0632 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u0631\u062c\u0633\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f \u0648 \u0628\u0647 \u0647\u0631 \u062f\u0648 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f. \u0627\u06cc\u0646 \u0628\u0647 \u0648\u06cc\u0698\u0647 \u062f\u0631 \u0647\u0646\u06af\u0627\u0645 \u0628\u0631\u062e\u0648\u0631\u062f \u0628\u0627 \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647 \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u0634\u0645\u0627 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062c\u062f\u0627\u0633\u0627\u0632\u06cc \u0631\u0627\u0628\u0637 \u0627\u0632 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u062f\u0648\u0646 \u0627\u062c\u0628\u0627\u0631 \u0622\u0646\u0647\u0627 \u0628\u0647 \u0633\u0627\u062e\u062a\u0627\u0631\u0647\u0627\u06cc \u0633\u0641\u062a \u0648 \u0633\u062e\u062a \u062f\u0627\u0631\u06cc\u062f\u060c \u0645\u0641\u06cc\u062f \u0627\u0633\u062a. \u0627\u06cc\u0646 \u0628\u0647 \u0634\u0645\u0627 \u0627\u0645\u06a9\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u06cc\u06a9 \u06a9\u0644\u0627\u0633 \u0628\u0632\u0631\u06af \u06cc\u0627 \u0645\u062c\u0645\u0648\u0639\u0647 \u0627\u06cc \u0627\u0632 \u06a9\u0644\u0627\u0633 \u0647\u0627\u06cc \u0646\u0632\u062f\u06cc\u06a9 \u0628\u0647 \u0647\u0645 \u0631\u0627 \u0628\u0647 \u062f\u0648 \u0633\u0644\u0633\u0644\u0647 \u0645\u0631\u0627\u062a\u0628 \u0645\u062c\u0632\u0627 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u0646\u06cc\u062f &#8211; \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc &#8211; \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0645\u0633\u062a\u0642\u0644 \u0627\u0632 \u06cc\u06a9\u062f\u06cc\u06af\u0631 \u062a\u0648\u0633\u0639\u0647 \u06cc\u0627\u0628\u0646\u062f.<\/p>\n<p>\u0627\u06cc\u0646 \u0648\u0628\u0644\u0627\u06af \u0628\u0647 \u0628\u0631\u0631\u0633\u06cc \u0627\u06cc\u0646 \u0645\u0648\u0636\u0648\u0639 \u0645\u06cc \u067e\u0631\u062f\u0627\u0632\u062f <strong>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644<\/strong>\u060c \u0645\u0641\u0627\u0647\u06cc\u0645 \u0622\u0646 \u0631\u0627 \u062a\u0648\u0636\u06cc\u062d \u062f\u0647\u06cc\u062f\u060c \u0645\u062b\u0627\u0644 \u0647\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u06cc\u062f \u0648 \u0646\u062d\u0648\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0622\u0646 \u0631\u0627 \u062f\u0631 \u062c\u0627\u0648\u0627 \u0628\u0647 \u0646\u0645\u0627\u06cc\u0634 \u0628\u06af\u0630\u0627\u0631\u06cc\u062f.<\/p>\n<hr\/>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C_%D9%BE%D9%84_%DA%86%DB%8C%D8%B3%D8%AA%D8%9F\" >\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0686\u06cc\u0633\u062a\u061f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%DA%86%D9%87_%D8%B2%D9%85%D8%A7%D9%86%DB%8C_%D8%A7%D8%B2_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C_%D9%BE%D9%84_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%DA%A9%D9%86%DB%8C%D9%85%D8%9F\" >\u0686\u0647 \u0632\u0645\u0627\u0646\u06cc \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645\u061f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D8%A7%D8%AC%D8%B2%D8%A7%DB%8C_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C_%D9%BE%D9%84\" >\u0627\u062c\u0632\u0627\u06cc \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D8%B3%D8%A7%D8%AE%D8%AA%D8%A7%D8%B1_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\" >\u0633\u0627\u062e\u062a\u0627\u0631 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%AB%D8%A7%D9%84_%D8%B3%DB%8C%D8%B3%D8%AA%D9%85_%DA%A9%D9%86%D8%AA%D8%B1%D9%84_%D8%A7%D8%B2_%D8%B1%D8%A7%D9%87_%D8%AF%D9%88%D8%B1\" >\u0645\u062b\u0627\u0644: \u0633\u06cc\u0633\u062a\u0645 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84_%DA%AF%D8%A7%D9%85_%D8%A8%D9%87_%DA%AF%D8%A7%D9%85_%D8%AF%D8%B1_%D8%AC%D8%A7%D9%88%D8%A7\" >\u0627\u0644\u06af\u0648\u06cc \u067e\u0644 \u06af\u0627\u0645 \u0628\u0647 \u06af\u0627\u0645 \u062f\u0631 \u062c\u0627\u0648\u0627<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF_Implementor_%D8%B1%D8%A7%D8%A8%D8%B7\" >\u0645\u0631\u062d\u0644\u0647 1: \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f Implementor \u0631\u0627\u0628\u0637<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_%DB%B2_%D9%BE%DB%8C%D8%A7%D8%AF%D9%87%E2%80%8C%DA%A9%D9%86%D9%86%D8%AF%D9%87%E2%80%8C%D9%87%D8%A7%DB%8C_%D8%A8%D8%AA%D9%86_%D8%A8%D8%B1%D8%A7%DB%8C_%D8%AF%D8%B3%D8%AA%DA%AF%D8%A7%D9%87%E2%80%8C%D9%87%D8%A7_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 \u06f2: \u067e\u06cc\u0627\u062f\u0647\u200c\u06a9\u0646\u0646\u062f\u0647\u200c\u0647\u0627\u06cc \u0628\u062a\u0646 \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u06af\u0627\u0647\u200c\u0647\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF_Abstraction_%DA%A9%D9%84%D8%A7%D8%B3\" >\u0645\u0631\u062d\u0644\u0647 3: \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f Abstraction \u06a9\u0644\u0627\u0633<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%D8%A7%D9%86%D8%AA%D8%B2%D8%A7%D8%B9%D8%A7%D8%AA_%D8%A7%D8%B5%D9%84%D8%A7%D8%AD_%D8%B4%D8%AF%D9%87_%D8%A8%D8%B1%D8%A7%DB%8C_%D8%A7%D9%86%D9%88%D8%A7%D8%B9_%D9%85%D8%AE%D8%AA%D9%84%D9%81_%D8%A7%D8%B2_%D8%B1%D8%A7%D9%87_%D8%AF%D9%88%D8%B1\" >\u0645\u0631\u062d\u0644\u0647 4: \u0627\u06cc\u062c\u0627\u062f \u0627\u0646\u062a\u0632\u0627\u0639\u0627\u062a \u0627\u0635\u0644\u0627\u062d \u0634\u062f\u0647 \u0628\u0631\u0627\u06cc \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\" >\u0645\u0631\u062d\u0644\u0647 5: \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D8%AE%D8%B1%D9%88%D8%AC%DB%8C\" >\u062e\u0631\u0648\u062c\u06cc:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%B2%D8%A7%DB%8C%D8%A7%DB%8C_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\" >\u0645\u0632\u0627\u06cc\u0627\u06cc \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D8%B9%D8%A7%DB%8C%D8%A8_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\" >\u0645\u0639\u0627\u06cc\u0628 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C\" >\u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/nabfollower.com\/blog\/understanding-the-bridge-design-pattern-a-comprehensive-guide-ff8\/#%D9%85%D9%86%D8%A7%D8%A8%D8%B9_%D8%A8%D8%B1%D8%A7%DB%8C_%D9%85%D8%B7%D8%A7%D9%84%D8%B9%D9%87_%D8%A8%DB%8C%D8%B4%D8%AA%D8%B1\" >\u0645\u0646\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u0645\u0637\u0627\u0644\u0639\u0647 \u0628\u06cc\u0634\u062a\u0631<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C_%D9%BE%D9%84_%DA%86%DB%8C%D8%B3%D8%AA%D8%9F\"><\/span>\n<p>  <strong>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0686\u06cc\u0633\u062a\u061f<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0631\u0627 <strong>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644<\/strong> \u06cc\u06a9 \u0627\u0644\u06af\u0648\u06cc \u0633\u0627\u062e\u062a\u0627\u0631\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0628\u0631\u0627\u06cc &#8220;\u062c\u062f\u0627 \u06a9\u0631\u062f\u0646&#8221; \u06cc\u06a9 \u0627\u0646\u062a\u0632\u0627\u0639 \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u0622\u0646 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u062a\u0627 \u0627\u06cc\u0646 \u062f\u0648 \u0628\u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f. \u0627\u06cc\u0646 \u0627\u0644\u06af\u0648 \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0632\u0645\u0627\u0646\u06cc \u0645\u0641\u06cc\u062f \u0627\u0633\u062a \u06a9\u0647 \u0686\u0646\u062f\u06cc\u0646 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u0645\u06a9\u0646 \u0628\u0631\u0627\u06cc \u06cc\u06a9 \u0627\u0646\u062a\u0632\u0627\u0639 \u0645\u0639\u06cc\u0646 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f\u060c \u0648 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u0627\u0632 \u062a\u0639\u062f\u0627\u062f \u0632\u06cc\u0627\u062f\u06cc \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0647\u0645\u0647 \u062a\u0631\u06a9\u06cc\u0628\u200c\u0647\u0627\u06cc \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0627\u062c\u062a\u0646\u0627\u0628 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u0628\u0647 \u0632\u0628\u0627\u0646 \u0633\u0627\u062f\u0647 \u062a\u0631:<\/p>\n<ul>\n<li>\n<strong>\u0627\u0646\u062a\u0632\u0627\u0639<\/strong> \u0628\u0647 \u0646\u0645\u0627\u06cc \u0633\u0637\u062d \u0628\u0627\u0644\u0627 (\u0645\u062b\u0644\u0627\u064b \u0631\u0627\u0628\u0637 \u06cc\u0627 \u06a9\u0644\u0627\u0633 \u0627\u0646\u062a\u0632\u0627\u0639\u06cc) \u0627\u0634\u0627\u0631\u0647 \u062f\u0627\u0631\u062f.<\/li>\n<li>\n<strong>\u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc<\/strong> \u0628\u0647 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0633\u0637\u062d \u067e\u0627\u06cc\u06cc\u0646 (\u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c \u06a9\u0644\u0627\u0633 \u0647\u0627 \u06cc\u0627 \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u0628\u062a\u0646\u06cc) \u0627\u0634\u0627\u0631\u0647 \u062f\u0627\u0631\u062f.<\/li>\n<\/ul>\n<p>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u06cc\u06a9 \u067e\u0644 (\u0631\u0627\u0628\u0637) \u0628\u06cc\u0646 \u0627\u06cc\u0646 \u062f\u0648 \u0639\u0646\u0635\u0631 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0628\u0647 \u0634\u0645\u0627 \u0627\u06cc\u0646 \u0627\u0645\u06a9\u0627\u0646 \u0631\u0627 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u06cc\u06a9\u06cc \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u0623\u062b\u06cc\u0631 \u0628\u0631 \u062f\u06cc\u06af\u0631\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%DA%86%D9%87_%D8%B2%D9%85%D8%A7%D9%86%DB%8C_%D8%A7%D8%B2_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C_%D9%BE%D9%84_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%DA%A9%D9%86%DB%8C%D9%85%D8%9F\"><\/span>\n<p>  <strong>\u0686\u0647 \u0632\u0645\u0627\u0646\u06cc \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645\u061f<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0634\u0645\u0627 \u0628\u0627\u06cc\u062f \u0627\u0644\u06af\u0648\u06cc Bridge \u0631\u0627 \u062f\u0631 \u0633\u0646\u0627\u0631\u06cc\u0648\u0647\u0627\u06cc \u0632\u06cc\u0631 \u062f\u0631 \u0646\u0638\u0631 \u0628\u06af\u06cc\u0631\u06cc\u062f:<\/p>\n<ul>\n<li>\u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0647\u0645 \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u0647\u0645 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u0646\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f\u060c \u0648 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc\u062f \u0627\u0632 \u0627\u0646\u0641\u062c\u0627\u0631 \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633\u200c\u0647\u0627 \u06a9\u0647 \u0627\u0632 \u062a\u0644\u0627\u0634 \u0628\u0631\u0627\u06cc \u062a\u0631\u06a9\u06cc\u0628 \u0647\u0631 \u0627\u0646\u062a\u0632\u0627\u0639 \u0628\u0627 \u0647\u0631 \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0646\u0627\u0634\u06cc \u0645\u06cc\u200c\u0634\u0648\u062f\u060c \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u06a9\u0646\u06cc\u062f.<\/li>\n<li>\u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0645\u06cc \u062e\u0648\u0627\u0647\u06cc\u062f \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0631\u0627 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 \u062e\u0648\u062f \u0628\u0647\u0628\u0648\u062f \u0628\u062e\u0634\u06cc\u062f.<\/li>\n<li>\u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u063a\u06cc\u06cc\u0631 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u062f\u0648\u0646 \u062a\u063a\u06cc\u06cc\u0631 \u0627\u0646\u062a\u0632\u0627\u0639 \u062f\u0627\u0631\u06cc\u062f (\u06cc\u0627 \u0628\u0631\u0639\u06a9\u0633).<\/li>\n<\/ul>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A7%D8%AC%D8%B2%D8%A7%DB%8C_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C_%D9%BE%D9%84\"><\/span>\n<p>  <strong>\u0627\u062c\u0632\u0627\u06cc \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0627\u0644\u06af\u0648\u06cc \u067e\u0644 \u0634\u0627\u0645\u0644 \u0627\u062c\u0632\u0627\u06cc \u06a9\u0644\u06cc\u062f\u06cc \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<ol>\n<li>\n<strong>\u0627\u0646\u062a\u0632\u0627\u0639<\/strong>: \u0627\u06cc\u0646 \u0631\u0627\u0628\u0637 \u06a9\u0646\u062a\u0631\u0644 \u0633\u0637\u062d \u0628\u0627\u0644\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u062d\u0627\u0648\u06cc \u0627\u0631\u062c\u0627\u0639 \u0628\u0647 \u06cc\u06a9 \u0634\u06cc \u0627\u0632 \u0646\u0648\u0639 \u0627\u0633\u062a <code>Implementor<\/code> \u0648 \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u0628\u0631\u062e\u06cc \u0648\u0638\u0627\u06cc\u0641 \u0631\u0627 \u0628\u0647 \u0622\u0646 \u0645\u062d\u0648\u0644 \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>Refined Abstraction<\/strong>: \u06cc\u06a9 \u0646\u0633\u062e\u0647 \u062a\u0635\u0641\u06cc\u0647 \u0634\u062f\u0647 \u0627\u0632 <code>Abstraction<\/code> \u06a9\u0647 \u0631\u0627\u0628\u0637 \u0627\u0635\u0644\u06cc \u0627\u0646\u062a\u0632\u0627\u0639 \u0631\u0627 \u06af\u0633\u062a\u0631\u0634 \u0645\u06cc \u062f\u0647\u062f.<\/li>\n<li>\n<strong>\u0645\u062c\u0631\u06cc<\/strong>: \u0627\u06cc\u0646 \u0631\u0627\u0628\u0637 \u0631\u0627 \u0628\u0631\u0627\u06cc \u06a9\u0644\u0627\u0633 \u0647\u0627\u06cc \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f. \u0627\u06cc\u0646 \u062e\u0648\u062f \u0627\u062c\u0631\u0627\u06cc \u0645\u0644\u0645\u0648\u0633 \u0646\u06cc\u0633\u062a\u060c \u0628\u0644\u06a9\u0647 \u067e\u0644\u06cc \u0628\u0631\u0627\u06cc \u0622\u0646 \u0627\u0633\u062a.<\/li>\n<li>\n<strong>ConcreteImplementor<\/strong>: \u0627\u062c\u0631\u0627\u06cc \u0645\u0644\u0645\u0648\u0633 <code>Implementor<\/code> \u0631\u0627\u0628\u0637\u06cc \u06a9\u0647 \u0627\u062c\u0631\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc \u0639\u0645\u0644\u06cc\u0627\u062a \u062a\u0639\u0631\u06cc\u0641 \u0634\u062f\u0647 \u062f\u0631 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f <code>Implementor<\/code>.<\/li>\n<\/ol>\n<h3><span class=\"ez-toc-section\" id=\"%D8%B3%D8%A7%D8%AE%D8%AA%D8%A7%D8%B1_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\"><\/span>\n<p>  <strong>\u0633\u0627\u062e\u062a\u0627\u0631 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>        Abstraction\n            |\n   +------------------+\n   |                  |\nRefinedAbstraction  Implementor\n                        |\n             +-------------------+\n             |                   |\n    ConcreteImplementorA    ConcreteImplementorB\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D8%B3%DB%8C%D8%B3%D8%AA%D9%85_%DA%A9%D9%86%D8%AA%D8%B1%D9%84_%D8%A7%D8%B2_%D8%B1%D8%A7%D9%87_%D8%AF%D9%88%D8%B1\"><\/span>\n<p>  <strong>\u0645\u062b\u0627\u0644: \u0633\u06cc\u0633\u062a\u0645 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0628\u06cc\u0627\u06cc\u06cc\u062f \u0627\u0632 \u0645\u062b\u0627\u0644 a \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645 <strong>\u0633\u06cc\u0633\u062a\u0645 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/strong> \u0628\u0631\u0627\u06cc \u0627\u0646\u0648\u0627\u0639 \u062f\u0633\u062a\u06af\u0627\u0647 \u0647\u0627\u06cc \u0627\u0644\u06a9\u062a\u0631\u0648\u0646\u06cc\u06a9\u06cc \u0628\u0631\u0627\u06cc \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u0646 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644. \u062a\u0635\u0648\u0631 \u06a9\u0646\u06cc\u062f \u0645\u0627 \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641\u06cc \u0627\u0632 \u062f\u0633\u062a\u06af\u0627\u0647 \u0647\u0627 (\u0645\u0627\u0646\u0646\u062f \u062a\u0644\u0648\u06cc\u0632\u06cc\u0648\u0646\u060c \u0631\u0627\u062f\u06cc\u0648) \u0648 \u06a9\u0646\u062a\u0631\u0644 \u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 (\u0645\u0627\u0646\u0646\u062f BasicRemote\u060c AdvancedRemote) \u062f\u0627\u0631\u06cc\u0645.<\/p>\n<p>\u0628\u062f\u0648\u0646 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644\u060c \u0627\u06af\u0631 \u0628\u062e\u0648\u0627\u0647\u06cc\u0645 \u0627\u06cc\u0646 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0631\u0627 \u062a\u0631\u06a9\u06cc\u0628 \u06a9\u0646\u06cc\u0645\u060c \u0628\u0631\u0627\u06cc \u0647\u0631 \u062a\u0631\u06a9\u06cc\u0628 \u0628\u0647 \u06cc\u06a9 \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u0645 \u06a9\u0647 \u0645\u0646\u062c\u0631 \u0628\u0647 \u0633\u0644\u0633\u0644\u0647 \u0645\u0631\u0627\u062a\u0628 \u06a9\u0644\u0627\u0633 \u0628\u0632\u0631\u06af\u06cc \u0645\u06cc \u0634\u0648\u062f:<\/p>\n<ul>\n<li>\n<code>BasicRemoteTV<\/code>\u060c <code>AdvancedRemoteTV<\/code>\u060c <code>BasicRemoteRadio<\/code>\u060c <code>AdvancedRemoteRadio<\/code>\u060c \u0648 \u063a\u06cc\u0631\u0647.<\/li>\n<\/ul>\n<p>\u0627\u06cc\u0646 \u0628\u0647 \u0633\u0631\u0639\u062a \u063a\u06cc\u0631\u0642\u0627\u0628\u0644 \u06a9\u0646\u062a\u0631\u0644 \u0645\u06cc \u0634\u062f. \u062f\u0631 \u0639\u0648\u0636\u060c \u0628\u0627 \u0627\u0639\u0645\u0627\u0644 \u0627\u0644\u06af\u0648\u06cc Bridge\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u0645 \u0622\u0646 \u0631\u0627 \u062c\u062f\u0627 \u06a9\u0646\u06cc\u0645 <strong>\u0631\u0627\u0628\u0637 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/strong> \u0627\u0632 <strong>\u0631\u0627\u0628\u0637 \u062f\u0633\u062a\u06af\u0627\u0647<\/strong>\u060c \u0633\u06cc\u0633\u062a\u0645 \u0631\u0627 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u062a\u0631 \u0648 \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u062a\u0631 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84_%DA%AF%D8%A7%D9%85_%D8%A8%D9%87_%DA%AF%D8%A7%D9%85_%D8%AF%D8%B1_%D8%AC%D8%A7%D9%88%D8%A7\"><\/span>\n<p>  <strong>\u0627\u0644\u06af\u0648\u06cc \u067e\u0644 \u06af\u0627\u0645 \u0628\u0647 \u06af\u0627\u0645 \u062f\u0631 \u062c\u0627\u0648\u0627<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF_Implementor_%D8%B1%D8%A7%D8%A8%D8%B7\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f <code>Implementor<\/code> \u0631\u0627\u0628\u0637<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"c1\">\/\/ The Implementor defines the interface for implementation classes.<\/span>\n<span class=\"kd\">public<\/span> <span class=\"kd\">interface<\/span> <span class=\"nc\">Device<\/span> <span class=\"o\">{<\/span>\n    <span class=\"kt\">void<\/span> <span class=\"nf\">turnOn<\/span><span class=\"o\">();<\/span>\n    <span class=\"kt\">void<\/span> <span class=\"nf\">turnOff<\/span><span class=\"o\">();<\/span>\n    <span class=\"kt\">void<\/span> <span class=\"nf\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span><span class=\"o\">);<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h4><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_%DB%B2_%D9%BE%DB%8C%D8%A7%D8%AF%D9%87%E2%80%8C%DA%A9%D9%86%D9%86%D8%AF%D9%87%E2%80%8C%D9%87%D8%A7%DB%8C_%D8%A8%D8%AA%D9%86_%D8%A8%D8%B1%D8%A7%DB%8C_%D8%AF%D8%B3%D8%AA%DA%AF%D8%A7%D9%87%E2%80%8C%D9%87%D8%A7_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 \u06f2: \u067e\u06cc\u0627\u062f\u0647\u200c\u06a9\u0646\u0646\u062f\u0647\u200c\u0647\u0627\u06cc \u0628\u062a\u0646 \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u06af\u0627\u0647\u200c\u0647\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"c1\">\/\/ ConcreteImplementorA: A TV device<\/span>\n<span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">TV<\/span> <span class=\"kd\">implements<\/span> <span class=\"nc\">Device<\/span> <span class=\"o\">{<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kt\">boolean<\/span> <span class=\"n\">on<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">false<\/span><span class=\"o\">;<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">10<\/span><span class=\"o\">;<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOn<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">on<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">true<\/span><span class=\"o\">;<\/span>\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"TV is now ON\"<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOff<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">on<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">false<\/span><span class=\"o\">;<\/span>\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"TV is now OFF\"<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">volume<\/span> <span class=\"o\">=<\/span> <span class=\"n\">volume<\/span><span class=\"o\">;<\/span>\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"TV Volume set to \"<\/span> <span class=\"o\">+<\/span> <span class=\"n\">volume<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n<span class=\"o\">}<\/span>\n\n<span class=\"c1\">\/\/ ConcreteImplementorB: A Radio device<\/span>\n<span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">Radio<\/span> <span class=\"kd\">implements<\/span> <span class=\"nc\">Device<\/span> <span class=\"o\">{<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kt\">boolean<\/span> <span class=\"n\">on<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">false<\/span><span class=\"o\">;<\/span>\n    <span class=\"kd\">private<\/span> <span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">5<\/span><span class=\"o\">;<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOn<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">on<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">true<\/span><span class=\"o\">;<\/span>\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"Radio is now ON\"<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOff<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">on<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">false<\/span><span class=\"o\">;<\/span>\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"Radio is now OFF\"<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">volume<\/span> <span class=\"o\">=<\/span> <span class=\"n\">volume<\/span><span class=\"o\">;<\/span>\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"Radio Volume set to \"<\/span> <span class=\"o\">+<\/span> <span class=\"n\">volume<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h4><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF_Abstraction_%DA%A9%D9%84%D8%A7%D8%B3\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f <code>Abstraction<\/code> \u06a9\u0644\u0627\u0633<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"c1\">\/\/ The Abstraction defines the interface for using the remote control.<\/span>\n<span class=\"kd\">public<\/span> <span class=\"kd\">abstract<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">RemoteControl<\/span> <span class=\"o\">{<\/span>\n    <span class=\"kd\">protected<\/span> <span class=\"nc\">Device<\/span> <span class=\"n\">device<\/span><span class=\"o\">;<\/span>\n\n    <span class=\"kd\">public<\/span> <span class=\"nf\">RemoteControl<\/span><span class=\"o\">(<\/span><span class=\"nc\">Device<\/span> <span class=\"n\">device<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"k\">this<\/span><span class=\"o\">.<\/span><span class=\"na\">device<\/span> <span class=\"o\">=<\/span> <span class=\"n\">device<\/span><span class=\"o\">;<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"kd\">public<\/span> <span class=\"kd\">abstract<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOn<\/span><span class=\"o\">();<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kd\">abstract<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOff<\/span><span class=\"o\">();<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kd\">abstract<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span><span class=\"o\">);<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h4><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%D8%A7%D9%86%D8%AA%D8%B2%D8%A7%D8%B9%D8%A7%D8%AA_%D8%A7%D8%B5%D9%84%D8%A7%D8%AD_%D8%B4%D8%AF%D9%87_%D8%A8%D8%B1%D8%A7%DB%8C_%D8%A7%D9%86%D9%88%D8%A7%D8%B9_%D9%85%D8%AE%D8%AA%D9%84%D9%81_%D8%A7%D8%B2_%D8%B1%D8%A7%D9%87_%D8%AF%D9%88%D8%B1\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u0627\u06cc\u062c\u0627\u062f \u0627\u0646\u062a\u0632\u0627\u0639\u0627\u062a \u0627\u0635\u0644\u0627\u062d \u0634\u062f\u0647 \u0628\u0631\u0627\u06cc \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"c1\">\/\/ RefinedAbstraction: A basic remote control<\/span>\n<span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">BasicRemote<\/span> <span class=\"kd\">extends<\/span> <span class=\"nc\">RemoteControl<\/span> <span class=\"o\">{<\/span>\n\n    <span class=\"kd\">public<\/span> <span class=\"nf\">BasicRemote<\/span><span class=\"o\">(<\/span><span class=\"nc\">Device<\/span> <span class=\"n\">device<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"kd\">super<\/span><span class=\"o\">(<\/span><span class=\"n\">device<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOn<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">device<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOn<\/span><span class=\"o\">();<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOff<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">device<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOff<\/span><span class=\"o\">();<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">device<\/span><span class=\"o\">.<\/span><span class=\"na\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"n\">volume<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n<span class=\"o\">}<\/span>\n\n<span class=\"c1\">\/\/ RefinedAbstraction: An advanced remote control with additional features<\/span>\n<span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">AdvancedRemote<\/span> <span class=\"kd\">extends<\/span> <span class=\"nc\">RemoteControl<\/span> <span class=\"o\">{<\/span>\n\n    <span class=\"kd\">public<\/span> <span class=\"nf\">AdvancedRemote<\/span><span class=\"o\">(<\/span><span class=\"nc\">Device<\/span> <span class=\"n\">device<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"kd\">super<\/span><span class=\"o\">(<\/span><span class=\"n\">device<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOn<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">device<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOn<\/span><span class=\"o\">();<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">turnOff<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">device<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOff<\/span><span class=\"o\">();<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"nd\">@Override<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"kt\">int<\/span> <span class=\"n\">volume<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"n\">device<\/span><span class=\"o\">.<\/span><span class=\"na\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"n\">volume<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n\n    <span class=\"c1\">\/\/ Additional functionality like mute<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">mute<\/span><span class=\"o\">()<\/span> <span class=\"o\">{<\/span>\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"Muting the device\"<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">device<\/span><span class=\"o\">.<\/span><span class=\"na\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"mi\">0<\/span><span class=\"o\">);<\/span>\n    <span class=\"o\">}<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h4><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 5: \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u0645 \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc Bridge \u0628\u0631\u0627\u06cc \u06a9\u0646\u062a\u0631\u0644 \u062f\u0633\u062a\u06af\u0627\u0647 \u0647\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0646\u0648\u0627\u0639 \u0645\u062e\u062a\u0644\u0641 \u0631\u06cc\u0645\u0648\u062a \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight java\"><code><span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">BridgePatternExample<\/span> <span class=\"o\">{<\/span>\n    <span class=\"kd\">public<\/span> <span class=\"kd\">static<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">main<\/span><span class=\"o\">(<\/span><span class=\"nc\">String<\/span><span class=\"o\">[]<\/span> <span class=\"n\">args<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span>\n        <span class=\"c1\">\/\/ Use TV with Basic Remote<\/span>\n        <span class=\"nc\">Device<\/span> <span class=\"n\">tv<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"no\">TV<\/span><span class=\"o\">();<\/span>\n        <span class=\"nc\">RemoteControl<\/span> <span class=\"n\">basicRemote<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">BasicRemote<\/span><span class=\"o\">(<\/span><span class=\"n\">tv<\/span><span class=\"o\">);<\/span>\n\n        <span class=\"n\">basicRemote<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOn<\/span><span class=\"o\">();<\/span>\n        <span class=\"n\">basicRemote<\/span><span class=\"o\">.<\/span><span class=\"na\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"mi\">20<\/span><span class=\"o\">);<\/span>\n        <span class=\"n\">basicRemote<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOff<\/span><span class=\"o\">();<\/span>\n\n        <span class=\"nc\">System<\/span><span class=\"o\">.<\/span><span class=\"na\">out<\/span><span class=\"o\">.<\/span><span class=\"na\">println<\/span><span class=\"o\">(<\/span><span class=\"s\">\"\\n---\"<\/span><span class=\"o\">);<\/span>\n\n        <span class=\"c1\">\/\/ Use Radio with Advanced Remote<\/span>\n        <span class=\"nc\">Device<\/span> <span class=\"n\">radio<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">Radio<\/span><span class=\"o\">();<\/span>\n        <span class=\"nc\">RemoteControl<\/span> <span class=\"n\">advancedRemote<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">AdvancedRemote<\/span><span class=\"o\">(<\/span><span class=\"n\">radio<\/span><span class=\"o\">);<\/span>\n\n        <span class=\"n\">advancedRemote<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOn<\/span><span class=\"o\">();<\/span>\n        <span class=\"n\">advancedRemote<\/span><span class=\"o\">.<\/span><span class=\"na\">setVolume<\/span><span class=\"o\">(<\/span><span class=\"mi\">15<\/span><span class=\"o\">);<\/span>\n        <span class=\"o\">((<\/span><span class=\"nc\">AdvancedRemote<\/span><span class=\"o\">)<\/span> <span class=\"n\">advancedRemote<\/span><span class=\"o\">).<\/span><span class=\"na\">mute<\/span><span class=\"o\">();<\/span>\n        <span class=\"n\">advancedRemote<\/span><span class=\"o\">.<\/span><span class=\"na\">turnOff<\/span><span class=\"o\">();<\/span>\n    <span class=\"o\">}<\/span>\n<span class=\"o\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h4><span class=\"ez-toc-section\" id=\"%D8%AE%D8%B1%D9%88%D8%AC%DB%8C\"><\/span>\n<p>  \u062e\u0631\u0648\u062c\u06cc:<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>TV is now ON\nTV Volume set to 20\nTV is now OFF\n\n---\nRadio is now ON\nRadio Volume set to 15\nMuting the device\nRadio is now OFF\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B2%D8%A7%DB%8C%D8%A7%DB%8C_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\"><\/span>\n<p>  <strong>\u0645\u0632\u0627\u06cc\u0627\u06cc \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\n<strong>\u062a\u0641\u06a9\u06cc\u06a9 \u0646\u06af\u0631\u0627\u0646\u06cc \u0647\u0627<\/strong>: \u0627\u0644\u06af\u0648 \u0627\u0646\u062a\u0632\u0627\u0639 (\u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631) \u0631\u0627 \u0627\u0632 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc (\u062f\u0633\u062a\u06af\u0627\u0647) \u062c\u062f\u0627 \u0645\u06cc \u06a9\u0646\u062f\u060c \u06a9\u0647 \u0627\u0635\u0644\u0627\u062d \u06cc\u06a9\u06cc \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u0623\u062b\u06cc\u0631 \u0628\u0631 \u062f\u06cc\u06af\u0631\u06cc \u0622\u0633\u0627\u0646 \u062a\u0631 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>\u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0628\u0647\u0628\u0648\u062f \u06cc\u0627\u0641\u062a\u0647<\/strong>: \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u062f\u0633\u062a\u06af\u0627\u0647 \u06cc\u0627 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0631 \u0642\u0633\u0645\u062a \u062f\u06cc\u06af\u0631 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u06cc\u062f.<\/li>\n<li>\n<strong>\u06a9\u0627\u0647\u0634 \u062a\u06a9\u0631\u0627\u0631 \u06a9\u062f<\/strong>: \u0628\u0627 \u0627\u062c\u0627\u0632\u0647 \u062f\u0627\u062f\u0646 \u0628\u0647 \u0627\u0646\u062a\u0632\u0627\u0639\u0627\u062a \u0648 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0647\u0627 \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0627\u0632 \u0627\u06cc\u062c\u0627\u062f \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633 \u0647\u0627\u06cc \u063a\u06cc\u0631 \u0636\u0631\u0648\u0631\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u062f.<\/li>\n<\/ul>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B9%D8%A7%DB%8C%D8%A8_%D8%A7%D9%84%DA%AF%D9%88%DB%8C_%D9%BE%D9%84\"><\/span>\n<p>  <strong>\u0645\u0639\u0627\u06cc\u0628 \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\n<strong>\u0627\u0641\u0632\u0627\u06cc\u0634 \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc<\/strong>: \u0627\u0641\u0632\u0648\u062f\u0646 \u06cc\u06a9 \u0644\u0627\u06cc\u0647 \u0627\u0636\u0627\u0641\u06cc \u0627\u0632 \u0627\u0646\u062a\u0632\u0627\u0639 \u0645\u0645\u06a9\u0646 \u0627\u0633\u062a \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u06a9\u062f \u0631\u0627 \u0628\u0647 \u062e\u0635\u0648\u0635 \u0628\u0631\u0627\u06cc \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u0633\u0627\u062f\u0647 \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u062f.<\/li>\n<li>\n<strong>\u063a\u06cc\u0631 \u062c\u0647\u062a<\/strong>: \u0627\u0636\u0627\u0641\u0647 \u0634\u062f\u0646 \u063a\u06cc\u0631\u0645\u0633\u062a\u0642\u06cc\u0645 \u0628\u06cc\u0646 \u0627\u0646\u062a\u0632\u0627\u0639 \u0648 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u06af\u0627\u0647\u06cc \u0627\u0648\u0642\u0627\u062a \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0631\u06a9 \u06a9\u062f \u0631\u0627 \u0633\u062e\u062a \u062a\u0631 \u06a9\u0646\u062f.<\/li>\n<\/ul>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C\"><\/span>\n<p>  <strong>\u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0631\u0648\u0634\u06cc \u0632\u06cc\u0628\u0627 \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647 \u0627\u0633\u062a \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u0647\u0645 \u0627\u0646\u062a\u0632\u0627\u0639\u0627\u062a \u0648 \u0647\u0645 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0622\u0646 \u0647\u0627 \u0628\u0627\u06cc\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f. \u0628\u0627 \u062c\u062f\u0627 \u06a9\u0631\u062f\u0646 \u0627\u06cc\u0646 \u0646\u06af\u0631\u0627\u0646\u06cc \u0647\u0627\u060c \u0627\u0644\u06af\u0648\u06cc Bridge \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc\u060c \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0633\u06cc\u0633\u062a\u0645 \u0631\u0627 \u0628\u0647\u0628\u0648\u062f \u0645\u06cc \u0628\u062e\u0634\u062f.<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u067e\u0633\u062a \u0646\u062d\u0648\u0647 \u0627\u0639\u0645\u0627\u0644 \u0627\u0644\u06af\u0648\u06cc Bridge \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 a \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u06cc\u0645 <strong>\u0633\u06cc\u0633\u062a\u0645 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631<\/strong> \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0646\u0645\u0648\u0646\u0647 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0644\u06af\u0648\u06cc Bridge \u062f\u0631 \u062c\u0627\u0648\u0627\u060c \u062f\u06cc\u062f\u06cc\u0645 \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 \u062f\u0633\u062a\u06af\u0627\u0647\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0645\u06cc\u200c\u062a\u0648\u0627\u0646 \u0628\u0627 \u0686\u0646\u062f\u06cc\u0646 \u0646\u0648\u0639 \u06a9\u0646\u062a\u0631\u0644 \u0627\u0632 \u0631\u0627\u0647 \u062f\u0648\u0631 \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0627\u0646\u0641\u062c\u0627\u0631 \u0632\u06cc\u0631 \u06a9\u0644\u0627\u0633\u200c\u0647\u0627 \u06a9\u0646\u062a\u0631\u0644 \u06a9\u0631\u062f.<\/p>\n<hr\/>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D9%86%D8%A7%D8%A8%D8%B9_%D8%A8%D8%B1%D8%A7%DB%8C_%D9%85%D8%B7%D8%A7%D9%84%D8%B9%D9%87_%D8%A8%DB%8C%D8%B4%D8%AA%D8%B1\"><\/span>\n<p>  <strong>\u0645\u0646\u0627\u0628\u0639 \u0628\u0631\u0627\u06cc \u0645\u0637\u0627\u0644\u0639\u0647 \u0628\u06cc\u0634\u062a\u0631<\/strong><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ol>\n<li>\n<strong>\u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc: \u0639\u0646\u0627\u0635\u0631 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0634\u06cc \u06af\u0631\u0627 \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f<\/strong> \u062a\u0648\u0633\u0637 \u0627\u0631\u06cc\u0634 \u06af\u0627\u0645\u0627\u060c \u0631\u06cc\u0686\u0627\u0631\u062f \u0647\u0644\u0645\u060c \u0631\u0627\u0644\u0641 \u062c\u0627\u0646\u0633\u0648\u0646\u060c \u062c\u0627\u0646 \u0648\u0644\u06cc\u0633\u06cc\u062f\u0632.<\/li>\n<li>\n<strong>\u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0627\u0648\u0644 \u0633\u0631<\/strong> \u062a\u0648\u0633\u0637 \u0627\u0631\u06cc\u06a9 \u0641\u0631\u06cc\u0645\u0646\u060c \u0627\u0644\u06cc\u0632\u0627\u0628\u062a \u0631\u0627\u0628\u0633\u0648\u0646.<\/li>\n<li>Refactoring Guru &#8211; \u0627\u0644\u06af\u0648\u06cc \u067e\u0644<\/li>\n<\/ol><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summarize this content to 400 words in Persian Lang \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0627\u0644\u06af\u0648\u0647\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631\u060c \u0627\u0644\u06af\u0648\u06cc \u0637\u0631\u0627\u062d\u06cc \u067e\u0644 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u0627\u0628\u0632\u0627\u0631 \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0628\u0631\u0627\u06cc \u062c\u062f\u0627 \u06a9\u0631\u062f\u0646 \u0627\u0646\u062a\u0632\u0627\u0639 \u0627\u0632 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0628\u0631\u062c\u0633\u062a\u0647 \u0645\u06cc \u0634\u0648\u062f \u0648 \u0628\u0647 \u0647\u0631 \u062f\u0648 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u0644 \u0645\u062a\u0641\u0627\u0648\u062a \u0628\u0627\u0634\u0646\u062f. \u0627\u06cc\u0646 \u0628\u0647 \u0648\u06cc\u0698\u0647 \u062f\u0631 \u0647\u0646\u06af\u0627\u0645 \u0628\u0631\u062e\u0648\u0631\u062f \u0628\u0627 \u0633\u06cc\u0633\u062a\u0645 \u0647\u0627\u06cc \u067e\u06cc\u0686\u06cc\u062f\u0647 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":83924,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-83923","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/83923","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=83923"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/83923\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/83924"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=83923"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=83923"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=83923"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}