26-03-2020، 7:44
(آخرین ویرایش در این ارسال: 26-03-2020، 7:45، توسط The moon.
دلیل ویرایش: افزودن تصاویر/
)
بررسی تاریخچهی زبانهای برنامه نویسی از گذشته تا به امروز میتواند برای علاقهمندان بسیار جالب و تاثیر گذار باشد. هر چیزی در این دنیا تاریخچهای دارد! دیگر چه برسد به زبان های برنامه نویسی که عمری را پشت سر گذاشتهاند و یکی پس از دیگری به دنیای IT آمدهاند، تاجاییکه شکل دنیای واقعی را هم تغییر دادهاند! همه میدانیم که ما بدون زبان های برنامه نویسی ، در دنیای کامپیوترها غریب و بییار و یاور بودیم. برای همین هم قصد داریم در این مقاله به این یاوران دیجیتال که مثل یک پل ارتباطی محکم، ما را به دنیای کامپیوتر وصل کردهاند، ادای دین کنیم!
اگر شما هم دلتان میخواهد از بیخوبن با این زبانها آشنا شوید و پراستفاده ترین و مهم ترین زبان های برنامه نویسی تا امروز را بشناسید، بدانید که خوب جایی آمدهاید. چون ما دربارهی تمام اینها صحبت خواهیم کرد و علاوهبر روایت تاریخچه زبان های برنامه نویسی شما را با افرادی که این زبانها را وارد دنیای ما کردهاند نیز آشنا خواهیم کرد.
5 نسل زبان های برنامه نویسی : از نسل سوخته تا نسل برافروخته
اولین زبان های برنامه نویسی ای که پایشان را به دنیای IT گذاشتند، خیلی چغر و بدبدن! بودند و بهسادگی نمیشد سر از زبانشان درآورد. مهندسین IT به این زبانها، سطح پایین میگویند. البته قصد توهین ندارند فقط منظورشان این است که این زبانها بیشتر به سبک ماشینها حرف میزنند به همین دلیل برای انسانها بهراحتی قابلفهم و قابلیادگیری نیستند.
اما بهمرور زبان های برنامه نویسی سطح بالا روی کار آمدند که درکشان برای انسانها هم راحتتر بود. بگذارید برای اینکه بهتر با این زبانها آشنا شوید، برویم سراغ معرفی 5 نسل زبان برنامه نویسی ! تا از این به بعد بدانید که هر کدام از این زبانهای امروزی از چه نسل و تیروطایفهای هستند.
نسل اول : زبان های برنامه نویسی دارای زبان ماشین (زبان صفر و یک) بودند.
نسل دوم : زبانهای قابلدرکتری برای انسان بودند (مانند زبان اسمبلی).
نسل سوم : به کامپایلر نیاز دارند و دستوراتشان برای انسان قابلفهم است، مثل زبان .COBOL (کامپایلر یا مفسر برنامهای است که دستورات برنامه نویسی را به دستورات صفرویک تبدیل میکند.)
نسل چهارم : زبان محاورهای دارند، مثل Oracle و SQLها.
نسل پنجم : بهوسیلهی الگوریتمهایی که برنامهنویس مینویسد قابلدرکاند. مثل prplog وVisual basic
اولین زبان های برنامه نویسی دنیا کداماند؟
برای شناخت اولینها باید کمی به عقب برگردیم، یعنی خیلی عقبتر! دقیقش میشود سال 1945، همان وقتی که جان وان نیومن، محقق انستیتوی تحقیقات عالی، دو اصل اساسی در زمینهی توسعهی برنامهنویسی ارائه کرد:
طبق اصل اول که تکنیک برنامهی مشترک (Shared-program technique) نام دارد، سختافزارها باید ساده باشند و با ترکیب این دستورات ساده، یک دستور نرمافزاری پیچیده ساخته شود. بهاینترتیب سختافزارها ساده و دستورات نرمافزاری پیچیده شدند.
دومین اصل، انتقال کنترل بهصورت شرطی (Conditional Control Transfer) است. طبق این اصل، یک برنامه کامپیوتری میتواند چندین بلوک بهنام زیرروال (Subroutin) داشته باشد. بلوکهایی که از دستورات کوچکترند و میتوانند در هر قسمتی از برنامه قرار بگیرند. براساس این اصل، امکان استفاده از دستورات منطقی مثل Then، IF و For هم فراهم شد.
حالا میتوانیم برویم سراغ اولین زبان های برنامه نویسی :
کد کوتاه (Short Code): بعد از ارائهی اصلهای وان نیومن، درست در سال 1949 «زبان برنامهنویسی کد کوتاه» پا به عرصه گذاشت. این زبان از نسل اول زبان های برنامه نویسی و دارای زبان صفر و یک بود. زبان Short Cod بهنوعی خشت اول دنیای بزرگ برنامهنویسی امروز به حساب میآید.
اسمبلی (Assembly): زبان اسمبلی کلمات نمادین را جایگزین صفرویکها کرد. اصل حرف زبان اسمبلی این بود: «راحتی برنامهنویس خیلی مهمتر از راحتی کامپیوتر است!». حتماً برایتان جالب است اگر بدانید بازیهای کنسول آتاری و سگا و همینطور نرمافزار لوتوس (جد اکسل) با این زبان نوشته شدهاند.
در سال 1951 گریس هاپر اولین کامپایلر دنیای IT را ابداع کرد. کامپایلری بهنام A-0 که برنامهنویسها را از از ورود به دنیای چغر صفرویکها خلاص کرد. برای همین از اینجا به بعد رشد برنامهنویسی با دور تندتری ادامه پیدا کرد.
فورترن (FORTRAN): اولین زبان برنامهنویسیِ شبیه زبانهای امروزی در سال 1957 اختراع شد. زبانی به نام فورترن که شرکت IBM آن را ارائه کرد. خوب است بدانید FORTRAN مخفف عبارت formula translating system و بهمعنای سیستم تبدیل فرمول است.
زبانی بسیار ساده و محدود که تنها دارای دستورات IF، DO و GOTO بود. دادههایی مثل متغیرهای صحیح، حقیقی، منطقی و همینطور اعداد با دقت مضاعف برای اولین بار در این زبان تعریف شدند. البته به سادگیاش نگاه نکنید این زبان منشا زبانهای مهم دیگری مثل COBOL، Lisp، C، Smalltalkو جاوا است. زبانی که هنوز هم در حوزهی اَبَرمحاسبات کاربرد دارد.
لیسپ (Lisp): ازآنجاکه رشد برنامهنویسی روی دور تند بود سال بعد از تولد فورترن، یعنی سال 1958، لیسپ به دنیا آمد! این زبان دارای ساختار منطقی if-then-else بود. ساختاری که هنوز هم در زبانهای مدرن دیده میشود. زبانهای بسیاری مثل اسمال تاک، جاوا، جاوااسکریپت، روبی و پایتون وجودشان را مدیون لیسپ هستند.
کوبول (COBOL): بعد از اینکه کامپیوترها سر از دنیای تجارت درآوردند، زبان COBOL بهوجود آمد. COBOL مخفف Common Business-Oriented Language است و همانطورکه از اسمش پیداست، برای بهکارگیری در امور مالی و تجاری استفاده شد. این زبان با داشتن انواع دادهایِ عددی و رشتهی متنی ، مدیریت داده را ساده کرده بود.
سیمولا(Simula): با ورود سیمولا، مفهوم شیگرایی به دنیای برنامهنویسی سلام کرد و Objectها و Classها غلتیدند میان کدها! سیمولا ریشهی همهی زبانهای شیگرا مثل سی شارپ، جاوا و جاواسکریپت است.
اسمال تاک (Smalltalk): با اینکه اسمال تاک ادامهی زبان سیمولا بود اما بهتنهایی توانست تحول بزرگی در دنیای برنامه نویسی ایجاد کند. زبانهای مدرنی مثل جاوا، سی شارپ، Objective C از این زبان تاثیر گرفتهاند. زبان روبی هم به نوعی همزاد مدرن اسمال تاک به حساب میآید.
اینطوری بود که زمینه برای ارتقای نرمافزارهای مربوط به ذخیرهسازی و بازیابی اطلاعات هم فراهم شد. سرعت این پیشرفت آنقدر زیاد بود که تا سال 1979 با ظهور 200 زبان، دنیای IT حسابی شلوغ شده بود!
اگر شما هم دلتان میخواهد از بیخوبن با این زبانها آشنا شوید و پراستفاده ترین و مهم ترین زبان های برنامه نویسی تا امروز را بشناسید، بدانید که خوب جایی آمدهاید. چون ما دربارهی تمام اینها صحبت خواهیم کرد و علاوهبر روایت تاریخچه زبان های برنامه نویسی شما را با افرادی که این زبانها را وارد دنیای ما کردهاند نیز آشنا خواهیم کرد.
5 نسل زبان های برنامه نویسی : از نسل سوخته تا نسل برافروخته
اولین زبان های برنامه نویسی ای که پایشان را به دنیای IT گذاشتند، خیلی چغر و بدبدن! بودند و بهسادگی نمیشد سر از زبانشان درآورد. مهندسین IT به این زبانها، سطح پایین میگویند. البته قصد توهین ندارند فقط منظورشان این است که این زبانها بیشتر به سبک ماشینها حرف میزنند به همین دلیل برای انسانها بهراحتی قابلفهم و قابلیادگیری نیستند.
اما بهمرور زبان های برنامه نویسی سطح بالا روی کار آمدند که درکشان برای انسانها هم راحتتر بود. بگذارید برای اینکه بهتر با این زبانها آشنا شوید، برویم سراغ معرفی 5 نسل زبان برنامه نویسی ! تا از این به بعد بدانید که هر کدام از این زبانهای امروزی از چه نسل و تیروطایفهای هستند.
نسل اول : زبان های برنامه نویسی دارای زبان ماشین (زبان صفر و یک) بودند.
نسل دوم : زبانهای قابلدرکتری برای انسان بودند (مانند زبان اسمبلی).
نسل سوم : به کامپایلر نیاز دارند و دستوراتشان برای انسان قابلفهم است، مثل زبان .COBOL (کامپایلر یا مفسر برنامهای است که دستورات برنامه نویسی را به دستورات صفرویک تبدیل میکند.)
نسل چهارم : زبان محاورهای دارند، مثل Oracle و SQLها.
نسل پنجم : بهوسیلهی الگوریتمهایی که برنامهنویس مینویسد قابلدرکاند. مثل prplog وVisual basic
اولین زبان های برنامه نویسی دنیا کداماند؟
برای شناخت اولینها باید کمی به عقب برگردیم، یعنی خیلی عقبتر! دقیقش میشود سال 1945، همان وقتی که جان وان نیومن، محقق انستیتوی تحقیقات عالی، دو اصل اساسی در زمینهی توسعهی برنامهنویسی ارائه کرد:
طبق اصل اول که تکنیک برنامهی مشترک (Shared-program technique) نام دارد، سختافزارها باید ساده باشند و با ترکیب این دستورات ساده، یک دستور نرمافزاری پیچیده ساخته شود. بهاینترتیب سختافزارها ساده و دستورات نرمافزاری پیچیده شدند.
دومین اصل، انتقال کنترل بهصورت شرطی (Conditional Control Transfer) است. طبق این اصل، یک برنامه کامپیوتری میتواند چندین بلوک بهنام زیرروال (Subroutin) داشته باشد. بلوکهایی که از دستورات کوچکترند و میتوانند در هر قسمتی از برنامه قرار بگیرند. براساس این اصل، امکان استفاده از دستورات منطقی مثل Then، IF و For هم فراهم شد.
حالا میتوانیم برویم سراغ اولین زبان های برنامه نویسی :
کد کوتاه (Short Code): بعد از ارائهی اصلهای وان نیومن، درست در سال 1949 «زبان برنامهنویسی کد کوتاه» پا به عرصه گذاشت. این زبان از نسل اول زبان های برنامه نویسی و دارای زبان صفر و یک بود. زبان Short Cod بهنوعی خشت اول دنیای بزرگ برنامهنویسی امروز به حساب میآید.
اسمبلی (Assembly): زبان اسمبلی کلمات نمادین را جایگزین صفرویکها کرد. اصل حرف زبان اسمبلی این بود: «راحتی برنامهنویس خیلی مهمتر از راحتی کامپیوتر است!». حتماً برایتان جالب است اگر بدانید بازیهای کنسول آتاری و سگا و همینطور نرمافزار لوتوس (جد اکسل) با این زبان نوشته شدهاند.
در سال 1951 گریس هاپر اولین کامپایلر دنیای IT را ابداع کرد. کامپایلری بهنام A-0 که برنامهنویسها را از از ورود به دنیای چغر صفرویکها خلاص کرد. برای همین از اینجا به بعد رشد برنامهنویسی با دور تندتری ادامه پیدا کرد.
فورترن (FORTRAN): اولین زبان برنامهنویسیِ شبیه زبانهای امروزی در سال 1957 اختراع شد. زبانی به نام فورترن که شرکت IBM آن را ارائه کرد. خوب است بدانید FORTRAN مخفف عبارت formula translating system و بهمعنای سیستم تبدیل فرمول است.
زبانی بسیار ساده و محدود که تنها دارای دستورات IF، DO و GOTO بود. دادههایی مثل متغیرهای صحیح، حقیقی، منطقی و همینطور اعداد با دقت مضاعف برای اولین بار در این زبان تعریف شدند. البته به سادگیاش نگاه نکنید این زبان منشا زبانهای مهم دیگری مثل COBOL، Lisp، C، Smalltalkو جاوا است. زبانی که هنوز هم در حوزهی اَبَرمحاسبات کاربرد دارد.
لیسپ (Lisp): ازآنجاکه رشد برنامهنویسی روی دور تند بود سال بعد از تولد فورترن، یعنی سال 1958، لیسپ به دنیا آمد! این زبان دارای ساختار منطقی if-then-else بود. ساختاری که هنوز هم در زبانهای مدرن دیده میشود. زبانهای بسیاری مثل اسمال تاک، جاوا، جاوااسکریپت، روبی و پایتون وجودشان را مدیون لیسپ هستند.
کوبول (COBOL): بعد از اینکه کامپیوترها سر از دنیای تجارت درآوردند، زبان COBOL بهوجود آمد. COBOL مخفف Common Business-Oriented Language است و همانطورکه از اسمش پیداست، برای بهکارگیری در امور مالی و تجاری استفاده شد. این زبان با داشتن انواع دادهایِ عددی و رشتهی متنی ، مدیریت داده را ساده کرده بود.
سیمولا(Simula): با ورود سیمولا، مفهوم شیگرایی به دنیای برنامهنویسی سلام کرد و Objectها و Classها غلتیدند میان کدها! سیمولا ریشهی همهی زبانهای شیگرا مثل سی شارپ، جاوا و جاواسکریپت است.
اسمال تاک (Smalltalk): با اینکه اسمال تاک ادامهی زبان سیمولا بود اما بهتنهایی توانست تحول بزرگی در دنیای برنامه نویسی ایجاد کند. زبانهای مدرنی مثل جاوا، سی شارپ، Objective C از این زبان تاثیر گرفتهاند. زبان روبی هم به نوعی همزاد مدرن اسمال تاک به حساب میآید.
اینطوری بود که زمینه برای ارتقای نرمافزارهای مربوط به ذخیرهسازی و بازیابی اطلاعات هم فراهم شد. سرعت این پیشرفت آنقدر زیاد بود که تا سال 1979 با ظهور 200 زبان، دنیای IT حسابی شلوغ شده بود!
source: bamdad.co