نوشتن برنامه ها با یک ویرایشگر

نوشتن برنامه ها با یک ویرایشگر


پس از اینکه کامپیوتر و سیستم عامل خود مانند ویندوز، لینوکس یا مک را انتخاب کردید، قدم بعدی این است که یک ویرایشگر (Editor) داشته باشید. ویرایشگر مانند یک پردازشگر ساده کلمه عمل می کند که اجازه می دهد دستورات برنامه را در یک فایل تایپ کنید، تغییر دهید و در نهایت ذخیره کنید.

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

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

- در ویندوز ویرایشگر رایگان نت پد (Notepad) می باشد.

- در لینوکس صدها ویرایشگر رایگان آزاد مانند Vi و Emacs در دسترس است.

- در مک او اِس ایکس یک ویرایشر رایگان به نام TextEdit وجود دارد که مانند سایر ویرایشگرهای متنی کار می کند.

اگر از Mac OS X استفاده می کنید، ویرایشگرهای متنی خوب دیگری که رایگان هستند نیز می توانید دریافت کنید مانند TextWrangler و jEdit که از وبسایت jedit.org قابل دریافت است.

برخلاف یک پردازشگر کلمه که دستورالعمل هایی برای فرمت بندی متن را ارائه می دهد تا شکل ظاهری عبارات زیباتر به نظر برسد، ویرایشگر متن فقط برای تایپ کردن دستورات در یک زبان برنامه نویسی خاص مانند زبان اسمبلی و یا C کاربرد دارد:

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

- ویرایشگرهای پیشرفته تر می توانند در ایجاد یک برنامه کمک کنند. چگونه؟ در ادامه متوجه خواهید شد:

رنگبندی-کدها برای دستورات برنامه (هنگامی که کدها رنگ بندی شوند می تواند راحت تر آنها را شناسایی کنید.)

پیشنهاد خودکار نسبت به کدی که می نویسید. (برای خواندن و نوشتن آسانتر کدها / در مواقع فراموش کردن برخی کدها نیز کاربرد دارد.)

نمایش کدهای رایج مورد استفاده شده در پروژه شما.

در تصویر زیر، یک ویرایشگر متنی ساده که برای زبان BASIC مناسب است را مشاهده می کنید و برنامه نویس در آن یک بازی ویدئویی ساده را ایجاد کرده است.

بدون ویرایشگر متن نمی توانید برنامه بنویسید. با یک ویرایشگر ساده می توانید برنامه بنویسید و با یک ویرایشگر واقعا خوب می توانید یک برنامه را با سرعت و به آسانی بنویسید.

برنامه نویسان حرفه ای اغلب نسبت به ویرایشگران مورد علاقه خود تعصب دارند. سریع ترین راه برای وارد بحث شدن با برنامه نویسان این است که به زبان برنامه نویسی یا ویرایشگر مورد علاقه آنها توهین کنند.

ویرایشگر بیسیک

یک فایل کامل از دستورات برنامه کد منبع برنامه نامیده می شود. کد منبع (source code) را به عنوان دستورالعمل برنامه ای که کار می کند در نظر بگیرید. اگر کسی بتواند کد منبع شما را کپی کند، به راحتی می تواند کل ایده های برنامه را بدزدد. به همین دلیل است که شرکت هایی مانند مایکروساف با حساسیت زیاد از کدمنبع برنامه هایشان مانند ویندوز و اکسل محافظت می کنند.

تبدیل کد منبع با یک اسمبلر یا کامپایلر

یک ویرایشگر به شما اجازه می دهد دستورات برنامه (کد منبع) را در یک فایل تایپ کنید و ذخیره نمایید. به استثنای اینکه برنامه کاملا در زبان ماشین نوشته باشید، کد منبع شما به زبان Swahili نوشته می شود، زیرا پردازشگرها به جز زبان ماشین، هیچ زبان دیگری را درک نمی کنند.

بنابراین اگر دستورات خود را در زبان اسمبلی نوشته باشید باید از یک اسمبلر و اگر دستورات را در زبان سطح بالا یا متوسط مانند BASIC و C نوشته باشید باید از یک کامپایلر استفاده کنید تا به زبان ماشین ترجمه شود.

پس از تبدیل کد منبع به دستورات زبان ماشین، اسمبلر یا کامپایلر این دستورات زبان ماشین را در یک فایل جداگانه ذخیره می کند، که اغلب به عنوان یک فایل اجرایی یا یک فایل exe نامیده می شود. بنابراین شما در هنگام خرید یک برنامه، مانندبازی ویدئویی یا برنامه آنتی ویروس، یک فایل اجرایی یا همان exe را خریداری می کنید. بدون اسمبلر یا کامپایلر، نمی توانید برنامه خود را ایجاد کنید.

کامپایلر کد منبع را به زبان ماشین ترجمه می کند که زبان مادری یک پردازنده خاص است. اما اگر بخواهید برنامه خود را روی پردازنده های مختلف اجرا کنید چطور؟ برای انجام این کار، باید برنامه خود را به زبان ماشین برای هرپردازنده متفاوت تدوین کنید. باید یک فایل اجرای برای هرپردازنده، مانند یک فایل اجرایی مجزا برای پردازنده Core Duo 2 و یک فایل اجرایی جداگانه برای یک پردازنده PowerPC تهیه کنید.

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

- یک فایل اجرایی حاوی کد ماشین برای پردازنده PowerPC (که در کامپیوترهای مکینتاش قدیمی تر استفاده می شود).

- فایل اجرایی دوم شامل کد زبان ماشین برای پردازنده اینتل (در کامپیوترهای جدید مکینتاش استفاده می شود).

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

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

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

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

در جلسه بعد در مورد ترجمه کد منبع با یک مفسر و ترکیب کامپایلر با مترجم برای ایجاد P-code صحبت خواهیم کرد.

جلسه بعد | جلسه قبل

تبلیغات در پایین ادامه ی مطلب

نظرات شما


    نام
    ایمیل (منتشر نمی‌شود) (لازم)
    وبسایت
    :) :( ;) :D ;)) :X :? :P :* =(( :O @};- :B /:) :S
    نظر خصوصی
    مشخصات شما ذخیره شود ؟ [حذف مشخصات] [شکلک ها]
    کد امنیتیرفرش کد امنیتی