رفتن به مطلب
انجمن تیم امنیتی گارد ایران

ارسال های توصیه شده

در این جا قصد دارم که یه توضیح مختصر راجع به برنامه نویسی برای افرادی بدم که نمیدونن برنامه نویسی یعنی چی.

فرض کنید به شما  کنترل یه ربات رو بدن که 5 تا کار می تونه انجام بده. مثالا

  • روشن شو(ON)
  •  یک گام به جلو برو(step)
  •  به اندازه دلخواه در جهت عقربه های ساعت بچرخ(rotate)
  •  جسم کوچک جلوت رو بردار(take)
  • خاموش شو(off)

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

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

برنامه نویسی یه چیزی شبیه به همین کد های بالاست. برنامه نویسی یعنی نوشتن یه سری دستورات برای یه ماشین (کم فهم!) که این ماشین فقط اون دستورات رو می فهمه. حالا نکته اینجاست که شما می تونی این برنامه رو اینقدر خوب بنویسی که بهترین حات ممکن باشه و سریع به جواب برسی و می تونی هم نه این قدر بد و غیر بهینه برنامه بنویسی که دیر یا اصلا به جواب نرسی. مثلا تو همون مثال بالا شما می تونی جوری برنامه ریزی کنی که ماشین مستقیم به توپ برسه میشه هم 10 دور زد بعد رسید به توپ.

 

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

 

کامپیوتر های امروزه فقط یک چیز می فهمن. اونم اینه که باشن یا نباشن! یعنی آره  یا نه! یعنی 0 یا 1. شاید این مسائل خیلی پیچیده باشه که از پایه حرف بزنیم. که مثلا وقتی کامپیوتر می خواد یه عدد رو تو حافظه بذاره یه مداری یه جایی بسته میشه یا باز میشه! واقعیت اینه که اگه در سطح برنامه نویسی assemblyنگاه کنیم شاید کل دستوراتی که میشه به CPUداد صد نوع هم نشه، ولی بیاید از این جا شروع کنیم که کامپیوتر ما یه سری دستورات رو می فهمه و می تونه اون ها رو با یه سری ترفند هایی به همون زبان قابل فهم کامپیوتر تبدیل کنه. در واقع تمام زبان هایی که ما می شناسیم  مثل  pascalو Cو fortranو همین کارو می کنن. یعنی یه چیزی بنام کامپایلر(compiler) میاد و برنامه هایی که شما به اون زبان نوشتید رو به زبان سطح پایین قابل فهم واسه ماشین مثه assemblyدر میاره که بعد به زبان 1و0 در میاد.

 

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

 

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

 

برای استفاده از ++C نیازمند محیطی برای نوشتن برنامه و محیطی برای کامپایل و اجرا کردن برنامه هستیم. کد برنامه را می‌توانیم با استفاده از هر ویرایشگر متنی مثل note pad در ویندوز بنویسیم. لیکن برای کامپایل برنامه نیازمند یک کامپایلر استاندارد هستیم. کامپایلری که بر اساس استاندارد ++ANSI C کد ما را تحلیل کرده و در صورتیکه خطایی نداشت آن را به کد ماشین تبدیل کند. برای تبدیل کدهای ماشین تولید شده نیاز به یک لینکر داریم که کدهای ماشین را در قالب یک فایل اجرایی با فرمت مناسب برای سیستم عامل، مجتمع کند.
 

ویژوال استودیو یک محیط توسعه یکپارچه است که در آن، تمام فرایند برنامه نویسی ++C از نوشتن کد گرفته تا تولید فایل اجرایی قابل انجام است. علاوه بر این ویژوال استودیو امکانات متعدد دیگری، شامل مرتب سازی کد، برجسته سازی کد، دیباگ کردن و مدیریت پروژه در اختیار برنامه نویس قرار می­دهد که نوشتن برنامه را تا حد زیادی تسهیل می‌کند. هر چند محیطهای دیگری برای نوشتن کدهای ++C وجود دارد، لیکن ویژوال استودیو یکی از بهترین و شاید بهترین محیط توسعه برای برنامه نویسان ویندوز است. ویژوال استودیو در دو نسخه حرفه ای و سبک (Express) ارائه می شود که نسخه سبک آن رایگان بوده و از اینجا  قابل دریافت است.

 

کتابچه راهنمای MSDN

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

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری
 اشتراک گذاری

انجمن تیم امنیتی گارد ایران

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

شبکه های اجتماعی

×
×
  • اضافه کردن...