سافت گذر دانشنامه نرم افزار - دانلود رایگان نرم افزار

همه دسته بندی ها

منو
جستجو
اطلاعیه های مهم سایت اطلاعیه های مهم سایت
💐 میلاد زینت پدر حضرت زینب سلام الله علیها مبارک باد 💐
 
 
  1. ولادت با سعادت پنجمین امام شیعیان، حضرت امام محمد باقر (علیه السلام)، این چشمه جوشان علم و معرفت، این معدن فضیلت و کرامت را به همه دوستداران اهل بیت (علیهم السلام) تبریک و تهنیت عرض می‌نماییم.
  2. سافت گذر لباس نو به تن کرده😍
  3. 🔰جایگزین مناسب Kaspersky خرید لایسنس نود 32
  4. جهت رفع مشکل باز شدن سایت به دلیل بلاک توسط  نود 32 این ویدیو یا این ویدیو(ورژن 9 به بالا) یا راهنمای تصویری را مشاهده کنید
  5. اکانت های بروزرسانی نود32 با قیمت های مناسب به صورت یک ، سه ، شش و دوازده ماهه از اینجا قابل خرید می باشد.

نرم افزار های پرکاربرد

ثبت نام | ورود

اخبار فناوری

چرا برخی از زبان‌ های برنامه نویسی قدیمی پراستفاده هستند؟

هرچند این روزها تعداد بی شماری زبان برنامه‌نویسی وجود دارند، اما تعداد انگشت شماری از این زبان‌های برنامه‌نویسی محبوب بوده و پراستفاده هستند. اغلب زبان‌های برنامه‌نویسی و نشانه‌گذاری عمر بالایی دارند که از جمله‌ی آن‌ها می‌توان به پی‌اچ‌‌پی، سی، روبی و اچ‌تی‌ام‌ال اشاره کرد. اما چرا این زبان‌های برنامه‌نویسی با وجود پیشرفت در حوزه‌ی فناوری همچنان کاربردی بوده و از محبوبیت بالایی برخوردارند؟

به گزارش سافت گذر به نقل اززومیت؛ از جمله‌ی محبوب‌ترین زبان‌های برنامه‌نویسی که امروزه مورد استفاده قرار می‌گیرند، می‌توان به پی اچ پی با عمری 20 ساله، پایتون با 23 سال، اچ تی ام ال با 21 سال، جاوا اسکریپت با 19 سال و زبان بی مانند سی با 42 سال قدمت اشاره کرد.

شاید در زمان توسعه‌ی این زبان‌ها کسی تصور موفقیت آن‌ها را تا این حد پیش‌بینی نمی‌کرد. برایان کرنیگان، یکی از نویسندگان اولین کتاب در رابطه با زبان C است که امروزه نیز مورد استفاده قرار می‌گیرد. کرنیگان در نگارش این کتاب، دنیس ریچی، خالق زبان سی را یاری کرده است. وی در خصوص ماندگاری و موفقیت این زبان برنامه‌نویسی چنین اظهار نظر کرده است:

به یاد دارم که در زمان پایان نگارش این کتاب، در سخنی با ویراستاران از فروش تنها 5٫000 نسخه از این کتاب حرف می‌زدیم. ولی ما موفق شدیم تا خیلی بهتر از تصورات خودمان عمل کنیم. هنوز نمی‌توانم باور کنم که سال 2015 شماری از دانشجویان از این کتاب به عنوان مرجع آموزشی استفاده می‌کنند.

موضوعی که در مورد سی اهمیت دارد و بسیار جالب به نظر می‌رسد، این است که گوگل هم‌اکنون زبانی را با نام Go توسعه داده که هدف از آن حل مسائل، بهینه‌تر از روش‌هایی است که زبان C حل می‌کند. به بیان بهتر گوگل زبان Go را ایجاد کرده تا مسائل موجود را از روش بهینه‌تری در مقایسه با زبان C حل کند. البته این موضوع برای کرنیگان قابل پذیرش نیست که Go می‌تواند C‌ را پشت سر بگذارد.

وی درباره‌ی مرگ زبان‌های برنامه‌نویسی می‌گوید:

بسیاری از زبان‌ها از بین نمی‌روند یا حداقل در صورتی که به حدی از مقبولیت برسند، از بین نمی‌روند. در حال حاضر زبان C قادر است بسیاری از مشکلات و مسائل موجود را بهتر از هر گزینه‌ی دیگری حل کند.

توسعه با زبانی که برنامه نویسان با آن بیشتر آشنا هستند

دلیل محبوبیت شماری از زبان‌های برنامه‌نویسی چیست و چرا برخی از زبان‌ها به موفقیت می‌رسند؟ دلیل این امر بسیار روشن است؛ برنامه‌نویسان این زبان‌های برنامه‌نویسی را انتخاب می‌کنند. هرچند انتخاب یک زبان برنامه‌نویسی توسط برنامه‌نویسان دلیل قانع‌کننده‌ای برای نشان دادن محبوبیت یک زبان است، اما بهتر است به کنکاش دلایل انتخاب زبان مورد نظر توسط برنامه‌نویسان بپردازیم.

آری رابکین و لئو مایروویچ محققانی از دانشگاه‌های پرینستون و کالیفرنیا هستند که طی یک تحقیق دو ساله به یافتن پاسخ این پرسش پرداخته‌اند. نتیجه‌ی تحقیق این دو فرد در دانشگاه‌های نامبرده شامل بیش از 200٫000 پروژه و 13٫000 برنامه نویس است.

اما اصلی‌ترین دلیل برای انتخاب یک زبان از سوی برنامه‌نویسان چه بوده است؟ توسعه‌دهندگان به سراغ زبان‌هایی می‌روند که با آن آشنایی دارند.

آری رابکین در این مورد چنین اظهار نظر کرده است:

شماری از زبان‌های برنامه‌نویسی هستند که به دلیل استفاده‌ی مداوم از آن‌ها، به سراغشان می‌رویم. برای مثال منجمان بصورت سنتی از زبان برنامه نویسی IDL در برنامه‌های رایانه‌ای خود استفاده می‌کنند. دلیل استفاده از این زبان برنامه نویسی، داشتن خاصیت جالب توجه در رابطه با ستاره‌ها یا هر چیز دیگری مرتبط با نجوم نیست، بلکه استفاده از این زبان به یک سنت تبدیل شده است. در نجوم برنامه‌های فراوانی با IDL ‌توسعه یافته و از این‌رو منجمان دوست دارند تا از این زبان استفاده کنند.

بنابراین داشتن شناخت از یک زبان را باید دلیل اصلی برای ادامه‌ی استفاده از آن خواند. البته این بدین معنی نیست که زبان‌های برنامه‌نویسی در طول تاریخ تغییر نمی‌کنند. رابکین به این موضوع اشاره کرده که زبان برنامه‌نویسی C که در حال حاضر مورد استفاده قرار می‌گیرد، بسیار متفاوت از آن چیزی است که کرنیگان از آن سخن می‌گوید. به اعتقاد رابکین شاید کد توسعه یافته در C اولیه با کامپایلرهای امروز مطابقت نداشته باشد. به گفته‌ی رابکین زبان‌های برنامه‌نویسی با عمر بالا معمولا در طول سال‌های مختلف تغییراتی را به خود می‌بینند. این تغییرات شامل اضافه شدن ویژگی‌های جدید در کار بهبود قابلیت‌های جدید است. البته معمولا این تغییرات به معنای پشتیبانی نکردن از کدهای قدیمی نیست.

پشتیبانی از کدهای قدیمی به این معنا است که نه‌تنها برنامه‌نویسان می‌توانند برنامه‌های خود را بروزرسانی کنند، بلکه نیازی نیز به دوباره‌نویسی کدهای قدیمی نیست. به کدهای قدیمی موجود در برنامه‌ها که در طول زمان با بروزرسانی قطعات دیگر قدیمی شده‌اند، کدهای به ارث رسیده اطلاق می‌شود.

پی اچ پی: یک زبان برنامه‌نویسی با قدمت بالا

Legacy Code یا کد به ارث رسیده به برنامه‌ یا قطعه کدی اطلاق می‌شود که کد توسعه یافته برای آن قدیمی باشد. برای مثال فرض کنید که قطعه کدی از یک برنامه‌ی تجاری یا یک پروژه‌ی مهندسی در زبانی توسعه یافته که در حال حاضر از آن پشتیبانی نمی‌شود. البته باید به این نکته اشاره کرد که این قطعه کد هدف اصلی از توسعه‌ی آن را که همانا دریافت یک خروجی است، به خوبی انجام می‌دهد، اما مساله اینجا است که برنامه‌نویسان به دلیل هزینه‌ی بالا برای تبدیل آن به قطعه کد مدرن یا سخت بودن فرآیند تبدیل، ترجیح می‌دهند تا همچنان از این قطعه کد قدیمی استفاده کنند.

هر زبان برنامه‌نویسی که برای چندین سال مورد استفاده قرار گیرد، از مشکل کد به ارث رسیده رنج می‌برد و پی‌اچ‌پی نیز یک مثال بارز در این مورد است. شدت تغییرات در پی اچ پی بسیار بالا است و از همین رو سرعت تبدیل شدن یک قطعه کد به Legacy Code بسیار بیشتر است و در فاصله‌ی چند سال کدهای توسعه یافته قدیمی می‌شوند.

اَندی گوتمانز، یکی از توسعه‌دهندگان فریمورک زند است. این فریمورک بصورت استاندارد در زمان ارائه‌ی PHP4 روانه‌ی بازار شد. گوتمانز به یاد می‌آورد که وی و همکارش سعی داشتند تا این فریمورک را برای PHP 3 ارائه کنند، اما ورود راسموس لردورف همه چیز را تغییر داد. این گروه فریمورک زند را برای PHP 4 و سپس PHP 5 توسعه دادند که همین امر منجر به موفقیت شد.

نتیجه‌ی تغییرات در پی اچ پی باعث شده تا آنچه که امروز از این زبان می‌شناسیم، با نسخه‌ی اولین متفاوت باشد. همین امر باعث شده تا وجود انواع Legacy Codeها در این زبان و اپلیکیشن‌ها و وب‌سایت‌های توسعه داده شده، بسیاری از منتقدان را پابرجا نگه دارد، چراکه به اعتقاد این افراد پی اچ پی مملو از حفره‌های امنیتی است و نمی‌توان از آن برای انجام محاسبات در مقیاس بزرگ استفاده کرد.

گوتمانز در این خصوص می‌گوید:

افرادی که زبان برنامه‌نویسی پی اچ پی را مورد انتقاد قرار می‌دهند، مفهوم این زبان در سال 1998 را در نظر دارند. این افراد بروز نیستند و از جزئیات اکوسیستم پی‌ اچ پی و قابلیت‌های آن در قالب مدرن هیچ اطلاعی ندارند.

در حال حاضر گوتمانز و همکارانش توسعه‌دهندگان و کاربرانی را که از زبان پی اچ پی استفاده می‌کنند، تشویق می‌کنند تا کدهای خود را بروز کنند. ور در این باره می‌گوید:

پی اچ پی در حال حاضر از جامعه‌ی بسیار بزرگی تشکیل شده و کدهای قدیمی در کدهای توسعه یافته با آن به وفور یافت می‌شود.

مساله اینجا است که کاربر هیچگاه آخرین نسخه از زبان را مورد استفاده قرار نمی‌دهد. برای مثال می‌توان به توسعه‌دهندگان زبان پایتون اشاره کرد که از پایتون 2 که در سال 2000 توسعه یافته بیشتر استفاده می‌کنند. در حال حاضر پایتون 3 نیز که در سال 2008 توسعه یافته، برای استفاده در دسترس است. دلایل بسیاری برای اینکه توسعه‌دهندگان به نسخه‌ی جدیدتر بروز نمی‌شوند، وجود دارد، اما احتیاط بسیاری از برنامه‌نویسان را از اینکار باز می‌دارد.

رابکین در این خصوص می‌گوید:

یک زبان که از وجود کدهای قدیمی و به ارث رسیده بهره‌مند است، هرگز نمی‌میرد. بازنویسی گران است و از این‌رو اگر کد همچنان کار کند، دیگر نیاز به تغییر نیست.

 مطمئنا توسعه‌دهندگان زبان‌های برنامه‌نویسی را برای باقی گذاشتن کدهای قدیمی انتخاب نمی‌کنند. رابکین و مایروویچ در تحقیقات خود به این نتیجه رسیده‌اند که انتخاب زبان و آگاهی از زبان‌های مختلف هیچ ارتباطی با سن توسعه‌دهندگان ندارد.

این دو نفر در تحقیق خود در این مورد چنین نوشته‌اند:

ما افرادی را که در جامعه‌ی آماری‌مان قرار داشتند، به گروه‌های سنی مختلفی تقسیم کردیم و از آن‌ها پرسیدیم که با چه تعداد زبان برنامه‌نویسی آشنا هستند. پاسخی که ما را شوکه کرد، این بود که سن هیچ ارتباطی با بیشتر شدن تعداد زبان‌های برنامه‌نویسی که فرد از آن استفاده می‌کند، ندارد. در واقع تعداد زبان‌های برنامه‌نویسی که گروه سنی 25 و 40 سال از آن آگاهی داشتند، یکسان بود.

این بدین معنا است که تنها توسعه‌دهندگان قدیمی به سراغ زبان‌های برنامه‌نویسی با قدمت بالا نمی‌روند، بلکه توسعه‌دهندگان جوان نیز ابتدا به سراغ زبان‌های برنامه‌نویسی قدیمی‌تر رفته و سپس به سراغ گزینه‌های جدیدتر می‌روند. شاید دلیل این موضوع بهره‌گیری زبان‌های مورد نظر از کتابخانه‌ها و قابلیت‌هایی باشد که جذاب به نظر می‌رسند. همچنین بودن در یک اجتماع نیز تاثیرگذار است، بطوریکه بعضا گروهی از برنامه‌نویسان به یکباره اقدام به یادگیری و استفاده از یک زبان جدید می‌کنند.

رابکین اضافه می‌کند:

اخلاق خاصی نیز در بین برنامه‌نویسان رواج دارد. در صورتی که یک زبان برنامه‌نویسی قابلیت‌های مشخصی داشته باشد، برنامه‌نویسان به سراغ یادگیری و استفاده از آن می‌روند. در صورتی که شما در یک جامعه‌ی برنامه‌نویسی قرار داشته باشید که رفته رفته همه‌ شروع به استفاده از یک زبان جدید کرده و آن‌ را با دیگران به اشتراک می‌گذارند، شما نیز به سمت زبان مورد نظر حرکت می‌کنید.

جامعه‌ی برنامه‌نویسان نقش به سزایی در عملکرد زبان‌های برنامه‌نویسی دارند. برای مثال می‌توان به پایتون و روبی اشاره کرد. این دو زبان سطح بالا تفاوت چندانی با یکدیگر ندارند، اما توجه برنامه‌نویسان یکی را از دیگری برتر کرده است.

 در پایان می‌توان چنین نتیجه گرفت که وجود کدهای به ارث رسیده و قدیمی در کنار تعامل جامعه‌ی برنامه‌نویسی با یک زبان، به ماندگاری آن کمک می‌کند.

نظرتان را ثبت کنید کد خبر: 26546 گروه خبری: اخبار فناوری منبع خبر: zoomit.ir تاریخ خبر: 1394/03/04 تعداد مشاهده: 1378
اخبار مرتبط با این خبر
نظر های کاربران
سرور آپدیت نود 32
پیشنهاد سافت گذر
Code VBA 10.0.0.43

Code VBA 10.0.0.43

ویرایشگر کدهای VBA

Tableau Desktop Professional Edition 2020.1.3 / 2019 + Mac

Tableau Desktop Professional Edition 2020.1.3 / 2019 + Mac

نرم افزار تجزیه و تحلیل آماری و داده ها

Tether WiFi Hotspot one click 2.0 for Android

Tether WiFi Hotspot one click 2.0 for Android

اینترنت گوشی خود را به اشتراک بگذارید!!

DigitalVolcano Duplicate Cleaner Pro 5.21.2

DigitalVolcano Duplicate Cleaner Pro 5.21.2

حذف فایل های تکراری در ویندوز

Adobe Media Encoder 2019 13.1.5.35 + Portable / macOS 13.1.5

Adobe Media Encoder 2019 13.1.5.35 + Portable / macOS 13.1.5

ادوب مدیا انکودر 2019

Pluralsight (TrainSignal) - Windows 8 Managing and Maintaining (70-688) Part 1 / 2 / 3 / 4

Pluralsight (TrainSignal) - Windows 8 Managing and Maintaining (70-688) Part 1 / 2 / 3 / 4

مجموعه‌ی 4 دوره آموزش تصویری مدیریت و نگهداری همه‌جانبه‌ی ویندوز 8 – آزمون 70-688

مداحی مهدی رعنایی سال 98

مداحی مهدی رعنایی سال 98

محرم شب اول تا شام غریبان رعنایی

سخنرانی دکتر ناصر رفیعی با موضوع فرار از مسئولیت

سخنرانی دکتر ناصر رفیعی با موضوع فرار از مسئولیت

سخنرانی فرار از مسئولیت با ناصر رفیعی

The 39 Awesome Kitchen Tips and Tricks

The 39 Awesome Kitchen Tips and Tricks

آموزش ترفندهای خانه داری

Guerrilla Bob 1.4 for Android

Guerrilla Bob 1.4 for Android

باب تیرانداز

Adobe Photoshop CC 2018 v19.1.9.27702 / 2017 + Portable / macOS

Adobe Photoshop CC 2018 v19.1.9.27702 / 2017 + Portable / macOS

فتوشاپ

Google Voice And Video Chat - Google Talk Plugin 5.41.3.0

Google Voice And Video Chat - Google Talk Plugin 5.41.3.0

چت صوتی و تصویری گوگل چت

Brave Browser 1.73.104 For Android +9.0

Brave Browser 1.73.104 For Android +9.0

مرورگر بریو

آموزش جامع طراحی وب سایت در فتوشاپ

آموزش جامع طراحی وب سایت در فتوشاپ

آشنایی با طراحی وب سایت با نرم افزار فتوشاپ

What Mobile Magazine June 2015 - May 2016

What Mobile Magazine June 2015 - May 2016

مجله موبایل وات

CareUEyes Pro 2.4.4

CareUEyes Pro 2.4.4

تنظیم نور و رنگ مانیتور برای جلوگیری از خستگی چشم

99Waves To Die

99Waves To Die

جنگ تا پیروزى

آموزش پایگاه داده ها

آموزش پایگاه داده ها

آموزش دیتابیس

گناهان کبیره

گناهان کبیره

چکیده ای از کتاب گناهان کبیره

ImageRanger Pro Edition 1.9.6.1888

ImageRanger Pro Edition 1.9.6.1888

مدیریت عکس‌

Xodo PDF Reader & Editor Pro 9.8 For Android +5.0

Xodo PDF Reader & Editor Pro 9.8 For Android +5.0

نمایش فایلهای PDF

داستان دو شهر رمانی نوشته چارلز دیکنز

داستان دو شهر رمانی نوشته چارلز دیکنز

داستان دو شهر با فروش ۲۰۰ میلیون نسخه در جهان

مدار منطقی

مدار منطقی

آشنایی با مدار و منطقی برای دانشجویان کامپیوتر

AKVIS Plugins for Photoshop Updated in 2023.03.22

AKVIS Plugins for Photoshop Updated in 2023.03.22

پلاگین های گرافیکی آکویس

EPLAN Fluid 2023.0.3.19351 / 2.7.3.11418

EPLAN Fluid 2023.0.3.19351 / 2.7.3.11418

ایپلن فلوید مدلسازی در مهندسی سیالات

Infinite Mini Golf

Infinite Mini Golf

گلف برای کامپیوتر

آموزش نرم افزار Business Plan Pro

آموزش نرم افزار Business Plan Pro

آموزش بیزینس پلان پرو

نماهنگ زیبای « با روی سیاه » با صدای حاج محمود کریمی ویژه ایام ماه مبارک رمضان

نماهنگ زیبای « با روی سیاه » با صدای حاج محمود کریمی ویژه ایام ماه مبارک رمضان

با روی سیاه از محمود کریمی

Football Manager 2021

Football Manager 2021

مدیریت فوتبال 2021

IDM UEStudio 24.2.0.39

IDM UEStudio 24.2.0.39

ویرایشگر کد

همراه بانک مسکن نسخه 1.34 برای اندروید

همراه بانک مسکن نسخه 1.34 برای اندروید

موبایل بانک مسکن

طرح توجیهی چیست؟

طرح توجیهی چیست؟

ایده های موفق کسب و کار

ooVoo 7.0.4.3

ooVoo 7.0.4.3

بهترین برنامه برای ارتباط و چت صوتی تصویری اینترنتی رایگان

Meridian - New World

Meridian - New World

نصف‌النهار - دنیای جدید

Smash the School 1.3.21 for Android +4.0

Smash the School 1.3.21 for Android +4.0

بازی تخریب مدرسه

برتری اهل بیت(ع) یا افضلیت اهل بیت(ع)

برتری اهل بیت(ع) یا افضلیت اهل بیت(ع)

فضایل السادات، یا، برتری خاندان رسالت و امامت

آموزش حیات وحش به کودکان

آموزش حیات وحش به کودکان

گربه سانان به زبان ساده

Sprinkle Islands 1.1.6 for Android

Sprinkle Islands 1.1.6 for Android

بازی جدید جزیره آتشنشان ها

The 40 Themes For XP With Installation Pack

The 40 Themes For XP With Installation Pack

مجموعه 40 تم کامل و بسیار زیبا و منحصر بفرد برای ویندوز XP با قابلیت نصب

آمار و تصاویر هشت سال دفاع مقدّس

آمار و تصاویر هشت سال دفاع مقدّس

نبردهای ایران و عراق

خبرنامه

با عضویت در خبرنامه، زودتر از همه باخبر باش!