Найти тему
Дневник Джуна

Изучаем программирование. День 34. Зачем мы изучаем основы языка?

Здравствуйте!

Вчера у нас была рубрика "Полезная ссылка", уже целый 5-й выпуск =), в ней я давал ссылку на ресурс с крутыми учебниками по программированию, а сегодня мы поговорим с вами об основах языка Python, об их необходимости.

-2

Зачем основы языка, когда есть фреймворки?

Во время моей работы в одной школе по программированию(никаких названий, за рекламу мне никто не платил), люди, которые мне звонили часто спрашивали: "А зачем мне вообще тратить деньги на курсы по изучению языка N, если есть фреймворк и с ним можно всё делать и без знания языка, за тебя уже всё написано?"

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

Что я имею в виду? Приведу пример, который случился со мной совсем недавно, при выполнении тестового задания. Я допустил большую ошибку — и слишком доверился возможностям фреймворка. Я два дня потратил на решение проблемы, которая заняла у меня в итоге 3 минуты. Потому что я, во-первых, хотел сделать всё ресурсами фреймворка, а, во-вторых, забыл об одном из главных принципов Python — Simple is better than complex(Просто лучше, чем сложно). Когда кому-то объясняешь этот принцип, всё очень легко и просто, но сам им пользоваться просто забываешь.

Сидел я сидел, думал-думал, а потом в голове "зажглась лампочка" и я подумал: да не буду я использовать в этом случае инструмент фреймворка, воспользуюсь обычным списком и вуаля, всё решилось за 2-3 минуты.

Это было хорошим уроком для меня и в следующий раз я не буду полностью полагаться на возможности фреймворка. Не знай я основ языка, я бы так и не выполнил тестовое задание, и, возможно, был бы плохого мнения об этом фреймворке. Но всё обошлось.

Когда я читал Лутца(а это была, к сожалению, моя первая книга по программированию), я всё время думал: "да как мне всё это может понадобиться в реальной разработке, все эти ужасные множества, словари(ух, как я их не любил), никчемные списки", я по незнанию не мог прикрутить все эти теоретические рассуждения Лутца к реальной жизни. Однако же, когда я начал делать свой первый проект на Flask, как же мне всё это пригодилось, правда Лутца в итоге пришлось читать второй раз, и на второй раз он был намного увлекательней.

Отсюда мораль — если вам скучно в данный момент изучать основы языка, знайте, что в будущем их знание сохранит вам десятки и даже сотни часов времени. Это касается не только основ Python, также не стоит пренебрегать и основами HTML&CSS, положившись полностью на Bootstrap, и основами JS, положившись на jQuery.

Представьте, что у вас есть калькулятор, но вы не знаете математику, сильно он вам поможет?

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

Я прощаюсь с вами до завтра, если статья была полезной, поставьте, пожалуйста, лайк и не забудьте подписаться на канал, чтобы не пропустить завтрашнюю и последующие статьи.

Приятного вам обучения!

Предыдущая статья. ................................................................... Следующая статья.

-3