ماژول چیست؟!
برنامه نویسی ماژولار چیست؟!
ماژول به معنای قطعه و یک واحد نرمافزاری یا سختافزاری جداگانهای میباشد که قابل استفاده در نرمافزارها یا سختافزارهای مختلفی بوده و تنها مختص به یک نرمافزار یا سختافزار ساخته نشده است. برای مثال: کارتحافظه، یک قطعهی سختافزاری ماژولاری هست که قابل استفاده در سختافزارهای مختلفی میباشد؛ یا یک آجر را در دنیای واقعی تصور کنید که در ساختمانهای مختلفی مورد استفاده قرار میگیرد!
در تصویر همین مقاله نیز چهار قطعه پازل مشاهده میشود که در ترکیب با یکدیگر، یک دایره یا بهتر بگوییم، یک سطح میز دایرهای ساختهاند! 🙂
ماژول در برنامه نویسی
ماژول در برنامهنویسی، قطعه کد نسبتا کاملی است که توسط یک برنامهنویسی نوشته شده و در پروژههای مختلفی مورد استفاده قرار میگیرد. برای مثال، یک قطعه کد برای عملیات ریاضی که توسط شخصی نوشه شده و بعدا شاید اشخاص دیگری از آن قطعه کد در پروژهی خود استفاده کنند و دیگر درگیر الگوریتمهای آن و تغییر کد آن نشوند.
کتابخانه چیست؟!
شاید بپرسید پس کتابخانه (Library یا پکیج) چیست؟!
در واقع باید گفت که کتابخانه، به مجموعهای از ماژولهای مختلف گفته میشود که در کنار هم و در ترکیب با یکدیگر استفاده شدهاند. برای مثال: ماژولی با نام Math را در نظر بگیرید که به تنهایی عملیات ریاضی را انجام میدهد؛ یا ماژول Random را در نظر بگیرید که برای تولید اعداد رندوم به کار برده میشود! و یا ماژول دیگری را تصور کنید که برای برقراری ارتباط Http استفاده شده و همچنین ماژول دیگری نیز برای خواندن فایلهای Json ساخته شده است. حالا اگر تمامی این ماژولها در کنار هم و در یک مجموعه قرار بگیرند، آن مجموعه یک کتابخانه به حساب میآید. از جمله، کتابخانه استاندارد پایتون که شامل ماژولهای مختلفی هست؛ و همچنین فراموش نکنید که در هرکدام از این ماژولها نیز ممکن است از ماژول دیگری نیز استفاده شده باشد.
برنامه نویسی ماژولار چیست؟!
برنامهنویسی ماژولار به این معنی است که برای مثال، اگر در حال توسعهی یک بازی هستیم؛ بخش مهم کد خود را به گونهای بنویسیم که اگر خواستیم بازی دیگری را نیز بسازیم، آن بخش از کد را بدون دردسر، به بازی جدید انتقال داده و استفاده کنیم؛ بدون اینکه تغییری در آن بخش از کد ایجاد کنیم.
و در کل برنامهنویسی ماژولار به زمانی اتلاق میشود که هدف از نوشتن کد، این باشد که کدمان تهنا مختص یک پروژه نبوده و در پروژههای متعددی بتواند بدون تغییر دادن استفاده شود. یعنی برای مثال، شما کدی برای مسیریابی مینویسید و این بخش از کد را در بازی خود به صورت Modular نوشتهاید تا به صورت یک قطعهی جدا رفتار کرده و قابل استفاده در بازیهای دیگر نیز باشد.
بسیار ساده و روان توضیح دادین. سپاسگذارم.
ممنون از شما دوست عزیز