جاوااسکریپت برای اینترنت اشیا

برای اینکه بتونیم برای تمام نیازهامون برای اینترنت اشیا جوابگو باشیم. دنبال یادگیری چه قسمت هایی از جاوااسکریپت باشیم. چون جاوااسکریپت خالی چندان کارساز نیست و ظاهرا باید از فریمورک ها برای طراحی اپلیکیشن چه برای گوشی و چه برای ویندوز استفاده کنیم. و در بسته توضیحات خیلی خوبی هم دادید. ولی می خوام بطور خلاصه بگید چه کتابخانه هایی لازم هست و کلا در مورد جاوااسکریپت در زمینه اینترنت اشیا دنبال چه مقوله هایی بریم. تا وقت و زمان و انرژی مون تلف نشه. در واقع تمام آن چیزی که لازم داریم برای کار با اینترنت اشیا در مورد جاوااسکریپت رو عرض بفرمایید. البته گفتید که برای طراحی اپلیکیشن در ویندوز،مک، لینوکس چه فریمورک هایی هست و برای اندروید و ios هم کامل توضیح دادید، ولی می خوام بدونم غیرازینا چیز دیگه ای در مورد جاوااسکریپت هست بریم دنبالش؟

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


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

@Mehrad#1087 سلام استاد جان. هر چه به پایان بسته نزدیک تر می شوم، می بینم که چقدر چیزهای زیادی برای یادگیری هست و روند یادگیری تمامی ندارد. می ترسم وارد یک چرخه ی بی پایان بشم. هرچه عمیق تر می شوم می بینم باز هم نقطه پایانی نیست. الان به این فکر می کنم اگه برم html,css و جاوااسکریپت رو یادبگیرم، بعد از اون ببینم لازمه برم فلان فریمورک رو یاد بگیرم. بعدش ببینم که لازمه ده ها کتابخانه یاد بگیرم. بعدش متوجه بشم که لازمه php هم باد بگیرم.بعدش پایگاه داده و بعدش لینوکس بعدش شبکه و هزاران چیز دیگه. واقعا نگرانم که سال های خیلی زیادی طول بکشه و باز هم ببینم که در جای مناسبی قرار ندارم و عمر و زمان زیادی براش بزارم. ببخشید اگه کمی احساسی شد.

سلام، کلا javascript ارتباط بین client و server رو براتون برقرار می کنه. شما باید یاد بگیرید چطوری به یک سرور پیام بفرستید (این پیام میتونه http باشه و یا mqtt و یا هر پیام دیگه ای) و جواب دریافت کنید. بقیه قضیه فقط می شه قسمت های ظاهری نرم افزار. برای اینکه یک نرم افزار بسازید که کاربر بتونه باهاش کار کنه هم باید بتونید کارهای ساده مثل فرم ها و کلیک و اسکرول و غیره رو کنترل کنید و به نسبت عملیاتی که کاربر انجام میده، عکس العمل مناسب رو نمایش بدید.
پس درواقع شما باید بتونید یک سایت بسازید عملا. چون سایت ها همه این عملیات رو دارن. برای آسون تر شدن کارتون با javascript هم پیشنهاد می کنم از یک framework استفاده کنید. الان فریم ورک vue.js و همچنین react و همچنین angular خیلی داغ هستن و در کل دنیا استفاده میشن. اون قسمتی که ما سری به این تکنولوژی ها زدیم، در واقع هدف آشنا کردن مخاطب با دنیای اینترنت بوده و خود اون مبحث یک دنیای بزرگ برای خودش داره.