علی مانیان
4 سال پیش توسط علی مانیان مطرح شد
14 پاسخ

نقشه طراحی وب سایت

سلام خدمت همه‌ی برنامه‌نویس‌های عزیز از مبتدی تا حرفه‌ای

سوالم اینه وقتی به شما یه پروژه داده میشه یا یه پروژه خودتون برای خودتون تعریف می‌کنید، به چه صورتی عمل می‌کنید؟!
بخوام دقیق‌تر بگم چک لیست خاصی برای طراحی وب سایت دارین مثلا یه چیزی مثل دفترچه‌ی طراحی سایت
که توی اون چک لیست مشخص می‌کنید چه ویژگی‌هایی لازمه و ترتیب برای پیاده‌سازی بخش‌های مختلف مینویسن مثلا برای سایت X اول سیستم احرازهویتش رو پیاده کنم بعد برم سراغ پنل کاربری بعد پنل مدیریت بعد بخش‌های مختلف و ...

یا اینکه اصلا به این موضوع نیازی و مستقیم میرین سراغ برنامه نویسی و یکی یکی بدون برنامه شروع می‌کنید به برنامه نویسی! چون خیلی وقت‌ها در حین برنامه نویسی ممکنه به ذهن آدم خطور کنه این ویژگی رو هم اضافه کنم خوب میشه و ..

البته میدونم این مورد بیشتر برای پروژه‌ها و کارهایی که دستمون بازه میشه انجام داد و برای اون پروژه‌هایی که کارفرما مصمم هست تغییرات سخته!

ممنون میشم همگی جواب بدین😄
@hesammousavi
@ali.bayat
@mrhex


ثبت پرسش جدید
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
0

در نرم‌افزار ما مبحثی داریم به نام "معماری نرم‌افزار" یا Software Architecture
نکته ای که اکثرا بهش توجه نمیشه
پس مشخص بودن ساختار پروژه .. رو پارادایم انتخاب شده و شکل کلی کدنویسی اثر میگذاره


سهیل حیدری
@hbr 4 سال پیش مطرح شد
1

@alimanian
خب ببینید ما یک بحثی دارم به نام مهندسی نرم افزار که میاید و تمام پروژتونو اول روی کاغذ پیاده سازی مکنیدحتی کلاس هاش ارتباط بین شون و طراحی بانک اطلاعاتی و ارتاباطاتشون و... و بعد میرین سراغ پیاده سازی کد چیزهایی که روی کاغذ پیاده سازی کردید:روش های مختلفی داره که بهترینش طراحی شی گرا (uml) هستش.


علی قربانی
تخصص : برنامه نویس وب
@alighorbani1381 4 سال پیش مطرح شد
0

اول یه سلام به علی عزیز (از برو بچه های خوب هنرستان ابوذر😎)

در مورد سوالی که مطرح کردی من خودم یه روش رو پیش گرفتم که خیلی جواب میده اول کارهایی که راحت تر هست رو انجام میدم و اقدام هام رو به این ترتیب پیاده سازی می کنم.

1- بررسی و تحلیل پروژه و رسم طرح دستی دیتابیس و Relation های جداول

2- پیاده سازی کامل قسمت مدیریت سایت (CMS اختصاصی) یا بهتر بگم (قسمت هایی که وابستگی به فرانت ندارن )

3- قسمت های Authentication و Authorization

4- میرم سراغ فرانت و پیاده سازیش می کنم

البته جدیدا با یه برنامه هم آشنا شدم به اسم Clickup که میتونی ازش برای مدیریت Task های پروژت ازش استفاده کنی من از نسخه موبایلش استفاده می کنم و پیشنهاد میکنم یه سری بهش بزن برای این کار Trello هم هست ولی خودم تاحالا ازش استفاده نکردم.

در موردی اون موضوعی هم که گفتی وسط کار آدم یهو یادش میوفته که این فیچر رو هم اضافه کنه بایدم بگم من خودم این شکلیم 😅✌🏻

با این که اول کار همه کار ها رو مشخص می کنم ولی شده بعضی وقت ها هم چند تا چیز بیشتر اضافه کردم من شخصا باید برم تو دل کار تا بفهمم باید چیکار کنم.

امیدوارم تجربیات یه برنامه نویس آماتور برات مفید بوده باشه!


محمد
تخصص : همیشه در حال یادگیری ...
@Mohammad79 4 سال پیش مطرح شد
1

@alimanian
سلام
مراحلی که واسه خودم درست کردم.
1- تحلیل نیاز مشتری که چه چیزی میخواد.
2- درصورت وجود بررسی رقبای مشتری
3- طراحی اسکچ
4- چکش کاری اسکچ و تایید نهایی کارفرما
5- طراحی در XD
6- بررسی و تایید نهایی توسط مشتری
7- بررسی و تحلیل و طراحی دیتابیس به صورت دستی
8- شروع کدنویسی استاتیک پروژه
9- بررسی و تایید توسط کارفرما
10- کدنویسی بک اند و کلا کارای داینامیک سازی
11- آماده سازی مستندات
12- تحویل و شروع پشتیبانی

ممنون میشم قدیمی ها هم نظرشونو بگن تا مراحل بهتر بشه.
@ali.bayat @mhyeganeh @TimeRunner2359 @hosseinshirinegad98 @mohsenbostan @hesammousavi @khosravi424 @milad @mohsen.mehri6101 @khanzadimahdi


احسان قربانی
تخصص : PHP ، در حال یادگیری لاراول ،...
@TimeRunner2359 4 سال پیش مطرح شد
1

@alimanian
سلام و وقت بخیر
چه قدیمی آقا منم جوجه برنامه نویس ام 😂
ولی خب نظر کلی من اینه :
۱ گفتگو با کارفرما برای به توافق رسیدن سر امکانات کلی پروژه (چیزی که کارفرما ازم میخواد)
۲ همین کار رو برای فرانت هم انجام میدم
۳ شروع به طراحی فرانت میکنم
۴ بعد از اتمام طراحی اولیه ، با کارفرما مشورت میکنم تا اگر نظری داشته باشه اعمال کنم(فونت ها ، color scheme , چیدمان و ...)
۵ پس از تأیید فرانت ، میرم سراغ بک اند‌.
۶ تجربه ثابت کرده بهترین کار اینه که اول از همه ، سیستم کاربر و ادمین ساخته بشه .
۷ و ادامه بک اند‌ رو میزنم و در همین حین ، فرانت رو به بک اند‌ متصل میکنم . حلقه ها ، اطلاعات دریافتی و ... رو با فرانت مچ میکنم .
۸ اگر قابلیت مفیدی توی هر یک از بخش ها یادم بیاد اضافه میکنم (این اصلا عیب نیست که شما وسط پروژه یه چیزی به ذهنت برسه بلکه خودش نقطه قوته چون نشون میده شما خلاق هستید .)‌.
۹ تست کلی پروژه و deployment
۱۰ تحویل به کارفرما
۱۱ پشتیبانی 😊

هرچند من اصلا تجربه خاصی ندارم و جوجه ای بیش نیستم 😅 ، ولی خب این چیزیه که از یکی دوتا پروژه که داشتم به دست آوردم. امیدوارم مفید بوده باشه
نظرات دیگر دوستان رو مشتاقانه می‌شنوم
موفق و سلامت باشید
یا حق


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
2

@Mohammad79
لیست خوبی تهیه کردی .. فقط یه سری توضیحات رو اضافه می‌کنم.

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

و بقیه مراحل رو هم که لیست کردی.
اما جای Testing در لیست خالی هست.. نوشتن Test میتونه عادت بسیار خوبی برای یک برنامه نویس باشه.
بعد ها این تست ها به گزارش کار + مستندات پروژه تبدیل میشند.
و باعث میشه بتونی با اعتماد به نفس فیچر اضافه کنی و یا ریفکتور کنی.


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
2

نظرات کامل و پخته دوستان به نظرم به اندازه کافی هست و بنده مورد جدیدی ندارم که بخوام اضافه کنم.

فقط غیر از بعد فنی، به نظرم هر برنامه نویسی خیلی خیلی باید روی مهارت های نرم (Soft Skill) ش سرمایه گذاری کنه. مثل فن مذاکره و فن بیان و انتقال مفهوم و قدرت همفکری و خلاقیت و ... راه تقویتش هم عمدتا از مسیر تجربه زیاد میگذره و میان بری نداره.

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

موفق و پیروز باشید


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 4 سال پیش مطرح شد
0

درود...از قدیمی های راکت هستم
به ترتیب:

  1. تعریف امکانات مورد نیاز مشتری بر روی کاغذ...
  2. رابط کاربری (فرانت اند) صفحه اول رو کد نویسی می کنیم (اگر مشتری رابط کاربری PSD داشته باشد براساس همین رابط کاربری کد می زنیم و گرنه میریم سایت ها رابط کاربری آن بررسی می کنیم که چه المانی و چیدمان رو پیاده و زیباتر کنیم)...
  3. تعریف پایگاه داده و جدول آن...
  4. رابط کاربری صفحه مدیریت و ورود و خروج آن کد نویسی می کنیم و امکانات مورد نظر رو تعریف می کنیم.
  5. قسمت سمت سرور(بک اند) صفحه مدیریت رو کد نویسی می کنیم و بعد از آن رابط کاربری صفحه اول رو به سمت سرور متصل می کنیم...
  6. در آخر رفع خطاها و تست نویسی و غیره ...
  7. تحویل به مشتری ...

محمد
تخصص : همیشه در حال یادگیری ...
@Mohammad79 4 سال پیش مطرح شد
0

@ali.bayat
بله تست ها هم مهم هستند
حتما موارد شمارو توی کارام اعمال میکنم


سهیل حیدری
@hbr 4 سال پیش مطرح شد
1

@Mohammad79
با سلام
دوست عزیز یه چیزی بگم میگن سنگ بزرگ نشانه نزدن است (نه اینکه شما ناتوان باشید) ولی من خودم به شخصه خیلی پروژه بزرگ در نظر داشتم و وقتی انجامشون میدادم به قول خودم میخواستم خیلی اصولی کار کنم بعده یک مدت خسته کننده و واقعا دل زدگی میاورد اون پروژه و اینکه اگه تک نفره میخواید انجام بدید واقعا اذیت میشین نه اینکه نتونین میتونین 100% ولی ببینید مثلا رانندگی رو در نظر میگیریم(همه رانندگی بلدن) : ولی یکی میگه برو مثلا از مشهد تا تهران یکی میگه تک نفره از مشهد برو مثلا تا دل اروپا خب خسته کننده و دل زننده میشه مگه اینکه چندتا راننده باشین برای این کار پس این مورد رو حتما درنظر بگیرین که یک تیم باشین تا پروژه به شکست نخوره


محسن مهری
تخصص : برنامه نویس back-end با زبان...
@mohsen.mehri6101 4 سال پیش مطرح شد
0

@alimanian
@alimanian
سلام دوستان خیلی قشنگ و با جزئیات مراحل گرفتن یک پروژه رو توضیح دادن منم تجربه خودمو میگم :
نکته ای که از همه مهمتره بگم : مطمئن بشین که دیتابیس رو درست طراحی کنین، چون اگه یه روزی مشتری خواست ظاهر رو عوض کنین خیلی راحت میتونین این کارو بکنین - یا حتی اگه خواستین کلا زبان یا فریمورکی که استفاده میکنین رو عوض کنین باز هم خیلی راحت و بدون اینکه به سایت لطمه ای وارد بشه میتونین این کارو بکنین
اما اگه بخاین دیتابیس رو تغییر بدین ( یعنی فرض بر این بگیرین سایت بالا اومده یک سال روی هاست مشتری داره کلی کاربر و کالا و داده ... ) حالا اگه بخاین سایت رو تغییر بدین مطمئنا خیلی اذیت میشین - پس حتما طراحی دیتابیس رو خیلی خیلی جدی بگیرین
دو : تا وقتی در مورد ظاهر سایت با مشتری کنار نیومدین وارد مرحله بعدی نشین، یعنی به مشتری نگین که حالا ظاهر مهم نیست بعدا با هم کنار میاییم

به نظرم بهترین توضیح مال دوست جوجمون (😀😀 آقا احسان شوخیه ها )@TimeRunner2359 هستش - خیلی با جزئیات و درست توضیح دادند


آرمین امیری نسب
تخصص : برنامه نویس فرانت اند
@arminamirinasab 4 سال پیش مطرح شد
0

من خودم به شخصه اول تمام فیچر هایی که قراره برنامه داشته باشه رو مینویسم به اضافه قیمت و به اضافه زمان بعد به کارفرما این کلیات رو میگم و طبق روز هایی مشخص ، برنامه و پیش میبرم
@alimanian


احسان قربانی
تخصص : PHP ، در حال یادگیری لاراول ،...
@TimeRunner2359 4 سال پیش مطرح شد
1

@mohsen.mehri6101
سپاس از نظرتون 🙏🌹🙏
در روایات داریم جوجه بودن عیب نیست ، جوجه ماندن عیب است 😂
در کل من واقعا نسبت به دیگر دوستان تجربه آنچنانی ندارم و واقعا جوجه ام .


محمد
تخصص : همیشه در حال یادگیری ...
@Mohammad79 4 سال پیش مطرح شد
0

@khosravi424
بله درست میفرمائید ولی بنظرم هر چه قدر طبق یه ساختار بریم جلو خیلی بهتره حتی اگه تیم نباشیم.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام