26 مارس

عادات برمجية

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

خطط
قبل أن تبدأ بكتابة الكود وتخوض في التفاصيل البرمجية، فكر فيما تود القيام به، وكيف ستقوم به.
طريقتي المفضلة هي تقسيم التطبيق إلى جزئيات منفصلة modules، مثلاً جزئية الربط مع خدمة الويب، وجزئية تخزين البيانات.
وكل جزئية إلى أقسام أصغر components يسهل عليك تحويلها إلى خطوات تضعها في قائمة المهام to do list.
بذلك سيسهل عليك تنفيذ التطبيق، وقياس ما تبقى منه. كما ستكون أكوادك منظمة تبسط عليك وعلى غيرك فهمها ومن ثم تتبع الأخطاء وإصلاحها.
هنا في موقع Stackoverflow نقاش بين المبرمجين حول موضوع التخطيط قبل البرمجة.
 

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

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

لا تعد اختراع العجلة
موقع Github على سبيل المثال يحتوي على أكثر من 10 ملايين مصدر مفتوح. لابد وأن تجد تطبيق يشابه فكرتك، أو يمكنك الاستفادة منه في بعض الخصائص. بالإضافة إلى أن اطلاعك على أكواد مبرمجين محترفين في اللغة التي تبحث عنها، يكسبك خبرة في طريقة التسمية المتعارف عليها naming convention وخصائص اللغة التي تساعدك أثناء التنقل بين الأكواد مثل #pragma mark في لغة الاوبجكتف سي.
 

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

 

هل لديك عادة أخرى تساعدك في البرمجة بشكل أفضل؟

shareShare on LinkedIn0Share on Tumblr0Share on Facebook0Tweet about this on Twitter
مبرمجه

ماشاء الله عليك انا ان شاء الله راح اكون في التدريب الصيفي و قالوا لي لآزٍمٍ ابحث عن مشكله في الجهه واحلها ف مادري كيف ؟ وياليت تتكلمين مشروعك التخرج حقك وايش هي المواقع اللي ساعدك بالمصادر المفتوحه ؟!
وشكراً لك نورة

نوره النشوان

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

تدوينه رائعه ، شكرًا نورة
عندي سؤال بالنسبه لعمل التطبيقات ، هل بإمكاني عمل تطبيق عن طريق web languge ؟
و كيف ؟

نوره النشوان

العفو أثير. نعم ممكن عن طريق استخدام برنامج PhoneGap، لكن التطبيق راح يكون مثل صفحات الويب فتجربة المستخدم ما تقارن ببناء تطبيقات Native.

شاركنا رأيك

تدل علامة * على الحقول الإلزامية. والايميل لن يظهر بالرد.