تفاوت جاوا و جاوااسکریپت و نودجی اس و چند سوال دیگر

7 روز پیش
توسط shiva آپدیت شد
الیاس بشکنی ( 51265 تجربه )
1 هفته پیش
تخصص : برنامه نویس موبایل

سلام
میدونم سوالام خیلی ساده و پیش پا افتادس ولی دقیق نمیدونم پس گفتم بپرسم
1- اینکه جاوا و جاوااسکریپت چه فرقی با هم دارن؟ به هم ربط دارن اصلا؟
2- اینکه نودجی اس با جاوا هستش یا جاوااسکریپت؟
3- اینکه اگه ممکنه یه تیکه کد از نودجی اس بهم بدین که مثلا یه سری سطر از دیتابیس واکشی کنه و نشون بده (در حالت جیسون یا آرایه یا هرچی)
4- اینکه برای موارد real time مثل چت و... آیا خود نودجی اس به صورت پیشفرض این چیزا رو داره؟ یانه؟ و اگه داره سختی انجام کار های real time توی php و nodejs چقدره؟
5- اینکه آیا nodejs یک فریم ورکه یا یه زبانه مثل php ؟ اگه زبانه آیا فریم ورکی داره؟ (مثل laravel برای php)
6- میدونم سوال تکراری هست ولی من php رو بلدم و با لاراول هم یه آشنایی کلی دارم ولی جدیدا توی اپلیکیشن هام نیاز به کارهای real time دارم مثل چت، آیا برای نوشتن api های real time با php کار سختی در پیش دارم یا نه؟ و پیشنهاد میشه کلا برم سمت nodejs ؟ یا با همون php هم میشه به راحتی پیاده کرد؟ (برای بکند اپلیکیشن های موبایل)
7- چند وقت دیگه هم قصد دارم طراحی سایت رو هم شروع کنم (با vue)، (هم برای پنل مدیریت های اپلیکیشن و هم سایت های دیگه) آیا پیشنهاد میشه از الان کلا برم سمت نودجی اس؟ و اینکه همینجا از جناب @hesammousavi سوال داشتم آیا برای دوره های nodejs بازتولید دارین یا نه؟! و اگه آره حدودا کی؟
8- برای بالاآوردن nodejs نیاز به چه نوع هاست یا سروری هست؟
9- پیشاپیش ممنونم از جواب هاتون 🌹

Amir Hemmati ( 2890 تجربه )
1 هفته پیش

سلام.
js و java هیچ ربطی به هم ندارن هیچ ربطی فقط و فقط تشابه اسمی
جاوا زبان سمت سرور و مخصوص اندروید در اصل طراحی شده نه اینکه فقط در اندروید کاربرد داره ها ولی اولین زبان برای برنامه نویسی اندروید هست .
اما جاوااسکریپت تنها زبانی هست که میشه باهاش فرانت اند یک سایت طراحی کرد که بعد nodejs میشه گفت همه جا میتونه کاربرد داشته باشه، از جمله
برنامه نویسی اندروید و IOS با ریکت نیتیو که یکی از فریم ورک های جاوااسکریپت مخصوص بخش اندروید نمونشم اینستا
برای برنامه نویسی دسکتاپ فریم ورک الکترون هست نمونشم vs code و atom
برای بخش فرانت سایت هم از جمله قدرتمند ترین فریم ورک ها در حال حاظر reactjs , angulater , vuejs
بخش بک اند nodejs
............................... ووو


نود جی اس برای جاوااسکریپت هست

//البته یکمی کد بیشتر هست ولی در کل همینه
const User = require("./../model/user");
const router = require("express").Router()

router.get((req, res, next) => {

   User.findOne("Your_ID_user")
      .then(result => res.json(result))
      .catch(error => res.json(error))

})

اصلا نود بخاطر سرعتش محبوب ...
بصورت پیشفرض بخای استفاده کنی قبلا با setinterval() این کارا میکردن ولی الان که سوکت اومده دیگه کسی اونجور کد نمیزنه
در ضمن socket.io با نود نوشتن پس نتیجه میگیریم بصورت پیش فرض داخل نود میشه ریل تایم کد زد و سرعتشم از php فوق العاده بیشتر اصلا نود برای همین محبوب


نود جی اس یک بستری هست که جاوااسکریپت رو سمت بک اجرا کنه مثل php یک زبان نیست
البته دلیل نیست چون یک بستر فریم ورک نداشته باشه البته یه چیزی شبیه فریم ورک میشه بنام ماژول npmjs.com هزاران ماژول (که شبیه فریم ورک و یا لایبری ..) داره که خیلیم معروف
یکی از محبوب ترین فریم ورک های نود که بصورت ماژول express هست که فوق العاده معروف


این سوالت نظری ندارم بدم بهتر اقای موسوی راهنماییت کنه ...
چون php کاری حیفه بخای سوییچ کنی به جی اس فقط برای یک پروژه


دوره نود اقای موسوی بخش سایت فروشگاهی و api انقدر کامله نیاز به هیچ بازتولیدی نداره بنظرم
اگر فکر میکنی دوست داری نود کار کنی باید اول جی اس بلد شی که فکنم نیستی چون اگر بلد بودم اون سوال اماتور اولیت نمیگفتی، بعدم نود که برای یادگیری اولیش دوره nodejs maximilian پیشنهاد میدم بعدش دوره اقای موسوی که فوق العادس shop with nodejs و rest api من این دو دوره اقای موسوی دیدم عالین


اقا یه نفس خور میزاشتی هزار تا سوال پرسیدی امیدوارم جواباش گرفته باشی

الیاس بشکنی ( 51265 تجربه )
1 هفته پیش
تخصص : برنامه نویس موبایل

@dev.amirhemmati1382 خیلی ممنون از توضیحات کاملتون
نه فقط برای یک پروژه نمیخوام سوئیچ کنم
میخواستم ببینم اگه بهتره و میصرفه کلا برم سمت js و nodejs

Amir Hemmati ( 2890 تجربه )
1 هفته پیش

@elyasbeshkani
php کار ها از نود خوششون نمیاد زیاد میگن داخلش کد نویسی پیچیدس

ولی من خودم خیلی باهاش حال میکنم و بنظرم js خیلی خفنه...

این یه نظر شخصیه تحقیق کن درباره js (از نظر درامدی که دستت خیلی بازه)
ببین برات صرف داره دنبالش کنی یا خیر

صرفا اگر برای یه پروژه میخوای بنظرم بدی یکی نود جی اس کار بزنه خیلی بهتره
چون تا خودت یادبگیری پروژت نابوده

مهدی پاکروان ( 16190 تجربه )
1 هفته پیش
تخصص : MERN STACK DEVELOPER

همه سوالاتون رو جواب دادن دوستان فقط من یک چیزی رو لازم میدونستم بگم و اون اینه که SocketIO برای برنامه نویسی RealTime اصلا API نیستش و مثل Rest نیستش که یک JSON بفرستی و یک JSON بهت بده !
SocketProgramming مثل یک تلفن هستش و ارتباط رو برقرار میکنه ولی برای ارتباط همیشه نیاز به یک زبان مشترک هم هستش که اون زبان مشترک پروتکل ارتباطی شماست مثل HTTP .
شما میتونی Socket رو روی یکی از پورت های سرورتون ران کنید و توی اون با یک سری دستورات سیستم RealTime رو پیاده سازی کنی .
و عموما دو دستور مهم هستش به اسم Emit و On .
وقتی شما میخوای یک پیام رو توی بستر سوکت ها بزارین از Emit استفاده میکنید و وقتی میخواین بگین که اگر توی این بستر پیام اومد به من نشون بده یا فلان کار رو بکن از On استفاده میکنی .
و سوکت به صورت پیش فرض توی Node نیستش ولی میتونید با NPM اون رو توی پروژتون استفاده کنید که خیلی هم راحته !

reza ( 33360 تجربه )
1 هفته پیش
تخصص : مهندس نرم افزار،برنامه نویس بک اند

@elyasbeshkani
فریمورک های نود جی اس خیلی ضعیفتر از اون هستن که بعنوان بیس اصلی پروژه انتخاب بشن!
کلا حجم کدهاش و نوع سینتکسش هم اصلا جوری نیست که Maintainability داشته باشه ..
خلاصه بدرد بیس اصلی یه پروژه نمیخوره
.
نود جی اس رو بعنوان بخشی از پروژه بصورت میکروسرویس استفاده میکنن .. البته اگه پروژه کلا چت باشه گزینه خوبیه
.
برای بیس اصلی یه پروژه قابل توسعه ، فریمورک هایی مث جنگو و لاراول و asp core خیلی خیلی بهترن

الیاس بشکنی ( 51265 تجربه )
1 هفته پیش
تخصص : برنامه نویس موبایل

یعنی پیشنهاد شما اینه برای توسعه یه سایت و api اپ همون لاراول خوبه؟
و فقط برای قسمت هایی که نیاز به real time داره از نودجی اس استفاده کنم؟
بعد برای هاست چیکار کنم؟
میتونم کنار کدهای php اونم تو یه هاست معمولی بذارم؟
شرایط خاصی داره؟
تشکر

reza ( 33360 تجربه )
1 هفته پیش
تخصص : مهندس نرم افزار،برنامه نویس بک اند

@elyasbeshkani
بله معمولا نود جی اس همینجوری استفاده میشه. نود جی اس هاست اشتراکی هم داره . بعضی شرکتا ارائه میدن
ولی اینکه بخوای لاراول و نود رو بصورت میکروسرویس باهم استفاده کنی فک کنم باید vps باشه که کانفیگ شه

shiva ( 9990 تجربه )
7 روز پیش
تخصص : برنامه نویس ارشد

سوالات رو دوستان پاسخ داده اند به درستی و فقط بنده یک پیشنهاد برای شما دارم.
با توجه به اینکه جاوااسکریپت را مسلط نیستید بنظرم سراغ nodejs برای کار کردن و جایگزینی تخصص نرید.
برای یک پروژه هم که نیازه تجربه خوبی میتونه باشه باهاش کارکنید و یا از یک متخصص دیگه کمک بگیرید.
اما با توجه به اینکه به php کاملا مسلط هستید اگر سراغ پایتون برید خیلی براتون راحت تر و بصرفه تره.

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