خرید و دانلود فایل پاورپوینت کامل نقش اطلاعات و شبکه های اطلاع رسانی در توسعه کشور
خرید و دانلود فایل پاورپوینت کامل نقش اطلاعات و شبکه های اطلاع رسانی در توسعه کشور قیمت اصلی 224,700 تومان بود.قیمت فعلی 109,200 تومان است.
بازگشت به محصولات
خرید و دانلود فایل پاورپوینت کامل پایگاه آیه الله فاضل لنکرانی در اینترنت
خرید و دانلود فایل پاورپوینت کامل پایگاه آیه الله فاضل لنکرانی در اینترنت قیمت اصلی 224,700 تومان بود.قیمت فعلی 109,200 تومان است.
📥 ترافیک اینترنت مصرفی جهت دانلود فایل‌ها در میکی بوک، به‌صورت نیم‌بها می باشد.
فقط اینقدر👇 دیگه زمان داری با تخفیف بخریش
00روز
01ساعت
20دقیقه
53ثانیه

خرید و دانلود فایل پاورپوینت کامل چکیده

قیمت اصلی 224,700 تومان بود.قیمت فعلی 109,200 تومان است.

تعداد فروش: 51

فرمت فایل پاورپوینت

2 آیتم فروخته شده در 30 دقیقه
5 نفر در حال مشاهده این محصول هستند!
توضیحات

فایل پاورپوینت فایل پاورپوینت کامل چکیده؛ راهکاری شایسته برای ارائه‌های موفق

اگر به‌دنبال یک فایل ارائه‌ی آماده با کیفیت بالا و طراحی حرفه‌ای هستید، فایل فایل پاورپوینت کامل چکیده انتخابی مناسب برای شماست. این مجموعه شامل 88 اسلاید استاندارد و دقیق است که با هدف ارتقاء کیفیت ارائه‌های شما تهیه شده‌اند.

دلایل انتخاب فایل فایل پاورپوینت کامل چکیده:

  • طراحی ساختارمند و چشم‌نواز: هر اسلاید با دقت بالا و توجه به اصول طراحی گرافیکی تهیه شده است تا محتوای شما به‌خوبی دیده و درک شود.
  • آمادگی کامل برای ارائه: نیازی به ویرایش مجدد نیست؛ فایل فایل پاورپوینت کامل چکیده آماده‌ی استفاده در کلاس، جلسه یا کنفرانس است.
  • سازگاری کامل با پاورپوینت: نمایش صحیح اسلایدها در تمامی نسخه‌های PowerPoint بدون بهم‌ریختگی یا مشکل ظاهری تضمین شده است.

تولید شده با رویکرد حرفه‌ای:

تمامی بخش‌های فایل پاورپوینت کامل چکیده با هدف ایجاد یک تجربه کاربری روان و بی‌نقص طراحی شده‌اند. جزئیات با دقت بالا تنظیم شده‌اند تا ارائه‌ای حرفه‌ای و تأثیرگذار داشته باشید.

توجه:

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

با تهیه فایل فایل پاورپوینت کامل چکیده، سطح ارائه‌های خود را ارتقاء دهید و مخاطبان خود را تحت تأثیر قرار دهید


بخشی از متن فایل پاورپوینت کامل چکیده :

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

افزایش توان موتور جستجوی نرم افزارهای نور

طراحی و پیاده سازی ابزار جستجوی حروف نامتعین

(

CCWil

dCard

)

مهندس مینایی

بخش سوم

۵- طراحی و ایجاد جستجوی

WildCard

جدید:

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

۵-۱ طرح های مختلف کلاس جدید:

در این مطلب که کلاس جدید باید از کلاس سوپرلیست الهام بگیرد و توابع ()

At

و،

Operator

{]

و ()

Progress

و ()

timer

و ()

Next

را داشته باشد، بحثی نبود.

از این رو تنها کاری که در مرحله نخست انجام شد این بود که کلاس

CCWildCard

جدید را از زیر نفوذ و تاثیر

CDAORecord Set

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

CCOldWild

تغییر نام یافت.

هدف از ایجاد و توسعه این کلاس جدید شبیه سازی جستجوی

WildCard

دیتابیس های استاندارد به همان چهار شکل توضیح داده شده در بخشهای قبل بود.

در ابتدا تصمیم گرفته شد که از جهت میانجی کاربر، میان این چهار گونه جستجو تمایز قائل شویم و تا مراحل پیاده سازی آن نیز پیش رفتیم، اما بعد از پیش رفتن کار متوجه شدیم که کاربران برنامه های ما ممکن است از قبل در برنامه های دائره المعارفی یا ویندوز با این شکل جستجوی

WildCard

خو گرفته باشند. از این جهت با یک میانجی کاربر ساده و دو عملگر «×» و «؟» طراحی و توسعه برنامه به تصویب رسید.

در اینجا به ذکر چند مثال در مورد جستجوی حروف نامتعین و مبهم و دو عملگر «×» و «؟» می پردازیم تا نقش کلاس جدید در موتور جستجوی نامتعین واضح گردد.

مثال ۱: «× ع × ص × م ×»; در جستجوی این رشته تمام کلماتی که این سه حرف به ترتیب در آنها قرار گرفته باشند به عنوان پاسخ بازگردانده می شوند. از این جهت مثلا در برنامه قاموس النور، با این جستجو ۱۵۳ مورد پاسخ آورده می شود که اکثر قریب به اتفاق آنها مشتقهایی از ریشه «عصم » هستند; مانند: «فاستعصم » ، «لاعتصامهم » ، «یعصمها» ، «اعتصم » ، «الاعتصام » ، «المعصم » ، «المعصومین » ، «عاصم » و «عاصمک » . البته در ضمن آنها ممکن است کلماتی نیز یافت شوند که از ریشه عصم نباشند مانند «صعصعهم » ، «عرصاتکم » و «عصبتهم » . اما نمایش پاسخها همانطور که بعدا توضیح داده می شود، قابل گزینش است، کاربر می تواند به دلخواه خود عده ای از پاسخها را که مطلوب وی نیست از گردونه پاسخهای علامت (تیک) خورده خود خارج سازد.

مثال ۲: «ع × ص × م » کلماتی را جستجو می کند که به همین ترتیب مشتمل بر این سه حرف باشد البته به شرط اینکه با حرف «ع» شروع شده و با حرف «م » خاتمه یافته باشد. مانند «عصاهم » ، «عصام » ، «عصیم » و «عیصوم » ، که در قاموس النور تعداد آنها به ۱۸ می رسد.

مثال ۳: «؟ ع ؟ ص × م؟» کلماتی را جستجو می کند که حرف دوم آنها «ع» و حرف چهارم آنها «ص» باشد. حرف اول و سوم می تواند هر چیزی باشد. حرف ما قبل آخر آن نیز باید حتما «م» باشد یعنی بعد از «م» تنها یک حرف واقع شده باشد، مانند «اعتصمت » ، «معاصمی » و «معتصما» .

مثالهایی از این دست بسیارند، اما هدف از عرضه این سه مثال ارائه ویژگیهای کلاسی است که قرار بود طراحی و پیاده سازی گردد.

اما روشهایی که برای طراحی این کلاس مطرح گردید از این قرار است:

۵- ۱- ۱- استفاده از روش ماشین حالات قطعی

(

FSM

)

(۱)

:

در بحثهای تئوری محاسبات (۲) و آتاماتا (۳) یا گرامرهای وابسته به متن (۴) ، در مباحث درس کامپایلر (۵) ، روشهای دقیق و پیچیده ای برای بررسی حالات متصور برای یک جستجوی حرفی و پیمایش آنها وجود دارد. یکی از آنها ترسیم ماشین حالات قطعی رشته ای است که قرار است پیمایش شود. برای نمونه در مثال دوم «ع × ص × م » قرار است که سه حرف «ع و ص و م » به ترتیب مورد پیمایش قرار گیرد.

حرف شروع تنها در صورتی که «ع» باشد از سوی ماشین، پیمایش می شود. قدم بعدی تنها در صورتی ادامه پیدا می کند که «ص» را در مسیر پیمایش بیابد و در آخر تنها باید «م » قرار گیرد.

X

ع –

S

X I Y

ص –

X

م –

S

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

استفاده از این روش در گرو ساخت این دستورات و یا درخت ماشین حالات قطعی برای هر رشته مورد جستجو بود، و ساخت این درخت در هر حالتی خصوصا هنگامی که عملگرهای «×» و «؟» با حروف مختلف ترکیب می شوند کار ساده ای نیست، و شاید در برخی از موارد نتوانیم ماشین حالات قطعی رشته را در مدت زمان کوتاهی ایجاد نماییم.

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

۵- ۱- ۲- استفاده از موتور جستجوی نور:

استفاده از موتور جستجوی نور به این معناست که ما از همان روش جستجوی شی ءگرایی که در برنامه های نور برای جستجوی کلمات داشتیم با اندکی تغییر روی حروف پیاده سازی کنیم. در این روش از عملگر «×» به جای عملگر تقدم یا ترکیب عطفی ترتیبی)

(

ordered And

)

استفاده کنیم، و از عملگر «؟» به جای هر کاراکتر مبهم تعبیر نماییم. هنگامی که دو حرف مانند «عص × م » کاملا به هم می چسبند، این حالت در حکم این است که عبارت «عص» شامل دو ترمینال «ع» و «ص» می باشد، البته به شرطی که حالت عبارت

(

Phrase

)

در کار باشد.

بعد از این تعابیر می توان از همان عملگرهای موجود در موتور جستجوی نور، شرطهای رشته مورد نظر را در هر رشته دلخواهی از کلمات مورد بررسی قرار داد.

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

(

NoorLib

)

می کشیدیم، ترجیح دادیم که پیاده سازی این روش را به مرحله آخر و بسته شدن تمام درهای ساده موکول کنیم.

۵- ۱- ۳- استفاده از توابع ()

strstr

و ()

:

strchr

یکی از روشهای ساده ای که تصور می شد بتوان جستجوی

WildCard

را از طریق آن پیاده کرد، این بود که رشته مورد جستجو را به کاراکترها و زیررشته های موجود میان علامتهای «×» و «؟» تقسیم نمود; آنگاه حلقه کنترلی خاصی برای تنظیم حرف یا رشته مورد مقایسه، عملیات کنترل پیشروی و پسروی را در رشته مورد جستجو از یک سو و در رشته مورد مقایسه از سوی دیگر به عهده گیرد. این روش پیاده سازی گردید; طرح نسبتا موفقی بود; کار به مرحله اشکال زدایی نکشید، چون طرح بهتری از دل آن طرح استنباط شد. سرعت اجرایی این طرح به مراتب بهتر از دیتابیس های استاندارد بود و از نظر حجم نیز فضای بسیار کمتری را اشغال می نمود. اما چون طرح بعدی که طرح نهایی کلاس قرار گرفت سربار بسیار کمتری را بر دوش می کشید مکث زیادی روی آن نشد و استفاده چندانی از آن به عمل نیامد.

۵- ۱- ۴- از طریق مقایسه دنو بافر و بازی با اشاره گرها: (۶)

این روش به عنوان روش نهایی کلاس

CCWildCard

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

Next

که پاسخهای جستجو را باز می گرداند، تابعی که هسته اصلی کلاس است به نام ()

IsMatch

فراخوانی می شود.

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

حال با در نظر گرفتن اینکه عملگرهای رشته مورد جستجو، «×» یا «؟» یا

NULL

(کاراکتر انتهایی کلمه) باشد، عملیات ویژه ای در این رشته کنترلی صورت می گیرد.

تنها در موقع رسیدن به انتهای کلمه و رشته وابسته به آن است که می توانیم قضاوت کنیم آیا این کلمه می تواند به عنوان پاسخ باز گردانده شود یا نه؟

۵- ۲- آزمون و اشکال زدایی از کلاس

CCWildCard

ملاک ارزشمند و مهم در ارزیابی کلاس جدید و اشکال زدایی از آن که پیش روی ما قرار داشت این بود که ما دو کلاس با دو توان متفاوت در اختیار داشتیم که کاملا کار یکسانی انجام می دادند; کلاس

CCOldWild

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

SQL

و در محیط دیتابیس های استاندارد انجام می داد و دیگری کلاس

CCWildCard

که فرآیند جستجو را در ناحیه

(

buffer

)

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

SQL

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

اما کلاس دوم یعنی کلاس جدید ما بیشتر در ناحیه درست عمل کردن تابع ()

IsMatch

بایستی مورد آزمون قرار می گرفت. از این رو محیطی را در نسخه های اولیه قاموس النور فراهم کردیم تا دو شی ء (۷) و نمونه (۸) از کلاس

CColdWild

که همان وایلد کارد استاندارد بود و دو نمونه از کلاس جدید

CCWildCard

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

بیشتر اشکالهایی که در کلاس وجود داشت، در مورد کلماتی بود که برای صحت شرط می بایست برگشت به عقب می کردیم.

بعضی از مثالهای باگ گیری شده عبارت بودند از:

(× ا × ب × ت) در کلماتی مانند “ابتت”

(× ب × ر؟ م ×) در کلماتی مانند “بجریرتهم”

× مال) در کلماتی مانند “ممال”

(؟ ب × ب) در کلماتی مانند “تببب”

(؟ ب ؟ و ا ر ×) در کلماتی مانند “باجوار”

(× تتب ×) در کلماتی مانند “تتتبع”

(× و و) در کلماتی مانند “اووو”

(× و ؟ و) در کلماتی مانند “وذوو”

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

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

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

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

۵- ۳- برتریها و مزایای کلاس جدید بر کلاس استاندارد:

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

(

WildCard

)

شویم که در اینجا به برخی از آنها اشاره می نماییم:

۵- ۳- ۱- سرعت فوق العاده

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

۵- ۳- ۲- کم بودن فضای اشغال شده حافظه جانبی:

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