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

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

منو
جستجو
اطلاعیه های مهم سایت اطلاعیه های مهم سایت
💐 میلاد زینت پدر حضرت زینب سلام الله علیها مبارک باد 💐
 
 
  1. جهت رفع مشکل باز شدن سایت به دلیل بلاک توسط  نود 32 این ویدیو یا این ویدیو(ورژن 9 به بالا) یا راهنمای تصویری را مشاهده کنید
  2. اکانت های بروزرسانی نود32 با قیمت های مناسب به صورت یک ، سه ، شش و دوازده ماهه از اینجا قابل خرید می باشد.

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

ثبت نام | ورود

اخبار فناوری

گوگل از۲میلیارد خط کد یکپارچه تشکیل شده‌است

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

به گزارش سافت گذر به نقل اززومیت؛ ریچل پاتوین (Rachel Potvin) از گوگل، روز دوشنبه در جریان یک کنفرانس مهندسی در دره‌ی سیلیکون، در رابطه با حجم کدهای گوگل پاسخی ارائه داد. براساس تخمین او، نرم افزاری که برای اجرای کل سرویس‌های اینترنتی گوگل مانند سرویس جستجوی گوگل، جیمیل و سرویس نقشه گوگل، مورد نیاز است، بطور تقریبی شامل ۲ میلیارد خط کد است. برای مقایسه، سیستم‌عامل ویندوز مایکروسافت را در نظر بگیرید؛ یکی از پیچیده‌ترین نرم افزارهایی که تا کنون برای یک کامپیوتر خلق شده است و پروژه‌ای که از سال ۱۹۸۰ در حال توسعه است. این سیستم‌عامل تقریبا شامل ۵۰ میلیون خط کد است. بنابراین، ساختن گوگل تقریبا معادل ۴۰ بار ساختن ویندوز است.

سم لمبرت (Sam Lambert) مدیر سرویس GitHub می‌گوید:

این آمار و ارقام واقعا حیرت‌آور است.

مقایسه‌ی انجام شده از یک حیث بسیار مناسب است. درست مانند کد‌های ویندوز، ۲ میلیارد خط کدی که گوگل را به پیش می‌رانند، به صورت یکپارچه هستند. این کدها که سرویس جستجوی گوگل، سرویس نقشه گوگل، گوگل داکس، گوگل پلاس، تقویم گوگل، جیمیل، یوتیوب و بسیاری از سرویس‌های اینترنتی دیگر گوگل را اجرا می‌کنند، در یک محل ذخیره شده‌اند و به صورت یکجا در دسترس هر ۲۵۰۰۰ مهندس گوگل قرار دارند. در داخل شرکت، با این کدها به صورت یک سیستم‌عامل عظیم برخورد می‌شود.

پاتوین می‌گوید:

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

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

سم لمبرت، مدیر سیستم‌های GitHub می‌گوید:

داشتن حدود ۲۵۰۰۰ توسعه‌دهنده به این معنی است که گوگل، منبع کد خود را در اختیار افراد گوناگون با توانایی‌های متنوع می‌گذارد. اما به عنوان یک شرکت کوچک، شما می‌توانید امکانی مشابه را در GitHub به صورت متن باز در اختیار داشته باشید.

وی همچنین در مورد منبع کد عظیم گوگل می‌افزاید:

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

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

به پایپر گوش فرا دهید

گوگل اساسا "سیستم بررسی نسخه" اختصاصی خود را برای مدیریت کدها ساخته است. این سیستم که پایپر (Piper) نام دارد و با هدف اجرای سرویس‌های آنلاین گوگل، در سراسر زیرساخت آنلاین آن در حال کار است. طبق گفته‌ی پاتوین، این سیستم ۱۰ دیتاسنتر مختلف گوگل را پوشش می‌دهد. این گونه نیست که همه‌ی ۲ میلیارد خط کد در داخل یک سیستم قرار گرفته و در دسترس همه‌ی مهندسان حاضر در شرکت باشد. بلکه این سیستم به مهندسان گوگل یک آزادی غیر معمول برای استفاده و تلفیق کدها در بین هزاران پروژه فراهم می‌کند.

پاتوین می‌گوید:

وقتی شروع به انجام یک پروژه جدید می‌کنید، از همان آغاز کار، کتابخانه‌ای عظیم در اختیار دارید و تقریبا همه چیز از قبل انجام شده است.

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

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

این سیستم محدودیت‌هایی نیز دارد. طبق گفته‌ی پاتوین، کدهای با حساسیت بالا مانند الگوریتم جستجوی پیج-رنک (PageRank) گوگل، در منبعی جداگانه و در اختیار کارکنان به خصوصی قرار می‌گیرند. همچنین به دلیل آنکه اندروید و کروم – دو سیستم‌عامل گوگل – تحت شبکه نبوده و بسیار متفاوت از بقیه هستند، گوگل آن‌ها را در سیستم‌های کنترل نسخه‌ی جداگانه‌ای نگه‌داری می‌کند. اما در حالت کلی، کدهای گوگل یک سیستم یکپارچه هستند که اجازه جریان آزاد ایده‌ها و راهکارها را فراهم می‌کنند.

ارزش کار ماشین‌ها

همانطور که لمبرت نیز اشاره کرد، ساخت و راه‌اندازی چنین سیستمی علاوه بر دانش فنی به حجم عظیمی از محاسبات کامپیوتری نیاز دارد. پایپر در حدود ۸۵ ترابایت (۸۵۰۰۰ گیگابایت) داده را پوشش می‌دهد؛ مهندسان گوگل روزانه در حدود ۴۵۰۰۰ هزار تغییر در کدها ایجاد می‌کنند. در حالیکه سیستم‌عامل متن‌ باز لینوکس ۱۵ میلیون خط کد را در حدود ۴۰۰۰۰ فایل نرم افزاری پوشش می‌دهد، مهندسان گوگل بطور هفتگی ۱۵ میلیون خط کد را در حدود ۲۵۰۰۰۰ فایل اصلاح می‌کنند.

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

پایپر باید حجم زیادی از بار را از دوش مهندسین بردارد؛ فهم کدها را برای آن‌ها آسان کند، از به وجود آمدن تداخل در آثار ایجاد تغییر در کدها جلوگیری به عمل آورد و در رفع باگ‌ها و حذف کدهای غیر قابل استفاده، سودمند باشد. گوگل با تعویض سیستم کنترل نسخه‌ی سابق خود (Perforce) با سیستم پایپر، بیشتر وظایف را به ماشین‌های خودکار سپرده است. این به معنی نوشتن کد توسط ماشین‌ها نیست؛ اما آن‌ها، بیشترِ داده‌ها و فایل‌های مورد نیاز برای اجرای نرم‌افزار شرکت را تولید می‌کنند.

پاتوین می‌گوید:

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

پایپر برای همه

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

پاتوین می‌گوید:

در حال امکان سنجی برای توسعه‌ی Mercurial در مقیاس منبع کد گوگل هستیم.

گوگل در حال همکاری با متخصص برنامه نویسی برایان اوسالیوان (Bryan O'Sullivan) و برخی از کارکنان فیسبوک در این زمینه است. اگرچه در حال حاضر هیچ شرکتی مانند گوگل و فیسبوک چنین حجمی از کد را در اختیار ندارند، اما در آینده‌ی نزدیک، شرکت‌هایی با ویژگی مذکور وجود خواهند داشت.

نظرتان را ثبت کنید کد خبر: 28697 گروه خبری: اخبار فناوری منبع خبر: zoomit.ir تاریخ خبر: 1394/07/19 تعداد مشاهده: 1777
اخبار مرتبط با این خبر
نظر های کاربران
سرور آپدیت نود 32
پیشنهاد سافت گذر
اعمال واجب و مستحب

اعمال واجب و مستحب

مفتاح الفلاح نوشته شیخ بهائی

Transport Fever

Transport Fever

شبیه ساز حمل و نقل

Cylne

Cylne

جهان فراواقعی

The Talos Principle - Road To Gehenna

The Talos Principle - Road To Gehenna

اصل تالوس - راهی بسوی جهنم | کامل‌ترین و سالم‌ترین نسخه، دارای تمامی آپدیت‌ها و دی‌ال‌سی‌ها

nanoCAD 24.0.6434.4336 Build 7191

nanoCAD 24.0.6434.4336 Build 7191

نانوکد

Runtime Captain Nemo Pro 7.04

Runtime Captain Nemo Pro 7.04

دسترسی مستقیم به درایوها و فایل‌سیستم‌های غیرقابل‌دسترسی در محیط ویندوز

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

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

رای ساختمان ذهنی خودتان چه طرح و برنامه ای ریخته اید؟

سخنرانی حجت الاسلام پناهیان با موضوع خانواده و تربیت وِلایی

سخنرانی حجت الاسلام پناهیان با موضوع خانواده و تربیت وِلایی

سخنرانی خانواده و تربیت وِلایی پناهیان

Knights of Honor II: Sovereign

Knights of Honor II: Sovereign

استراتژیک قرون وسطایی برای کامپیوتر

Magoshare AweClone Enterprise 3.0

Magoshare AweClone Enterprise 3.0

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

امراض و درمان کبد چرب

امراض و درمان کبد چرب

آشنایی با کبد سالم

Udemy - Advanced C Programming Course

Udemy - Advanced C Programming Course

آموزش پیشرفته برنامه نویسی C

Riptide GP 1.6.3 / GP2 1.3.1 for Android +2.3

Riptide GP 1.6.3 / GP2 1.3.1 for Android +2.3

بازی قایق موتوری

Epitasis + Updates

Epitasis + Updates

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

Frontline Commando:WW2 v3.0.2 for Android +3.0

Frontline Commando:WW2 v3.0.2 for Android +3.0

بازی تکاور خط مقدم

Warhammer 40,000: Mechanicus + Updates

Warhammer 40,000: Mechanicus + Updates

وارهمر 40000

کتاب مشاوره و آزمایش اچ آی وی، کتاب مرجع پزشکان

کتاب مشاوره و آزمایش اچ آی وی، کتاب مرجع پزشکان

اﻓﺰاﯾﺶ داﻧﺶ ﭘﯿﺸﮕﯿﺮی از HIV

وبلاگ نویسی شیرین با WordPress

وبلاگ نویسی شیرین با WordPress

آموزش وردپرس2

Maximum PC Magazine February 2016 - January 2017 + Specials 2016

Maximum PC Magazine February 2016 - January 2017 + Specials 2016

مجله ماکسیموم پی سی

TeraByte Unlimited BootIt Bare Metal 1.92

TeraByte Unlimited BootIt Bare Metal 1.92

پارتیشن بندی و مدیریت بوت

Cypheros TS-Doctor 4.2.6

Cypheros TS-Doctor 4.2.6

ویرایش و تعمیر فایل‌های ضبط‌شده از دستگاه‌های دیجیتال و کابلی

Pluralsight - CompTIA A+ Part 1 / 2 / 3 / 4 / 5 / 6

Pluralsight - CompTIA A+ Part 1 / 2 / 3 / 4 / 5 / 6

مجموعه‌ی 6 دوره آموزش تصویری مدرک CompTIA A+ شامل مباحث سخت‌افزار، شبکه‌سازی، دستگاه‌های جانبی، سیستم عامل‌ها، دستگاه‌های همراه-عیب‌یابی و نحوه‌ی بستن قطعات و ساخت کامپیوتر

شرح خطبه شعبانیه پیامبر اسلام(ص)

شرح خطبه شعبانیه پیامبر اسلام(ص)

اوصاف روزه داران

نوشیدنی های رژیمی و غیر رژیمی

نوشیدنی های رژیمی و غیر رژیمی

طرز تهیه نوشیدنی

SODAT Privacy Protection Tool 1.0.2.0

SODAT Privacy Protection Tool 1.0.2.0

برنامه ای مفید برای حذف قابلیت های جاسوسی در ویندوز 10 و حفظ حریم خصوصی

Moonfall

Moonfall

اکشن جنگی

Infinitesimal Point

Infinitesimal Point

هدف جزئی

Pluralsight - CompTIA Mobility+ Part 1 Over-the-Air and Network Infrastructure / Part 2 Security / Part 3 Device Management and Troubleshooting

Pluralsight - CompTIA Mobility+ Part 1 Over-the-Air and Network Infrastructure / Part 2 Security / Part 3 Device Management and Troubleshooting

مجموعه‌ی 3 دوره آموزش تصویری مدرک بین‌المللی CompTIA Mobility+ شامل مباحث شبکه، امنیت، مدیریت و عیب‌یابی دستگاه‌های همراه

Camera FV 5.3.2 for Android +2.3

Camera FV 5.3.2 for Android +2.3

دوربین اف وی

آموزش حرفه‌ای پاورپوینت 2013

آموزش حرفه‌ای پاورپوینت 2013

آموزش روان ومصور پاورپوینت 2013

Commandos: Origins

Commandos: Origins

کماندوها

Folder Protect 2.1.0

Folder Protect 2.1.0

محافظت از پوشه ها و برنامه ها فولدر پروتکت

Harry Potter 6

Harry Potter 6

هری پاتر برای کامپیوتر

معارف امام رضا (ع) از حجت الاسلام والمسلمین انصاریان - 8 جلسه

معارف امام رضا (ع) از حجت الاسلام والمسلمین انصاریان - 8 جلسه

حاج آقا انصاریان با موضوع معارف امام رضا (ع)

آموزش  نرم افزار GPSS

آموزش نرم افزار GPSS

آموزش نرم افزار جی پی اس اس

Adoreshare Video Joiner 1.0.0.2

Adoreshare Video Joiner 1.0.0.2

به هم چسباندن ویدیوها

سبک های مداحی نسخه 1.6 برای اندروید 2.2+

سبک های مداحی نسخه 1.6 برای اندروید 2.2+

جدیدترین مداحی ها و مولودی های شاعران معروف کشور

Valentin Software TSOL 2021 R3 / 2018 R3 / 5.5 R6

Valentin Software TSOL 2021 R3 / 2018 R3 / 5.5 R6

نرم افزار شبیه ساز دینامیکی سیستم های حرارتی خورشیدی

PowerArchiver Professional v2021 20.00.62

PowerArchiver Professional v2021 20.00.62

فشرده سازی فایل ها

Atlas Web Browser Plus 2.1.0.2 for Android +4.0

Atlas Web Browser Plus 2.1.0.2 for Android +4.0

مرورگر اطلس

خبرنامه

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