مقدمه ای بر زبان برنامه نویسی سی (قسمت اول)

برنامه نویسی چیست؟

اگر خیلی ساده بخوام بگم برنامه نویسی تکنیک و روشی هست که ما انسان ها با استفاده از اون به کامپیوتر میفهمونیم که چه کار هایی رو برای ما انجام بده؛ بنابراین هر برنامه ای که جهت پیش بردن کار های ما در کامپیوتر ها و موبایل هامون وجود داره، برنامه نویسی شده.

زبان برنامه نویسی چیست؟

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

زبان برنامه نویسی نیز قرار دادی بین انسان و کامپیوتر برای انجام برنامه نویسی هست.

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

تقسیم بندی زبان های برنامه نویسی

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

?تقسیم بندی از نظر سطح

زبان های برنامه نویسی از نظر سطح به سه دسته ی زبان های سطح پایین ، زبان های سطح میانی و زبان های سطح بالا تقسیم می شوند.

✔️زبان های سطح پایین به زبان های برنامه نویسی گفته می شود که بیشتر به زبان ماشین نزدیکند و از قدرت بی نظری برخوردار هستند به طوری که دسترسی کامل به سخت افزار دارند اما کد های نوشته شده توسط این زبان ها خوانایی بالایی ندارند مانند زبان برنامه نویسی اسمبلی.

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

✔️زبان های سطح میانی از قدرت زبان های برنامه نویسی سطح پایین و هم از خوانایی زبان های برنامه نویسی سطح بالا برخوردار هستند مانند زبان برنامه نویسی سی و جاوا.

?تقسیم بندی از نظر ساختار

زبان های برنامه نویسی از نظر ساختار نیز به سه دسته ی کلی کامپایلری ، مفسری و کامپایلری مفسری تقسیم می شوند.

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

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

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

زبان برنامه نویسی سی و تاریخچه اش

نسخه ی اولیه و تحقیقاتی زبان برنامه نویسی سی در سال 1972 میلادی در آزمایشگاه Bell شکل گرفت و بعد ها در سال 1989 میلادی به تاییدیه سازمان ANSI در آمد که اولین نسخه ی استاندارد زبان سی را تحت عنوان C89 و یا ANSI C منتشر شد. سپس در سال 1990 میلادی این زبان به تاییدیه سازمان ISO نیز در آماده و به C90 و یا ISO C لقب یافت. نا گفته نماند که استاندارد های C89 و C90 از ساختاری کاملا یکسان و مشابه برخوردارند.

زبان برنامه نویسی سی مادر اکثر زبان های برنامه نویسی می باشد و پروژه های بسیار بزرگی با این زبان پیاده شده که از مهم ترین این پروژه ها میتوان به سیستم عامل Linux و بخش اعظمی از سیستم عامل Windows اشاره کرد. زبان های برنامه نویسی مختلفی نیز با این زبان به طور کامل نوشته شده اند و یا قدرت گرفته از این زبان می باشند که میتوان به زبان های برنامه نویسی همچون ++C ، پایتون ، جاوا و سی شارپ اشاره کرد.

از کمپانی های بزرگی که همواره از این زبان در پروژه های بزرگ خود استفاده کرده اند میتوان به NASA ، GNU ، Microsoft ، Google ، Oracle و ... اشاره کرد.

قسمت قبلی

قسمت بعدی