Опис ADT (етап 3 пункт 3) - normangalt/Cosmetics-Check GitHub Wiki
Cream
Клас Cream має чотири методи. Він призначений для того, щоб описати косметичний засіб, фото якого надає користувач.
Методи:
find_ingredients: Це функція, що отримує шлях до фотографії, та аналізує текст на ній за допомогою Cloud Vision API. Шукає серед цього тексту інгредієнти, та вертає список із стрічок, з назвами складників.
check_ingredients: Це функція, що приймає базу даних інгредієнтів косметичних засобів та отримує список з функції Find_ingredients, проходиться по цьому списку, перевіряючи чи наявний інгредієнт у базі даних, якщо так, то створює клас Ingredient і додає його до списку інгредієнтів, якщо ні, то створює такий же ж клас, але з невизначеними атрибутами і додає до Ingredients.
detect_text: Це функція, що приймає фото, за допомогою Cloud Vision API визначає й повертає текст, який зображений на цьому ж фото.
process_text: Це функція, що отримує знайдений текст з фото, з функції Detect_text, обробляє його й повертає список слів з цього тексту знайденого на фото
Knot
Клас Knot має два атрибути та 4 функції. Призначений для зберігання зв'язної структури.
Атрибути:
element: дані які зберігаються в класі
next: об'єкт, який зв'язаний з попереднім
Методи:
element: елемент який зберігається в _element property
element: встановлює обє'кт як значення _element property
next: елемент який зберігається в _next property
next: встановлює об'єкт як значення _next property
Діаграма до класів Cream та Knot
DataframeDataset
Клас DataframeDataset має атрибут та три функції. Він призначений для того, щоб аналізувати окремий заданий файлом датасет.
Атрибути:
Name: це повна назва датасету.
dataframe: отриманий з .xlsx файлу datafame про інгридієнти.
Функції:
read_data: Це функція, що отримує шлях до датасету, та зчитує його, записуючи dataframe.
clear_data: Це функція, що отримує dataframe, та фільтрує його, залишаючи лише важливу для роботи програми інформацію.
retrieve: Ця функція, що приймає назву інгридієнту та повертає dataframe з інформацією про нього.
is_in: Ця функція, що приймає назву інгридієнту та повертає None якщо не знаходить у даному датасеті цей інгрідієнт та dataframe Series якщо знаходить.