سلام دوستان یه سواله چند وقت ذهن من رو درگیر کرده ک میخام یکی ازین دو زبان رو یاد بگیرم با اینکه خیلی گشتم اخرش نفهمیدم بهتره برم سمت کدوم
دوستانی ک اطلاعاتی دارن ممنون میشم راهنماییم کنن
فقط خواهشا با دلیل و بدون تعصب مرسی
تمام دولوپرهایی که هم از گو و هم از نودجیاس استفاده کردهاند روی این موضوع اتفاقنظر دارند که در برنامههای توسعه داده شده با نودجیاس، عملکرد پردازنده کُند بوده و تَسکهای مرتبط با حافظه در آن با سرعت کمتری انجام میشوند.
نودجیاس مبتنی بر زبان مفسری JS (جاوااسکریپت) است و در آن برنامهها برای اجرا کامپایل نمیشوند بلکه خطبهخط تفسیر میشوند. سرعت زبانهایی که برنامهها در آن تفسیر میشوند اندکی از زبانهای برنامهنویسی کامپایلری کمتر است؛ همچنین ماهیت پویای این زبان موجب میشود که کارایی آن بسیار کمتر از کارایی زبان گو باشد و این در حالی است که عملکرد زبان Go مشابه C یا ++C است (C نیز یک زبان کامپایلری است.) همچنین به یاد داشته باشیم تنها در مواردی که دولوپر قصد برنامهنویسی برای ارتباطات بین شبکه یا تعامل با دیتابیس را دارد، نودجیاس میتواند عملکردی معادل عملکرد گو را ارائه دهد.
یکی دیگر از مزیتهای زبان گو نسبت به نودجیاس کانکارنت و مقیاسپذیر بودن آن است که موجب میشود این زبان عملکردی بهتر در مقایسه با اکثر زبانهای برنامهنویسی مدرن داشته باشد و این در حالی است که نودجیاس از چنین فیچری (قابلیتی) بیبهره است.
مقایسۀ این دو بدون بررسی میزان بلوغ آنها، ناقص خواهد بود. زبان گو به نسبت مدت کوتاهی که از عرضهٔ آن میگذرد، زبانی بسیار قوی و بالغ است و این در حالی است که تغییر API در نودجیاس مشکلات فراوانی را برای دولوپرهایی که در این محیط کدنویسی میکنند و از ماژولهای آن استفاده میکنند، به وجود میآورد.
البته موارد ذکر شده بدین معنا نیست که نودجیاس در آیندهای نزدیک بازار کار خود را از دست خواهد داد، اما در حال حاضر زبان گو بهترین گزینه برای دولوپرها به منظور ارائۀ سولوشن در بازار کار است؛ چرا که زبان گو عملکردی سریعتر دارا است، قابلیت Goroutines آن موجب مقیاسپذیری و کانکارنسی در این زبان شده است. روی هم رفته، تمام این موارد موجب میشود تا دولوپرها با استفاده از این زبان بتوانند برنامههای قویتری را توسعه دهند.
زبانهای برنامه نویسی صرفا ابزار هایی هستن برای ما تا با توجه به نیازی که داریم بریم سراغشون.
بنظر من اگه قرار نیست کار خیلی خاص و بزرگی انجام بدین(مثلا هندل کردن تعداد بسیار زیادی ریکوئست یا انجام تسک های خیلی سنگین بطور موازی) nodejs ابزار خوبی هست چون به لحاظ تعداد پکیج های آماده ی موجود و جامعه برنامه نویسانی که میتونن در حل مشکلات به شما کمک کنن قابل قیاس با Golang نیست.
اما از طرفی اگه واقعا با مسائل کلانی روبرو هستین حتما زبانی مثل Golang پیشنهاد میشه.
اگر بحث علاقه شخصی هست به خودتون بستگی داره و نظر بقیه فقط شما رو دچار شک و تردید میکنه اما اگر از لحاظ منابع یادگیری و بازار کار مد نظرتون هست قطعا node js
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟