{"id":359,"date":"2019-09-13T00:26:29","date_gmt":"2019-09-12T18:26:29","guid":{"rendered":"http:\/\/blog.ujjal.net\/?p=359"},"modified":"2019-09-13T00:26:31","modified_gmt":"2019-09-12T18:26:31","slug":"%e0%a6%b8%e0%a6%ab%e0%a6%9f%e0%a6%93%e0%a7%9f%e0%a7%8d%e0%a6%af%e0%a6%be%e0%a6%b0-%e0%a6%a1%e0%a6%bf%e0%a6%9c%e0%a6%be%e0%a6%87%e0%a6%a8-%e0%a6%a8%e0%a7%80%e0%a6%a4%e0%a6%bf-software-design-principle","status":"publish","type":"post","link":"https:\/\/blog.ujjal.net\/?p=359","title":{"rendered":"\u09b8\u09ab\u099f\u0993\u09df\u09cd\u09af\u09be\u09b0 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09a8\u09c0\u09a4\u09bf (Software Design Principles)"},"content":{"rendered":"<p>\u09b8\u09ab\u099f\u0993\u09df\u09cd\u09af\u09be\u09b0 \u09a1\u09c7\u09ad\u09c7\u09b2\u09aa\u09ae\u09c7\u09a8\u09cd\u099f\u09c7 <strong>\u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09aa\u09cd\u09b0\u09bf\u09a8\u09cd\u09b8\u09bf\u09aa\u09b2\u09b8<\/strong> \u098f\u0995\u099f\u09c1 \u09ac\u09b9\u09c1\u09b2 \u0986\u09b2\u09c7\u09be\u099a\u09bf\u09a4 \u0993 \u0997\u09c1\u09b0\u09c1\u09a4\u09cd\u09ac\u09aa\u09c1\u09b0\u09cd\u09a8 \u098f\u0995\u099f\u09bf \u09b6\u09ac\u09cd\u09a6\u0964 \u09b8\u09be\u09a7\u09be\u09b0\u09a8\u09a4 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09aa\u09cd\u09b0\u09bf\u09a8\u09cd\u09b8\u09bf\u09aa\u09be\u09b2\u09b8 \u09ac\u09b2\u09a4\u09c7 \u09ac\u09c7\u09be\u099d\u09be\u09a8\u09c7\u09be \u09b9\u09df \u098f\u0995\u0997\u09c1\u099a\u09cd\u099b \u0997\u09be\u0987\u09a1\u09b2\u09be\u0987\u09a8 \u09ac\u09be \u09a8\u09bf\u09df\u09ae \u0995\u09be\u09a8\u09c1\u09a8 \u09af\u09c7\u0997\u09c1\u09b2\u09c7\u09be \u09ae\u09c7\u09a8\u09c7 \u0995\u09c7\u09be\u09a1 \u09b2\u09bf\u0996\u09b2\u09c7 \u09ac\u09be\u099c\u09c7 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u098f\u09dc\u09be\u09a8\u09c7\u09be \u09af\u09be\u09df\u0964 \u09aa\u09cd\u09b0\u09b6\u09cd\u09a8 \u0986\u09b8\u09a4\u09c7 \u09aa\u09be\u09b0\u09c7 \u09af\u09c7 \u098f\u0995\u099f\u09bf \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u0995\u0996\u09a8 \u09ac\u09be\u099c\u09c7 \u09b9\u09a4\u09c7 \u09aa\u09be\u09b0\u09c7\u0964 \u09a7\u09b0\u09c7 \u09a8\u09c7\u0987, \u0995\u09c7\u09be\u09a8 \u098f\u0995\u099f\u09bf \u09b8\u09ab\u099f\u0993\u09df\u09cd\u09af\u09be\u09b0\u09c7\u09b0 \u09a1\u09c7\u09ad\u09c7\u09b2\u09aa\u09ae\u09c7\u09a8\u09cd\u099f \u099a\u09b2\u099b\u09c7\u0964 \u09ae\u09be\u099d\u09aa\u09a5\u09c7 \u098f\u0995\u099f\u09bf \u09a8\u09a4\u09c1\u09a8 \u09ab\u09bf\u099a\u09be\u09b0 \u0987\u09ae\u09cd\u09aa\u09cd\u09b2\u09bf\u09ae\u09c7\u09a8\u09cd\u099f \u0995\u09b0\u09a4\u09c7 \u0997\u09bf\u09df\u09c7 \u09a6\u09c7\u0996\u09be \u0997\u09c7\u09b2 \u09af\u09c7 \u0995\u09c7\u09be\u09a8 \u098f\u0995\u099f\u09bf \u0995\u09cd\u09b2\u09be\u09b8\u09c7\u09b0 \u098f\u0995\u099f\u09bf \u09ae\u09c7\u09a5\u09a1\u09c7\u09b0 \u09b8\u09bf\u0997\u09a8\u09c7\u099a\u09be\u09b0 (\u09ae\u09c7\u09a5\u09a1\u09c7\u09b0 \u09a8\u09be\u09ae, \u0986\u09b0\u09cd\u0997\u09c1\u09ae\u09c7\u09a8\u09cd\u099f \u0997\u09c1\u09b2\u09c7\u09be\u09b0 \u09a8\u09be\u09ae, \u09a1\u09be\u099f\u09be\u099f\u09be\u0987\u09aa, \u09b8\u0982\u0996\u09cd\u09af\u09be) \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u0995\u09b0\u09a4\u09c7 \u09b9\u09ac\u09c7\u0964 \u0995\u09bf\u09a8\u09cd\u09a4\u09c1 \u0987\u09a4\u09bf\u09ae\u09a7\u09cd\u09af\u09c7 \u09aa\u09cd\u09b0\u09be\u09df \u09e7\u09e6\u09e6 \u099c\u09be\u09df\u0997\u09be\u09df \u098f\u0987 \u09ae\u09c7\u09a5\u09a1\u099f\u09bf \u09ac\u09cd\u09af\u09ac\u09b9\u09be\u09b0 \u0995\u09b0\u09be \u09b9\u09df\u09c7\u099b\u09c7\u0964 \u09a4\u09be\u09b0 \u09ae\u09be\u09a8\u09c7 \u098f\u0996\u09a8 \u0993\u0987 \u09e7\u09e6\u09e6 \u099c\u09be\u09df\u0997\u09be\u09b0 \u09ae\u09c7\u09a5\u09a1 \u0995\u09b2 \u0995\u09b0\u09be\u09b0 \u09b8\u09ae\u09df \u09b8\u09bf\u0997\u09a8\u09c7\u099a\u09be\u09b0 \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u0995\u09b0\u09c7 \u09a6\u09bf\u09df\u09c7 \u0986\u09b8\u09a4\u09c7 \u09b9\u09ac\u09c7\u0964 \u0985\u09a5\u09ac\u09be \u0993\u0987 \u0995\u09cd\u09b2\u09be\u09b8\u09c7 \u09a8\u09a4\u09c1\u09a8 \u098f\u0995\u099f\u09bf \u09ae\u09c7\u09a5\u09a1 \u09a4\u09c8\u09b0\u09c0 \u0995\u09b0\u09a4\u09c7 \u09b9\u09ac\u09c7\u0964 \u098f\u099f\u09be\u0995\u09c7\u0987 \u09ac\u09be\u099c\u09c7 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09ac\u09b2\u09be \u09b9\u099a\u09cd\u099b\u09c7\u0964 \u0995\u09be\u09b0\u09a8 \u09a8\u09a4\u09c1\u09a8 \u098f\u0995\u099f\u09bf \u09ab\u09bf\u099a\u09be\u09b0 \u0987\u09ae\u09aa\u09cd\u09b2\u09bf\u09ae\u09c7\u09a8\u09cd\u099f \u0995\u09b0\u09b2\u09c7 \u09af\u09a6\u09bf \u0986\u0997\u09c7\u09b0 \u0987\u09ae\u09aa\u09cd\u09b2\u09bf\u09ae\u09c7\u09a8\u09cd\u099f \u0995\u09b0\u09be \u0985\u09a8\u09cd\u09af\u09be\u09a8\u09cd\u09af \u09ab\u09bf\u099a\u09be\u09b0\u09c7 \u09ac\u09be\u099c\u09c7 \u09aa\u09cd\u09b0\u09ad\u09be\u09ac \u09ab\u09c7\u09b2\u09c7 \u09a4\u09be\u09b9\u09b2\u09c7 \u0993\u0987 \u09a1\u09c7\u09ad\u09c7\u09b2\u09aa\u09ae\u09c7\u09a8\u09cd\u099f\u09c7 \u09b8\u09a0\u09bf\u0995 \u0986\u09b0\u09cd\u0995\u09bf\u099f\u09c7\u0995\u099a\u09be\u09b0 \u09ac\u09be \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09ae\u09c7\u09a8\u09c7 \u0995\u09c7\u09be\u09a1 \u0995\u09b0\u09be \u09b9\u09df \u09a8\u09bf \u09ac\u09b2\u09c7\u0987 \u09a7\u09b0\u09c7 \u09a8\u09c7\u0993\u09df\u09be \u09b9\u09df\u0964 <strong>\u09b0\u09ac\u09be\u09b0\u09cd\u099f \u09ae\u09be\u09b0\u09cd\u099f\u09bf\u09a8 (Robert Martin)<\/strong> \u09a8\u09bf\u099c \u09b2\u09c7\u0996\u09be \u09ac\u0987 &#8220;<strong>Agile Software Development: Principles, Patterns, and Practices<\/strong>&#8221; \u098f \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09aa\u09cd\u09b0\u09bf\u09a8\u09cd\u09b8\u09bf\u09aa\u09be\u09b2 \u0997\u09c1\u09b2\u09c7\u09be \u09b8\u09ae\u09cd\u09aa\u09b0\u09cd\u0995\u09c7 \u09b2\u09bf\u0996\u09c7\u099b\u09c7\u09a8\u0964<\/p>\n<p>\u09b0\u09ac\u09be\u09b0\u09cd\u099f \u09ae\u09be\u09b0\u09cd\u099f\u09bf\u09a8 \u098f\u09b0 \u09ae\u09a4\u09c7 \u0996\u09be\u09b0\u09be\u09aa \u09ac\u09be \u09ac\u09be\u099c\u09c7 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u098f\u09b0 \u09a8\u09bf\u099a\u09c7\u09b0 \u09e9 \u099f\u09bf \u09ac\u09c8\u09b6\u09bf\u09b7\u09cd\u099f\u09cd\u09af \u09a5\u09be\u0995\u09c7\u0964<\/p>\n<ul>\n<li><strong>\u09b0\u09bf\u099c\u09bf\u09a1\u09bf\u099f\u09bf (Rigidity)<\/strong> : \u0995\u09c7\u09be\u09a1\u09c7 \u0995\u09c7\u09be\u09a8 \u0985\u0982\u09b6\u09c7\u09b0 \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u09af\u09a6\u09bf \u09b8\u09bf\u09b8\u09cd\u099f\u09c7\u09ae\u09c7\u09b0 \u0985\u09a8\u09cd\u09af \u0985\u09a8\u09c7\u0995 \u099c\u09be\u09df\u0997\u09be\u09df \u09aa\u09cd\u09b0\u09ad\u09be\u09ac \u09ab\u09c7\u09b2\u09c7 \u09a4\u09be\u09b9\u09b2\u09c7 \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u0995\u09b0\u09be \u09ac\u09cd\u09af\u09df\u09ac\u09b9\u09c1\u09b2 \u09b9\u09df\u09c7 \u09aa\u09dc\u09c7\u0964<\/li>\n<li><strong>\u09ab\u09cd\u09b0\u09be\u09cd\u0997\u09bf\u09b2\u09bf\u099f\u09bf (Fragility)<\/strong> : \u0995\u09c7\u09be\u09a1\u09c7\u09b0 \u0995\u09c7\u09be\u09a8 \u0985\u0982\u09b6\u09c7\u09b0 \u09aa\u09b0\u09bf\u09ac\u09b0\u09cd\u09a4\u09a8 \u09af\u09a6\u09bf \u09b8\u09bf\u09b8\u09cd\u099f\u09c7\u09ae\u09c7\u09b0 \u0985\u09a8\u09cd\u09af \u0995\u09c7\u09be\u09a8 \u09ab\u09bf\u099a\u09be\u09b0 \u0995\u09c7 \u0985\u09a8\u09be\u0995\u09be\u0999\u09cd\u0996\u09bf\u09a4 \u09b9\u09ac\u09c7 \u0985\u0995\u09c7\u099c\u09c7\u09be \u0995\u09b0\u09c7 \u09a6\u09c7\u09df\u0964<\/li>\n<li><strong>\u0987\u09ae\u09c7\u09be\u09ac\u09bf\u09b2\u09bf\u099f\u09bf (Immobility)<\/strong> : \u0995\u09c7\u09be\u09a1\u09c7\u09b0 \u0985\u0982\u09b6 \u098f\u09ae\u09a8\u09ad\u09be\u09ac\u09c7 \u0985\u09cd\u09af\u09be\u09aa\u09b2\u09bf\u0995\u09c7\u09b6\u09a8 \u09a8\u09bf\u09b0\u09cd\u09ad\u09b0 \u09af\u09c7, \u0985\u09a8\u09cd\u09af \u0995\u09c7\u09be\u09a8 \u0985\u09cd\u09af\u09be\u09aa\u09cd\u09b2\u09bf\u0995\u09c7\u09b6\u09a8\u09c7 \u0995\u09c7\u09be\u09a1\u099f\u09c1\u0995\u09c1 \u09ac\u09cd\u09af\u09ac\u09b9\u09be\u09b0 \u0995\u09b0\u09be \u0995\u09a0\u09bf\u09a8 \u09b9\u09df\u0964<\/li>\n<\/ul>\n<p>\u09b8\u09be\u09a7\u09be\u09b0\u09a8 \u09a8\u09bf\u099a\u09c7\u09b0 \u09aa\u09be\u0981\u099a\u099f\u09bf \u09a8\u09bf\u09df\u09ae \u09ae\u09c7\u09a8\u09c7 \u0995\u09c7\u09be\u09a1 \u0995\u09b0\u09b2\u09c7 \u0989\u09aa\u09b0\u09c7\u09b0 \u09ac\u09b0\u09cd\u09a8\u09bf\u09a4 \u09b8\u09ae\u09b8\u09cd\u09af\u09be\u0997\u09c1\u09b2\u09c7\u09be \u098f\u09dc\u09be\u09a8\u09c7\u09be \u09af\u09be\u09df\u0964<br \/>\u09e7\u0964 \u0993\u09aa\u09c7\u09a8 \u0995\u09cd\u09b2\u09c7\u09be\u099c \u09a8\u09c0\u09a4\u09bf (Open Close Principle)<br \/>\u09e8\u0964 \u09a1\u09bf\u09aa\u09c7\u09a8\u09cd\u09a1\u09c7\u09a8\u09cd\u09b8\u09bf \u0987\u09a8\u09ad\u09be\u09b0\u09cd\u09b8\u09a8 \u09a8\u09c0\u09a4\u09bf (Dependency Inversion Principle)<br \/>\u09e9\u0964 \u0987\u09a8\u09cd\u099f\u09be\u09b0\u09ab\u09c7\u09b8 \u09b8\u09c7\u0997\u09cd\u09b0\u09c7\u0997\u09c7\u09b6\u09a8 \u09a8\u09c0\u09a4\u09bf (Interface Segregation Principle)<br \/>\u09ea\u0964 \u09b8\u09bf\u0999\u09cd\u0997\u09c7\u09b2 \u09b0\u09c7\u09b8\u09aa\u09a8\u09b8\u09bf\u09ac\u09bf\u09b2\u09bf\u099f\u09bf \u09a8\u09c0\u09a4\u09bf (Single Responsibility Principle)<br \/>\u09eb\u0964 \u09b2\u09bf\u09b8\u0995\u09ad&#8217;\u09b8 \u09b8\u09be\u09ac\u09b8\u09cd\u099f\u09bf\u099f\u09bf\u0989\u09b6\u09a8 \u09a8\u09c0\u09a4\u09bf (Liskov&#8217;s Substitution Principle)<\/p>\n<p>\u09aa\u09be\u0981\u099a\u099f\u09bf \u09aa\u09cd\u09b0\u09bf\u09a8\u09cd\u09b8\u09bf\u09aa\u09be\u09b2\u09c7\u09b0 \u09ac\u09b0\u09cd\u09a8\u09a8\u09be \u09aa\u09b0\u09c7\u09b0 \u09aa\u09cb\u09b8\u09cd\u099f \u0997\u09c1\u09b2\u09cb\u09a4\u09c7 \u09a6\u09c7\u0993\u09df\u09be \u09b9\u09ac\u09c7\u0964 \u098f\u09b0\u09be \u09aa\u09cd\u09b0\u09a4\u09cd\u09af\u09c7\u0995\u09c7\u0987 \u0986\u09b2\u09be\u09a6\u09be \u0986\u09b2\u09be\u09a6\u09be \u09aa\u09cb\u09b8\u09cd\u099f\u09c7\u09b0 \u09a6\u09be\u09ac\u09c0\u09a6\u09be\u09b0\u0964 \ud83d\ude42<\/p>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u09b8\u09ab\u099f\u0993\u09df\u09cd\u09af\u09be\u09b0 \u09a1\u09c7\u09ad\u09c7\u09b2\u09aa\u09ae\u09c7\u09a8\u09cd\u099f\u09c7 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09aa\u09cd\u09b0\u09bf\u09a8\u09cd\u09b8\u09bf\u09aa\u09b2\u09b8 \u098f\u0995\u099f\u09c1 \u09ac\u09b9\u09c1\u09b2 \u0986\u09b2\u09c7\u09be\u099a\u09bf\u09a4 \u0993 \u0997\u09c1\u09b0\u09c1\u09a4\u09cd\u09ac\u09aa\u09c1\u09b0\u09cd\u09a8 \u098f\u0995\u099f\u09bf \u09b6\u09ac\u09cd\u09a6\u0964 \u09b8\u09be\u09a7\u09be\u09b0\u09a8\u09a4 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09aa\u09cd\u09b0\u09bf\u09a8\u09cd\u09b8\u09bf\u09aa\u09be\u09b2\u09b8 \u09ac\u09b2\u09a4\u09c7 \u09ac\u09c7\u09be\u099d\u09be\u09a8\u09c7\u09be \u09b9\u09df \u098f\u0995\u0997\u09c1\u099a\u09cd\u099b \u0997\u09be\u0987\u09a1\u09b2\u09be\u0987\u09a8 \u09ac\u09be \u09a8\u09bf\u09df\u09ae \u0995\u09be\u09a8\u09c1\u09a8 \u09af\u09c7\u0997\u09c1\u09b2\u09c7\u09be \u09ae\u09c7\u09a8\u09c7 \u0995\u09c7\u09be\u09a1 \u09b2\u09bf\u0996\u09b2\u09c7 \u09ac\u09be\u099c\u09c7 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u098f\u09dc\u09be\u09a8\u09c7\u09be \u09af\u09be\u09df\u0964 \u09aa\u09cd\u09b0\u09b6\u09cd\u09a8 \u0986\u09b8\u09a4\u09c7 \u09aa\u09be\u09b0\u09c7 \u09af\u09c7 \u098f\u0995\u099f\u09bf \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u0995\u0996\u09a8 \u09ac\u09be\u099c\u09c7 \u09b9\u09a4\u09c7 \u09aa\u09be\u09b0\u09c7\u0964 \u09a7\u09b0\u09c7 \u09a8\u09c7\u0987, \u0995\u09c7\u09be\u09a8 \u098f\u0995\u099f\u09bf \u09b8\u09ab\u099f\u0993\u09df\u09cd\u09af\u09be\u09b0\u09c7\u09b0 \u09a1\u09c7\u09ad\u09c7\u09b2\u09aa\u09ae\u09c7\u09a8\u09cd\u099f \u099a\u09b2\u099b\u09c7\u0964 \u09ae\u09be\u099d\u09aa\u09a5\u09c7 \u098f\u0995\u099f\u09bf \u09a8\u09a4\u09c1\u09a8 \u09ab\u09bf\u099a\u09be\u09b0 \u0987\u09ae\u09cd\u09aa\u09cd\u09b2\u09bf\u09ae\u09c7\u09a8\u09cd\u099f \u0995\u09b0\u09a4\u09c7 \u0997\u09bf\u09df\u09c7 \u09a6\u09c7\u0996\u09be &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/blog.ujjal.net\/?p=359\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;\u09b8\u09ab\u099f\u0993\u09df\u09cd\u09af\u09be\u09b0 \u09a1\u09bf\u099c\u09be\u0987\u09a8 \u09a8\u09c0\u09a4\u09bf (Software Design Principles)&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[152],"tags":[],"class_list":["post-359","post","type-post","status-publish","format-standard","hentry","category-design-best-practices"],"_links":{"self":[{"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=\/wp\/v2\/posts\/359","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=359"}],"version-history":[{"count":7,"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=\/wp\/v2\/posts\/359\/revisions"}],"predecessor-version":[{"id":474,"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=\/wp\/v2\/posts\/359\/revisions\/474"}],"wp:attachment":[{"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=359"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=359"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ujjal.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=359"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}