( تعداد نمایش : 1636 )

تجربه های آقای وکیلی قسمت اول … تجربه های برنامه نویسی

بنام انکه جان را فکرت آموخت

با بررسی های و تجربیاتی که بنده در زمینه برنامه نویسی های پایگاههای اطلاعاتی انجام دادم مشکلات بزرگ برنامه نویسان را در عوامل متععددی پیدا کردم که درطی سال گذشته ( از دی ماه ۸۱ تا خرداد ۸۲ ) سعی کردم این مشکلات را حل کنم برای حل برخی از این مشکلات به راهنمایی و کمکهای ارزنده دوستانی( که هرگز ندیدمشان ولی خود را وامدار آنها می دانم ) مدیون هستم و برخی دیگر را لطف الهی می دانم … به هر حال از انجایی که این نتایج را نمی خواهم تنها در اختیار خود داشته باشم و آنرا متعلق به همه می دانم ، سعی خواهم کرد طی مقالاتی گزارشی از راهی که پیموده ام را خدمت دوستان عزیز تقدیم کنم.

۱) انچه در شروع باید بدانیم
الف ) بنابر یک اصل کلی در حل مسائل “ابتدا باید مقصد را مشخص سپس ابزار رسیدن را انتخاب نمود ”
اگر به این مسئله معتقد باشیم باشیم انگاه دیگر درگیر معضلاتی همچون “تعصب بروی یک نرم افزار خاص” و یا “چون من فقط همین نرم افزار را می دانم پس بهترین راه همین است ” نخواهیم شد. وصد البته اینکار نیازمند مطالعه و تحقیق مداوم برای رسیدن به بهترین راه حل خواهد بود.

ب) “همه کس همه چیز را نمی داند”
… اعتقاد به این اصل باعث خواهد شد تا شما اولا سعی در تیمی کردن پروژه های بزرگ کنید و ثانیا انجام نرم افزارهایی که از حیطه توانایی شما خارج است (ومدت کوتاهی برای اتمام آن دارید ) را قبول نکنید چراکه با شکست در انجام آن اعتبار خود را زیر سوال خواهید برد

ج ) “چند کار کوچک بهتر از ۱ کار بزرگ است ”
این به معنای اینست که
• اگر تازه کار هستید با پروژه های کوچک شروع کنید و پس از کسب تجربه به سراغ اهداف بزرگتر بروید
• اگر پروژه بزرگی دارید (بزرگی پروژه بنابر منطق فازی به خودتان بستگی دارد) آنرا به قسمتهای کوچکتری تقسیم کنید تارسیدن به انها ساده تر باشد

د) “مشکلترین راه حل همیشه بهترین نیست”
همیشه اینگونه نیست که بتوانید همه چیز را بنابر مصالحی (همچون “استقلال برنامه از ابزار” ) با کد نویسی حل کنید چرا که اینکار نه تنها باعث افزایش زمان پروژه خواهد شد که احتمال خطا را نیز افزایش می دهد . بنده از سال ۷۴ تا ۷۵ در حدود ۱۲۰۰۰ خط برنامه بزبان پاسکال نوشتم که Utilityمحسوب می شد و باعث گردید که مشکلاتی همچون فارسی نویسی، ارتباط با شبکه مرتب سازی بانکهای اطلاعاتی و غیره را حل کنم و باکمک آنها چند برنامه مفید نوشتم اما اکنون از عیب یابی این برنامه ها وحشت دارم چه رسد به کسترش این برنامه ها

ه) “خیال پرداز باشید ”
در سینما به این اصطلاح “حس گرفتن ” گفته می شود. در واقع تخیل شما در باره محصول نهایی همیشه مشوق شما برای پیدا کردن راه حلها و فهم ندانسته های شما خواهد بود . این حس ذاتی است و انهایی که از این حس کمتر بهره مند هستند تا زمان تحویل پروژه متوجه نواقص ان نخواهند شد

و) “دست پیش را بگیرید تا پس نیفتید”
در مورد ۲ عامل مهم تاکید می کنم این ضرب المثل را فراموش نکنید
• زمان انجام پروژه
• مبلغ قرارداد
همواره پس از شنیدن صورت مسئله ،اعداد و ارقام ذهنتان را ۲ تا ۳ برابر اعلام کنید چراکه در این صورت نه تنها با ارامش خیال بدون واهمه زمان کافی برای انجام پروژ خواهید داشت که در اخر کار پس از کسر صورت هزینه هایی که حتی تصورشان را هم نمی کردید مقداری استفاده برایتان خواهد ماند.

ز) “شما ۲ گوش دارید و ۱ زبان ”
مشتری همیشه می داند که چه کار می خواهد انجام شود ولی قرار نیست شما با حرفهای بزرگ زدن مسئله را برای او وخودتان پیچیده تر از آنچه که هست کنید . همیشه گوش کنید و نکات ظریف مسئله را با دقت تمام دنبال کنید . شاید در لحظه ای که شما فکر می کنید “مسئله ساده ای است ” یک “فاجعه” در انتظار شما باشد در ان لحظه به این مسئله فکر کنید “زبان سرخ سرسبز می دهد برباد”

ح) “من نمی دانم ”
همیشه با همه برای فهم انچه نمی دانید در ارتباط باشید .
• همواره با مشتری خود مشورت کنید . شاید او از مسائل برنامه نویسی چیزی نداند ولی مطمئننا از انچه که می خواهد با اطلاع است . نگذارید این دانش او با ایراد گرفتن به شما منتقل شود.
• همیشه در حال جستجوی اطلاعات جدید در اینترنت و یا کتب ویا حتی دوستانی که دارید باشید .

ط) “اول کوچکترها بعد بزرگترها”
یکی از عوامل موفقیت شما در شبیه سازی پروژه های بزرگ به صورت کوچک و تعمیم آن به برنامه های بزرگتر است . بیاد داشته باشید که در پروژه های بزرگ شما باید مسائل حاشیه ای را ( که حتی ممکن است به اصل صورت مسئله ارتباط مستقیم ندارد ) در نظر بگیرید . اما شبیه سازی در مقیاس کوچک به شما فرصت حل اصل مسئله را خواهد داد.

ی)”سریع و کثیف ”
زیبا سازی برنامه را برای بعد بگذارید .. مهم نیست اول چه فونتی با چه رنگی انتخاب می شود . مهم اینست که ایا برنامه درست عمل می کند یا خیر . مشتری در هنگام استفاده دیدن یک برنامه زیبا را مهم می داند نه در هنگام تولید .

ک) “عقل تابع چشم است ”
• (در مورد مشتری )یک برنامه زیبا بیشتر به دل می نشیند
• (در مورد برنامه نویس ) هرچه بیشتر نمونه برنامه ببینید ، ذهن شما قدرت خیالپردازی بیشتری پیدا میکند و بالطبع دید وسیع تری را در عمل کردن خواهید داشت

در مقاله بعدی خواهم گفت که از کجا شروع کنیم

دیدگاه خود را بیان کنید.

باید وارد سایت شده باشید برای دیدگاه دادن