TDD
مقدمه
در این فاز با مفاهیم Test-driven development آشنا میشوید و پروژه جستجو را با این الگو بازنویسی میکنید.
آشنایی با مبانی TDD
برای درک مفهوم TDD و مراحل آن لینکهای زیر را مطالعه کنید:
- Testing Software: What is TDD?
- Test Driven Development (TDD): The Advantages and Disadvantages
- Introduction to Test Driven Development (TDD)
این دو ویدویو مربوط به TDD را نیز ببنید.
آشنایی بیشتر با اصول SOLID و تاثیر آن بر TDD
در این مرحله، فکر کنید که هر یک از اصول SOLID، چگونه میتواند بر سادهتر شدن روند TDD تاثیر بگذارد. با همتیمی خود در این مورد بحث کنید.
در ادامه برای درک این موضوع لینکهای زیر را مطالعه کنید:
- SOLID design principles make test-driven development (TDD) faster and easier
- Does test-driven development force me to follow SOLID?
گسترش پروژه Full Text Search با رویکرد TDD
در این مرحله به پروژه Full Text Search خود قابلیتی اضافه کنید که امکان جستجوی عبارت نیز فراهم شود. این ورودی به صورت زیر به برنامه در کنار ورودی های دیگر داده میشود :
get +disease -cough "star academy"
get +illness +disease -cough -"star academy"
تحلیل ورودی
get : حتما وجود داشته باشد
+illness +disease : حداقل یکی از این دو وجود داشته باشد
-cough : نباید وجود داشته باشد
"star academy" : این عبارت حتما وجود داشته باشد
-"star academy" : این عبارت وجود نداشته باشد
این مرحله را سعی کنید کاملا با رویکرد TDD انجام دهید.