Эта неделя включала в себя много обучения. Это включало в себя чтение комментариев к коду, просмотр документации и просто много времени в роли человека-компьютера. Две (немного похожие) методики помогли мне успешно завершить эту неделю.

  1. На COP3014 бывшего Советского Союза (Программирование 1) я научился быть человеком-компьютером. Это примерно то, на что это похоже. Например:
x = "Hello "
y = "world!"
z = x + y
print z

отпечатки

Hello world!

Но откуда вы это знаете?

Давайте посмотрим на код построчно:

x = "Hello "

Это устанавливает значение x в «Hello». Используя метод «человек-компьютер», мы достаем лист бумаги и пишем на нем «x = «Привет»». Затем в строке 2

y = "world!"

мы бы поставили «y = «мир!»». Строка 3:

z = x + y

мы бы «сложили» x и y вместе и написали бы «z = «Hello world!»». Наконец, оператор печати означает вывод на экран, но нам не нужно беспокоиться об этой строке (если код не включает форматирование вывода, и в этом случае это, вероятно, было бы хорошей идеей). В случаях, когда переменные изменяются, например:

x = "Hello "
y = "world!"
y = "Alan!"
z = x + y
print z

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

2. Метод резиновой утки. Да, это так называется. По сути, вы идете в Target или куда-то еще, берете резиновую утку или другую маленькую игрушку, кладете ее на стол рядом с собой и разговариваете с ней. Вы говорите: «Я устанавливаю x = «Привет»» и т. д., и если вы застряли, иногда произнесение слов вслух помогает вам понять, где вы ошиблись. Звучит глупо, но это действительно работает.

Теперь давайте поговорим о том, что я узнал на этой неделе. После телефонной конференции на прошлой неделе мне было поручено разобраться в метаклассах и декораторах. Это два продвинутых навыка Python.

Во-первых, метаклассы — это способы создания пользовательских классов на основе различных ситуаций. Затем эти классы могут содержать функции или переменные, помогающие программе работать.

Во-вторых, декораторы помогают придать функциям Python определенные свойства. В случае с SegAnnDB один из этих декораторов помогает определить, какие функции соответствуют тем или иным страницам веб-сайта. Например, функция домашней страницы имеет собственный декоратор, который определяет ее как метод для страницы «дом».

Это все, что у меня есть на этой неделе

До скорого,

Алан