برنامه نویسی یعنی نوشتن دستورالعمل های قابل فهم برای کامپیوتر یا همان محاسبهگر. از زمانی که این عمل به صورت یک شغل درآمد، مردم به اشتباه آن را نوعی هنر تلقی کردند، در حالی که طراحی برنامه، کاری به شدت فنی است. این که برنامهها، کالاهای فیزیکی مانند یخچال یا مبل نیستند، درست است، اما تولید آنها بیشتر از هر شغل دیگری به تفکر منطقی نیاز دارد.
با این مقدمه و برای یافتن نگاهی بهتر میتوان به این جمله معروف استیو جابز اشاره کرد:
طراحی فقط داشتن شکل خوب و حس خوب نیست، طراحی یعنی اینکه چگونه کار میکند.
این سخن تقریبا تمامی تلاشهای صورت گرفته در سالهای اخیر برای جهان برنامهنویسی را توضیح میدهد. هدف مهندسان نرمافزار، عدم تکرار کدها و کم کردن هزینه توسعه است و شیگرایی در همین راستا به وجود میآید.
شیگرایی روش تولید کالاهای فیزیکی را برای طراحی برنامهها پیش میگیرد. هر جسم حقیقی در جهان دارای تعدادی صفت میباشد(فیزیک و شیمی) که هر کدام مقدارهایی دارند(ریاضیات). حال این جسم هر جهشی که در جهان بکند، روشهای آن برای انجام عمل (methods) را تشکیل میدهند. قراردادن منطق در اشیاء ، یافتن یک شباهت دقیق میان برنامه و جهان بیرونی است. پس میتوان آن را قدمی به سمت تولید یک جهان جدید در داخل جهان حقیقی دانست. (برنامه ها بخشی از جهان هستند که از کل جهان مشتق شدهاند)
شاید نتوان گامهای بشر برای درک صحیح هستی را نادیده گرفت، انسانها با ربط دادن چیزهایی که وجود دارند به هم، در حال تاثیرگذاری و شکل دهی جهان مورد نظر خود هستند، در واقع آدم در حال یافتن راهی برای ایجاد تفاوت و حرکت به سوی عدم انجام کارهای تکراری است. (تنبلی)
این مطلب سعی در ارائه نگاهی عمیقتر به شیگرایی داشت و نه توصیف آن. جهت فهمیدن چیستی شیگرایی در برنامهنویسی، میتوانید به لینک زیر مراجعه کنید.