کلمه‌ی ماژول را زیاد می‌شنویم:

«گوگل، گوشی ماژولار تولید می‌کند.»

«هر ماژولی که بخواهید، می‌تواند روی این وب‌سایت سوار شود.»

«برای این پروژه، فقط سه ماژول قابل استفاده است. بقیه‌اش را باید خودمان بنویسیم.»

احتمالا شما هم این کلمه را زیاد شنیده‌اید؛ مخصوصا اگر چند پروژه‌ای را به پیمانکار سپرده باشید. اجازه دهید این کلمه را بهتر برای‌تان توضیح دهیم.

حتما خودروهای پراید و مزدا3 را می‌شناسید. شاید برای‌تان جالب باشد که موتور صد و پنجاه اسبی مزدا3، به سادگی می‌تواند روی پراید سوار شود. انگار که موتور یک پراید را روی پراید دیگری سوار می‌کنید؛ نه نیاز به جای پیچ دارد، نه لازم است تا قطعه‌ای دیگر رویش سوار شود. این موضوع اتفاقی نیست.

موتور پراید و مزدا3، هر دو از محصولات شرکت «فورد» آمریکا هستند. پراید در اصل محصول فورد بوده است و با نام «فورد فستیوا» (Ford Festiva) تولید می‌شده. نسل اول این خودرو، با نام‌های «مزدا 121» و «کیا پراید»، در ژاپن و کره تولید و موتورشان با طراحی فورد ساخته شد. این موتور، امروز هم در پراید خودمان استفاده می‌شود.

موتور دو لیتری مزدا3، در «فورد فوکوس» هم استفاده می‌شود. این موتور در کارخانه‌های خودروسازی با نام Duratec FFV شناخته می‌شود و محصولی از شرکت معظم فورد است.

مطمئنا، کارخانه‌ی فورد هوشمندتر از آن است که چرخ را دوباره اختراع کند. پس تا جایی که می‌تواند، از تکرار راه‌حل‌ها اجتناب می‌کند. برای سوار کردن موتور فورد فستیوا (پراید) و موتور مزدا3، از یک طراحی ثابت استفاده شده‌است. اگر برنامه‌نویس بخواهد این موضوع را بیان کند، می‌گوید که فورد، ماژولی برای سوار کردن موتور روی ماشین طراحی کرده که در موارد مشابه، همان را استفاده می‌کند.

اختراع کردن چرخ کاری بیهوده است. ممکن است شما برای وب‌سایت‌تان نیاز به بلاگ داشته باشید. ممکن است بخواهید در سایت‌تان خبرخوان (feed reader) داشته باشید. ممکن است «انجمن» (forum) هم نیاز داشته باشید. تمام این امکانات، ماژول‌هایی هستند که توسط ما یا دیگران، قبلا نوشته شده‌اند. منطقی نیست که دوباره آن‌ها را بنویسیم، بلکه باید با نیاز شما تطبیق‌شان دهیم.

ماژول، مثل بلوک‌های «لگو» است. کسی که در ساخت لگو تبحر دارد، می‌تواند این بلوک‌ها را استفاده کند و اشیایی زیبا بسازد. برنامه‌نویس‌ هم از ماژول‌ها استفاده می‌کند و محصول مورد نیاز را می‌سازد. اگر به مثال بالا بازگردیم، می‌توانیم بگوییم که تعویض موتور مزدا3 و پراید، کار کسی است که «دست به آچار» باشد؛ نه کسی که صرفا ماژولار بودن این خودرو را می‌داند.

لغت‌نامه‌های مختلف، معانی زیادی را برای ماژول در نظر می‌گیرند. ولی لغت‌نامه‌ی کمبریج، تعریف زیر را دارد:

«یک یا چند قطعه‌ی دارای نظم، که با ترکیب‌شان بتوان سیستمی دیگر را خلق کرد.»