زبان برنامه نویسی سی/آشنایی با زبان سی C: تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
جزبدون خلاصۀ ویرایش |
HadiLovelorn (بحث | مشارکتها) بدون خلاصۀ ویرایش |
||
خط ۸:
شاید از خود بپرسید استاندارد به چه معناست ؟ از زمانی که زبان سی تعریف و اختراع شد قابلیتهای بسیار زیادی به رایانه افزوده شدند. برای همین در طول زمان ، ارائه دهندههای بستههای نرمافزاری پیادهساز زبان سی ، همواره هر کدام برای خود کلید واژه هایی را اضافه یا کم میکردند و یا عملکرد دلخواه خود را برای آن به کار میبستند . هر کدام کتابخانه مجزای خود را ایجاد میکردند . استانداردهای ISO در طول این مدت بیشتر نیازهای برنامهنویسی را پوشش میدادند و میدهند اما باز هم برخی از کامپایلرها از استانداردهای قدیمی C98 و یا C99 استفاده میکنند یا با اینکه سازگار با C11 یا C18 هستند به صورت کامل استاندارد را پشتیبانی نمیکنند ، مثلاً برخی کامپایلرها هنوز اجازه استفاده از متون Unicode ( مثل UTF-16 ) را در داخل متن منبع برنامه ( Program Source Code ) نمیدهند
اما چرا C ؟ برخی زبانها خیلی سطح بالا هستند ، مثل Python یا COBOL که با آنها نمیتوانید خیلی از کارها را انجام بدهید ، چون دسترسی به CPU و سختافزار را ندارید ؛ برخی زبانها ، همترازِ زبان C هستند ، اما کارایی و قدرت زبان C را ندارند مثل پاسکال Pascal . در خانواده زبان C و زبانهایی که از آن الگو گرفتهاند ، مثلاً زبان مشهوری همچون جاوا Java از شرکت Sun Microsystems باز هم قدرت زبان C را ندارند . با جاوا نمیتوان یک کرنل نوشت ، مخصوصاً با تغییراتی که پس از فروخته شدن Sun به Oracle پیش آمد ( که قدرت زبان جاوا ، بسیار کاهش یافت ) ؛ همین طور خیلی از ابزارهای قدرتمند ( Tools ) که با سختافزار ارتباط برقرار میکنند و سطح پائین نوشته میشوند یا مثلاً Daemon ها و ... که امکان نوشته شدن در زبانهای سطح بالا را ندارند . در این بین میماند زبان ++C که با کامپایلر C نوشته شد تا کارهایی را سهولت بخشد و قابلیت شیئگرائی را به C اضافه کند و رقیب سرسخت زبان C میباشد . اما اول اینکه زبان C قدرت بیهمتایی دارد و دارای کامپایلرها و پیادهسازهای قدرتمندی بوده و هست که قابلیتهای اضافهتر از زبان استاندارد C را به آن داده و میدهند که با کمک آنها میتوان از ترفندهایی استفاده کرد که به عنوان مثال ، شیئگرایی را در C تقلید کرد ؛ همچنین با قابلیتهایی که در استانداردهای جدید به زبان C اضافه شد برنامهنویسی سطح بالا بسیار راحتتر از قبل شده است ؛ ضمن اینکه پروژههای زیادی در دنیای GNU / Linux و BSD با پروانههای انتشار آزاد GNU GPL یا BSD به زبان C عرضه شدند که تقریباً تمام کارهایی که بخواهید انجام بدهید را از قبل نوشتهاند و شما با مجموعه کتابخانههای بسیار بزرگ و کاملی مواجه هستید ؛ که در صورتی که بخواهید برنامه خود را آزاد و
برای نوشتن برنامههای سی نیاز به مجموعهای از نرم افزارها خواهید داشت . که در صفحه بعدی می توانید آنها را پیدا کرده و مهیّا نمائید . به صورت اختصار ، اول باید یک ویرایشگر متن داشته باشید. در ویندوز برنامه Notepad و در سیستم عامل مک TextEdit و در نسخ مختلف لینوکس ویرایشگرهای متن به همراه سیستم عامل وجود دارند ( نظیر gEdit ) . اما ویرایشگر های متنی همچون ++Notepad یا Geany ، GNU Emacs ، JuffEd ، Programmer's Notepad ، Scribus ، SuperEdi ، Vim ، WinVi یا خیلی از ویرایشگرهای دیگر امکاناتی دارند که سهولت نوشتن و کامپایل برنامه را فراهم مینمایند . امکاناتی نظیر تفکیک قسمتهای برنامه با رنگی کردن ، کلفت کردن ، ایتالیک کردن و از همه مهمتر جمع کردن قسمتهای آن که میتوانید قسمتها و بلوکهای متن خود را مدیریت کنید ؛ جستجو و جایگزین کردنهای پیچیده و کامل ، کدنویسی خودکار و ... که کار را راحتتر میکنند
|