Как стать автором
Обновить

Как совместить парадигму Объектно-ориентированного программирования и Python в голове новичка?

Время на прочтение 2 мин
Количество просмотров 9.5K

Я всегда с благодарностью относился к учебным текстам по программированию наподобие ЭТОГО:

На мой взгляд, хороший учебный материал и там всё прекрасно объяснено про Объектно-орииентированное программирование. Даны все понятия, определения, в общем - бери и используй!

Но как часто бывает у новичков, на самом деле у меня была только иллюзия ясности. Когда же сталкиваешься с изучением Python на практике, понимаешь, насколько всё сложно. И сперва такого типа код может внушать даже ужас, ну или там, чувство бессилия, мысли "Я непроходимо тупой", и т.д. - у каждого по-своему:

def createSetsMultiClasses(wordIndexes,xLen, step):
  nClasses = len(wordIndexes)
  xTest10Classes01 = []
  xTest10Classes = []
  for wI in wordIndexes:
    sample = (getSetFromIndexes(wI, xLen, step))
    xTest10Classes.append(np.array(sample))
    xTest10Classes01.append(tokenizer.sequences_to_matrix(sample))
  xTest10Classes01 = np.array(xTest10Classes01)

  return xTest10Classes01, xTest10Classes

И хорошо, если у тебя есть годы на обучение, и ты студент первого курса.

А если нет? И когда тебе нужно изучать сразу нейронные сети на Питон без глубокого опыта Питон? То есть фактически, когда нет базы программирования и времени на раскачку нет тоже, а хороших учителей много, но все они говорят разное.

Хуже того, учителя не всегда понимают, как объяснить базовые вещи. Для них это просто и естесственно. А ученик не всегда может сформулировать, чего он не понимает и как именно он не понимает.

Вот тут-то и требуется напрячь все силы и создать какой-то рабочий образ для осмысления пройденного.

Выставляю на суд сообщества 2 диаграммы, родившиеся в результате такого понимания. Не претендую на уникальность, истину и полноту охвата. Надеюсь, что данная работа пригодится новичкам для осмысления Python и парадигмы объектно-ориентированного программирования, что называется в бою.

Данная диаграмма иллюстрирует понятия ОБЪЕКТ, КЛАСС, МЕТОД, ФУНКЦИЯ в их взаимосвязи. Я так же попытался осмыслить понятие ПЕРЕМЕННАЯ и то, как она используется в разных парадигмах программирования - Объектно-ориентированной и Функциональной (Процедурной).

Здесь изображена "мозгодробительная", на мой взгляд, вещь: как объектно-ориентированная модель работает совместно с функциональным программированием. И как объекты в Питоне могут использоваться как элементы функций.

Всем удачи в учёбе и осмыслении действительности!

Теги:
Хабы:
-15
Комментарии 16
Комментарии Комментарии 16

Публикации

Истории

Работа

Data Scientist
66 вакансий
Python разработчик
136 вакансий

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн