كتاب Refactoring: Improving the Design of Existing Codeكتب تقنية المعلومات

كتاب Refactoring: Improving the Design of Existing Code

وصف قصير عن الكتاب: يعد التطوير القائم على الاختبار (TDD) طريقة مثبتة للعثور على أخطاء البرامج مبكرًا. تؤدي كتابة الاختبارات قبل الكود إلى تحسين بنية تطبيقاتك وقابليتها للصيانة. بالاقتران مع بناء الجملة المحسّن لـ Swift 3 ، لا يوجد عذر أو كتابة تعليمات برمجية سيئة. سيساعدك هذا الكتاب على فهم عملية TDD وكيف تؤثر على تطبيقاتك المكتوبة بلغة Swift. من خلال التطبيق العملي الواقعي ، ستبدأ في رؤية كيفية تنفيذ TDD في السياق. ستبدأ بنظرة عامة على سير عمل TDD ثم تعمق في مفاهيم اختبار الوحدة ودورات الكود. ستقوم أيضًا بتخطيط وهيكلة تطبيق iOS الذي تم اختباره ، وكتابة اختبارات لدفع تطوير وحدات التحكم في العرض والفئات المساعدة. بعد ذلك ، ستتعلم كيفية كتابة اختبارات لرمز الشبكة ، وما هو CI وكيفية إعداده باستخدام خادم Xcode. أخيرًا ، سيرشدك الكتاب خلال الخطوات التالية لتصبح خبيرًا في الاختبار من خلال مناقشة اختبارات التكامل والتنمية المدفوعة بالسلوك (BDD) وأطر اختبار المصدر المفتوح واختبارات واجهة المستخدم المقدمة في Xcode 8. لعزل المشكلات التي قد تنشأ ، يجب اختبار كل حالة اختبار بشكل مستقل. يمكن استخدام بدائل مثل بذرة الطريقة ، والأشياء الوهمية ، والمزيفة ، وأدوات الاختبار للمساعدة في اختبار وحدة في عزلة. أثناء التطوير ، يجوز لمطور البرامج ترميز المعايير ، أو النتائج المعروفة بأنها جيدة ، في الاختبار للتحقق من صحة الوحدة. أثناء تنفيذ حالة الاختبار ، تقوم أطر العمل بتسجيل الاختبارات التي تفشل في أي معيار والإبلاغ عنها في ملخص. لهذا ، فإن النهج الأكثر استخدامًا هو الاختبار - الوظيفة - القيمة المتوقعة.
مارتن فاولر - نبذه قصيره عن المؤلف مارتن فاولر (بالإنجليزية: Martin Fowler)‏ من مواليد 1963، هو مطور برمجيات بريطاني، كاتب، ومتحدث عام عن تطوير البرمجيات، ومتخصص في التحليل والتصميم الكائني التوجه، لغة النمذجة الموحدة، ونماذج تصميم البرمجيات. مارتن فاولر هو كبير العلماء في شركة ThoughtWorks ، وهي شركة لتطوير تطبيقات المؤسسات وتسليمها. لقد كان يطبق تقنيات موجهة للكائنات لتطوير برامج المؤسسة لأكثر من عقد. يشتهر بعمله على الأنماط ، و UML ، وإعادة البناء ، والأساليب الرشيقة. يعيش مارتن في ميلروز بولاية ماساتشوستس مع زوجته سيندي وقطة غريبة جدًا. صفحته الرئيسية هي http://martinfowler.com. يتحدى كينت بيك باستمرار عقيدة هندسة البرمجيات ، ويعزز أفكارًا مثل الأنماط ، والتطوير القائم على الاختبار ، والبرمجة المتطرفة. ينتمي حاليًا إلى معهد Three Rivers Institute و Agitar Software ، وهو مؤلف العديد من عناوين Addison-Wesley. جون برانت ودون روبرتس هما مؤلفا متصفح Refactoring Browser for Smalltalk ، والذي يوجد على http://st-www.cs.uiuc.edu/~brant/RefactoringBrowser/. هم أيضًا مستشارون درسوا الجوانب العملية والنظرية لإعادة البناء لمدة ست سنوات. أدت أبحاث الدكتوراه التي أجراها William Opdyke حول إعادة هيكلة الأطر الموجهة للكائنات في جامعة إلينوي إلى أول منشور رئيسي حول هذا الموضوع. وهو حاليًا عضو متميز في الطاقم الفني في Lucent Technologies / Bell Laboratories. جون برانت ودون روبرتس هما مؤلفا متصفح Refactoring Browser for Smalltalk ، والذي يوجد على http://st-www.cs.uiuc.edu/~brant/RefactoringBrowser/. هم أيضًا مستشارون درسوا الجوانب العملية والنظرية لإعادة البناء لمدة ست سنوات.❰ له مجموعة من الإنجازات والمؤلفات أبرزها ❞ Refactoring: Improving the Design of Existing Code ❝ الناشرين : ❞ أديسون ويسلي بروفيشنال ❝ ❱
من اختبار او فحص البرمجيات - مكتبة كتب تقنية المعلومات.

وصف الكتاب : وصف قصير عن الكتاب:

يعد التطوير القائم على الاختبار (TDD) طريقة مثبتة للعثور على أخطاء البرامج مبكرًا. تؤدي كتابة الاختبارات قبل الكود إلى تحسين بنية تطبيقاتك وقابليتها للصيانة. بالاقتران مع بناء الجملة المحسّن لـ Swift 3 ، لا يوجد عذر أو كتابة تعليمات برمجية سيئة.

سيساعدك هذا الكتاب على فهم عملية TDD وكيف تؤثر على تطبيقاتك المكتوبة بلغة Swift. من خلال التطبيق العملي الواقعي ، ستبدأ في رؤية كيفية تنفيذ TDD في السياق. ستبدأ بنظرة عامة على سير عمل TDD ثم تعمق في مفاهيم اختبار الوحدة ودورات الكود. ستقوم أيضًا بتخطيط وهيكلة تطبيق iOS الذي تم اختباره ، وكتابة اختبارات لدفع تطوير وحدات التحكم في العرض والفئات المساعدة. بعد ذلك ، ستتعلم كيفية كتابة اختبارات لرمز الشبكة ، وما هو CI وكيفية إعداده باستخدام خادم Xcode.

أخيرًا ، سيرشدك الكتاب خلال الخطوات التالية لتصبح خبيرًا في الاختبار من خلال مناقشة اختبارات التكامل والتنمية المدفوعة بالسلوك (BDD) وأطر اختبار المصدر المفتوح واختبارات واجهة المستخدم المقدمة في Xcode 8.
لعزل المشكلات التي قد تنشأ ، يجب اختبار كل حالة اختبار بشكل مستقل. يمكن استخدام بدائل مثل بذرة الطريقة ، والأشياء الوهمية ، والمزيفة ، وأدوات الاختبار للمساعدة في اختبار وحدة في عزلة.

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

للكاتب/المؤلف : مارتن فاولر .
دار النشر : أديسون ويسلي بروفيشنال .
سنة النشر : 1999م / 1420هـ .
عدد مرات التحميل : 740 مرّة / مرات.
تم اضافته في : الأربعاء , 27 يوليو 2022م.

ولتسجيل ملاحظاتك ورأيك حول الكتاب يمكنك المشاركه في التعليقات من هنا:

وصف منسّق للكتاب :

 

في برمجة الكمبيوتر ، يعد اختبار الوحدة طريقة اختبار برمجية يتم من خلالها اختبار الوحدات الفردية من التعليمات البرمجية المصدر - مجموعات من وحدة أو أكثر من وحدات برامج الكمبيوتر جنبًا إلى جنب مع بيانات التحكم المرتبطة بها ، وإجراءات الاستخدام ، وإجراءات التشغيل - لتحديد ما إذا كانت مناسبة للاستخدام .
قبل اختبار الوحدة ، كانت أدوات اختبار الالتقاط وإعادة التشغيل هي القاعدة. في عام 1997 ، قام كينت بيك وإريك جاما بتطوير وإصدار JUnit ، وهو إطار اختبار وحدة أصبح شائعًا لدى مطوري Java. [2] تبنت Google الاختبار الآلي في الفترة من 2005 إلى 2006 تقريبًا.


عادةً ما تكون اختبارات الوحدة عبارة عن اختبارات آلية يكتبها ويديرها مطورو البرامج للتأكد من أن قسمًا من التطبيق (يُعرف باسم "الوحدة") يلبي تصميمه ويتصرف على النحو المنشود. [4] في البرمجة الإجرائية ، يمكن أن تكون الوحدة وحدة كاملة ، ولكنها أكثر شيوعًا هي وظيفة أو إجراء فردي. في البرمجة الموجهة للكائنات ، غالبًا ما تكون الوحدة واجهة كاملة ، مثل فئة أو طريقة فردية. [5] من خلال كتابة الاختبارات أولاً لأصغر الوحدات القابلة للاختبار ، ثم السلوكيات المركبة بينها ، يمكن للمرء أن يبني اختبارات شاملة للتطبيقات المعقدة.

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

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

يمكن تسريع كتابة اختبارات الوحدة وصيانتها باستخدام اختبارات ذات معلمات. يسمح ذلك بتنفيذ اختبار واحد عدة مرات بمجموعات إدخال مختلفة ، وبالتالي تقليل تكرار رمز الاختبار. على عكس اختبارات الوحدة التقليدية ، والتي عادةً ما تكون طرقًا مغلقة واختبار الظروف الثابتة ، تأخذ الاختبارات ذات المعلمات أي مجموعة من المعلمات. يتم دعم الاختبارات ذات المعلمات بواسطة TestNG و JUnit ونظيرتها .Net ، XUnit. يمكن توفير المعلمات المناسبة لاختبارات الوحدة يدويًا أو في بعض الحالات يتم إنشاؤها تلقائيًا بواسطة إطار عمل الاختبار. في السنوات الأخيرة ، تمت إضافة دعم لكتابة اختبارات (وحدة) أكثر قوة ، والاستفادة من مفهوم النظريات ، وحالات الاختبار التي تنفذ نفس الخطوات ، ولكن باستخدام بيانات الاختبار التي تم إنشاؤها في وقت التشغيل ، على عكس الاختبارات العادية ذات المعلمات التي تستخدم نفس خطوات التنفيذ مع مجموعات الإدخال المحددة مسبقًا. 

 

مزايا


الهدف من اختبار الوحدة هو عزل كل جزء من البرنامج وإظهار صحة الأجزاء الفردية. [1] يوفر اختبار الوحدة عقدًا صارمًا ومكتوبًا يجب أن تفي به قطعة الكود. نتيجة لذلك ، فإنه يوفر العديد من الفوائد.

يكشف اختبار الوحدة عن مشاكل في وقت مبكر من دورة التطوير. يتضمن ذلك كل من الأخطاء في تنفيذ المبرمج والعيوب أو الأجزاء المفقودة من مواصفات الوحدة. تجبر عملية كتابة مجموعة شاملة من الاختبارات المؤلف على التفكير في المدخلات والمخرجات وظروف الخطأ ، وبالتالي تحديد سلوك الوحدة المطلوب بشكل أكثر وضوحًا. تكلفة العثور على الخطأ قبل بدء الترميز أو عند كتابة الكود لأول مرة أقل بكثير من تكلفة اكتشاف الخطأ وتحديده وتصحيحه لاحقًا. قد تتسبب الأخطاء الموجودة في التعليمات البرمجية التي تم إصدارها أيضًا في حدوث مشكلات مكلفة للمستخدمين النهائيين للبرنامج. [10] [11] [12] قد يكون من المستحيل أو من الصعب اختبار الوحدة إذا تمت كتابتها بشكل سيئ ، وبالتالي يمكن أن يجبر اختبار الوحدة المطورين على هيكلة الوظائف والكائنات بطرق أفضل.

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

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

قد يقلل اختبار الوحدة من عدم اليقين في الوحدات نفسها ويمكن استخدامه في نهج أسلوب الاختبار التصاعدي. من خلال اختبار أجزاء البرنامج أولاً ثم اختبار مجموع أجزائه ، يصبح اختبار التكامل أسهل بكثير. [بحاجة لمصدر]

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

تجسد حالات اختبار الوحدة الخصائص التي تعتبر حاسمة لنجاح الوحدة.



نوع الكتاب : pdf.
اذا اعجبك الكتاب فضلاً اضغط على أعجبني
و يمكنك تحميله من هنا:

تحميل Refactoring: Improving the Design of Existing Code
مارتن فاولر
مارتن فاولر
Martin Fowler
نبذه قصيره عن المؤلف مارتن فاولر (بالإنجليزية: Martin Fowler)‏ من مواليد 1963، هو مطور برمجيات بريطاني، كاتب، ومتحدث عام عن تطوير البرمجيات، ومتخصص في التحليل والتصميم الكائني التوجه، لغة النمذجة الموحدة، ونماذج تصميم البرمجيات. مارتن فاولر هو كبير العلماء في شركة ThoughtWorks ، وهي شركة لتطوير تطبيقات المؤسسات وتسليمها. لقد كان يطبق تقنيات موجهة للكائنات لتطوير برامج المؤسسة لأكثر من عقد. يشتهر بعمله على الأنماط ، و UML ، وإعادة البناء ، والأساليب الرشيقة. يعيش مارتن في ميلروز بولاية ماساتشوستس مع زوجته سيندي وقطة غريبة جدًا. صفحته الرئيسية هي http://martinfowler.com. يتحدى كينت بيك باستمرار عقيدة هندسة البرمجيات ، ويعزز أفكارًا مثل الأنماط ، والتطوير القائم على الاختبار ، والبرمجة المتطرفة. ينتمي حاليًا إلى معهد Three Rivers Institute و Agitar Software ، وهو مؤلف العديد من عناوين Addison-Wesley. جون برانت ودون روبرتس هما مؤلفا متصفح Refactoring Browser for Smalltalk ، والذي يوجد على http://st-www.cs.uiuc.edu/~brant/RefactoringBrowser/. هم أيضًا مستشارون درسوا الجوانب العملية والنظرية لإعادة البناء لمدة ست سنوات. أدت أبحاث الدكتوراه التي أجراها William Opdyke حول إعادة هيكلة الأطر الموجهة للكائنات في جامعة إلينوي إلى أول منشور رئيسي حول هذا الموضوع. وهو حاليًا عضو متميز في الطاقم الفني في Lucent Technologies / Bell Laboratories. جون برانت ودون روبرتس هما مؤلفا متصفح Refactoring Browser for Smalltalk ، والذي يوجد على http://st-www.cs.uiuc.edu/~brant/RefactoringBrowser/. هم أيضًا مستشارون درسوا الجوانب العملية والنظرية لإعادة البناء لمدة ست سنوات. ❰ له مجموعة من الإنجازات والمؤلفات أبرزها ❞ Refactoring: Improving the Design of Existing Code ❝ الناشرين : ❞ أديسون ويسلي بروفيشنال ❝ ❱.



كتب اخرى في اختبار او فحص البرمجيات

Java Testing and Design PDF

قراءة و تحميل كتاب Java Testing and Design PDF مجانا

Top 50 JUnit Unit Testing Interview Questions & Answers PDF

قراءة و تحميل كتاب Top 50 JUnit Unit Testing Interview Questions & Answers PDF مجانا

Composing Software Components: A Software-testing PDF

قراءة و تحميل كتاب Composing Software Components: A Software-testing PDF مجانا

Testing for Continuous Delivery with Visual Studio 2012 PDF

قراءة و تحميل كتاب Testing for Continuous Delivery with Visual Studio 2012 PDF مجانا

Test Driven Development for Embedded C PDF

قراءة و تحميل كتاب Test Driven Development for Embedded C PDF مجانا

Pro iOS Testing PDF

قراءة و تحميل كتاب Pro iOS Testing PDF مجانا

Testing JavaScript Applications PDF

قراءة و تحميل كتاب Testing JavaScript Applications PDF مجانا

Hands-on Application Development using Spring Boot PDF

قراءة و تحميل كتاب Hands-on Application Development using Spring Boot PDF مجانا

المزيد من كتب لغات البرمجة في مكتبة كتب لغات البرمجة , المزيد من كتب الإلكترونيات والطاقة في مكتبة كتب الإلكترونيات والطاقة , المزيد من الكتب التقنية والحاسوبية العامة في مكتبة الكتب التقنية والحاسوبية العامة , المزيد من كتب الكمبيوتر والانترنت في مكتبة كتب الكمبيوتر والانترنت , المزيد من كتب بي اتش بي في مكتبة كتب بي اتش بي , المزيد من كتب شبكات الحاسوب في مكتبة كتب شبكات الحاسوب , المزيد من كتب فجوال بيسك دوت نت في مكتبة كتب فجوال بيسك دوت نت , المزيد من كتب فجوال بيسك 6 في مكتبة كتب فجوال بيسك 6 , المزيد من كتب سي بلس بلس في مكتبة كتب سي بلس بلس
عرض كل كتب تقنية المعلومات ..
اقرأ المزيد في مكتبة كتب إسلامية , اقرأ المزيد في مكتبة كتب تقنية المعلومات , اقرأ المزيد في مكتبة المناهج التعليمية والكتب الدراسية , اقرأ المزيد في مكتبة القصص والروايات والمجلّات , اقرأ المزيد في مكتبة كتب الهندسة والتكنولوجيا , اقرأ المزيد في مكتبة الكتب والموسوعات العامة , اقرأ المزيد في مكتبة كتب تعلم اللغات , اقرأ المزيد في مكتبة كتب التنمية البشرية , اقرأ المزيد في مكتبة الكتب التعليمية , اقرأ المزيد في مكتبة كتب التاريخ , اقرأ المزيد في مكتبة كتب الأطفال قصص ومجلات , اقرأ المزيد في مكتبة كتب الطب , اقرأ المزيد في مكتبة الكتب العلمية , اقرأ المزيد في مكتبة كتب علوم سياسية وقانونية , اقرأ المزيد في مكتبة كتب الأدب , اقرأ المزيد في مكتبة كتب الروايات الأجنبية والعالمية , اقرأ المزيد في مكتبة كتب اللياقة البدنية والصحة العامة , اقرأ المزيد في مكتبة كتب الأسرة والتربية الطبخ والديكور , اقرأ المزيد في مكتبة الكتب الغير مصنّفة , اقرأ المزيد في مكتبة كتب المعاجم واللغات , اقرأ المزيد في مكتبة كتب علوم عسكرية و قانون دولي
جميع مكتبات الكتب ..