كيف تختلف البرمجة اليوم عن البرمجة قبل 20 عامًا؟


رأيت هذا السؤال على Quora وبدأت في كتابة الإجابة. لكن الإجابة كانت كبيرة جدًا ، لذا حولتها إلى هذا المقال.


إليك بعض التغييرات العشوائية التي لاحظتها في البرمجة على مدار العشرين عامًا الماضية:


  • الكثير من المفاهيم التي كانت نظرية منذ 20 عامًا تستخدم على نطاق واسع في الممارسة العملية اليوم. على سبيل المثال ، النماذج الوظيفية مثل ثبات الأجسام ، العودية الذيل ، المجموعات الكسولة ، مطابقة الأنماط ، وظائف من الدرجة الأولى ، وإلقاء نظرة على أولئك الذين لا يستخدمون كل هذا.
  • "تطبيق سطح المكتب" ، كثير من الناس يتصلون حديثًا بمتصفح مُعبَّر مع صفحة افتراضية وبدون شريط عنوان.
  • فقدت البرمجة الموجهة للكائنات (OOP) قوتها ، رغم أنها لا تزال أكثر شعبية من أي من البدائل. تستخدم اللغات الحديثة مثل Go و Rust و Swift السمات بشكل متزايد. تكوين عالميا هو المفضل للميراث.
  • نظرًا لانتشار المعالجات متعددة النواة ، من الأسهل العثور على دعم البرمجة المتوازية بلغات اليوم من دعم المكالمات البدائية لنظام التشغيل قبل 20 عامًا. وبالتالي ، تُستخدم بحزم البدائل غير المتزامنة (مثل المزامنة / الانتظار) ، والكوروتينات المتوازية مثل "goroutines" في Go أو القنوات في D ، ودلالات القابلية للتركيب ("دلالات القابلية للتكوين") مثل آلية "الملحوظات" في البرمجة التفاعلية.
  • بكسل لم يعد وحدة مناسبة.
  • أصبح جمع البيانات المهملة الطريقة المعتادة للبرمجة الآمنة ، لكنه يأتي في أعقاب البدائل الأصغر سناً ، مثل الدلالات ، للإشارة إلى عمر الكائنات في Rust والنكات اللاذعة على مراجعات الكود.
  • 3 مليارات جهاز يستخدم جافا . صحيح ، هذا الرقم لم يتغير منذ عشر سنوات.
  • أصبح نظام إدارة التبعية جزءًا حيويًا من أي لغة. لا أحد يريد تنزيل أو تثبيت أي شيء يدويًا. منذ 20 عامًا ، بعد تنزيل أرشيف zip ، وقمنا بتفريغه في مجلد المشروع ، قمنا بتحديث ملف التكوين ونصلي من أجل عدم كسر أي شيء.
  • أن تكون فريق تطوير يعني الآن الحاجة إلى أداء طقوس غامضة: كل ذلك معًا لمدة 15 دقيقة في الصباح لرسم رموز غامضة على الملصقات .
  • مجموعة الأدوات عند العمل مع اللغة أوسع بكثير. في السابق ، لم يكن هناك سوى مترجم و ، مع الحظ ، مصحح أخطاء. اليوم عادة ما تأتي مع أداة linter ، تنسيق التعليمات البرمجية ، محرك القالب ، خيار التحديث الذاتي وقائمة أسباب للاستخدام في holivars ضد اللغات المنافسة.
  • حتى لغات البرمجة شاركت في النقاش "علامات التبويب أو المساحات".
  • أدوبي فلاش ، الذي كان وسيلة العمل الوحيدة لتنفيذ واجهة الويب العادية ، لحسن الحظ ، قد مات الآن. صحيح ، تم استبدال معيار واحد بثلاثة أطر مختلفة بنماذج مختلفة تمامًا.
  • تتم إزالة IDEs ولغات البرمجة من بعضها البعض. قبل 20 عامًا ، كانت هناك لغة و IDE المصممة خصيصًا لها ، مثل Eclipse for Java ، و Visual Basic ، و Delphi ، إلخ. الآن لدينا برامج تحرير عالمية مثل VS Code ، قادرة على دعم العديد من اللغات والميزات المختلفة.
  • من المعتاد تنفيذ التعليمات البرمجية خلف ثلاث طبقات من المحاكاة الافتراضية. هذا على الأقل. الرمز الذي يعمل على المعدن العاري؟ لا ، سيكون ذلك مثمرًا للغاية.
  • يعتبر تطوير المنصات المشتركة أمرًا أساسيًا بسبب مجموعة من الهياكل ، والأجهزة المحمولة ، والخوادم السحابية ، وأنظمة إنترنت الأشياء المدمجة. قبل 20 عامًا ، تم تنفيذ التطوير على وجه الحصر تقريبًا للكمبيوتر.
  • بدأت التعليمات البرمجية لتشغيل محليا أقل كثيرا.
  • الوثائق الآن عبر الإنترنت فقط وتسمى Google. لا يوجد أي وثائق في وضع عدم الاتصال تقريبًا. وعندما تكون ، لا أحد يعرف أين هي.
  • لا يجد الكثير من الأشخاص البرامج التعليمية مفيدة ، ما لم يكن مقطع فيديو. حتى لو استغرقت القراءة وقتًا أطول من قراءة النص.
  • يقولون أنه قبل اختراع StackOverflow ، كان على الناس طرح الأسئلة.
  • الناس يتطورون على نظام Mac OS.
  • اتصال الإنترنت هو القاعدة ، بينما يكون وضع عدم الاتصال هو الاستثناء. كان عليه أن يكون عكس ذلك تماما.
  • اختراق القرصنة هو ما عليك الآن التفكير فيه عند إنشاء برنامج.
  • الأجهزة المحمولة قادرة على عرض الصفحات العادية ، بحيث اختفت الحاجة إلى صفحات WAP لإصدارات الأجهزة المحمولة من المواقع على النطاقات الفرعية. بدلاً من ذلك ، نقوم بإنشاء صفحات منتظمة لإصدارات الأجهزة المحمولة من المواقع على النطاقات الفرعية.
  • يسعدنا نشر كودنا في Open Source. بالطبع ، باستثناء الرمز الذي نخجل منه.
  • تتمتع الصناعة بمزيد من النساء الموهوبات ، والأشخاص من غير الأوروبيين ، وممثلي مجتمع المثليين - وذلك بفضل كل من حارب التمييز. لا أعتقد أن المساواة الكاملة قد تحققت بالفعل ، لكن الوضع أفضل بكثير مما كان عليه قبل 20 عامًا. (لا تنسَ أن هذه ترجمة - ترجمة تقريبية.)
  • تسرب بيانات المستخدم - حدث نموذجي. في مثل هذه الحالات ، تتم كتابة منشور في مدونة الشركة مع توصية بتغيير كلمة المرور بشكل عاجل. عادة لا يتم طلب المغفرة.
  • أصبح العمل كمبرمج عن بُعد أسهل من أي وقت مضى. لهذا ، بفضل تقنية مؤتمرات الفيديو ، والوصول إلى الإنترنت في كل مكان وآلات القهوة المنزلية.
  • لم نعد نستخدم IRC للاتصال. لقد اخترنا بديلًا أكثر انتفاخًا يسمى Slack ، إلا إذا لم يكن علينا دفع عنوان الخادم يدويًا.
  • نحن ندير برامج على بطاقات الفيديو.
  • لا يستحق منتجك فلسًا واحدًا ، إذا كنت لا تعتمد على blockchain و AI. نعم ، حتى لو كانت النسخة المركزية والقائمة على الخوارزمية أبسط وأكثر كفاءة وأسرع.
  • غيغابايت واحد لا يكفي.
  • نظرًا للهجمات من خلال قنوات الجهات الخارجية ، لا يمكننا الوثوق بالمعالجات المادية.
  • يحدث جزء كبير من البرمجة الآن أثناء لعبة كرة قدم الطاولة.
  • نظرًا لوجود وحدات معالجة مركزية أسرع ، بدأنا في إجراء حسابات معقدة في بيثون ، وليس فورتران. لذا فإن الحسابات تستغرق حوالي الوقت نفسه الذي استغرقته منذ 20 عامًا.
  • يعتبر إنشاء لغات برمجة جديدة أو حتى إنشاء أجهزة جديدة هواية عادية وطبيعية.
  • بدأ اختبار الوحدة ، مثله مثل أي شيء مفيد آخر قد فهمه الضجيج ، يُستخدم حتى في حالة عدم الحاجة إليه ، وتحول في النهاية إلى دين.
  • يتجاهل الزملاء عندما يكتشفون أنك تخزن كلمات مرور المستخدم بنص واضح. لكنهم لا يقولون شيئا: إنهم يفعلون ذلك بأنفسهم.

Source: https://habr.com/ru/post/ar483880/


All Articles