من نصائحي بالنسبة للمقابلات الوظيفية والتحضير لها:
- اقرأ عن الشركة وتعرّف على نطاق عملهم والمشاريع والأقسام فيها.
- احضر للمقابلة قبل الوقت إذا كانت حضورية أو ادخل الاجتماع قبل الوقت إذا كانت عن بعد.
- جهّز مقدّمة تعرّف فيها عن نفسك وتدرّب عليها خصوصًا باللغة الإنجليزية.
نصيحة برمجية ومن وجهة نظر الجودة:
في الشركات، ضع معايير لكتابة الكود يجب على جميع المبرمجين الالتزام بها. مثل تسمية المتغيرات ووضع ملاحظات (comments). يسهّل هذا كثيرًا في حال تسليم ونقل العمل بين أعضاء الفريق (handover) أو في حال غياب المبرمج الرئيسي والحاجة لتعديل الكود.
نصيحة برمجية ومن وجهة نظر الجودة:
تعامل مع الجودة مثل البهارات التي يجب إضافتها أثناء الطبخ وليس بعد الانتهاء من الطبخة. كذلك الاختبارات والجودة يجب أن تكون معك أثناء بناء النظام وكتابة الكود وليس بعد الانتهاء من العمل.
مع التحية للمبرمجين:
قرأت إن المبرمجين طيبين وصبورين..
طيب حلو..
ليه لما مختبر البرمجيات يطلّع أخطاء في البرنامج تقفّل مع المبرمج ويعصّب ويزعل على المختبر؟
🤔😅
معلومة برمجية ومن وجهة نظر الجودة:
جميل لما تسهّل على المستخدم..
إذا ضغط "إدخال/Enter" على لوحة المفاتيح فهذا معناته كأنه ضغط على الزر "Ok" أو "Submit" في الشاشة.
معلومة برمجية:
في ال overriding يمكن تغيير ال access modifier في ال subclass ليكون أعلى من ال superclass.
مثال: إذا كانت ال method في ال superclass من نوع protected معناته ممكن نعمل لها override في ال subclass وتكون public (أعلى) أو أيضًا protected (نفسه). مثال في الصورة.
نصيحة في البرمجة ومن وجهة نظر الجودة:
مافيه شيء اسمه الكود اشتغل بالصدفة. تأكد من أن الكود يعمل في كل الحالات وينفّذ المهام المطلوب تنفيذها بشكل صحيح.
@PrograminLovers
معلومة برمجية:
للمرور أو الدوران على عناصر ال PriorityQueue يمكن استخدام ال iterator method.
لاستخدامها نحتاج import لل package التالية
java.util.Iterator
الصورة توضح مثال.
نصيحة برمجية:
اجعل من الكود الخاص بك لوحة فنية في التنظيم والترتيب تسرّ الناظر إليها وتفتح نفسه. الفائدة تعود عليك أولاً وأخيرًا لو احتجت ترجع تعدّل الكود أو تصلّح أخطاء فيه.
نصيحة برمجية ومن وجهة نظر الجودة:
عند كتابة الكود، الهدف الأول لك هو أن يكون الكود يعمل. بعد ذلك، اجعل هدفك أن يكون الكود يعمل بالشكل الصحيح ويؤدي المهمة المطلوبة.
نقطة في التدريب العملي للطلاب والطالبات في الشركات:
المتدربون يحتاجون لتعلّم المهارات التقنية في مجال تخصصهم وكذلك المهارات الأساسية في بيئة العمل مثل العمل كفريق ومهارات التواصل والنقاش وتنظيم الوقت وغيرها. جميل جدًا لما يكون في بيئة العمل من الموظفين من يهتم بهذا الجانب..
نصيحة برمجية ومن وجهة نظر الجودة:
نماذج الكود (sample code) يمكن أن تكون فرصة جيدة لتعلّم البرمجة من خلال قراءتها وفهمها ومن ثم تشغيلها وتعديلها لمعرفة كيف يعمل الكود وبالتالي زيادة مستوى فهمك للكود.
@PrograminLovers
معلومة برمجية:
يمكن استخدام ال Deque كبديل عن ال Stack class. توجد ال methods التالية:
push لإضافة عنصر في المقدمة.
pop لإزالة عنصر من المقدمة.
peekً ترجّع العنصر في المقدمة.
شكرًا لكم مجتمع معين على هذا التنظيم الرائع. كلمات الشكر تعجز صراحة وجهود رائعة من الجميع.. شكرًا كذلك للحضور الذي أضافوا لمحتوى اللقاء بمشاركاتهم وتفاعلهم.
@MAEEN__SA
من خلال اطّلاعي على عدد من ملفات السيرة الذاتية لحديثي التخرّج وحتى موظفين، كثير يضيفون قسم Objectives وفيه أهدافهم وإنهم يطمحوا في الانضمام لجهة يطبقوا فيها معرفتهم ويطوروا مهاراتهم لأجل مصلحة الجهة. الأفضل يكون قسم Career Summary تعطي فيه نبذة عن خبرتك العملية وتسوّق لنفسك.
نصيحة للمبرمجين:
لا تتردد و لا تخف من طلب المساعدة من الزملاء والأصدقاء المبرمجين عند وقوعك في مشكلة برمجية. أيضًا لا تتردد في مساعدتهم.
@PrograminLovers
تم نشر الموضوع ولله الحمد..
كما وعدتكم، موضوع جديد في مدونتي..
في البرامج، يتم استخدام واجهة برمجة التطبيق عادة لتوفير اتصال سلس بين مكوّنات البرنامج المختلفة. في هذا الموضوع خمس فوائد يوفرها تنفيذ اختبار واجهة برمجة التطبيق
API
نصيحة برمجية:
لو واجهت مشكلة في الكود وجلست فترة تحاول تحلّها واستعصت عليك، خذ لك فاصل وارتاح شوي وابتعد عن التفكير في المشكلة. راح ترجع وتفكيرك نشيط وممكن توصل للحل بسرعة.
نصيحة برمجية ومن وجهة نظر الجودة:
استخدامك لل Catch في البرمجة يعتبر بمثابة إنقاذ للبرنامج طالما إنك تستخدمها بالشكل الصحيح. لكن ما راح تستفيد منها شيء إذا ما عملت تتبّع (trace) لما حصل في البرنامج وسبب دخول الكود في ال Catch.
من نصائحي بالنسبة للمقابلات الوظيفية والتحضير لها:
- مهما كان مستواك في اللغة الإنجليزية، لو بدأت المقابلة بالإنجليزي كمّل معاهم إنجليزي ولا تحوّل عربي. تطمّن لأنه أحيانًا بعد عدد من الأسئلة ومعرفة مستواك يحوّلوا عربي.
- حضّر إجابات إيجابية ومتفائلة إذا سألوك عن شيء جديد عليك.
نصيحة في اختبار البرمجيات:
علشان تكون مختبر/ة برمجيات متميّز/ة لازم يكون عندك تركيز في العمل وقت الاختبار وكذلك عندك حِس ومفهوم للجودة صحيح بحيث إنك تفرّق بين الصح وبين الخطأ سواء في واجهة الاستخدام أو وظائف البرنامج.
نصيحة برمجية:
يوجد فرق بين الجملتين التاليتين
System.out.println(number++)
و
System.out.println(++number)
الأولى تتم الطباعة ثم زيادة الرقم بواحد. الثانية تتم زيادة الرقم بواحد ثم الطباعة.
أدوات الاختبار (Test Tools):
يوجد أداة اختبار لدى google وهي Mobile-Friendly Test. تقوم الأداة بتحليل الموقع وما إذا كان الموقع Mobile Friendly أو لا. أيضًا توضح الإداة إذا كان هناك issues في تحميل الصفحة (Page Loading).
رابط الأداة:
تعلمت درسًا: لو حاول الناس من حولك إحباطك فلا تقلق أبدًا لأنك على الطريق الصحيح.
I learned an important lesson: If people around you are trying to put you down, then never worry since you are on the right path.
بما إنه اليومين هذي تكرر دخولي للمطبخ 😅، دائمًا ما يلفت انتباهي توزيع المواعين في الأرفف. لكل ربّة منزل توزيعها الخاص ويجب الالتزام فيه من أي مستخدم (user) للمطبخ 👍🏻 أي تغيير يعتبر bug 😂
نصيحة برمجية ومن وجهة نظر الجودة:
أفضل وقت تتعلّم كيف تختبر الكود تبعك هو وقت كتابة الكود. بكذا راح تتعلّم برمجة لو كنت مبتدئ وتتعلّم اختبار البرمجيات على مستوى الكود أيضًا.
نصيحة برمجية ومن وجهة نظر الجودة:
في كل فريق برمجة، يوجد مبرمجون يكونون مسؤولين عن أخطاء كثيرة (bugs) كافية للتأثير على سمعة الفريق. ضروري تركّز عليهم وتطوّر مهاراتهم في كتابة الكود وتساعدهم مع المبرمجين الآخرين في تعلّم تحسين جودة الكود.
نصيحة برمجية أكررها ومن وجهة نظر الجودة:
مع التركيز على إصلاح خطأ في الكود، قد لا تستطيع تحديد مكان الخطأ ويمتد الموضوع لساعات. خذ فترة راحة وابتعد عن الكود وهذا سيساعدك كثيرًا في التركيز وحل المشكلة.
نصيحة برمجية:
وقت كتابة الكود، استفد من المزايا الموجودة في لغة البرمجة وكذلك ال libraries. لاتكتب كود من الصفر بينما هنالك كود موجود يقدم لك نفس الوظيفة.
نصيحة برمجية ومن وجهة نظر الجودة:
بسّط الكود ووضحه قدر الإمكان مما يسهّل صيانة الكود وتعديله لاحقًا. أسماء المتغيّرات وال functions لازم تكون واضحة وتعكس دورها في البرنامج.
نصيحة برمجية:
إذا كان الكود يتصل بقاعدة البيانات لتنفيذ بعض العمليات، تأكد من عمل release للاتصال بقاعدة البيانات بعد الانتهاء من العملية وذلك للحفاظ على الذاكرة وتجنب التسريبات فيها (memory leaks).
نصيحة برمجية ومن وجهة نظر الجودة:
عادي كمبرمج تستخدم الكود تبعك في أكثر من مكان وأكثر من برنامج. لكن لاتخلّي ثقتك في الكود عمياء. ارجع اختبر الكود عند كل إعادة استخدام لأنه أحيانا قد تحتاج لبعض التعديلات..
👍🏻
معلومة برمجية ومن وجهة نظر الجودة:
إذا كان عندك عملية حسابية في الكود فيها قسمة، فكّر في احتمال المقام يكون صفر وبالتالي راح يكون عندك خطأ في الكود. تعامل مع هذه الحالة بشكل صحيح وبالتالي يكون عندك كود مافيه خطأ أثناء تنفيذ العملية.
معلومة برمجية ومن وجهة نظر الجودة:
إذا كان عندك صفحة ويب، تأكد من اختبار طريقة عرض الصفحة في حال عمل المستخدم تكبير وتصغير من المتصفح
(zoom in/out)
للتأكد من عدم تداخل محتويات الصفحة مع بعض مثل لو فيه صور أو رسمات.
نصيحة برمجية:
يمكن مناداة ال method الموجودة في ال Superclass من ال Subclass وذلك عن طريق استخدام الكلمة Super ويشمل ذلك ال constructors وكذلك ال methods. الصورة توضح مثال.
معلومة برمجية ومن وجهة نظر الجودة:
لا تواصل أثناء كتابة الكود لأن قدرتك على التركيز راح تضعف وراح تشوف إبداعات في الكود ثاني يوم ومو عارف كيف كتبتها 😅 هذا غير عن ال bugs لي ممكن تصير في الكود وتتعب في إصلاحها. الراحة مطلوبة.
تطوير الذات هو أمر في غاية الأهمية. بالرغم من ذلك، القليل فقط من الأشخاص يعطي هذا الموضوع أهميّة. أما الكثير فيعتقدون أن تطوير الشخص يقع على عاتق العمل أو المنشأة التعليمية سواءً كانت مدرسة أم جامعة وبالتالي لايلتفتون لتطوير أنفسم بل يكتفون فقط بالانتظار لمن سيقوم بذلك.
الحمدلله أخيرًا وليس آخرًا، ها قد انتهينا من ثالث لِقاء لمبادرة #العقول_الرقمية
نخص بالشُكر الجزيل أ.انور بوسبول على تفانيه ومشاركتنا جزءًا مِن خبراته الثمينة🎯.
معلومة برمجية ومن وجهة نظر الجودة:
إذا كان عندك رابط موقع فجرّب تفتح الرابط من المتصفحات المختلفة في أجهزة الحاسب/اللابتوب وكذلك من المتصفحات الموجودة على الجوال. أحيانًا تحصل أخطاء وقد مايفتح الموقع أو مايظهر الموقع بالشكل الصحيح.
معلومة برمجية ومن وجهة نظر الجودة:
إذا كنت مبرمج وقال لك مختبر البرمجيات إنه حصّل bug في الكود، خلّي روحك رياضية وافهم ال bug وشوف إثبات وجودها مثل صورة أو فيديو قبل ما تستعجل وتخلّي إبليس يحضر بينكم 😅
نصيحة برمجية:
بعض الاختصارات في الكود تجعله صعب القراءة. المثال في الصورة. هذا الكود عبارة عن if - else. كتابة الكود بمثل هذه الطريقة قد تُصعّب فهمه لدى بعض المطورين. بالتالي لما الشركة تتّبع معايير في كتابة الكود راح يكون مثل هذا الكود غير مقبول.
معلومة برمجية:
من ال methods الموجودة في ال Deque interface:
- pollFirst ترجّع وتحذف العنصر في مقدمة ال deque.
- pollLast ترجّع وتحذف العنصر في آخر ال deque.
كل ال methods السابقة ترجّع null إذا كان ال deque فاضي.
نصيحة برمجية ومن وجهة نظر الجودة:
إذا عندك جملة شرطية
If statement
تحقق من حالات تحقق الشرط وعدم تحققه ولاتنسى أيضًا حالة اليساوي في حال عندك أكبر/أصغر من أو يساوي. تأكد إن الكود يتعامل معها بالشكل الصحيح.
نصيحة برمجية:
لاتفترض إن المستخدم راح يعمل Refresh علشان يحدّث البيانات الظاهرة في الصفحة بعد إتمام عملية معينة. البيانات لازم تتحدّث تلقائيًا.
**خاص للمختبرين: لو قال لك المبرمج اعمل refresh قول له Bug 😅😂
نصيحة برمجية:
في الجاڤا، أحد أنواع البيانات (data types) هو boolean. هذا النوع إما تكون قيمته true أو false. إذا لم تعطي المتغير من نوع boolean قيمة ابتدائية فستكون قيمته false.