PDA

View Full Version : تفاوت website با webapplication



araelectronic@ymail.com
دوشنبه 06 آبان 1392, 10:54 صبح
با سلام
برای نوشتن یک برنامه تحت وب مثلا انبارداری یا کارتابل آیا باید با website نوشت یا با web app

کلا تفاوت اینها در چی هست؟

با تشکر

bahareh1368
دوشنبه 06 آبان 1392, 15:08 عصر
1- در web application وقتی پروژه را build می کنید پروژه فقط یه class library با خود به همراه داره. بنابراین چون تنها یک فایل داریم publish کردن و آپلود کردن راحت تر و سریعتر صورت می گیره. در مدل وب سایت قرار بوده به ازای هر web page یک dll جدا داشته باشیم و دلیلش هم اینه که publish کردن یه تک فایل راحت تر از کل فایل است اما مشکل اینجاست که در وب سایت ها مثلا اگر صفحه ای بنام default.aspx داشته باشیم در زمان build نام این فایل در فولدر bin بصورت default1.aspx خواهد شد حال فرض کنید n بار این صفحه تغییر کرده و build شده و شما در این فولدر n تا dll از این صفحه دارید و پیدا کردن آخرین نسخه build شده برای publish و آپلود سخت خواهد بود
2- در وب سایت هاسولوشن نداریم و آنچه به عنوان پروژه محسوب می شود یک دایرکتوری است روی هارد.این یعنی ما باید خودمون فایل ها را به دایرکتوری اضافه کنیم.
3- در وب سایت ها ما به ازای وب فرم ها صفحاتی با پسوند design.cs را که مسئول تولید و معرفی کامپوننت هایی است که روی صفحه می اندازیم هستند را نداریم. و مشکل زمانی پیش میاد که کام÷وننت یا المنت های صفحه زیاد میشوند و گاهی بعضی از آنها در صفحه اصلا دیده نمی شوند. فرض کنید شما یه فایل رو از جایی کپی کردید و در مسیر دایرکتوری پروژه قرار دادید مثل یک تمپلیت. در این فایل تمپلیت کلی فایل عکس و js و ... وجود داره که شما به همه اونا نیاز ندارید اما چون همه اینها در مسیر دایرکتوری قرار دارند چه بخواهید چه نخواهید این فایل ها به پروژه شما اضافه شده و حجم پروژه رو بی جهت اضافه کرده.
4- زمانی که پروژه از نوع وب سایت باشه vs دقیقا نمیدونه باید در چه فایل هایی دنبال کد مورد نظر بگرده و مجبوره مثلا برای پیدا کردن یه فایل css کل پروژه رو اعم از تصاویر که اصلا کد نداره رو هم بگرده تا فایل مورد نظر با کدهای اونو پیدا کنه اینطوری کلی زمان تلف میشه تا اون کد اجرا بشه

i.RB92
دوشنبه 06 آبان 1392, 16:31 عصر
1- در web application وقتی پروژه را build می کنید پروژه فقط یه class library با خود به همراه داره. بنابراین چون تنها یک فایل داریم publish کردن و آپلود کردن راحت تر و سریعتر صورت می گیره. در مدل وب سایت قرار بوده به ازای هر web page یک dll جدا داشته باشیم و دلیلش هم اینه که publish کردن یه تک فایل راحت تر از کل فایل است اما مشکل اینجاست که در وب سایت ها مثلا اگر صفحه ای بنام default.aspx داشته باشیم در زمان build نام این فایل در فولدر bin بصورت default1.aspx خواهد شد حال فرض کنید n بار این صفحه تغییر کرده و build شده و شما در این فولدر n تا dll از این صفحه دارید و پیدا کردن آخرین نسخه build شده برای publish و آپلود سخت خواهد بود
2- در وب سایت هاسولوشن نداریم و آنچه به عنوان پروژه محسوب می شود یک دایرکتوری است روی هارد.این یعنی ما باید خودمون فایل ها را به دایرکتوری اضافه کنیم.
3- در وب سایت ها ما به ازای وب فرم ها صفحاتی با پسوند design.cs را که مسئول تولید و معرفی کامپوننت هایی است که روی صفحه می اندازیم هستند را نداریم. و مشکل زمانی پیش میاد که کام÷وننت یا المنت های صفحه زیاد میشوند و گاهی بعضی از آنها در صفحه اصلا دیده نمی شوند. فرض کنید شما یه فایل رو از جایی کپی کردید و در مسیر دایرکتوری پروژه قرار دادید مثل یک تمپلیت. در این فایل تمپلیت کلی فایل عکس و js و ... وجود داره که شما به همه اونا نیاز ندارید اما چون همه اینها در مسیر دایرکتوری قرار دارند چه بخواهید چه نخواهید این فایل ها به پروژه شما اضافه شده و حجم پروژه رو بی جهت اضافه کرده.
4- زمانی که پروژه از نوع وب سایت باشه vs دقیقا نمیدونه باید در چه فایل هایی دنبال کد مورد نظر بگرده و مجبوره مثلا برای پیدا کردن یه فایل css کل پروژه رو اعم از تصاویر که اصلا کد نداره رو هم بگرده تا فایل مورد نظر با کدهای اونو پیدا کنه اینطوری کلی زمان تلف میشه تا اون کد اجرا بشه
آفرین خیلی خوب توضیح دادی، با توجه به این همه نکات ضعف پروژه های از نوع Website برای من جالبه که هنوزم که هنوزه بازم برنامه نویسای حتی حرفه ای از این نوع پروژه استفاده می کنند. یه موقع هایی برای بحث سازگاری با گذشته مجبورن البته ولی مواقعی که مجبور نیستن و میتونن از WebApplication استفاده کنن اما همچنان از Website استفاده میکنن رو متوجه نمیشم...

bahareh1368
دوشنبه 06 آبان 1392, 19:51 عصر
آفرین خیلی خوب توضیح دادی، با توجه به این همه نکات ضعف پروژه های از نوع Website برای من جالبه که هنوزم که هنوزه بازم برنامه نویسای حتی حرفه ای از این نوع پروژه استفاده می کنند. یه موقع هایی برای بحث سازگاری با گذشته مجبورن البته ولی مواقعی که مجبور نیستن و میتونن از WebApplication استفاده کنن اما همچنان از Website استفاده میکنن رو متوجه نمیشم...

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

bomb23
دوشنبه 06 آبان 1392, 20:47 عصر
1- در web application وقتی پروژه را build می کنید پروژه فقط یه class library با خود به همراه داره. بنابراین چون تنها یک فایل داریم publish کردن و آپلود کردن راحت تر و سریعتر صورت می گیره. در مدل وب سایت قرار بوده به ازای هر web page یک dll جدا داشته باشیم و دلیلش هم اینه که publish کردن یه تک فایل راحت تر از کل فایل است اما مشکل اینجاست که در وب سایت ها مثلا اگر صفحه ای بنام default.aspx داشته باشیم در زمان build نام این فایل در فولدر bin بصورت default1.aspx خواهد شد حال فرض کنید n بار این صفحه تغییر کرده و build شده و شما در این فولدر n تا dll از این صفحه دارید و پیدا کردن آخرین نسخه build شده برای publish و آپلود سخت خواهد بود
2- در وب سایت هاسولوشن نداریم و آنچه به عنوان پروژه محسوب می شود یک دایرکتوری است روی هارد.این یعنی ما باید خودمون فایل ها را به دایرکتوری اضافه کنیم.
3- در وب سایت ها ما به ازای وب فرم ها صفحاتی با پسوند design.cs را که مسئول تولید و معرفی کامپوننت هایی است که روی صفحه می اندازیم هستند را نداریم. و مشکل زمانی پیش میاد که کام÷وننت یا المنت های صفحه زیاد میشوند و گاهی بعضی از آنها در صفحه اصلا دیده نمی شوند. فرض کنید شما یه فایل رو از جایی کپی کردید و در مسیر دایرکتوری پروژه قرار دادید مثل یک تمپلیت. در این فایل تمپلیت کلی فایل عکس و js و ... وجود داره که شما به همه اونا نیاز ندارید اما چون همه اینها در مسیر دایرکتوری قرار دارند چه بخواهید چه نخواهید این فایل ها به پروژه شما اضافه شده و حجم پروژه رو بی جهت اضافه کرده.
4- زمانی که پروژه از نوع وب سایت باشه vs دقیقا نمیدونه باید در چه فایل هایی دنبال کد مورد نظر بگرده و مجبوره مثلا برای پیدا کردن یه فایل css کل پروژه رو اعم از تصاویر که اصلا کد نداره رو هم بگرده تا فایل مورد نظر با کدهای اونو پیدا کنه اینطوری کلی زمان تلف میشه تا اون کد اجرا بشه

با سلام در مورد شماره یک : توی webform هم میشه dll ساخت.
در مورد دو : من از vs11 استفاده میکنم سولوشن هم میسازه فک کنم تو 10 هم میساخت کوچ کنید به ورژن های بالا.
اما یه چیزای دیگه : اصلا کلا هرکی میخواد سایت طراحی کنه به مفهوم کلی باید از web site استفاده کنه web app از اسمش معلومه یعنی واسه برنامه های کاربردی تحت وب مثلا وقتی از silverlight بخواید استفاده کنید حتما باید web app کار کنید. یه نکته دیگه اینه که web app به قدرت پردازش خیلی بیشتری از webform نیاز داره. و ذکر این نکته هم واسه تاکید دوباره : web app قرار نبوده جایگزین website بشه و اصلا فلسفش یه چیز دیگه بوده که بالا گفتم واسه همینه الانم همه از website استفاده میکنن.

mRizvandi
دوشنبه 06 آبان 1392, 22:05 عصر
چند تا لینک معتبر در این زمینه:

http://msdn.microsoft.com/en-us/library/aa730880(VS.80).aspx

http://msmvps.com/blogs/p3net/pages/web-sites-vs-web-applications.aspx

http://www.commonplaces.com/blog/website-vs-webapp

araelectronic@ymail.com
سه شنبه 07 آبان 1392, 13:43 عصر
با تشکر از دوستان

حالا برای ساخت یک برنامه تحت وب مانند انبار یا کارتابل و ... بهتر است که webapp استفاده شود؟؟
و اینکه webapp برای اینکار بهتر است یا mvcwebapp؟؟

با تشکر

araelectronic@ymail.com
پنج شنبه 09 آبان 1392, 15:08 عصر
از اساتید محترم کسی نیست جواب بده؟

bahareh1368
پنج شنبه 09 آبان 1392, 18:32 عصر
از اساتید محترم کسی نیست جواب بده؟

به نطر من بهتره از mvc استفاده کنی. از این جهت که برنامه هایی مثل انبار و از این قبیل، برنامه هایی هستند که بسته به نیاز مشتری مدام در حال توسعه و تغییرند و نیازمند معماری اصولی و design pattern مناسب هستند تا برنامه نویس راحت تر بتونه برنامه رو توسعه و گسترش بده.