Простой пример одного и того же кода в ООП, функциональном и процедурном стиле? Здравствуйте, приведите пожалуйста какой нибудь простой пример сравнения одного и того же кода в ООП, ФП и процедурном стиле. В интернете не нашел чтобы сравнивали именно 3 этих подхода. Хотелось бы понять разницу между 3мя этими стилями конкретном примере
Конечно, давайте рассмотрим простой пример сравнения кода на трех разных стилях программирования: ООП, функциональном (ФП) и процедурном.
Пример: Реализация простого калькулятора, который может выполнять операции сложения, вычитания, умножения и деления. Давайте представим, что у нас есть два числа, которые мы хотим сложить.
Таким образом, в ООП используется класс с методами для выполнения операций над числами, в ФП - функции, а в процедурном стиле просто вызываются функции с передачей аргументов. Каждый из стилей имеет свои преимущества и недостатки, и выбор зависит от конкретной задачи и предпочтений программиста.
Конечно, давайте рассмотрим простой пример сравнения кода на трех разных стилях программирования: ООП, функциональном (ФП) и процедурном.
Пример: Реализация простого калькулятора, который может выполнять операции сложения, вычитания, умножения и деления. Давайте представим, что у нас есть два числа, которые мы хотим сложить.
ООП:
class Calculator:def __init__(self, num1, num2):
self.num1 = num1
self.num2 = num2
def add(self):
return self.num1 + self.num2
def subtract(self):
return self.num1 - self.num2
def multiply(self):
return self.num1 * self.num2
def divide(self):
if self.num2 != 0:
return self.num1 / self.num2
else:
return "Error: division by zero"
calc = Calculator(5, 3)
print(calc.add()) # Output: 8
ФП:
def add(num1, num2):return num1 + num2
def subtract(num1, num2):
return num1 - num2
def multiply(num1, num2):
return num1 * num2
def divide(num1, num2):
if num2 != 0:
return num1 / num2
else:
return "Error: division by zero"
result = add(5, 3)
print(result) # Output: 8
Процедурный стиль:
num1 = 5num2 = 3
def add(num1, num2):
return num1 + num2
result = add(num1, num2)
print(result) # Output: 8
Таким образом, в ООП используется класс с методами для выполнения операций над числами, в ФП - функции, а в процедурном стиле просто вызываются функции с передачей аргументов. Каждый из стилей имеет свои преимущества и недостатки, и выбор зависит от конкретной задачи и предпочтений программиста.