آفلاین
user-avatar

چرا Golang به جای سی پلاس پلاس

2 روز پیش
توسط محسن مهری آپدیت شد
آفلاین
user-avatar
امین ( 1070 تجربه )
2 روز پیش
تخصص : بیکاری

با سلام.
خیلی جاها دیدم شایدم دیدید که نوشته گو(Golang) برای این ساخته شده که جای c/c++ رو بگیره!!🤔🤔😆
درسته که گو خیلی زبون خفنی هستو فلانو اینا، منم باهاش کار کردم
و این که یه زبون چند منظورست ولی بیاین قبول کنیم فقط تو طراحی وب و میکروسرویس و اینا خوبه
و طراحیه وب و اینا همون چیزیه که c++/c اصلا توش کاربرد ندارن😅😅(کاری به WebAssembly و اینا ندارم😐)
و گولنگ اکثرا تو هر مبحثی غیر از این چیزا به پای c/c++ نمیرسه
بازم میگم من کاری به طراحی زبونو این چیزا ندارم چون میدونم Go طراحیش خیلی خفنه✌
و دارم از منظر کاربرد نگاه میکنم واگه قرار باشه GO جای سی و سی پلاس پلاس و بگیره باید فقط نباید تو حوزه ی وب باشه
راحت تر بگم اینکه سی و سی پلاس پلاس یه زبون سیستمین و گو اصلا سیستمی نیست که بخواد جای این دوتا رو بگیره🤨😕😄
و لطفا بگید که چطور golang قراره جای c/c++ رو بگیره
با تشکر.

آفلاین
user-avatar
mahdi khanzadi ( 92777 تجربه )
2 روز پیش
تخصص : کار آموز backend

به جای c و cpp از rust استفاده میکنن.

گولنگ نمیتونه جای c و cpp استفاده بشه چون زبان سطح سیستم نیست. هدف اصلی گولنگ پیاده سازی infrastructure هست و اصلا قرار نیست جای cpp و c رو بگیره.

زبانی که قراره جای cpp و c رو بگیره Rust هست که توسط مازیلا طراحی شده و از golang خیلی سریعتر و فایل های کامپایل شده ی اون هم حجم خیلی کمتری داره.

آفلاین
user-avatar
امین ( 1070 تجربه )
2 روز پیش
تخصص : بیکاری

@khanzadimahdi بله درسته من خودمم با rust کار کردم و باش آشنایی دارم زبونی که هم سرعت سی و سی پلاس پلاس و داره و هم مدیریت حافظه ی زبونای سطح بالا و ویژگی های دیگه که اونو نسبت به سی و سی پلاس پلاس برتری میده 💪
ولی موضوع اینجاست که مثلا سازنده ی راست نیومده بگه که این زبون می خواد جای سی و سی پلاس پلاس بگیره و خودش هم داره از هرسه استفاده میکنه😅
ولی حتی اگه می گفت مقایسش منطقی تر بود طبق گفته ی شما😄
الان موضوع من اینجاست که چرا سازنده های گولنگ که به قول شما اصلا زبون سطح سیستم نیست ادعا کردن این زبون قراره جای سی و سی پلاس پلاس و بگیره؟

آفلاین
user-avatar
علی بیات ( 386568 تجربه )
2 روز پیش
تخصص : توسعه دهنده ارشد وب

در واقع هر زبان با تمرکز روی رفع یک سری نیازهای خاص به وجود میاد.
پس خیلی قرار نیست جای هم رو بگیرند

ببینید GoLang زیان خوبیه اما مثل خیلی زبان های دیگه Garbage Collector داره که باعث میشه در سطح سیستم گزینه خیلی مناسبی نباشه
هر چند برای ساخت زیر ساخت و برخی پروژه های وب گزینه بسیار مناسبیه اما در سطح سیستم نه اونقدر ها..

حالا اگر بخواهیم بین Rust و C یه سری نکات رو بررسی کنیم.. میرسیم به نقطه ای که امنیت حافظه مد نظر هست.

با زبان Rust عملا نوشتن برنامه هایی که باعث بوجودآمدن Memory leak بشند، خیلی سخته.. حتی بهتره گفت غیر ممکنه
در حالی که با C و ++C این پروسه Memory leak به راحتی برای برنامه نویس های با تجربه هم پیش میاد (نمونه بارزش هم محصولات مایکروسافت هست که سالها دارند رفع باگ می‌کنند و اکثر مشکلاتشون هم بر میگرده به Memory leak یا نشت حافظه)

در کنار اینها Rust به جای استفاده از Garbage Collector از تکنیکی به نام Ownership و Borrowing بهره میبره.. که یکی از نکات کلیدی هست که باعث میشه این زبان در performance حرفهایی داشته باشه

آفلاین
user-avatar
محسن مهری ( 38709 تجربه )
2 روز پیش
تخصص : برنامه نویس back-end با زبان php framework laravel

الان موضوع من اینجاست که چرا سازنده های راست که به قول شما اصلا زبون سطح سیستم نیست ادعا کردن این زبون قراره جای سی و سی پلاس پلاس و بگیره؟
نقل قول

دوست عزیز - اشتباه منظور دوستمون رو فهمیدی - دقیقا راست یک زبان سطح سیستم هستش من اطلاع زیادی از این زبان ندارم اما مطمینا چون نسبت به cpp خیلی جوون تره حتما توش خیلی از مشکلات زبان c رو حل کردن .
و اینکه تا جایی که من خبر دارم denoJs که ورژن ارتقا یافته ی nodejs هستش در پس زمینه داره از rust استفاده میکنه و همینطور که هممون داریم زبان js رو دنبال میکنیم خیلی پیشرفت داره و مثلا همین سازنده nodejs خودش اومده گفته که من یک اشتباهاتی کردم توی سال 2009 و ساخت زبان nodejs که اومدم سال 2018 توی زبان denojs میخام اونا رو اصلاح کنم. پس حتما وقتی rustرو به بقیه زبان ها ترجیح داده حتما این زبان قابلیت های خوبی داره که اون رو به عنوان یک اصلاح درست انتخاب کرده.
اما کلام اخر : چیزی که اول راه به ما یاد دادن این بود که به هر زبان مثل یک ابزار بهش نگاه کنید (‌چکش - انبردست - پیچ گوشتی) هر کدومش رو تو جای درستش استفاده کنین و اصلا زیاد درگیر بهتر بودن نشین .
مثلا من میبینم با اینکه jquery واقعا دورش تموم شده و باید بهش گفت پدربزرگ تو کتابخونه های javascript اما هر سایت بزرگی که تو ایران میرم میبینم هنوز دارن ازش استفاده میکنن. چون به نظرم به جای اینکه بیان کلی پول بدن به یک برنامه نویس react یا vue ترجیح میدن برنامه نویس با تجربه jquery کار خودش رو انجام بده بهتر باشه.

آفلاین
user-avatar
امین ( 1070 تجربه )
2 روز پیش
تخصص : بیکاری

@mohsen.mehri6101سلام دوست عزیز
بله متاسفانه من اشتباه کردم می خواستم بنویسم سازنده های گو نوشتم سازنده های راست😅
اصلا بحث من فعلا سر راست نیست
سر اینه که چرا خیلی جاها دیدم و حتی گفتن که سازنده های گولنگ این زبون رو ساختن که جای سی و سی پلاس پلاس و بگیره که به قول همه ی شما این زبون اصلا سطح سیستم نیست که بخواد این کار و کنه پس این حرف از کجا میاد

آفلاین
user-avatar
محسن مهری ( 38709 تجربه )
2 روز پیش
تخصص : برنامه نویس back-end با زبان php framework laravel

@amingoodarzi84
سلام بله بنده زیاد در مورد این زبان ( go lang) اطلاعاتی ندارم - اما یک پادکست صوتی سه ساعت گوش دادم در مورد این بود که چطور کدهایی با قابلیت نگهداری و استفاده بالا بنویسیم( خلاصه تر تمیز کد بزنیم ) و یکی از گزینه هایی که بهش اشاره میکرد (‌که تقریبا به نظرم مهمترین گزینش بود) این بود که سعی کنیم تمام پروژه رو به صورت میکروسرویس بنویسیم و استفاده کنیم .که شما هم بالا اشاره کردین این زبان به شدت زبان خوبیه برای نوشتن برنامه های این سبک

برای ارسال پاسخ باید وارد سایت شوید