📚موسوعة الحاسوب و البرمجة📚
11.7K subscribers
875 photos
275 videos
3.95K files
913 links
تحتوي على اي كتب او برامج او فيديوهات او دورات تتعلق بالحاسوب او البرمجة وصيانة الهواتف
قنواتنا
للتواصل @mosoaa_bot
قناتنا في اليوتيوب
https://youtube.com/@musuaamsg
Download Telegram
4- بيل غيتس
مدير شركه مايكروسوفت
قصص ملهمة لمبرمجين عانقوا النجاح
💻#قصص_مبرمجين_ناجحين



تتميز مهنة المبرمج عن غيرها من المهن بكونها كفيلة بجعل صاحبها غنيا وناجحا ماليا في مدة زمنية قصيرة وبأقل مجهود. وقد فرضت ظاهرة المبرمجين الأثرياء نفسها بقوة بعد انفجار ثورة الهواتف الذكية وانتشار استخدام الإنترنت بين البشر، ليشمل أزيد من 4 مليارات نسمة في أحدث التقديرات، أي ما يمثل زهاء %55 من سكان الكرة الأرضية.


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


وإذا ما نظرنا إلى لائحة أغنى الشباب في العالم سنجد بأن أغلبهم كونوا ثرواتهم الضخمة من مشاريع برمجية بدؤوها من الصفر ليحققوا بفضلها الآن مليارات الدولارات، تتضاعف كل عام مع ازدياد نسب المستخدمين التي يصلون إليها من الأربع مليارات المذكورة أعلاه.



🛡في هذا المقال، سأذكر ـ باختصار ـ قصص مجموعة من أنجح المبرمجين على مستوى العالم، وهدفي الأول إعطاؤكم جرعة من التحفيز والإلهام ولكي نعرف جميعا بأن فرص تحقيق الثراء المالي أصبحت في متناول الجميع اليوم أكثر من أي وقت مضى.


1. بيل غيتس
كان بيل غيتس وصديقه بول آلن من المهووسين بمجال الحاسوب. وقد جعلتهما هذه الإهتمامات المشتركة يطمحان إلى إنتاج حاسوب خاص بهما.

في يناير من عام 1975، قامت شركة MITS بإنتاج حاسب Altair 8800 ولقد كان هذا الحدث المميز آنذاك مصدر إلهام لبيل وبول، فقاما بإنشاء مفسر ( Interpreter ) للغة البرمجة BASIC واقترحاه على شركة MITS ليتم استخدامه في أجهزة Altair 8800. بعد معاينة المفسر واختباره، اقتنع المسؤولون عن الشركة بأنه جدير بأن يتم دمجه وتشغيله في جهازهم، فعقدوا صفقة مع غيتس وآلن يزودان بموجبها شركة Altair 8800 بهذه المفسرات التي تقرر تسميتها Altair BASIC.

حاسب Altair 8800

كانت هذه الصفقة وراء إنشاء بيل غيتس وبول آلن لشركتهما الخاصة في أبريل 1975 وسموها "Micro-Soft"، ليصبح اسمها بعد ذلك Microsoft وتقوم بإنتاج نظام التشغيل Windows الأكثر استخداما في العالم، والعديد من المنتجات الرقمية الأخرى.

هذه النجاحات جعلت بيل غيتس يراكم ثروات ضخمة فاقت 80 مليار دولار، جعلته يتربع على عرش الأغنى في العالم لسنوات طويلة.


2. مارك زوكربيرغ
عرف مارك زوكربيرغ بولعه الشديد بالبرمجة والحاسوب منذ طفولته، ولقد عمل والده على صقل مهاراته في هذا المجال، فقام بتعليمه البرمجة باستخدام Atari Basic وعين مهندس برمجيات اسمه دافيد نيومان كمعلم خاص لابنه.

استهل مارك ابداعاته في مرحلة الثانوية العامة، حيث قام بتطوير مشغل موسيقى تحت مسمى Synapse Media Player، واعتمد فيه على تقنيات تعلم الآلة لمعرفة عادات المستخدم في الاستماع. حاولت مايكروسوفت وAOL أن تشتري هذا المشغل وتوظف زوكربيرج لديها ولكنه رفض وفضل تحميله بالمجان والالتحاق بجامعة هارفارد.

في فترة دراسته بجامعة هارفرد العريقة، قام مارك بإنشاء موقع إلكتروني كمنصة للتواصل بين طلاب الجامعات والثانويات وسماه thefacebook.com، على أن يصبح بعد ذلك facebook.com.

عدد مستخدمي هذا الموقع، الذي انطلق من داخل أسوار الجامعة، وصل لأزيد من 5 ملايين، ليقرر زوكربيرغ بعدها إتاحته لعامة الناس وجعله أكبر موقع تواصل اجتماعي يصل عدد مستخدميه اليوم لأزيد من 2 مليار مستخدم!

اليوم مارك زوكيربرغ هو أغنى شخص دون سن الأربعين في العالم، بثروة فاقت 70 مليار دولار في أحدث التقديرات.


3. براين أكتون
عمل براين أكتون موظفا لدى شركة ياهو لسنوات طويلة. وفي عام 2009 قرر البحث عن تحدٍّ جديد في شركة فيسبوك، فتقدم لمقابلة عمل معهم ولكنها مع الأسف لم تفضي إلى ما كان يطمح إليه، ليذهب حلمه بالعمل مع هذه الشركة أدراج الرياح.

وعبر براين عن خيبة أمله من عدم نجاحه في عدم إقناع مسؤولي شركة فيسبوك بإمكاناته، حيث قال عبر تغريدة على تويتر :

🌐فيسبوك قامت برفضي. لقد كانت فرصة عظيمة للتواصل مع أشخاص رائعين. أتطلع إلى المغامرة الكبيرة القادمة في هذه الحياة.


تغريدة براين أكتون

لقد كان براين يعي ما يقول تماما، فمباشرة بعد هذه التجربة المريرة مع فيسبوك، قرر الرجل بدء مغامرته الكبيرة مع صديق له يدعىJan Koum، حيث قررا البدء في بناء تطبيق محمول للتواصل الآني بين المستخدمين. هذه التطبيق لم يكن سوى WhatsApp الذي سرعان ما لاقى نجاحا كبيرا بعدما وصل عدد مستخدميه لقرابة 400 مليون مستخدم.


شركة فيسبوك كانت تتابع قصة نجاح واتساب عن كثب، ليقرر مسؤولوها في عام 2014 تقديم عرض ضخم لبراين وشركاؤه وصلت قيمته لما يقارب 19 مليار دولار للإستحواذ على التطبيق. تمت الصفقة بنجاح ليجبر براين الشركة التي رفضته قبل 5 سنوات على دفع هذا المبلغ الهائل مقابل ثمرة اجتهاده التي، على الأرجح، لم يكن ليحصدها لو تم قبوله في تلك المقابلة.


4. كيفن سيستروم
كان كيفن سيستروم، خريج جامعة ستانفورد، مهتما بشكل كبير
التصوير والفوتوغرافيا، رغم أن هذا لم مجال عمله ولا تخصصه.

هذه الهواية ربما كانت السبب الذي دفعه للبدء في عمله على إنشاء تطبيق HTML 5 مشابه ل Foursquare مع ميزة مشاركة الصور. Burbn كان اسم هذا التطبيق الذي لم يلقى النجاح المأمول رغم أن كيفن حصل بفضله على جولة تمويلية بقيمة نصف مليون دولار من مستثمرين.

حاول كيفن تحليل وفهم الأسباب التي حالت دون تحقيق Burbn النجاح الذي كان متوقعا منه، فافترض بأن عدد الميزات الكبير في التطبيق ربما شكل مصدر إرباك وإزعاج للمستخدمين، ما منعه من تحقيق الإنتشار والقبول.

بعد الإستفادة من تلك التجربة، قرر Kevin التعاون مع زميل له اسمه Mike Krieger لإنشاء تطبيق آخر يكون هذه المرة خاصا بمشاركة الصور فقط، ولم يحتاجوا من الوقت سوى 8 أسابيع لإطلاق نسخته الأولى تحت مسمى Instagram.



بعد أقل من شهرين، وصل عدد مستخدمي التطبيق لمليون مستخدم، وتضاعف 10 مرات خلال عام واحد. وبعد أقل من عامين، بعدما أصبح Instagram أشهر تطبيق لمشاركة الصور في العالم، قامت شركة فيسبوك بشراءه في صفقة بلغت قيمتها 1 مليار دولار، حصل منها كيفن على قرابة 400 مليون دولار وهو لم يكمل بعد آنذاك عقده الثالث.



5. إيفان سبيغل
ذات يوم، قال ريجي براون، صديق إيفان من جامعة ستانفورد، أنه يتمنى أن تختفي الصور التي يقوم بإرسالها إلى صديقته!

هذه الجملة لم تمر مرور الكرام على مسمع Evan Spiegel الذي تنبه إلى قابلية هذه الجملة لتكون فكرة قوية يبني عليها تطبيقه الذي يقوم بحذف صور وفيديوهات المستخدمين بشكل آلي بعد مدة زمنية محددة. وفعلا لم ينتظر إيفان وصديقه طويلا للبدء في بناء هذا التطبيق وتحويل الفكرة لأرض الواقع. وبسبب محدودية مهاراتهما التقنية قررا الإستعانة بصديق ثالث اسمه بوبي مورفي ليقوم ببرمجة التطبيق.

في البداية حمل هذا التطبيق اسم Pictaboo، ولكنه لم يحقق آنذاك النجاح المتوقع، إذ لم يتجاوز عدد المستخدمين بضع مئات فقط. وازدادت الأمور تعقيدا بعدما حدثت مشاكل بين الشركاء تتعلق أساسا بتوزيع نفوذ وحصص كل واحد منهم في الشركة. هذه المشاكل أفضت في النهاية لطرد ريجي براوين، وتغيير اسم التطبيق لسناب شات Snapchat.

واصل إيفان وبوبي بإصرار عملهما وواجها تلك المشاكل بالعزيمة، لينجحا في إعادة بعث التطبيق من رماده، ونجحوا في استمالة أزيد من 100 ألف مستخدم في ظرف 6 أشهر من العمل سويا.

بعد ذلك أخذت الأمور منحى التطور، حيث حصل التطبيق على جولات تمويلية متعددة بملايين الدولار، علما بأنه اقتصر على نظام iOS طيلة العام الأول من حياته قبل أن يتم تطوير نسخة الأندرويد.

📍تطبيق سناب شات

في عام 2013 قدمت شركة فيسبوك عرضا بقيمة 3 مليار دولار للإستحواذ على سناب شات ولكن Evan Spiegel رفض هذا العرض بشكل قاطع، والسنوات التي تلت القرار أكدت أن الرجل كان محقا في رفضه، حيث تضاعفت القيمة السوقية لشركة Snap Inc لتفوق اليوم 14 مليار دولار، ويصبح إيفان سبيغل واحد من أغنى الشباب في العالم بثروته التي تلامس سقف 4 مليار دولار.


📌🌐📌النهاية
إن معظم المشاريع الناجحة تبدأ بفكرة، هذه الفكرة ربما تكون بسيطة ولكنها قد تصبح بعد ذلك مشروعا تجاريا ناجحا إذا تم تحويلها لشيء ملموس وواقعي.

رواد الأعمال الناجحون هم الذين يسارعون لترجمة الأفكار إلى أعمال، ومهما كانت الفكرة عظيمة وثورية فإنها تظل من دون قيمة حقيقية إذا لم تترجم لواقع محسوس.

ريجي هو صاحب فكرة سناب شات ولكن إيفان هو من قام بتطويرها وجعلها تبدو على ما هي عليه اليوم، ويقال كذلك بأن مارك سرق فكرة الفيسبوك من أصدقاء له في الجامعة، ولكن ما يعرفه العالم أن مارك زوكربيرغ هو مدير شركة فيسبوك ولا أحد ربما يتذكر أسماء الآخرين. وهناك مقولة منسوبة للفنان الإسباني الشهير بابلو بيكاسو يقول فيها : "الفنان الجيد يستنسخ، والفنان العظيم يسرق"، ولكم أن تفكروا في معنى هذه المقولة وتفهموا مغزاها.
#مقالات_جافاسكربت
ما هي لغة البرمجة جافا سكريبت
أساسيات
تطبيقات ومواقع الويب اليوم تعتمد أكثر من أي وقت مضى على جافا سكريبت، وبالتالي فإنه من الغير الممكن أن تتجاهل هذه اللغة إذا كنت تريد تعلم تطوير الويب اليوم.


تعتبر لغة البرمجة JavaScript - إلى جانب كل من HTML و CSS - العمود الفقري لأي صفحة ويب حديثة، وكل التطبيقات والمنصات الإلكترونية التي نعرفها وندخل إليها كل يوم تعتمد بشكل كبير جدا عليها، حتى أن موقع مثل فيسبوك لا يعمل عند تعطيلها.

موقع فيسبوك بدون جافاسكريبت


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


🔰ما هي جافا سكريبت
جافا سكريبت هي لغة برمجة صممت في الأصل لإضافة مؤثرات وتفاعلات لصفحات الويب، ويعنى بالتفاعلات كل ما يتم عمله أو إجراؤه على مستوى المتصفح من دون الحاجة لإعادة تحميل الصفحة. نذكر على سبيل المثال:

إخفاء أو إظهار عنصر HTML معين عند النقر على عنصر آخر.

عمل وتحريك ما يعرف ب Sliders.
إجراء عمليات أجاكس.

التحقق من صحة البيانات في النماذج أو Form Validation.
إلخ...


#مثل هذه التفاعلات نلمسها بشكل يومي أثناء تعاملنا مع منصات ومواقع كبرى مثل جوجل وفيسبوك. فعندما يقوم الأول باقتراح كلمة أو جملة عندما نكتب له حرف أو حرفين فهو يقوم بذلك عن طريق جافا سكريبت، ولما ننزل في شريط أخبار فيسبوك ويتم إضافة مواد جديدة للشريط بشكل آلي كلما نزلنا فهو يستعين بجافا سكريبت للقيام بذلك، وقس عليه ما تجده وتراه كل يوم في المواقع التي تزورها.


خاصية الإكمال التلقائي في محرك البحث جوجل


📍نقول عن جافا سكريبت بأنه لغة برمجة من جانب العميل أو Client-side programming language لأنه يشتغل وينفذ في المتصفح بجهاز المستخدم، في مقابل لغات برمجة أخرى، مثل PHP، التي صممت لتعمل في ناحية الخادم Server-side.


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


🌐دورة حياة صفحة الويب

للمزيد من التفاصيل: دليل مفصل لكيفية عمل المواقع الإلكترونية
استعمالات JavaScript
بدأت لغة جافا سكريبت كما قلنا بكونها مجرد Scripting Language لإضافة بعض المؤثرات إلى صفحة الويب وبث الحياة فيها أكثر، ولكن اليوم توسع مجال اهتمامات هذه اللغة بشكل كبير جدا وشمل مجالات شتى، منها:


بناء تطبيقات الموبايل وكذا تطبيقات سطح المكتب عن طريق تقنيات حديثة مثل React Native ،Ionic و Electron.

تطوير ألعاب تعمل داخل المتصفح، فالألعاب التي توفرها الآن على سبيل المثال شركة فيسبوك على موقعها والمعروفة ب Instant Games هي ألعاب أساسها جافا سكريبت. ولعبة الديناصور كذلك التي نلعبها رغم أننا لا نحبها على متصفح كروم عند انقطاع الإتصال بالإنترنت هي كذلك معتمدة على هذه اللغة.

تطوير النظم الخلفية منذ الإعلان عن Node.js لأول مرة في عام 2009، هذا الإعلان من وجهة نظري كان بمثابة شهادة الميلاد الثالثة لجافا سكريبت بعد ميلاده الأول عام 1995 من طرف Brendan Eich وميلاده الثاني في عام 2004 مع دعم تقنية Ajax.


🛡كيف يعمل جافاسكريبت
يشتغل الجافا سكريبت داخل المتصفح معتمدا على ما يعرف بمحرك جافاسكريبت أو JavaScript Engine. هذا الأخير يقوم بقراءة ترميزات جافاسكريبات وتحويلها لترميزات الآلة (Machine code) من أجل قراءتها وتنفيذها.

تتم هذه العملية بسرعة وكفاءة عالية بفضل تطور محركات جافاسكريبت في مختلف المتصفحات المعروفة التي أصبحت تعتمد على طريقة JIT Compilation في عملية تجميع وتحويل أكواد JavaScript إلى Machine code.

كان محرك V8 من جوجل كروم هو السباق لتبني هذه الآلية بعد ظهوره لأول مرة في أواخر عام 2008، وتأثرت به بعد ذلك باقي المتصفحات وفي مقدمتها موزيلا فايرفوكس الذي سارع هو الآخر للإعتماد على Just-in-time Compilation في محركه SpiderMonkey للرفع من كفاءة وأداء تطبيقات الويب خصوصا وأن هذه التطبيقات شهدت في تلك الفترة تطورا نوعيا مع انتشار استخدام تقنية أجاكس.


🛡كيف يعمل جافا سكريبت

يرجع الفضل كذلك لمحرك V8 في أننا اليوم نستطيع تشغيل جافا سكريبت في الخوادم حيث يشكل النواة الأساسية التي بني حولها Node.js.

💎كيفية استخدام جافا سكريبت
البدء في استخدام جافا سكريبت سهل للغاية، يكفي إدراج الكود في صفحة الويب بإحدى الطريقتين التاليتين:


🕹الطريقة 1
هذه الطريقة تتمثل في إضافة ترميز الجافا سكريبت داخل وسم <script> به
ذه الكيفية:

<script>
// كود جافا سكريبت هنا
</script>

🕹الطريقة 2
في هذه الطريقة نقوم بإنشاء ملف امتداده .js - مثلا script.js - ثم نستدعي هذا الملف داخل صفحة الويب :

<script src="path/to/script.js"></script>

لاحظوا أننا قمنا بإضافة المسار نحو الملف script.js داخل الخاصية src.


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


يمكن للمستخدم أن يقوم بتعطيل جافا سكريبت في متصفحه، جميع المتصفحات تتيح هذه الإمكانية. في هذه الحالة يجب عليك كصاحب موقع أن تضع في حسبانك إمكانية أن يكون جزء من المستخدمين قد عطلوا جافا سكريبت في متصفحاتهم. حينذاك يجب عليك إظهار رسالة تطلب فيها منهم تفعيل JavaScript إذا أرادوا التفاعل مع الموقع بشكل صحيح كما يفعل فيسبوك مثلا (لاحظ الصورة أعلاه). هذا الأخير يذهب أبعد من ذلك، حيث يوفر نسخة خفيفة من الموقع تعمل من دون جافاسكريبت وموجهة بشكل خاص لأجهزة الهواتف الذكية.


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


💻لا يمكن لأي موقع الوصول إلى الملفات في حاسوب المستخدم أو قراءتها إلا إذا قام المستخدم بنفسه برفع تلك الملفات إلى ذلك الموقع عن طريق عنصر File Input أو تقنية السحب والإفلات (Drag and Drop).
حتى في داخل المتصفح الواحد، لا يمكن لجافاسكريبت في موقع مفتوح بتبويبة (Tab) أن يصل إلى محتويات موقع آخر في تبويبة ثانية.

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

.

⌚️في الختام
بدأ جافا سكريبت صغيرا لا يعدو كونه لغة لإضافة بعض المؤثرات البصرية والتفاعلية لصفحات الويب. واليوم، وبعد 25 عاما تقريبا من ميلاده، أصبح يلعب أدوارا مهمة وأكثر تعقيدا في تطبيقات الويب الحديثة، بل أمسينا منذ وقت طويل نرى نفوذه يصل لمجالات جديدة ربما لم يكن يحلم بالوصول إليها في بداياته.
Django_By_Example.rar
6.6 MB
#كتب_برمجية📚
كتاب بعنوان:

Django By Example

كتاب رائع يقوم بتعليم #Django مع عدة مشاريع مع الكود.

#Django #Python #English

للمزيد من الكتب والكورسات انضم الى قناتنا وقم بدعوة اصدقاءك للاستفادة.

https://t.me/CodeProgrammer
SQL_Server_Big_Data_Clusters.pdf
10.7 MB
#كتب_برمجية📚
كتاب بعنوان:

SQL Server Big Data Clusters

كتاب يقوم بشرح كيفية التعامل مع البيانات الكبيرة باستخدام #SQL_Server

#SQL_Server #Big_Data #English

للمزيد من الكتب والكورسات انضم الى قناتنا وقم بدعوة اصدقاءك للاستفادة.

https://t.me/CodeProgrammer
#مقالات_برمجية📙
💻تعرف على أهم لغات البرمجة التي يمكنك استخدامها مع محرك الألعاب Unity
تطوير العاب باستخدام Unity2
تحظى الألعاب بشعبية كبيرة بين الناس ولها جمهورها العريض، فمن منا لا يحب الألعاب على اختلاف أنواعها وعلى اختلاف المنصات التي تعمل عليها سواء كانت ألعاب للحاسب أو للموبايل فهي محبوبة الجميع، فهل خطر لك يوماً أن تصمم لعبة بنفسك؟!
ربما يكون قد خطر ذلك في بال الكثيرين، ولكن الجميع يعتقد بأن الموضوع صعب جداً، فهل هو حقاً كذلك؟! وكيف يمكنك تصميم الألعاب؟ وما هي لغات البرمجة التي يتوجب عليك تعملها لذلك؟
سنجيب عن جميع هذه التساؤلات في مقالنا هذا، فإن كنتم متحمسين للإجابات فهيا بنا…
يمكن القول كبداية أن موضوع تصميم الألعاب كان أكثر تعقيداً وصعوبة فيما مضى ولكن في أيامنا هذه وبوجود محرك للألعاب مثل Unity أصبح الموضوع يزداد سهولة يوماً بعد يوم بدءاً من تصميم الألعاب ثنائية البعد (2D) وصولاً للألعاب ثلاثية الأبعاد (3D)، وأهم ما يميز محرك البحث السابق أنه يتوفر منه نسخة مجانية ويقدم الكثير من الميزات كما يوجد الكثير من الدورات التدريبية المتاحة لتعلمه بسهولة وسلاسة مما يجعل المهمة أمام المطورين أكثر سهولة باستخدامه.
🔰ماذا تعرف عن محرك الألعاب Unity؟
لنبدأ بالتعرف على محرك الألعاب، وهو بالتعريف الأداة التي تسمح لك كمطور ومبرمج بتصميم ألعاب موجهة لمنصات متعددة سواء للحاسب أو الموبايل أو غيرها، فهو يعتبر الأداة التي تربط بين لغات البرمجة التي يتم تكويد اللعبة بها من جهة وبين العناصر الأخرى التي لا بد من تواجدها في أي لعبة كالرسوميات والشخصيات وحركاتها وغيرها من المكونات الأخرى التي تشكل بتكاملها اللعبة المطلوبة، إذًا فمحرك الألعاب هو الوسيط بين جميع العناصر والمكونات وهو الذي ينسق ويرتب العمل بينها.
ويعد محرك الألعاب Unity من أكثر محركات الألعاب شهرة في الوقت الحالي لما يتمتع به من الميزات التي تجعله خياراً رئيسياً لأي مطور ألعاب، ومن أهم هذه الميزات:
المرونة: فهو محرك ألعاب مرن جداً ويمكنه التأقلم بسهولة مع متطلباتك.
يستطيع عرض الرسوميات بشكل آني ومباشر مما يسهل عليك التصحيح والتعديل للوصول إلى المطلوب.
يمكن أن تقوم بإنشاء لعبة واحدة وتصديرها إلى منصات متعددة بدلاً من أن تقوم بتصميم إصدار خاص من اللعبة لكل منصة على حدى.
يقدم لك متجر متكامل تستطيع من خلاله الحصول على آلاف الإضافات للعبتك سواء من حيث الشخصيات أو الحركات أو الكثير غير ذلك ومن هذه الأشياء ما هو مجاني وبالتالي لن تضطر لدفع أي مقابل للحصول عليه ومنها ما يمكنك الحصول عليه كإضافات مميزة جداً ومتقدمة بمقابل مادي، كل ذلك سوف يسرع عملية تطوير اللعبة الخاصة بك ويقلل من الجهد الذي ستبذله لذلك.
إن كنت تريد تصميم لعبة بإمكانية استخدام الشبكة لكي تتاح اللعبة من قبل مجموعة من اللاعبين، فإن محرك الألعاب Unity يقدم لك هذه الميزة أيضاً ما يجعل من لعبتك أكثر قوة ويسهل انتشارها.

يقدم محرك الألعاب Unity خدمة Unity Team فغالباً ما يتم تطوير اللعبة من قبل مجموعة من الأشخاص وليس فرد واحد فقط ودائماً ما يعاني الفريق من مشكلة التواصل وتبادل الملفات التي تم العمل عليها فيما بينهم، ولكن ذلك لم يعد مشكلة في ظل وجود محرك الألعاب Unity فهو يمكن الفريق من التواصل بطريقة سريعة ومميزة بحيث يتم العمل على اللعبة التي يقومون بتطويرها وكأنهم في مكان واحد.

🔰إن كنت تبحث عن الربح من خلال اللعبة التي تقوم بتطويرها سواء عن طريق إتاحة عملية شراء بعض المكونات (مثل الأسلحة مثلاً) ضمن لعبتك من قبل اللاعبين أو عن طريق وضع مجموعة من الإعلانات ضمن اللعبة بحيث تحصل على عائد مادي من هذه الإعلانات، فإنك تستطيع الاعتماد على محرك الألعاب Unity في ذلك فهو يقدم لك الإمكانيتين السابقتين بكل سهولة.


🔰قائمة الأدوات الكبيرة التي يقدمها محرك الألعاب Unity وليس فقط للمطورين أو المبرمجين بل أيضاً للمصممين والرسامين الذين يعملون على بناء المشاهد والشخصيات، فهو يتمتع بوجود مجموعة كبيرة من الأدوات التي تسهل عملهم وتجعله أكثر احترافية حيث يقدم أدوات للإضاءة وأخرى للصوت وأدوات للحركية وغيرها الكثير مما يجعله خياراً مميزاً أمامك لتطوير لعبتك الخاصة.
ولعل أهم ميزة في محرك الألعاب Unity أنه مجاني، وعلى الرغم من أنه ليس مجانياً بالكامل فيوجد منه نسخة مجانية إضافة إلى المدفوعة، ويقدم لك في النسخة المجانية منه مجموعة كبيرة من الأدوات التي تمكنك من القيام بالكثير أثناء عملية تطوير اللعبة الخاصة بك.
راجع أيضًا: عندما يكون فريق العمل عقلاً مبدعاً واحداً.. أفضل الألعاب المستقلة لمختلف المنصات

💻برمجة العاب يونيتي
ولكن الصعوبة الحقيقية ليست في محرك الألعاب، فعلى الرغم من الميزات العديدة التي يقدمها محرك الألعاب مثل Unity فإن الجوهر يكمن في تكويد اللعبة الخاصة بك وهنا لم تعد الكرة في ملعب محرك الألعاب فقط بل يتوجب عليك أن تتعلم
لغة برمجة معينة تتناسب مع محرك الألعاب من أجل تطوير لعبتك بشكلها النهائي، فما هي هذه اللغات ممكنة الاستخدام مع محرك الألعاب Unity؟ سنتعرف على ذلك في الأسطر القليلة القادمة.

في الحقيقة هناك مجموعة من لغات البرمجة المتاحة أمام مطوري الألعاب الذين يرغبون في اعتماد محرك الألعاب Unity، وهي كما يلي:


الخيار الأمثل: #C
برمجة العاب يونيتي
يمكن القول بأن الخيار الأمثل والأكثر قوة ومرونة للحصول على ألعاب مميزة باستخدام محرك الألعاب Unity هو لغة البرمجة الشهيرة #C، فأي شخص جديد على محرك الألعاب Unity سيجد بعد قليل من البحث أن أول خيار أمامه هو لغة البرمجة #C لما تتمتع به هذه اللغة من ميزات وخاصة أنها لغة غرضية التوجه (أي تعتمد مفهوم OOP في بنيتها الهيكلية).


وللغرض السابق، فإن محرك الألعاب Unity يستخدم محرراً مدعوماً من قبل لغات البرمجة الخاصة بشركة مايكروسوفت يسمى Mono، وباعتبار لغة #C هي اللغة الرئيسية المعتمدة من قبل مايكروسوفت وأن كل مكتبات محرك الألعاب Unity مبنية بالاعتماد على هذه اللغة، فهذا يجعل منها خياراً مثالياً جداً، وبالتالي لن يكون من المبالغة القول بأن لغة C# هي اللغة الأساسية لمحرك الألعاب Unity.


وتعتبر لغة البرمجة #C لغة قوية جداً وسهلة التعلم، ودعم Unity لها يعطي أي شخص يريد أن يتعلم لغة برمجة جديدة سبباً إضافياً لاختيارها.


الخيار البديل المتاح: JavaScript
برمجة العاب يونيتي
من اللغات الأخرى التي يدعمها محرك اللعاب Unity الجافا سكريبت وتعرف باسم UnityScript، فمنذ إطلاق محرك الألعاب Unity كانت الجافا سكريبت خياراً متاحاً للمطورين مع الخيار الأساسي المتمثل بلغة #C جنباً إلى جنب، وقد تم تضمين الأمثلة باللغتين السابقتين ضمن توثيق برنامج Unity.


إن كنت تملك خلفية جيدة في الجافا سكريبت، فإن ذلك سيعطيك أفضلية كبيرة لاستخدام Unity لتطوير الألعاب بالاعتماد على هذه اللغة المميزة، ولكن مع الأسف هناك مشكلة صغيرة هنا وهي أن UnityScript ليست تماماً مثل الجافا سكريبت، فهناك مجموعة من الاختلافات بينهما فهناك ما هو من ميزات الجافا سكريبت وغير مدعوم من قبل UnityScript والعكس أيضاً، وهذا الأمر يشكل عقبة صغيرة أمام المطورين.


إذاً وباختصار، فإن لغة البرمجة البديلة للغة #C والمدعومة من قبل Unity المسماة UnityScript لا تشبه تماماً الجافا سكريبت ولكنها قريبة منها جداً، وبالتالي الخيار لك إن كنت من مبرمجي جافا سكريبت فإما أن تعتمد على لغة البرمجة UnityScript لتطوير ألعابك مستنداً على خلفيتك في الجافا سكريبت أو أن تبدأ بتعلم لغة #C واعتمادها كلغة رئيسية لتطوير ألعابك، الخيار لك! 🤷‍♀️🤷‍♀️


وقد أعلنت Unity أنها ستوقف دعمها للغة UnityScript خلال السنوات القادمة، ورغم ذلك فما زال لديك الوقت الكافي لتعلمها والعمل بها لتطوير ألعابك ولكنها من حيث المنطق لن تكون الخيار الأمثل.


الخيار الثالث القديم: Boo
برمجة العاب يونيتي
في بداية إطلاق Unity كانت لغة البرمجة Boo خياراً مهماً، وإن علمت أن مطور هذه اللغة يعمل ضمن فريق العمل الخاص بتطوير محرك الألعاب Unity فإنك حتماً لن تستغرب ذلك.

تعتبر لغة Boo لغة برمجية متوافقة مثل لغات NET. ويمكن الكتابة بها ضمن المحرر Mono الذي يأتي مع محرك الألعاب Unity وقد كانت مدعومة بشكل كامل من هذا المحرك فما المشكلة إذاً؟!

يمكن القول بأن المشكلة الرئيسية هنا أن الكثير من الناس لا يستخدمون هذه اللغة البرمجية، هذا من جهة أولى، ومن جهة ثانية فقد تم النظر إلى هذه اللغة على أنها مجرد محاولة لتقليد لغة البرمجة بايثون، ومع مرور الزمن توقف دعم Unity لهذه اللغة وكل التحديثات القادمة التي ستأتي للغة UnityScript سوف تجعلها تحل محل لغة Boo، وربما يرى البعض أن لغة البرمجة Boo كانت تستحق أن تأخذ فرصتها وكان من المبكر أن يتم الابتعاد عنها لما تتميز به من مرونة، ولكن القرار قد اتخذ بعدم الاعتماد المستقبلي على هذه اللغة من قبل محرك الألعاب الشهير Unity.


الخيار الاستثنائي: IronPython
برمجة العاب يونيتي
إذا أردنا التحدث بصوت المنطق، فإن لغة البرمجة بايثون هي لغة غير مناسبة لتطوير الألعاب ولكنك إن كنت مطور بايثون فإن هذا الخيار متاح أمامك حيث تستطيع (وفقاً لمايكروسوفت) أن تشغل البايثون من قبل لغة البرمجة #C، ويمكن القول بأن لغة البرمجة IronPython ما تزال قيد التطوير، وهنا نلفت النظر بأن IronPython هي مختلفة قليلاً عن البايثون باعتبارها موجهة لمكتبات NET. من مايكروسوفت.


ولكي تستخدم لغة البرمجة IronPython يتوجب عليك تحميل مكتبات هذه اللغة من موقع GitHub وتضمينها ضمن مشروع #C الخاص بك، وبهذه الطريقة تستطيع التعامل مع لغة البرمجة بايثون بالاعتماد على سكريبت مكتوب بلغة البرمجة #C، وهنا لا بد من التنويه أنك تستطيع أيضاً استخدام مكتبات NET. ضمن البايثون، وبالتالي فإنك ستحصل على قوة لغة #C (اللغة المفضلة من قبل محرك الألعاب U
nity).


وهناك أيضاً لغة برمجية أخرى تسمى IronRuby تعتمد على مكتبات NET. للتعامل مع لغة البرمجة الشهيرة روبي ولكنها في حقيقة الأمر ليست خياراً عملياً (نفس الأمر بخصوص IronPython).


الخيار المثير للاهتمام: لغة Lua
برمجة العاب يونيتي
من أفضل الخيارات الخارجية المناسبة للغات البرمجة التي تتعامل مع محرك الألعاب Unity هي لغة البرمجة Lua أو التي تسمى MoonSharp ولم يتم تصميم مشروع هذه اللغة كبديل للغة البرمجة #C وإنما لتعمل كجسر معها. فهي تستطيع أن تقدم الكثير من الإضافات المميزة إلى اللعبة التي تقوم بتصميمها، حيث تستطيع استخدامها كوسيلة إضافية لتصميم مستويات ضمن اللعبة وبشكل مستقل تماماً عن الكود الرئيسي الخاص بلعبتك (والذي يمكن أن يكون مكتوباً بلغة البرمجة #C) أليس هذا رائعاً؟


وكخلاصة لما سبق يمكن القول بأنك إن كنت تبحث عن وسيلة لتدعيم الكود البرمجي الخاص باللعبة التي تقوم بتطويرها وإضافة بعض الميزات إليها يمكنك اعتبار MoonSharp خياراً مناسباً جداً، وخاصة أنه مجاني تماماً، ويمكنك بكل بساطة تحميله من متجر الإضافات الخاص بمحرك الألعاب Unity والذي يسمى Assets Store وتضمينه مباشرة ضمن مجلد المشروع الخاص بك.


اللغة الأفضل للإضافات: ++C
برمجة العاب يونيتي
على الرغم من المكتبات الكثيرة والقوية التي يمتلكها محرك الألعاب الشهير Unity والتي تقدمها لغة البرمجة #C فإنك وفي بعض الأحيان قد تحتاج إلى إضافة بعض الملحقات الخاصة بك والتي كنت قد كتبتها بكود برمجي آخر، ويعود السبب في رغبة الكثير من المطورين في إضافة ملحقات خاصة بهم إلى اللعبة التي يقومون بتطويرها إلى الحصول على ميزات إضافية كالسرعة أو الوصول إلى أكواد أخرى مكتوبة بلغة مختلفة، ويستطيع المطور ببساطة بناء هذه الأكواد على شكل ملفات DLL مما يوفر عليه إعادة كتابة نفس الكود البرمجي بلغة برمجية أخرى.


هذا وتعتبر لغة البرمجة ++C من أفضل الخيارات لإنشاء الإضافات (Plug-ins) وكذلك لغة البرمجة الأم C تعتبر خياراً جيداً أيضاً، ولكن كل ما سبق مشروط بعملية بناء هذه الإضافات على شكل ملفات DLL لكي تتمكن من تضمينها بسهولة ضمن مجلد المشروع الخاص بلعبتك، وذلك عبر الإشارة إليها بدلاً عن الملحقات الرئيسية الموجودة في مجلدات محرك الألعاب Unity، ومع ذلك فإن كنت مبرمجاً بلغة ++C أو حتى بلغة C، فإن الانتقال إلى لغة البرمجة #C سيكون مهمة سهلة جداً لك.



لغة برمجة جديدة للإضافات: Rust
برمجة العاب يونيتي
تعتبر لغة البرمجة Rust من اللغات التي أثير حولها الكثير من الضجة، ويعود السبب الذي يجعل المبرمجين المتمرسين يحبون هذه اللغة إلى مقدار التحكم الكبير الذي تقدمه هذه اللغة، ليس هذا فحسب فهي أيضاً تمكنهم من تجاوز بعض العيوب الأمنية الموجودة في لغات برمجية أخرى أقل أماناً مثل ++C.


تم إنشاء هذه اللغة البرمجية من قبل شركة Mozilla عام 2009 أي تعتبر لغة حديثة العهد، وكان الهدف الرئيسي من إطلاقها هو تمكين المطورين من تطوير برمجيات عالية المستوى بسهولة وسرعة كبيرة.


في الحقيقة، فإنك لا تستطيع الكتابة بلغة البرمجة Rust بشكل مباشر ضمن محرك الألعاب Unity ولكنك تستطيع الوصول إلى الطرائق والتوابع الرئيسية الموجودة في لغة البرمجة Rust من خلال الكود البرمجي الخاص بك بسهولة وبالتالي يمكنك إنشاء العديد من الإضافات (Plug-ins) بلغة البرمجة Rust من خلال الاستفادة من القدرة العالية للغة Rust في التفاعل مع اللغات البرمجية الأخرى. وبالتالي يمكنك استدعاء التوابع والطرق الموجودة في لغة البرمجة Rust بشكل مباشر من خلال لغة البرمجة #C عبر الأداة DllImport التي يقدمها محرك الألعاب Unity، ولتحقيق ذلك يتوجب عليك اتباع بعض الخطوات فقط وكل ما سبق يجعل من لغة البرمجة Rust خياراً لا بأس به في تدعيم لعبتك التي تعمل على تطويرها.



بعد أن تعرفنا على مجموعة الخيارات المتاحة أمامك من لغات البرمجة الممكنة الاستخدام ضمن محرك الألعاب Unity، يمكننا القول بأن تطوير اللعبة يعتبر عملاً متكاملاً ويحتاج إلى فريق، وتعتبر لغة البرمجة جزءاً رئيسياً من عملية تطوير أي لعبة وعلى الرغم من أنه يتوجب إضافة التصاميم والشخصيات والحركات وغيرها العديد من المكونات ليتم إنتاج اللعبة بشكل متكامل ولكنه يبقى للغة البرمجة الدور المحوري ضمن عملية تطوير أي لعبة.


في خلاصة المقال، يمكننا القول بأن لغة البرمجة #C هي أفضل خيار متاح لك استخدامه مع محرك الألعاب الشهير Unity وخاصةً كونها اللغة الرئيسية له من جهة، ومن جهة ثانية فإن هذه اللغة تتطور باستمرار وتقدم ميزات رائعة جداً وتتمتع بالقوة والمرونة وسهولة التعلم ما يجعلها أيضاً خياراً ممتازاً لاعتمادها كلغة برمجية خاصة بك سواء لتطوير الألعاب أو حتى لبرمجة التطبيقات، هذا ليس رأياً خاصاً بنا، وإنما بمثابة تصريح مباشر من قبل مطوري محرك الألعاب Unity، والقرار لك أنت في نهاية المطاف عزيزي القارئ!
#مكتبات_بايثون
💻🌐مكتبات مهمة في لغة البرمجة بايثون لا يمكنك الاستغناء عنها

مكتبات بايثون1
عالم البرمجة بحر واسع ويحتوي العديد من اللغات التي يمكنك كمبرمج تعلمها والعمل بها. ومن أشهر هذه اللغات لغة بايثون التي تعتبر من أكثر اللغات الموجودة على الساحة حالياً من حيث الانتشار في سوق العمل.
وما يميز بايثون إضافةً إلى الكود السهل والمبسط الذي يمكنك كتابته (طريقة كتابة الكود أو ما يسمى Syntax) وجود مجموعة كبيرة من المكتبات التي يمكنك تضمينها والاستفادة منها ليصبح تطبيقك البرمجي أكثر فعالية وقدرة على تأدية مجموعة من المهام الإضافية التي تقدمها تلك المكتبات.

وفي مقالنا هذا سنتعرف على أشهر المكتبات التي ربما لم تستخدمها في الكود البرمجي الخاص بك، ولكنك بعد أن تتعرف عليها ستكتشف أنه لا بد لك من استخدامها. متحمسون لذلك؟ إذا كان الجواب نعم فاربطوا الأحزمة لننطلق!
مكتبات بايثون
في البداية لا بد لنا من أن نتعرف على معنى المكتبة البرمجية وما هي:
🔰ما هي المكتبة البرمجية؟
نقصد بالمكتبة البرمجية بشكل عام مجموعة من ملفات الأكواد البرمجية والملفات المساعدة التي يمكنك تضمينها ضمن الكود البرمجي الخاص بك والتي قام مجموعة من المطورين بكتابتها ونشرها لتصبح متاحة للجميع والهدف من المكتبات البرمجية تسهيل تنفيذ أمور معينة ضمن أي تطبيق بالدرجة الأولى إضافة إلى إعطاء التطبيق إمكانيات إضافية لا يمكن أن يقوم بها إلا بعد الاستعانة بتلك المكتبات.
🛡المكتبات التي لا بد لك من استخدامها في بايثون

📍مكتبة Requests
إذا كنت ترغب بإنشاء اتصال عبر بروتوكول HTTP، فإن هذه المكتبة هي خيارك المناسب للقيام بذلك وبشكل أتوماتيكي دون الحاجة إلى الجهد اليدوي في ذلك وبالتالي يتم استخدام هذه المكتبة عند طلب صفحة HTML، فهي تقوم بمعرفة كل ما يقوم به المتصفح في الخلفية وبالتالي تعطيك المعلومات والتوثيق الكامل للاتصال والقوة الكاملة للتعامل مع أي استعلام يعتمد على برتوكول HTTP. فهي قوية وسهلة الاستخدام وكل ذلك عن طريق urllib3 (المكتبة الأم للمكتبة request).
📍المكتبة Pluggy
تعتبر من المكتبات الجديدة نسبياً في لغة بايثون وتعطيك المرونة اللازمة للتعامل مع الملحقات (الإضافات) من إضافة وتعديل وإدارة، حيث تمكّنك من التعامل مع أكثر من 500 إضافة (أو ما يسمى Plugin) وبالتالي فهي تعطيك قوة كبيرة جداً لتطبيقك البرمجي بحيث تمكّنك من التعامل مع البرنامج المضيف وكأنه جزء من الكود البرمجي الخاص بك.
📍مكتبة Scappy
تعتبر Scappy أداة قوية ومهمة لمعالجة بيانات الحزم المرسلة، حيث تمكّنك من التقاط تلك الحزم وبالتالي تحليلها والتعرف على محتواها، وهي قادرة على القيام بالعديد من المهام المتعلقة باكتشاف الشبكة وعمليات التتبع وإرسال الإطارات الخاطئة والحقن لغايات الاختراق والأمان، وكذلك الدمج بين مجموعة من التقنيات (مثل VLAN مع ARP وغيرها) و لعل أكثر من يهتم بهذه المكتبة هم مستخدمو نظام التشغيل لينوكس.
📍مكتبة Beautiful Soup
تستخدم هذه المكتبة بشكل رئيسي لاستخراج المعلومات من صفحة HTML كما تفيد في تحويل البيانات غير المنسقة (غير المهيكلة) إلى بيانات منسقة بترميز UTF-8 (وهو الترميز القياسي العالمي للمحارف)، ليس هذا فحسب بل إنها أيضاً تعطيك القوة والإمكانية للتحويل بين أنواع مختلفة من ملفات البيانات (مثل ملفات XML) فهي قادرة على التعامل مع أنواع مهمة جداً من البيانات وخاصة XML (وكذلك ملفات HTML) بسهولة وبالتالي فهي توفر على المبرمج الكثير من الوقت والجهد.
📍مكتبات بايثون
مكتبة SQLAlchemy
تعطي هذه المكتبة مبرمجي بايثون القوة والمرونة الكاملة للتعامل مع لغة الاستعلامات المهيكلة SQL، وتمكنك هذه المكتبة من إجراء العمليات الرئيسية في التعامل مع قواعد البيانات من نوع SQL من عمليات الوصول والتعديل وغيرها فهي تنظر إلى قاعدة البيانات ليس فقط كمجموعة من الجداول بل أيضاً كمجموعة من العلاقات التي يمكنك عبرها تجميع البيانات والحصول عليها من الجداول.
📍مكتبة Matplotlib
إذا كنت كمبرمج بايثون بحاجة إلى الطباعة ثنائية البعد أي تريد رسم مخططات معينة سواء أكانت مخططات رياضية أو مخططات إحصائية (كمخططات barchart ومخططات Pies)، فأنت بحاجة إلى هذه المكتبة الرائعة لتضمنها ضمن الكود البرمجي الخاص بك، ليس هذا فحسب بل إنها تقدم لك أيضاً القدرة على إظهار مخططات صورية وخطية وكذلك مخططات ملونة ومجموعة كبيرة من المخططات الأخرى.
📍مكتبة pygame
من منا لا يحب أن يبرمج لعبة أو خطر بباله ذلك يوماً ما؟ أعتقد أن الأغلبية تحلم بذلك، فإن كنت مبرمج بايثون يمكنك ببساطة تصميم الألعاب ثنائية البعد بالاعتماد على هذه المكتبة الرائعة، والتي تعتبر من المكتبات الشهيرة والقوية في تطوير الألعاب ثنائية البعد في بيئة البايثون. وهي مفتوحة المصدر ومجانية أيضاً وما تقدمه لك هذه المكتبة ليس فقط تطوير الألعاب بل تساعدك في أي تطبيق وسائط متعددة
تريد تطويره باستخدام بايثون. أليس ذلك رائعاً؟

📍مكتبة pyGtk
إن كنت تبحث عن تصميم تطبيقات بواجهات المستخدم الرسومية (GUI) ونقصد بواجهات المستخدم الرسومية الإطارات والأزرار والحقول وغيرها من العناصر المرئية، فإن هذه المكتبة أحد الخيارات المهمة المتاحة أمامك والتي تقدم لك الإمكانيات الكاملة لبناء تطبيقات الواجهات الرسومية، ومن أشهر البرامج التي تم بناؤها بالاعتماد عليها تطبيق BitTorrent الشهير فلا تتردد بالحصول عليها واستخدامها في تطبيقاتك.



#وبعد أن عرضنا لكم مجموعة من المكتبات المميزة التي يمكنك الاستعانة بها في تطبيقاتك المكتوبة بلغة البرمجة الشهيرة بايثون، نستطيع القول بأن هذه عينة فقط من مجموعة كبيرة جداً من المكتبات المتاحة لكل مبرمجي بايثون الأمر الذي يمكن اعتباره نقطة القوة المهمة جداً في لغة بايثون والتي تميزها عن غيرها من باقي لغات البرمجة المنافسة لها وتجعلها تتفوق عليها، فهل أنت مستعد لتجربة المكتبات السابقة؟ أم أنك قمت بتجربة بعضها؟
📚مكتبة الحاسوب والبرمجة📚
تحتوي على اي كتب او برامج او فيديوهات تتعلق بالحاسوب او البرمجة وصيانة الهواتف
لطلب الكتب
من هنا @atlubkitabak
انشروا الرابط
قنواتنا
مكتبة المليار كتاب @bookshop_pdf
مكتبة المليون كتاب اسلامي @book_islamih
https://t.me/programming_computer
#مقالات_برمجية📙📙
💻💻توقف عن كونك مبرمجًا عاديًا، مهارات برمجية ضرورية يتجاهلها معظم المبرمجون

هناك أسطورة تقول أن المبرمج المتمرس ينجز ما يقارب عشرة أضعاف ما ينجزه المبرمجون الآخرون. أسطورة مثيرة للجدل وتحتمل وجهات نظر. سواء اخترت تصديق الفكرة أم لا، فهناك مجموعة مهارات برمجية ضرورية يتشاركها جميع المبرمجين غير الاعتيادين، ما يميزهم عن أي مبرمج آخر.

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

تصوّر بعض المصادر الإعلامية البرمجة على أنها مهنة غير اجتماعية، بل هي في الحقيقة تنطوي على الكثير من مهارات التواصل والعمل مع الفريق. إذا كنت تعمل لصالح شركة فستكون جزءًا من فريق التطوير ويتوقع منك التواصل والعمل مع الآخرين بشكل جيد. لذلك يجب عليك أن تطور مهارات التواصل لتتعلم القيام بذلك بالطريقة الصحيحة.

ارفع مهاراتك في حل المشكلات
يقول العديد من المطورين أن فهم لغة البرمجة ليس سوى جزء ثانوي من الترميز، إذ يعد حل المشكلات مهارة مهمة أخرى يفتقر إليها مطورو البرامج المبتدئين وهو ليس بالأمر السهل.

لتصقل هذه المهارة عليك أن تبدأ بمشاريع صغيرة مثل تطوير بعض التطبيقات البسيطة. عندها اقضِ وقتًا إضافيًا على معرفة ما وراء كتابة هذه الرموز وافهم المراد منها، فعند معرفة وظيفة كل رمز وحل كل مشكلة عندها ابدأ بتطوير برامج حقيقية وركز أيضًا على تطوير أنظمة لحل المشكلات التي ستواجهها.

طوّر مواهبك بهدف تعلم المزيد
التكنولوجيا تتطور دائمًا ومعها يجب أن تتطور معارفك كمطور، لذلك من المهم مواكبة لغات البرمجة والبرامج والأجهزة الجديدة. هناك الكثير من الأشياء التي يمكنك القيام بها لتتعلم مهارات جديدة بسرعة، فعلى سبيل المثال ركز على فهم قراءة الرموز البرمجية حتى تتمكن من فهم التقنيات الجديدة ومعرفة الموارد المستخدمة. كما ويجب تدوين الملاحظات لتبقى منظمًا لإيجاد المعلومات وقت الحاجة إليها.

حافظ على قدر كبير من الإصرار
يمر المبرمجون المخضرمون بتجارب تجعلهم يشعرون وكأنهم مبتدئين في اكتشافهم للتقنيات الجديدة ويتعلمونها بأنفسهم في وقت قياسي. كل خبير في مجاله مبتدئ في مجال آخر وهناك الكثير من التقنيات لذلك يمكن أن تكون خبير بتقنية منها ومستجد بتقنية أخرى.
🔰اعرف أن القرارات الصغيرة مهمة جدًا
عند كتابة برنامج ما، ستشعر وكأن هنالك مليار قرار عليك اتخاذه، حتى عند إضافة ميزة صغيرة فقط كتسمية المتغيرات والوظائف وغيرها من الأشياء الصغيرة التي لها أثر كبير. حيث يطور المبرمجون المحترفون أنماطًا لتساعدهم على تسمية المتغيرات وذلك يوّفر عليهم وقت التفكير بالمسمّيات لأنهم غالبًا ما يسمون الأشياء بنفس الطريقة.
استخدم الأداة الصحيحة لأداء عملك
يوجد العديد من المكتبات والأدوات مفتوحة المصدر ويعرف المبرمجون ما يستخدمون لكل مشكلة يواجهونها وهم على استعداد لتعلم أي شيء جديد يسمح لهم بأن يكونوا أكثر إنتاجية. ويتم ذلك باختيارهم أداتين أو ثلاث ثم تطبيق أفضل أداة على الفور لفهم كيفية عملها على بيئتهم البرمجية.
كن مستخدمًا قويًا لأدوات التطوير الخاصة بك
إذا كنت تقضي معظم وقتك في كتابة التعليمات البرمجية في بيئة معينة، يجب أن تعرف بالضبط كيفية التحكم بها مهما كانت أدواتك الخاصة. هناك العديد من الأدوات مثل: Sublime أو Text أو Atom.io أو Emacs أو Vim أو Visual Studio. رغم ذلك، يبدأ المبرمجون المحترفون بإتقان الأدوات السهلة مثل Sublime و Atom ثم يتعلمون ويتقنون الأدوات الأكثر صعوبة.
اعرف كيفية استخدام Vim ولو قليلًا
Vim محرر من أهم محررات الأكواد التي تستخدم من نافذة التيرمينال الطرفية الخاصة بنظام لينكس وماك حيث يتم تنصيبه تلقائيًا مع النظام، كما يمكن استخدامه أيضًا في لوحة الأوامر الخاصة بويندوز بعد تنصيبه على نظام ويندوز. يجب أن تكون قادرًا على حماية برنامجك على الأقل باستخدام محرر محترف كهذا، حيث أن العديد من المبرمجين الخبراء لديهم رموزهم الخاصة التي يتميزون بها في عملهم
👌تقبل النقد الكبير بصدر رحب
يمكن أن يطلب من المطورين الذين يقومون بكتابة رموز كثيرة يوميًا أن يفككوا رموزهم البرمجية استنادًا على تعليقات من مطورين آخرين. لذلك تحتاج إلى تطوير القدرة على الرد بعقلانية ومنطقية عندما تتعرض لتلك المواقف، ولا مانع من تحديث الشيفرة وتحسينها إذا تطلب الأمر ذلك. بينما تعد طريقة مراجعة الأكواد المتكررة من قبل أحد المخضرمين هي أفضل طرق التطوير وأكثرها احترافية.

يجب أن تدرك أن القسم الصعب في العمل الحر ليس في كتابة الرموز وإنما في كل شيء آخر ما يجعل المطورين ذوي دخل مرتفع جدًا ليس صعوبة كتابة الرموز البرمجية وحسب بل إدارة هذه الأعمال
حيث أنه كأي مشروع فهو يحتاج إلى المبيعات والتسويق ودعم العملاء وضمان الجودة وإدارة المنتجات ليكتمل المشروع ويتكلل بالنجاح وكل ذلك يستغرق الكثير من الوقت.



👍ابدأ إذًا بالتغلب على مخاوفك من خلال ارتكاب الأخطاء
الأخطاء هي أفضل فرصة للتعلم لذلك لا تتعامل مع أخطائك على أنها فشل. بدلًا من ذلك تعلم منها واعرف أنها أمر بالغ الأهمية لك كمبرمج محترف.


@vbs_net