PDA

View Full Version : سوال: بروز رسانی نرم افزار بدون نصب مجدد



rambod18
پنج شنبه 20 اسفند 1394, 07:08 صبح
با سلام .بعضی از برنامه ها برای بروز رسانی نیاز به نصب مجدد ندارن و فقط اپدیت ها رو دریافت ونصب می کنن .
اینطور برنامه ها چه طوری طراحی میشن؟

کامبیز اسدزاده
پنج شنبه 20 اسفند 1394, 09:07 صبح
با سلام .بعضی از برنامه ها برای بروز رسانی نیاز به نصب مجدد ندارن و فقط اپدیت ها رو دریافت ونصب می کنن .
اینطور برنامه ها چه طوری طراحی میشن؟

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

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

معمولا شماره گذاری و نسخه نگاری نرم افزار ها بر روی این مورد هم موثره مثلا تا زمانی که نسخه ۱.۹ برنامه تبدیل به ۲.۰ نشده باشه نباید کل برنامه مجدد دریافت بشه چون زمانی نسخه به طور کامل تغییر میکنه نشانگره اینه که پروژه از لحاظ هسته نیز تغییر کرده و درصد به روز رسانی بسیار زیاد هست بنا براین میان پیشنهاد میدن نسخه جدید رو کامل دریافت و نصب کنید.

مثلا VS2012 و VS2015 برای هر کدومشون به روز رسانی هایی میدن ولی هیچوقت کامل خودشو از اول دانلود نمیکنن ولی زمانی که نسخه ۲۰۱۲ شد ۲۰۱۵ دیگه اینجا آپدیت بزرگی سر راهه و باید مجدد دریافت و نصب بشه.

Pr0grammer
جمعه 21 اسفند 1394, 05:09 صبح
شما میتونید یک برنامه جداگانه بنویسید که از یک فایل متنی در هاست، آخرین ورژن برنامه رو بخونه و با ورژن جاری مقایسه کنه؛
سپس اگر نسخه جدید در دسترس بود، از یک URL خاص فایل های تغییر یافته (ترجیحاً به صورت zip شده) رو دانلود و بعد از اتمام دانلود اون رو جایگزین فایل های قبلی برنامه کنه.
این برنامه (http://kharaee.com/index.php/component/jdownloads/viewdownload/5-others/18-arcomp-updater?Itemid=0) هم شاید بتونه کمکتون کنه....

موفق باشید/