در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
پیش از این برنامهنویسی در محیطهای خشک و بیروح انجام میشد که تنها علاقهمندان این کار رغبت میکردند مدت زیادی را در آن محیط سپری کنند. تنها محیط و ابزار آنها برای این کار، یک محیط ویرایش متنی بود که پس از اتمام برنامه و ذخیره شدن در یک فایل، آن را به نرمافزار مترجم یا کامپایلر برای تبدیل به کدهای زبان ماشین ارسال میکردند. ضمن این که گاهی در صورت بروز اشکال، تنها وجود اشکال در برنامه اعلام میشد و حتی محل دقیق آن نیز تعیین نمیشد و برنامهساز موظف بود مدت زیادی را صرف یافتن محل خطا کند. اما امروزه تدابیری اندیشیده شده است که کار برنامهسازی را بسیار راحت میکند و در کنار تنوع و رنگ و ابزارهای بصری، میتوان به برنامهنویسی سرعت و دقت بخشیده و حتیالامکان از بروز خطا جلوگیری کرد. ضمن این که اگر در بخشی از برنامه خطایی وجود داشته باشد، ابزارهای موجود کمک میکنند تا هر چه سریعتر خطا برطرف شود.
محیط توسعه مجتمع(IDE)
هماکنون زبانهای متعددی هستند که در کنار یک کامپایلر قدرتمند جهت تبدیل برنامه به کدهای قابل فهم برای ماشین و فایل اجرایی، محیطی در اختیار کاربر قرار میدهند که کار برنامهسازی را برای او تا حد امکان ساده و لذتبخش میکند که به این محیط IDE یا محیط توسعه مجتمع گفته میشود. زبانهایی که مجهز به یک IDE هستند معمولا با عبارت Visual آغاز میشوند. البته زبانهایی مانندphp هم هستند که برای آنهاIDE طراحی شده است، اما به آن عبارت Visual اضافه نمیشود.
زبانهایVisual
تقریبا همه زبانهای Visual به یک IDE مجهز هستند. یک بخش از IDE، یک محیط ویرایش متن است که مخصوص زبان مربوطه طراحی شده است. در کنار این محیط ویرایش متنی، یک محیط طراحی گرافیکی نیز وجود دارد که میتوان به راحتی، بدون نوشتن حتی یک خط برنامه، شکل ظاهری نرمافزار خود را طراحی کنید. دکمهها، گزینههای انتخاب کادرهای متنی، فهرستها و... همگی با یک سری ویژگیهای استاندارد و با یک خصوصیات مشخص به طور آماده وجود دارند که شما تنها با چند کلیک ساده، نمونهای از آن را در فرم برنامه خود قرار دهید.
جالب است بدانید که اگر قرار بود چنین کاری که اکنون با چند کلیک انجام میشود، با یک زبان قدیمی یا زبان اسمبلی نوشته شود شاید لازم بود صدها یا گاهی هزاران خط برنامه نوشته شود. ضمنا مشخص نبود که برنامهساز این کار را بدون خطا و به صورت کامل بتواند انجام دهد، اما با توجه به پیشرفت زبانها، این کار توسط نرمافزار صورت میگیرد و در این زمینه، کار برنامهنویس راحت شده است.
خصوصیات ویراستار
محیط ویراستار یک IDE معمولا علاوه بر خصوصیات یک ویراستار معمولی، از قبیل ترفندهای ویرایش سریع، کلیدهای میانبر، یافتن، جایگزینی و... خصوصیات دیگری نیز ممکن است داشته باشند که مخصوص آن زبان است. به عنوان مثال یکی از خصوصیات این محیطها، Text High lighting است. با استفاده از این خصوصیت، کلمات کلیدی مخصوص زبان به صورت Bold یا رنگی یا به نوعی متفاوت از بقیه دستورات میشود تا هم از نظر کد و هم از نظر پایین آمدن اشتباهات به برنامهنویس کمک کنند.
به عنوان مثال هنگامی که یکی از کلمات کلیدی که در جای نامناسب آورده شده، به صورت متفاوت دربیاید، در همانجا نظر برنامهنویس را برای دقت در بهکارگیری و صحت استفاده آن کلمه، جلب میکند.
خصوصیت دیگری که ویراستار میتواند داشته باشد تحت عنوان Auto Complete از آن یاد میشود. با استفاده از این خصوصیت، به محض تایپ شدن حروف توسط برنامهنویس فهرستی ظاهر میشود که تمام گزینههای ممکن که با آن حروف آغاز میشوند در آن قرار دارند. به این ترتیب گاهی نیاز به تایپ یک کلمه طولانی به طور کامل نیست و شخص میتواند با انتخاب آن کلمه از فهرست ظاهرشده، در زمان صرفهجویی کند. ضمن این که امکان وجود خطا و اشکال تایپی نیز با این خصوصیت بسیار پایین میآید. برخی از ویراستارها به هنگام فهرست کردن کلمات ممکن، علاوه بر خصوصیات الفبایی آنها، به خصوصیات گرامریشان نیز توجه میکنند. در این حالت علاوه بر سرعت و جلوگیری از خطای تایپی، از بسیاری از خطاهای گرامری و زبانی هم جلوگیری میشود و به این ترتیب برنامهنویس در جهت تهیه یک برنامه کماشکال هدایت میشود.
خصوصیت دیگری که ممکن است یک ویراستار در IDE داشته باشد اشکالیابی است. برخی از محیطها همزمان با تایپ شدن حروف توسط برنامهنویس بررسیهای ممکن صورت میگیرد و در صورت وجود خطا در آنها، به اطلاع کاربر رسانده میشود. بنابراین پیش از زیاد شدن خطاها، سعی میشود که در همان زمان وقوع، حتیالامکان تشخیص داده شده و رفع شود.
ردگیری(Trace)
یکی از ابزارهای قدرتمندی که برخی ازIDEها به آن مجهز هستند ابزار ردگیری یا Trace است. وقتی برنامهای نوشته شده و بدون خطا کامپایل و اجرا میشود به معنای آن است که هیچ گونه خطای گرامری در آن وجود نداشته باشد، اما ممکن است در متن برنامه یک سری خطاهای منطقی وجود داشته باشد که در نهایت منجر به آن شود که برنامه پاسخ مطلوب را ندهد. مثلا اگر جای دو خط از دستورات در متن که جابهجا شود، در گرامر هیچ خطایی به وجود نمیآید، اما در منطق برنامه اشکال به وجود میآید. چون برای رسیدن به یک جواب ممکن است ترتیب اجرای دستورات نیز مهم باشد. بنابراین با استفاده از ابزار Trace میتوان اجرای برنامه را به صورت خط به خط پیگیری کرده و نتیجه اجرای هر خط را در خروجی مشاهده کرد. هر زمان که به اشکال برخورد کردیم میتوان به کد برنامه بازگشت تا ببینیم اشکال در کدام خط از برنامه وجود دارد و خروجی نامطلوب ناشی از کدام ناحیه از برنامه است.
Breakpoint Watch
دو خصوصیت دیگر کهIDEهای معروف دارند به Watch و Breakpoint مشهور هستند که این دو ابزار نیز برای اشکالزدایی از برنامه به کار گرفته میشوند. با استفاده از Watch میتوانید کلیه متغیرها و محتوای حافظه را در هر لحظه از اجرای برنامه مشاهده کنید تا به این ترتیب پی ببرید که از کجای برنامه به بعد نتیجه نامطلوب حاصل شده است. به عبارتی Watch شما را در جریان جزئیات مسائل و مقادیر در حین اجرای برنامه میگذارد.
با استفاده از breakpoint نیز میتوانید تعیین کنید که نرمافزار با رسیدن به یک نقطه خاص از که برنامه متوقف شود تا شما مثلا درست قبل یا بعد از یک دستور خاص بتوانید خروجی برنامه را مشاهده کنید.
IDEها ممکن است بسیاری خصوصیات دیگر نیز داشته باشند که در جای مناسب به آنها خواهیم پرداخت.
در تپش این هفته، ماجرای فریب و تعرض در پوشش عرفانهای دروغین و رمالی را بررسی کردیم
گزارش «جامجم» درباره دستاوردهای زبان فارسی در گفتوگو با برخی از چهرههای ادب معاصر
معاون وزیر بهداشت: