سرآغاز برنامه نویسی (همه چیز از کجا شروع شد؟)

این عصر تکنولوژی است و جهان هر روز بیشتر و بیشتر به سمت کسب اطلاعات هدایت می شود. در این برهه از تاریخ، اهمیت برنامه نویسی کامپیوتر و سواد دیجیتال بیش از هر زمان دیگری مشهود است. احتمالاً کلمه برنامه نویسی را بیشتر از همیشه می شنوید. در سال های اخیر محبوبیت برنامه نویسی به اوج خود رسیده است و اکنون اهمیت یادگیری این مهارت بیش از هر مهارت دیگری است. شیوع ویروس کرونا باعث شده بسیاری از مردم خود را برای تحصیل آماده کنند. بسیاری از مردم برای بهبود مهارت های خود و محافظت از آینده خود در بحران مالی شروع به یادگیری کدنویسی کرده اند. در این مقاله آنچه را که در برنامه نویسی اتفاق افتاده است را مستند کردم. بیایید با هم تاریخچه نرم افزار را بخوانیم. داستانی که سختی هایش از زیبایی تاریخش کم نمی کند.اولین برنامه نویس دنیاچشمان خود را ببندید و برنامه نویسی را در حال کدنویسی در ذهن خود تصور کنید. اگر حتی می توانید تصویر شخصی را در ذهن خود تصور کنید، بدانید که تنها نیستید. شاید ما این تصور اشتباه داشته باشیم که برنامه نویسی کار مردانه است. اما جالب است بدانید که اولین برنامه نویس جهان یک زن بود. در واقع، لیدی آدا لاولیس، ریاضیدان انگلیسی، عنوان اولین برنامه نویس تاریخ برنامه نویسی را به خود اختصاص داد. ما در مورد دویست سال پیش صحبت می کنیم. لاولیس در سال 1833 با چارلز بیبی آشنا شد. آقای بابیج یک دانشمند و مخترع بود. او در حال ساخت یک ماشین کاملاً قابل برنامه ریزی بود. این ماشین بعدها "موتور تحلیلی" نامیده شد.لاولیس بلافاصله عاشق این ماشین شد. فردی مثل او به راحتی می توانست پتانسیل بالای این وسیله را درک کند. او به سرعت متوجه شد که این کامپیوتر چیزی بیش از یک ماشین حساب است. این دستگاه وسیله ای بود که می توانست دستورالعمل ها و حافظه خود را تغییر داده و اصلاح کند. لاولیس برای اثبات نظر خود چیزی را ایجاد کرد که بعدها اولین برنامه کامپیوتری نامیده شد. او الگوریتمی ابداع کرد که به موتور تحلیلی اجازه داد اعداد برنولی را محاسبه کند. موتور تحلیلی بسیاری از مفاهیم محاسباتی را به جهان معرفی کرد که هنوز هم از آنها استفاده می شود. از قابلیت های این برنامه می توان به یک مخزن و کارخانه قابل مقایسه با حافظه و پردازنده های امروزی اشاره کرد. ورودی ها و خروجی ها با استفاده از کارت های پانچ ارائه می شدند. کارت های پانچ توسط ژاکارد در اوایل قرن نوزدهم اختراع شد.متأسفانه نه بابیج توانست کامپیوتر خود را بسازد و نه لاولیس پس از مرگ نابهنگامش در سن 36 سالگی شاهد کارکرد کدهای او بود. با این حال، موتور تحلیلی بابیج پیشرو اولین کامپیوتر مکانیکی عمومی بود.بعدها، سرنوشت موتور تحلیلی بابیج به دست هرمان هولریث آمریکایی افتاد. هولریث در سال 1890 با این دستگاه آشنا شد. او ماشین خود را ساخت و از کارت های خرد شده و یک تقویت کننده الکترومغناطیسی موتور تحلیلی ایده گرفت. اداره سرشماری ایالات متحده از این ابزار در سرشماری سال 1890 استفاده کرد. اگرچه دستگاه تمام عملکردهایی را که بابیج در نظر داشت انجام نمی داد، اما همچنان کار می کرد.به لطف این ابزار، هولریث کسب و کار خود را آغاز کرد. او شرکتی به نام شرکت ماشین آلات جدول بندی تاسیس کرد. این شرکت در سال 1924 نام خود را به International Business Machines Corporation تغییر داد. بله، و بدین ترتیب IBM بزرگ متولد شد.قرن بیستم و رشد تکنولوژیقرن بیستم با رشد بی سابقه ای در برنامه نویسی همراه بود. اولین کامپیوترهای مدرن در دهه 1940 عرضه شدند.این کامپیوترها که با برق کار می کردند سرعت پایین و ظرفیت حافظه محدودی داشتند. به دلیل این محدودیت ها، برنامه نویسان مجبور شدند برنامه های زبان اسمبلی را با دست بنویسند. اما از آنجایی که اسمبلی یک زبان سطح پایین است، برنامه نویسی با آن بسیار دشوار است. در اینجا بود که برنامه نویسان به نیاز مبرم به زبان های برنامه نویسی سطح بالا پی بردند. در این صورت می توان با نوشتن دستی برنامه اسمبلی در زمان و انرژی زیادی صرفه جویی کرد.اولین زبان ها در تاریخ برنامه نویسیاولین کسی که یک زبان برنامه نویسی سطح بالا طراحی کرد Konrad Zuse بود. یک مهندس آلمانی، زبان برنامه نویسی Plankalkul را در سال 1943 برای اهداف مهندسی خود ایجاد کرد. اما به دلایلی این زبان هرگز استفاده نشد.اولین زبان برنامه نویسی سطح بالا برای کامپیوترهای الکترونیکی در سال 1949 ایجاد شد. جان ماچلی زبان کد کوتاه را معرفی کرد و ویلیام اف اشمیت آن را پیاده سازی کرد. Short Code اولین زبان برنامه نویسی کاربردی بود. این زبان برنامه نویسی از عبارات ریاضی قابل فهم برای انسان استفاده می کرد. اما این زبان ضعف بزرگی داشت. برنامه های کد کوتاه باید هر بار که اجرا می شدند به کد ماشین ترجمه می شدند. این به طور قابل توجهی سرعت را کاهش می دهد. طولی نکشید که این مشکل با اختراع آلیک گلنی حل شد. Glennie در سال 1952 زبانی به نام Autocode ایجاد کرد. Autocode اولین زبان کامپایل شده بود و مستقیماً با استفاده از یک کامپایلر به کد ماشین تبدیل شد.اگرچه Autocode بهتر از زبان های قبلی بود، اما موفقیت بزرگی نداشت. اما فرترن را می توان اولین زبان برنامه نویسی محبوب دانست. این زبان در سال 1954 توسط تیم IBM ساخته شد. این زبان برنامه نویسی قدیمی ترین زبان سطح بالا است که هنوز استفاده می شود.در آن زمان، زبان های سطح بالا مانند C، جاوا و ++C هنوز اختراع نشده بودند. اما می توان گفت این زبان ها از زبان الگول سرچشمه گرفته اند. الگول توسط یک گروه علمی در سال 1958 برای کاربردهای علمی و تحقیقاتی ساخته شد.ظهور پارادایم های برنامه نویسیکبول اولین زبان برنامه نویسی سطح بالا و زبان برنامه نویسی است که می تواند بر روی هر نوع یا کدی از کامپیوتر اجرا شود. این زبان که در سال 1959 توسعه یافت مخفف Common Business Language است. از این زبان در پردازش کارت، دستگاه های خودپرداز و حتی در فیلم ترمیناتور استفاده شده است. در این سال بود که جان مک کارتی زبان LISP را برای استفاده در هوش مصنوعی اختراع کرد. این زبان هنوز هم استفاده می شود.پس از آن پیشرفت های زیادی در زبان های برنامه نویسی صورت گرفت، اما برنامه نویسی همچنان کار دشواری بود. بنابراین، جان جی کیمنی و توماس ای. کورتز زبان جدیدی ایجاد کردند. چیزی که آنها اختراع کردند خانواده ای از زبان های برنامه نویسی بود که استفاده از آنها آسان بود. زبان های بیسیک در ابتدا برای دانش آموزانی که دانش کافی از برنامه نویسی و ریاضیات نداشتند توسعه داده شد. این زبانی بود که سال ها بعد توسط بیل گیتس و پل آلن اصلاح شد. به هر حال، اولین محصول مایکروسافت این نسخه اصلاح شده بیسیک بود.در سال 1972 دنیس ریچی زبان برنامه نویسی C را اختراع کرد. C به یکی از محبوب ترین زبان های برنامه نویسی تبدیل شد و تأثیر زیادی بر بسیاری از زبان های مدرن مانند Perl ،JavaScript ،Ruby،GO ،C++، Java و Python داشته است. برای یادگیری زبان برنامه نویسی جاوا اسکریپت پیشنهاد می کنم از مسیر کارآموزی فرانت اند آکادمی رستاوا استفاده کنید.پیداش زبان های بانک اطلاعاتدو سال بعد، در سال 1974، دونالد D. Chamberlin و Raymond F. Boyce زبان SQL را توسعه دادند. SQL مخفف Structured Query Language است. این زبان به طور خاص برای کار با پایگاه های داده توسعه یافته است. حتی امروزه نیز SQL یکی از محبوب ترین زبان ها در زمینه بانک های اطلاعاتی محسوب می شود.بسیاری از پارادایم های برنامه نویسی بین دهه 1960 و 1970 ظهور کردند. از زبان های ایجاد شده در این دوره می توان به زبان های C،Simular و Prolog اشاره کرد. Simulant اولین زبان برنامه نویسی بود که از برنامه نویسی شی گرا پشتیبانی می کرد و در دهه 1960 توسعه یافت. C، متولد این دوره، اولین زبان برنامه نویسی سیستمی است. Prolog را می توان اولین زبان برنامه نویسی منطقی نیز دانست.تحولات دهه 1980 در تاریخ برنامه نویسیتاریخ برنامه نویسی در دهه 1980 شاهد ظهور پارادایم جدیدی نبود. اما در عوض، اختراعات دهه گذشته اصلاح و بهبود یافته است. به عنوان مثال ++C، پسوند زبان C، در این دهه ایجاد شد. این زبان در سال 1983 توسط Bjarne Stroustrup توسعه یافت. ++C یک ویژگی مهم به زبان C اضافه می کند: برنامه نویسی شی گرا. به این ترتیب، این زبان برنامه نویسی سیستمی و برنامه نویسی شی گرا را با هم ترکیب می کند. امروزه ++C یکی از رایج ترین زبان های برنامه نویسی است. این زبان برنامه نویسی به طور گسترده در موتورهای بازی های ویدیویی و توسعه وب استفاده می شود. حتی نرم افزارهای محبوبی مانند Adobe Photoshop نیز از ++C استفاده می کنند.یکی دیگر از روندهای مهم در این دوره استفاده از ماژول ها بود. در آینده، ماژول ها به بخش بسیار مهمی از دنیای برنامه نویسی تبدیل شده اند. این دهه همچنین شاهد ظهور قابلیت های شی گرا مانند چندشکلی بود.زبان Objective-C که زبان اصلی برنامه نویسی مورد استفاده در سیستم عامل های macOS و iOS اپل است، در سال 1983 توسعه یافت. زبان های مهم دیگری که در این دوره ظهور کردند عبارتند از Perl که توسط لری وال در سال 1987 توسعه یافت، TCL، که توسط تیم اصلی TCL در سال 1988 و Ada، Common Lisp و Eiffel که به ترتیب در سال های 1983، 1984 و 1984 توسعه یافتند.عصر اینترنتعصر اینترنت در اواخر دهه 1980 آغاز شد. رشد سریع اینترنت نقطه عطفی در دنیای زبان های برنامه نویسی محسوب می شود. جاوا اسکریپت یکی از مهم ترین و پرکاربردترین زبان های برنامه نویسی امروزی است که در سال 1995 ساخته شد. جالب است بدانید که این زبان توسط برندان آیچ تنها در 10 روز ساخته شده است. در آن زمان جاوا اسکریپت جدی گرفته نمی شد و هیچکس فکر نمی کرد روزی جاوا اسکریپت چنین جایگاه بزرگی در دنیای برنامه نویسی به دست آورد. اما امروزه این زبان یکی از برجسته ترین زبان های برنامه نویسی است. تقریبا تمام وب سایت ها با جاوا اسکریپت نوشته شده اند.جاوا اسکریپت یکی از اصلی ترین فناوری های مورد استفاده در وب است که دو فناوری دیگر CSS و HTML هستند. زبان نشانه گذاری HTML در سال 1990 توسط تیم برنرز لی توسعه یافت. امروزه این زبان یکی از محبوب ترین و پرکاربردترین زبان های نشانه گذاری در جهان است.یکی دیگر از زبان های برنامه نویسی سطح بالا که در دهه 1990 ظهور کرد جاوا بود. جاوا در ابتدا برای استفاده در جعبه های کابل و دستگاه های قابل حمل توسعه داده شد. اما این زبان امروزه آنقدر تکامل یافته است که می توانید آن را در همه جا ببینید. از شبکه جهانی وب گرفته تا رایانه ها و گوشی های هوشمند و حتی پارکومتر، همه آنها از جاوا استفاده می کنند. جاوا یکی از محبوب ترین زبان های برنامه نویسی امروزی است.تاریخچه پایتونتا سال 1991، زبان های کامل توسعه یافتند. همانطور که دیدیم C یکی از آن زبان هاست. اما یک مشکل وجود داشت: نوشتن کد برای اکثر این زبان های برنامه نویسی دشوار است. گاهی اوقات سینتکس حتی برای برنامه نویسان با تجربه نیز دشوار و پیچیده است. اما سال 1991 یک پیشرفت در این زمینه بود. در آن سال Guido von Rossum یک زبان برنامه نویسی کاربرپسند ایجاد کرد. او این زبان را به خاطر عشقش به سریال کمدی سیرک پرواز مونتی پایتون، پایتون نامگذاری کرد. پایتون در سال های اخیر به یک زبان بسیار محبوب تبدیل شده است. امروزه پایتون یکی از محبوب ترین زبان های برنامه نویسی پس از جاوا و جاوا اسکریپت است.شما می توانید برای یادگیری این زبان برنامه نویسی محبوب از مسیر کارآموزی پایتون آکادمی رستاوا استفاده کنید.سایر زبان های اصلی توسعه یافته در این دوره عبارتند از هاسکل در سال 1991، ویژوال بیسیک در سال 1991، لوا در سال 1993، R در سال 1993، روبی در سال 1995، آدا 95 در سال 1995، PHP در سال 1995 و Rebol در سال 1997. لازم به ذکر است که Haskell یک زبان برنامه نویسی کاملا کاربردی است و برنامه های کاربردی در ابتدا در این دوره توسعه یافتند. در این میان زبان برنامه نویسی ویژوال بیسیک ارائه شده توسط مایکروسافت بیشترین توجه را به خود جلب کرد. R همچنین به یک زبان تجزیه و تحلیل داده محبوب تبدیل شده است و PHP و Ruby نیز به طور گسترده در توسعه وب استفاده می شوند.