PDA

View Full Version : سوال: اعتبار یک بسته



Hsimple11
چهارشنبه 16 مرداد 1387, 00:41 صبح
با سلام.

میخواستم ببینم اعتبار یک Package یا یک کامپوننت رو غیر از استفاده در گذر زمان به چه طرقی میشه ارزیابی کرد. اینکه کامپوننتی به غیر از کامپوننتهای کاملا شناخته شده یا خود دلفی، در برنامه خود استفاده میکنیم. واقعا اطمینانی هست که در دراز مدت مشکلی در عملکرد اونا ایجاد نشه. البته منظورم کامپوننتهای رجیستر شده است. هرچند خودم دیدم خیلی ها از پکیجهای کرک شده هم در برنامه های مختلف استفاده می کنند و لزوما هم مشکلی پیش نمی آد.

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

vcldeveloper
چهارشنبه 16 مرداد 1387, 03:33 صبح
روش خاصی وجود نداره. اینکه یک بسته چطور رفتار بکنه، به کیفیت طراحی آن و کدنویسی آن بستگی داره. اگر سورسش در اختیار باشه، میشه آن را بررسی کرد، البته سورس هایی که ارائه میشند، غالبا مستندات کافی ندارند و فرد باید زمان زیادی را صرف سر در آوردن از آنها بکنه. اگر سورسش در اختیار نباشه، نمیشه کار خاصی کرد. البته میشه کامپوننت را در شرایط مختلف تست کرد و نتایج آن تست ها را بررسی کرد که آیا در همه آنها درست عمل میکنه یا نه، ولی حتی این تست ها هم روال کاملا مشخصی نداره. مثلا یک کامپوننت ممکن هست در یک تست Memory Leak نداشته باشه، ولی در تست دیگه ایی داشته باشه. مثلا من یادم هست EhLib در کادر جستجویی که خودش بصورت build-in ارائه می کرد، Memory Leak داشت، من هم نمی دونستم. توی یک پروژه اتفاقی ازش اون قابلیت استفاده کردم، دیدم موقع بسته شدن برنامه FastMM مقداری Memory Leak گزارش میکنه! البته اون قابلیت برای برنامه من مهم نبود و لزومی نداشت ازش استفاده کنم، فکر هم می کنم در نسخه های بعدتر اون Memory Leak برطرف شد. در هر حال، بهتره تا جایی که امکان داره، از کامپوننت های با سورس استفاده کنید، که اگر جایی باگی هم دیدید، بتونید حداقل متوجه بشید که کجا بوده، شاید بتونید خودتون قبل از اینکه لازم باشه منتظر نسخه جدید باشید، برطرفش کنید. البته برای کامپوننت هایی که توسط شرکت های معتبر ارائه میشند و توسط کاربر بطور رسمی خریداری شدند، معمولا این امکان وجود داره که کاربری مشکل خودش را با بخش پشتیبانی شرکت در میان بزاره و از شرکت برای رفع آن یک Patch دریافت کنه.