مارتین شلیس سعی کرد پروژه های متن باز مختلف را از نظر پیچیدگی کد و درک نحوه عملکرد کد و اقداماتی که انجام می دهد، مقایسه کند. به عنوان مثال، زمانی که یک پروژه از انتزاعات پیچیده استفاده می کند، مانند ارتباطات توزیع شده مولفه ها بر روی یک شبکه، یا از تعداد زیادی ماژول و کلاس تو در تو استفاده می کند، درک آن دشوارتر می شود.
معیار مورد استفاده برای ارزیابی پیچیدگی بالقوه، شمارش تعداد عملیات وارداتی بود که فایلهای مختلف را در هم میپیچید. فرض بر این است که یک شخص می تواند به راحتی 5-6 اتصال فایل های مختلف را تجزیه کند و با افزایش این شاخص، درک منطق دشوارتر می شود.
نتایج بهدستآمده (سطح دشواری به عنوان درصد فایلهایی تعریف میشود که به ۷ یا بیشتر فایلهای دیگر پیوند دارند).
- Elasticsearch - 77.2%
- کد ویژوال استودیو - 60.3%.
- زنگ - 58.6٪
- هسته لینوکس - 48.7٪
- PostgreSQL - 46.4٪
- mongoDB - 44.7٪
- Node.js - 39.9٪
- PHP - 34.4٪
- CPython - 33.1٪
- جنگو - 30.1٪
- reactJS - 26.7%
- سیمفونی - 25.5٪
- لاراول - 22.9٪
- nextJS - 14.2%
- چاکرا-UI - 13.5٪
منبع: opennet.ru