فصل ۶. معماری لایهای: جداسازی دغدغهها
اگه مسئلهت ساده باشه و زمان هم اهمیت زیادی داشته باشه، اصلاً لازمه به معماری فکر کنی؟بستگی داره که بخوای چیزی که میسازی چقدر عمر کنه.اگه قراره موقتی باشه، بیخیال احتیاط شو.ولی اگه نه، پس سادهترین معماریای رو انتخاب کن...
فصل ۵ سبکهای معماری: دستهبندی و فلسفهها
سبکهای معماری زیادی وجود دارن.هر سبک بهدلیلی بهوجود اومده و فلسفهی خاص خودش رو دربارهی نحوه و زمان استفاده داره.درک فلسفهی هر سبک بهت کمک میکنه تشخیص بدی آیا اون سبک برای دامنهی کاری تو مناسب هست یا نه. این...
معماری نرم افزار – فصل چهارم – بخش دوم
وابستگی کامپوننتها (Component Coupling) احتمالاً باید شروع کنم به فکر کردن دربارهی اینکه کامپوننتها چطور با هم تعامل دارن و به هم وابستهان، درسته؟بله، و الان زمان مناسبیه برای پرداختن به این موضوع.وقتی کامپوننتهای اصلی اولیه رو شناسایی میکنی، مهمه...
معماری نرم افزار – فصل چهارم – بخش اول
فصل ۴: مؤلفههای منطقی — اجزای سازنده آمادهای معماری سیستم رو طراحی کنی؟ اونقدر که به نظر میرسه ساده نیست—اگه درست انجامش ندی، ممکنه کل سیستم نرم افزارت مثل یه برج یا پلی که بد طراحی شده به هم بریزه....
معماری نرم افزار – فصل سوم – بخش دوم
گرفتن یک تصمیم معماری بحثکردن دربارهی مزایا و معایب با تیم، جلوی وایتبرد، سرگرمکنندهست؛ ولی در نهایت باید یه تصمیم معماری بگیری. ما قبلاً توی فصل اول دربارهی تصمیمهای معماری صحبت کردیم، اما حالا میخوایم کمی عمیقتر بشیم. وقتی داری...
معماری نرم افزار – فصل سوم – بخش اول
وقتی خبری از «بهترین روشها» (Best Practices) نباشه، چی میشه؟ خب، خوبیِ روشهای بهینه اینه که معمولاً بیدردسر و کمریسک هستن و یه راه مطمئن برای رسیدن به یه هدف خاص به حساب میان. بهشون نمیگن «خوب» یا «بهتر»، بلکه...
معماری نرم افزار – فصل دوم – بخش سوم
پیدا کردن ویژگیهای مهم «میبینم کلی ویژگی معماری داریم… ولی از کجا بفهمم کدومشون برای پروژه من واقعا مهمه؟» ویژگیهای معماری همینجوری از هوا پیدا نمیشن!سه جا هست که باید سراغشون برید تا بفهمید کدوم ویژگیها رو لازم دارید: ۱....
معماری نرم افزار – فصل دوم – بخش دوم
دسته بندی ویژگیهای معماری نرم افزار ویژگیهای معماری (مثل scalability یا modularity) خیلی متنوعن؛ از چیزای سادهی کدنویسی تا مسائل سنگینِ عملیاتی.هیچ لیست استاندارد جهانی براشون وجود نداره(هرچند تلاش کردن) ولی هر سازمان برداشت خودش رو داره.ضمن اینکه دنیای نرمافزار...
معماری نرم افزار – فصل دوم – بخش اول
ویژگیهای معماری: تواناییهات رو بشناس معماریات باید از چه چیزهایی پشتیبانی کنه؟ ویژگیهای معماری نرمافزار—یعنی تواناییهای ذاتی یک معماری—مثل آجرهای پایهای هر سیستم هستن. بدون این ویژگیها نه میتونی تصمیمهای معماری بگیری، نه سبک معماری مناسبی انتخاب کنی، و حتی...
معماری نرم افزار – فصل اول – بخش دوم
آیا معماری و طراحی یکی نیستن؟ نه، معماری و طراحی یکی نیستن. معماری بیشتر به ساختار مربوطه، نه ظاهر؛ در حالی که طراحی بیشتر به ظاهر مربوطه، نه ساختار. مثلاً رنگ دیوارها، چیدمان مبلمان، یا نوع کفپوش (فرش یا چوب)...