هل Javascript يستحق التعلم؟ وماذا يمكنك أن تنجز به؟

هل Javascript يستحق التعلم؟ وماذا يمكنك أن تنجز به؟

26 مارس 2022|4 دقائق قراءة

ربما بغيتي تعلم Javascript و متردد , ربما قررتي تعلمو ولكن خايف تندم , او ربما نتا خدام بيه لكن كايبانوليك الأستخدامات ديالو محدودة. فهاد المقال غانجاوبو على جميع الأسئلة اللي عندك فبالك. فهاد المقال غاتعرف كلشي على Javascript, سواء انت خدام بيه أو عاد كاتعلمو أو عاد ناوي تعلمو , هاد المقال ليك.

قبل 2009 كان Javascript كايتعتابر لغة ضعيفة لأن الإستخدامات ديالو كانو مقتاصرين غير على المواقع الإلكترونية و فقط ل Frontend. لكن من بعد 2009 اي من بعد ما خرج Nodejs ( اللي هو بيئة كاتمكنك من أنك تشغل javascript في server) الأمور تبدلات, وليتي بإمكانك تستعمل Javascript في ل Frontend و كذلك في ل Backend هادشي دفع الناس لأنهم يتعلمو و إستعملو javascript , لأن فكرة إستخدام نفس اللغة في ل backend و كذلك ل frontend بالنسبة للويب كانت شي حاجة جديدة و هنا بدات الشعبية ديال javascript كاتكبر و كبر معاها مصطلح Full Stack أي قدرة مبرمج على إنشاء كل من ل Backend و ل Frontend.

التطور ماوقفش هنا. بل إستمر بخروج angularjs و react اللي كايمكنوك من أنك تنشأ واجهات المستخدم user interfaces. و زادت القوة ديال javascript بعد خروج ECMAscript 2015 المعروفة ايضا ب ES6 اللي جابت مجموعة كبيرة ديال اللإضافات منهم const let و classes ...

هل Javascript يستحق التعلم؟

كل نهار كايخرجو أدوات جديدة و packages خاصين ب javascript اللي بإبمكانهم إساعدوك تبني داكشي اللي باغي بسرعة و كفائة كبار, إمكليك تلقاهم في موقع npm اللي هو Node package manager المكان اللي فيه جميع ل packages الخاصين ب javascript.

وفقا ل npm فوقت كتابة هاد المقال كاين 1,913,836 package هادشي كايعني انه أي حاجة بغيتي ضيفها للموقع ديالك راها كاينة واجدة على شكل package في npm. و أيضا 180,567,242,539 تحميل في الشهر, 180 مليار تحميل في الشهر, هاد الرقم كافي باش تعرف ان javascript لغة قوية و بزاف.

npm by the numbers

المجتمع اي ل community ديال javascript كبيرة بزاف لدرجة أن أي مشكل طحتي فيه غاتلقا شي واحد فايت طاح فيه و سول على الحل و جاوبوه الناس, الحل غاتلقاه في دقائق معدودة.

المصادر ديال تعلم javascript كثيرة جدا و مجانية, يعني أنه بإمكانك تعلم مجانا, غاتحتاج غير العزيمة و الصبر و الوقت.

حسب stackoverflow survey لسنة 2021, javascript خدا المرتبة اللولة كاللغة البرمجية الأكثر إستخداما.

stackoverflow survey 2021

ماذا يمكنك أن تنجز ب javascript؟

javascript إمكلك تستخدمو باش تنشئ :

1- تطبيقات الويب frontend

كاينين العديد من libraries و ل frameworks اللي كايساعدوك باش تنشئ user interfaces رائعين و بجودة كبيرة. نذكروا منهم React, Angular و Vue . هاد التعدد فصالح المبرمج, ختار اللي تناسبك و تناسب الذوق ديالك.

2- تطبيقات ل backend

كيف ما دكرنا سابقا , nodejs كايسمحليك تستخدم javascript لإنشاء server side applications. هنا أيضا كاينين packages و frameworks اللي غايساعدوك باش تنشئ التطبيقات بكفاءة, ندكرو منهم Expressjs و Nestjs , كما انه بإمكانك توفر security للتطبيق ديالك بإستعمال Passportjs او Jwt. بالإضافة أنه بإمكانك تنشئ تطبيقات التواصل ك whatsapp بإستخدام Socket.io و Peerjs.

3- تطبيقات ويب متكاملة frontend + backend

بإمكانك تنشئ تطبيقات متكاملة بدون إنشاء ل backend بوحدو و ل frontend بوحدو, بمعنى انه بإمكانك تجمعهوم بجوج في تطبيق واحد و بطريقة إحترافية لأن هاد frameworks اللي كايساعدوك فهادشي كايتكلفو بالعديد من الاشياء بنفسهم بالإضافة لأنهم كايوفرو ليك خصائص اللي صعيب تقادهم لراسك. من أشهر frameworks اللي كايقدموليك هادشي, نذكر: Nextjs مبني على React. و Nuxtjs مبني على Vue.

4- إستخراج المعلومات من مواقع الويب Web scraping

بإستخدام Puppeteer بإمكانك تقاد برنامج كايقوم بإستخراج المعلومات من المواقع الإلكترونية. مثلا تقاد تطبيق كايدخل لجميع مواقع الأخبار و كايستخرج الأخبار و إوضعهم فمكان واحد. لكن خاص الإستعمال إكون مشروع حيت كاينين مواقع مكايقبلوش تستخرج المعلومات منهم.

5- تطبيقات الهاتف

بإمكانك أيضا إنشاء تطبيقات Android و ios بإستخدام React native او ionic او cordova , و الجميل في الأمر أنه من code base واحد بإمكانك إستخراج التطبيق الخاص ب android و التطبيق الخاص ب ios.

6- تطبيقات Desktop

بالنسبة لإنشاء التطبيقات الخاصة ب Windows و macOS و Linux, كاين Electronjs اللي كايعطيك القدرة انك تقاد تطبيقات لجميع ل platforms بإستعمال code base واحد. من أشهر التطبيقات اللي تقادو بإستعمال electronjs هوما VSCode , Figma و Twitch.

7- Machine learning models

بإستعمال TensorFlow بإمكانك تنشئ Machine learning models كالتعرف على الأشياء الموجودة في الصور أو تتبع حركة الجسد و العديد من الأشياء الأخرى. إلى دخلتي الموقع الرسمي ديالهم غاتلقا العديد من النماذج بإمكانك تجربهم.

8- CLI : Commande line interface

هنا غانستعمل الصور باش نشرح مزيان. هنا كاينين قسمين, cli tools و cli applications.

-cli tools بإمكانك تقادهم غير ب nodejs و تستخدم chalk باش تضيف الالوان. هذا مثال ديال cli tool 👇.

cli tool

-cli applications بإمكانك تقادهم بإستعمال react-blessed . هذا مثال ديال cli application 👇.

cli app

التحكم في الروبوتات و إنترنت الأشياء

نعم, يمكنك إستعمال javascript للتحكم في الروبوتات و في إنترنت الأشياء و يمكنك إستخدامه مع ل arduino. في هذا المجال غاتحتاج ل Johnny-Five اللي كاتعطيك مجموعة من الأدوات كايساعدوك باش تحكم بالأجهزة الالكترونية. كاينين كتب كايهدرو على إستعمال javascript للتحكم بالألات. مثلا Learining javascript robotics

learning javascript robotics

الخاتمة

javascript أصبح في كل مكان. بلغة واحدة بإمكانك تقاد العديد من الأشياء. كانتمنا نكون ساعدتكم تقررو و كذلك ستافدتو و تعلمتو أشياء جديدة. الأن كيف ديما, إلى اللقاء في مقال أخر.