برنامه نويسي از گذشته تا امروز

شركت وب كندو با سابقه اي درخشان در زمينه ي برنامه نويسي موبايل ، علاوه بر ارائه انواع اپليكيشن هاي اندرويد/iOS(موبايل) به كاربران خود، اقدام به ارائه مشاوره هاي مديريتي و استفاده بهينه از اين تكنولوژي را نيز مي‌كند

برنامه نويسي از گذشته تا امروز

۱ بازديد

برنامه نويسي موبايل از گذشته تا امروز

مقدمه:برنامه‌نويسي رايانه در فرهنگ واژه غير متخصّصين  ممكن است به تمام پروژه ساخت نرم‌افزار يا برنامهٔ رايانه‌اي گفته شود. با اين همه برنامه‌نويسي تنها بخشي از فرايند توسعهٔ نرم‌افزار يا برنامه رايانه‌اي است.

برنامه نويسي موبايل از گذشته تا امروزمقدمه:برنامه‌نويسي رايانه در فرهنگ واژه غير متخصّصين ممكن است به تمام پروژه ساخت نرم‌افزار يا برنامهٔ رايانه‌اي گفته شود. با اين همه برنامه‌نويسي تنها بخشي از فرايند توسعهٔ نرم‌افزار يا برنامه رايانه‌اي است.

اهميت، توجه و منابع اختصاص داده شده به برنامه‌نويسي، بسته به ويژگي‌هاي مشخص شده محصول و خواست افراد درگير در پروژه و كاربران و در نهايت شيوهٔ انتخاب شده مهندسي نرم‌افزار متغير است.برنامه نويسي موبايل (كه اغلب به طور كوتاه برنامه نويسي ناميده مي شود) فرآيند سوق دادن ساختار اصلي يك مسأله محاسباتي به برنامه اي قابل اجرا است. اين كار مستلزم فعاليت هايي همچون تحليل و درك مسأله است و عموما حل چنين مسايلي منجر مي شود به ايجاد يك الگوريتم، بازبيني نيازمندي هاي الگوريتم كه شامل صحت و ميزان منابع مصرفي است، پياده سازي(كه معمولا به عنوان كدينگ از آن ياد مي شود) اين الگوريتم در يك زبان برنامه نويسي موبايل مقصد، تست كردن، اشكال زدايي، نگه داري كد منبع، پياده سازي سيستم ساخت(build system) و مديريت مصنوعات مشتق شده مانند كد ترجمه شده به زبان ماشين برنامه هاي كامپيوتري. الگوريتم اغلب تنها به شكل قابل تجزيه و تحليل براي انسان و قابل استدلال با منطق نمايش داده مي شود. كد منبع به يك يا چند زبان برنامه نويسي(مانند JavaScript ،Smalltalk ،Python ،Java ،C# ،C++ ،C، و غيره) نوشته شده است.مقاله در مورد برنامه نويسي موبايل از گذشته تا امروزنرم افزار چيست؟يك پاسخ ساده براي آن عبارتست از: سخت افزار را مي توانيد لمس كنيد اما نرم افزار را نه!اما اين پاسخ بسيار سطحي و ساده است. اگر بخواهيم دقيقتر بگوييم زمانيكه از نرم افزار صحبت مي كنيم در حقيقت منظورمان برنامه اي است كه در كامپيوتر اجرا مي شود. در طول تاريخ، دنياي نرم افزارها و برنامه هاي كامپيوتري به موازات توسعه برنامه نويسي (Programming) و زبانهاي برنامه نويسي (Programming languages) توسعه يافته است. بنابراين مطالعه روند توسعه دنياي برنامه نويسي ما را به مطالعه تاريخچه دنياي نرم افزار رهنمون مي سازد.برنامه كامپيوتري چيست؟يك كار مشخص در كامپيوتر با اجراي سلسه دستورات به صورت پشت سرهم انجام مي شود. اين مجموعه دستورات كه به منظور انجام يك كار مشخص به صورت مرتب در يك فايل تهيه و تدوين مي شوند، برنامه كامپيوتري ناميده مي شود. به كسي كه اين سلسله دستورات را تهيه مي كند، برنامه نويس مي گويند. محتويات اين فايل را سورس يا منطق برنامه مي نامند. در يك برنامه كامپيوتري فقط دستوراتي وجود دارند كه توسط كامپيوتر قابل اجرا هستند. اين دستورات با يك ترتيب از پيش تعيين شده و بر اساس يك مسير منطقي پشت سرهم قرار گرفته اند. اگر همه آنها به درستي اجرا شوند، در آخر كار خاصي را كه هدف برنامه نويس بوده است به انجام مي رسانند.ويژگي هايي كه غالبا براي تشكيل يك زبان برنامه نويسي موبايل اندرويد مهم شمرده مي شوند:تابع : يك زبان برنامه نويسي، زباني است كه براي نوشتن برنامه هاي رايانه اي به كار مي رود كه رايانه اي را براي انجام محاسبات يا اجراي الگوريتم و يا احتمالا كنترل دستگاه هاي خارجي مثل چاپگر، ربات و… درگير مي كنند.هدف: زبان هاي برنامه نويسي با زبان هاي طبيعي تفاوت دارند و آن اينكه زبان هاي طبيعي فقط براي فعل و انفعالات بين مردم به كار مي روند، در حاليكه زبان هاي برنامه نويسي همچنين به انسانها اجازه مي دهد كه از طريق دستورات با ماشين ها ارتباط برقرار كنند. برخي زبان هاي برنامه نويسي بوسيله يك دستگاه استفاده مي شوند تا دستگاه ديگري را كنترل كند. براي مثال برنامه هاي پست اسكريپت(post script) غالبا توسط برنامه ديگري براي كنترل يك چاپگر و يا نمايشگر ايجاد مي شوند.ساختارها: زبان هاي برنامه نويسي ممكن است ساختارهايي براي تعريف و تغيير داده ساختارها يا كنترل جريان اجرا داشته باشند.توان بيانگر: نظريه محاسبات، زبان ها را بوسيله محاسباتي كه توان بيان آنها را دارند طبقه بندي مي كند. تمام زبان هاي “كامل تورينگ” مي توانند مجموعه يكساني از الگوريتم ها را پياده سازي كنند.ANSI/ISO SQL و Charity مثال هايي هستند از زبان هايي كه كامل تورينگ نيستند، ولي غالبا زبان برنامه نويسي ناميده مي شوند.برخي مولفين اصطلاح” زبان برنامه نويسي” را محدود به آنهايي مي كنند كه مي توانند تمام الگوريتم هاي ممكن را پياده سازي كنند، گاهي اوقات اصطلاح” زبان رايانه” براي زبان هاي برنامه نويسي محدودتر به كار مي رود.زبان هاي غير محاسباتي، مانند زبان هاي مارك آپ(markup) HTML يا گرامرهاي قراردادي مثل BNF، معمولا زبان برنامه نويسي محسوب نمي شوند. يك زبان برنامه نويسي(كه مي تواند كامل تورينگ نباشد) ممكن است در اين زبان هاي غير محاسباتي (ميزبان) تعبيه شوند.مقاله در مورد برنامه نويسي از گذشته تا امروزنسل هاي زبان هاي برنامه نويسي:با توجه به مطالعات پيشين در زمينه روند توسعه ابزارهاي برنامه نويسي، مي توان اين ابزارها را به چند نسل مختلف تقسيم بندي كرد؛نسل اولدر سالهاي دهه ۱۹۵۰ برنامه نويسي كامپيوترهاي اوليه توسط تغيير سيم ها و تنظيم هزاران كليد و سوييچ انجام ميشد. در برخي موارد اين تنظيمات بر روي كاغذهاي طومار گونه و يا كارت هاي سوراخشده نوشته مي شدند كه به كامپيوتر مي گفتند چه كاري را (What)، به چه صورت (How) و در چه زماني (When) انجام دهد.به منظور اجراي يك نرم افزار، برنامه نويس بايد اطلاعات جامع و كاملي از كامپيوتر موردنظر مي داشت. يك اشتباه كوچك منجر به شكست در كل برنامه كامپيوتري ميشد.نسل دومدر اين دوره افراد به دنبال ابزارهاي سريعتر و راحتتري براي برنامه نويسي بودند. نتيجه اين تلاشها تولد نسل دوم زبان هاي برنامه نويسي در اواسط دهه ۱۹۵۰ شد. در اين نسل از نمادها به جاي دستورات صفر و يك استفاده مي شد.نسل سومدر اواخر دهه ۱۹۵۰ مفسرهاي زبان هاي طبيعي و كامپايلرهاي پا به عرصه ظهور گذاشتند. قديميترين زبان برنامه نويسي اين نسل FORTRAN است كه در سال ۱۹۵۳ توسط IBM ساخته شد. در سال ۱۹۵۹ زبان برنامه نويسي COBOL به منظور استفاده در دنياي نرم افزارهاي تجاري عرضه گرديد.زبانهاي سطح بالاي برنامه نويسي مانند BASIC ، PASCAL ، ALGOL ، PL/I و C در اين دوره معرفي شدند.نسل چهارمزبانهاي اين نسل برنامه نويس را قادر مي سازند تا كارهاي سطح بالاتر و بيشتري را توسط كد كمتري انجام دهد. هر دستور از زبانهاي اين نسل معادل صدها دستور از زبانهاي نسل سوم است. برنامه هايي كه توسط اين زبانهاي نوشته مي شوند، نياز به يك محيط سخت افزاري خاص و امكانات خاص براي اجرا شدن دارند. در دهه ۱۹۹۰ درخواست ها براي استفاده از اين زبانها بسيار زياد شد و كمپاني هايي مانند Oracle و SUN تلاشهايي در اين زمينه انجام دادند.نسل پنجماين نسل از زبانهاي برنامه نويسي موبايل Ios هنوز در مرحله تئوري هستند و تا به امروز نمونه عملي از آنها ساخته نشده است. بسياري از تلاشها به دليل محدوديت سخت افزارها، عملياتي نشده اند. استفاده از زبان طبيعي و روزمره براي تفهيم كارها به كامپيوترها از ويژگي هاي بارز اين نسل به شمار مي رود. استفاده از شبكه هاي عصبي و هوش مصنوعي و همچنين استفاده از Agent ها به منظور انجام كارها در كامپيوتر از ديگر ويژگي هاي اين نسل از زبان ها هستند. زبانهاي برنامه نويسي از ديرباز تا كنون توسعه يافته اند. از سيم كشي كامپيوترها تا زبانهاي سطح بالاي نسل سوم و چهارم. اين گامها هر كدام ابزارها و امكانات جديدتر و بهتري را در اختيار برنامه نويسان قرار دادند و به طبع آن نرم افزارهاي كامپيوتري نيز بهتر و پيشرفته تر شدند.برنامه نويسي و توليد نرم افزارهاي امروزي حاصل دسترنج ساعتها تفكر و تلاش اين اشخاص است. همانطور كه قبلا توضيح داده شد كامپيوترهاي امروزي از لحاظ سخت افزاري بسيار ساده طراحي مي شوند و اين نرم افزار است كه با تركيب اين اعمال مي تواند كارهاي بزرگتر و پيچيده تري را به انجام برساند. به موازات بهبود زبان و ابزارهاي برنامه نويسي، توقع از نرم افزارها نيز بالاتر رفته است. امروزه نرم افزارها خدمات بسياري را بايد ارائه دهند. هر يك از خدمات بايد به صورت كامل، با دقت بالا و سريع ارائه گردد تا بتواند توقع مخاطب را تامين كند. هر نرم افزار امروزي براي انجام يك كار ممكن است به صدها يا هزاران خط دستورات نياز داشته باشد.قديميترين نمونه عملي از برنامه نويسي به سال ۱۸۰۱ در كشور فرانسه توسط شخصي بنام جكارد برمي گردد. او يك دستگاه بافندگي طراحي كرده بود كه مي توانست اعمال خاصي از بافندگي را كه روي كارتهاي سوراخ شده (Punched card) ثبت شده بودند به ترتيب انجام دهد. اين تكنولوژي اجازه توليد بافت هاي پيچيده و با كيفيت تر را به كارگران معمولي مي داد. اكنون به جاي كارگران متعدد و ماهر، فقط يك نفر براي مديريت كل دستگاه كافي بود. روند تقريبا مشابهي نيز در خلال انقلاب صنعتي در انگليس به وقوع پيوست. به دنبال استفاده از ماشينهاي خودكار و كاهش نيروي كار انساني، جنبشي تحت عنوان لوديت ها به راه افتاد. اين جنبش متشكل بود از افرادي كه مخالف توسعه تكنولوژي بودند و براي جايگاه شغلي، نان و رزق و روزي خود با تكنولوژي مي جنگيدند.در اين دوره، برنامه نويسي به موازات ساخت ماشين هاي جديد توسط پاسكال، بابيج، شوالتز و … توسعه مي يافت. براي حل هر مشكلي يك ماشين جديد ساخته مي شود كه چرخ دنده ها، سيم ها، ميله ها و دستورات جديدتري نسبت به قبل داشت.در سال ۱۸۴۷ يك رياضيدارن انگليسي بنام George Boole با ارائه جبر منطقي، ارتباط ميان علم رياضيات و منطق را اثبات كرد. براي اولين بار او اثبات كرد كه علم منطق بيشتر بخشي از رياضيات است تا فلسفه! اين عمل كه يك گام بزرگ در تفكر بشريت به حساب مي آيد تقريبا صد سال (تا سال ۱۹۴۰) طول كشيد تا در محاسبات كامپيوتري به كار گرفته شود.در دهه ۱۹۴۰ اولين كامپيوتر الكترونيكي ساخته شد. حافظه محدود و سرعت بسيار پايين (به نسبت سرعت كامپيوترهاي امروزي) از ويژگي هاي بارز كامپيوترهاي الكترونيكي اوليه بودند. در اين سالها كه به عصر اطلاعات معروف بود، اجراي برنامه ها در كامپيوترها مستلزم تنظيم كليدها، سوييچ ها و اتصال سيم هاي مختلف بود كه منطق برنامه را مشخص مي كردند.زبانهاي برنامه نويسي موجود در دنيا بيش از ۶۰۰ زبان مي باشد؛ كه در زير برخي از اين زبان ها، به ترتيب حروف الفبا مشاهده مي كنيد.

تا كنون نظري ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در مونوبلاگ ثبت نام کرده اید می توانید ابتدا وارد شوید.