امین
4 سال پیش توسط امین مطرح شد
8 پاسخ

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

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


ثبت پرسش جدید
mahdi khanzadi
تخصص : backend developer at Snapp mar...
@khanzadimahdi 4 سال پیش مطرح شد
5

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

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

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


امین
تخصص : بیکاری
@amingoodarzi84 4 سال پیش آپدیت شد
0

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


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
2

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

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

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

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

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


محسن مهری
تخصص : برنامه نویس back-end با زبان...
@mohsen.mehri6101 4 سال پیش آپدیت شد
0

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

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


امین
تخصص : بیکاری
@amingoodarzi84 4 سال پیش مطرح شد
0

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


محسن مهری
تخصص : برنامه نویس back-end با زبان...
@mohsen.mehri6101 4 سال پیش آپدیت شد
-1

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


fox hacker
@best.fox.hacker 7 ماه پیش مطرح شد
0

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


محمد حسین
تخصص : mevn stack
@saghari 7 ماه پیش مطرح شد
0

@best.fox.hacker
بستگی داره به پروژه بعضی چیزارو راست سریعتره توی اجرا بعضیا رو سی بنچمارک هر کدوم رو خواستی گوگل کن مثلا بزن rust vs golang speed benchmark
راست و گولنگ
راست و سی


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام