برنامه نویسی ، از ایده تا اجرا
لینک کوتاه سه شنبه , 05 دی 1391 36 دیدگاه
توی چندین انجمن تاپیک هایی رو دیدم که افرادی که تازه برنامه نویسی رو شروع کرده اند ، عنوان میکردند که برای استارت یک پروژه نمیدونن از کجا شروع کنن ، منم فرصت رو غنیمت شمردم و این 10 قدم رو برای شروع تا پایان یک پروژه پیشنهاد میکنم .
قدم اول : مشخص کردن ایده ، هدفدر ادامه در مورد هر کدام توضیحاتی میدهم .
قدم دوم : بررسی امکانات مورد نیاز
قدم سوم : طراحی UI برنامه (رابط گرافیکی)
قدم چهارم : پیاده سازی دیتابیس روی کاغذ
قدم پنجم : پیاده سازی دیتابیس و جداول
قدم ششم : شروع کد نویسی
قدم هفتم : بازنگری نهایی
قدم هشتم : بارگزاری سایت
قدم نهم : تائید نهایی
قدم دهم : افزایش اطلاعات
قدم اول : ایده ، هدف
صریحاً مشخص کنید دنبال چی هستید ، چی میخواید ؟ یک وبلاگ ؟ یک فروشگاه ؟ یک سایت خبری ؟
قدم دوم: بررسی امکانات مورد نیاز
مثلا یک وبلاگ نیازمند مطالب ، دسته بندی ، نظرات ، فرم تماس و ...
قدم سوم : طراحی رابط گرافیکی
در برنامه های تحت وب ، با استفاده از Html , Css ظاهر برنامه رو طراحی میکنید ، روی این قسمت وقت بذارید ، ظاهر رو هر چقدر جذابتر طراحی کنید ، در طول برنامه اشتیاق بیشتری برای اتمام پروژه دارید . اگر هم بصورت گروهی کار میکنید این قسمت رو میتونید بدید یکی از اعضای گروه انجام بده ، تا این تموم میشه قدم بعد رو برید !
قدم چهارم : پیاده سازی جداول دیتابیس روی کاغذ
به جرات میشه گفت به ازای هر امکاناتی که نیاز هست ، باید یک جدول ساخت .
روی کاغذ جدول ها با فیلد ها رو بکشید ، اطلاعاتی که قرار است داخلشون باشه از چه نوعی باشن ، کلید های خارجی جداول مرتبط رو به هم متصل کنید ، روی ایندکس ها فکر کنید .
روی کاغذ اگه بخواین تغییری در ساختار بدید ، فقط خودکار رو میچرخونید اما وسط پروژه یه تغییر کوچک ، یه کابوس بزرگ میشه !
خودمونی بگم ، بدترین چیز برای یک برنامه نویس ، پاک کردن کدهایی هست که نوشته اما هیچ استفاده ای نکرده ، و از اون بدتر نوشته دوباره همون کدهاست ! پس روی کاغذ همه چی رو تموم کنید !
قدم پنجم : پیاده کردن جداول دیتابیس
توی این مرحله کمی روی اسم گذاری فیلدهاتون دقت کنید ، ایندکس گذاری صحیح و انتخاب نوع (Data Type) صحیح میتونه سرعت دیتابیس رو افزایش بده !
قدم ششم : شروع کدنویسی
ساختار پوشه بندی منظمی داشته باشید ، اگر از فریم ورک ها استفاده میکنید خود فریم ورک ساختار منظمی داره اگه نه خودتون این ساختار رو پیاده کنید !
پوشه کنترلر ، مدل و ویو رو جدا کنید !
یک قانون اسم گذاری مشخص داشته باشید!
متدها/توابعی که داخل مدل/کامپوننت میسازید ، سعی کنید یکبار مصرف نباشند ، یعنی یک متد رو برای یک کار نسازید! بطور مثال یک متد بسازید به اسم getAll که هر وقت اسم جدول دیتابیس رو بهش میدید تموم رکوردهاشو برگردونه!
سعی کنید متدها/توابعی که میسازید بیش از 5 آرگومان نداشته باشن ! اگر بیش از 5 آرگومان داشتن سعی کنید در قالب یک آرگومان بصورت آرایه استفاده کنید .
قدم هفتم : بازنگری نهایی
حالا دیگه کار پروژه تمام شده ، کمی استراحت کنید ، به آهنگ گوش بدید ، آواز نخونید !!
حالا دو باره فایلهای پروژه رو باز کنید و خط به خط بخونید (مهمه!) . باید با حوصله تموم دستورات رو چک کنید ، هر پارامتری رو به هر متد/تابعی پاس داده بودید ، برید اون متد/تابع رو چک کنید .
مطمئناً در این مرحله چندیدن اصلاح دارید ! بعضی دستورات لازم هست بهتر و بهینه تر باشند .
لاگ هارو چک کنید . به دید منفی نگاه کنید ، دنبال اون قسمتهایی بگردید که خودتون میدونید ممکنه مشکل ایجاد کنه!
قدم هشتم : بارگزاری سایت
هیچ وقت خبر دقیقی از بارگزاری سایت به کسی ندید ! عباراتی چون " تا ده دقیقه دیگه سایت رو بالا میارم " گاهی اوقات به قیمت از دست دادن کل برنامه شما تموم میشه !
بعد از آپلود کردن فایل زیپ و آن زیپ کردن آن ، فایل زیپ رو حذف کنید ! برنامه رو ران کنید ، لاگ رو هنوز فعال نگه دارید .
حالا وقتشه به چند نفر خبر بدید ، یه استکان چایی میچسبه :)
قدم نهم : تائید نهایی
هفته اول لاگ اسکریپت رو روزانه بررسی کنید ، مشکلی بود رفع کنید .
قدم دهم : افزایش اطلاعات
اشتباهی که اغلب انجام میدهند ، بلافاصله بعد از پایان پروژه ، یک پروژه جدید رو شروع میکنند! صبر کنید ! کمی به خودتان استراحت بدهید! در هر پروژه چیزهای جدید یاد میگیرید ، وقت آن است برنامه خود را با نمونه های مشابه مقایسه کنید .
اگر سورس اسکریپت مشابهی دارید ، نحوه پیاده سازیش رو بررسی کنید ! معماری و ساختار را بررسی کنید ! کمی مطالعه کنید !
فکر کنید اگر با اطلاعات فعلی قرار بود این پروژه را پیاده کنید ، آیا میتوانستید بهتر از این پیاده کنید ؟
اگر جواب مثبت است ، وقت انجام پروژه بعدی است ...
عالی بود ، خیلی به دردم خورد