как становятся хорошими программистами?
А по существу, мне кажется, чем больше опыта будет — тем лучше. Опиши в виде (работающего, хотя бы) кода хотя бы те мысли, что уже есть.
all code sucks
Крутую — чтобы она была нужна и с её говнокодистой реализацией не послали бы сразу, а рассказали бы, что ты делаешь не так.
Ну или сходи интерном в Google, если есть время.
Ну я как бы не ставлю себе целью стать программером-профессионалом. Просто иногда что-нибудь хочется сделать, а хорошо не получается.
больше думать и никуда не спешить, постепенно число итераций переписывания будет уменьшаться
Ну вот откуда я узнаю, что стоит переписать?Вроде работает, ну и что что гвоздем прибито к стенке.
Почитай книжки по проектированию, попытайся начать проект для себя, но чтобы он работал в "продакшене" - можно хоть у тебя на домашнем сервере, но чтобы он использовался, нужно для обратной связи.
И да, мелкие проги и скрипты плохи тем, что они - write only. То есть написал, и забыл, поддерживать не нужно.
Книжки по проектированию читал. Как строить крупные блоки проекта я понимаю, я понимаю где писать классы, а где класть шаблоны. Меня конкретный код в конкретной функции не удовлетворяет.
это с возрастом пройдет
Т.е. чувство прекрасного стоит в себе убить? Хотя я смотрю некоторые весьма популярные проекты, там такой капец в коде, что мне даже за свой стыдно не становится.
Погугли code kata
тоже подобная хрень в себе вымораживает, думаю это из-за того, что не знаю всех фишек языка, в итоге код работает, но можно сделать короче, красивее, без заведения доп переменных и тп и тд.
2) Прочитай овер 9000 других книжек.
3) Прогай много в разных областях.
Ах да, выбрось питон и юзай интеллиж идею или решарпер.
Некоторые вещи мне кажутся черезчур хитровыебнутыми (ну т.е. я бы проще написал, но не факт, что правильнее).Как приходят к просветлению в данном случае?Через многократное переписывание собственного кода и написание более-менее объёмных проектов.
После этого содержание умных книжек уже не кажется таким хитрым и советы изложенные в них начинают применяться на автомате (или не применяться в зависимости от) без лишних умственных усилий.
Нет конешно, чувство прекрасного это прекрасно Просто оно должно подняться на другой уровень, архитектурный. Хорошая программа это когда, чтобы сделать в ней небольшое улучшение, нужно поразбираться полчасика и поправить/дописать 20 строк в нужном месте. А плохая, это когда по каждой мелочи приходится все переписывать, перекраивать интерфейсы и прочее. Чувство прекрасного должно быть направлено именно вот на эту разницу. А конкретный код конкретной функции, ну какая ей богу разница.
А хороший программист — это, наверное, тот, который может из плохого кода сделать хороший.
First you have to garden, then join the community of gardeners, then teach others to garden. Then you are a gardener.
Оставить комментарий
chriselwart
Привет. В общем я для себя периодически пишу всякие мелкие проги/скрипты. Хочется в некотором смысле повысить квалификацию и сделать так, чтобы на мой код было приятно смотреть (прежде всего мне). Я вот листаю код всяких крутых чуваков и он мне нравится, но я не всегда понимаю почему они написали так, а не иначе. Некоторые вещи мне кажутся черезчур хитровыебнутыми (ну т.е. я бы проще написал, но не факт, что правильнее).Как приходят к просветлению в данном случае? Книжки типа Совершенного кода несколько раз пытался читать, там этого нет, к тому же по мне это унылое чтиво.Прогаю на питоне/джанге. Хочу вот красивый проект сделать, а мысли в голове (в общем то здравые) не хотят превращаться в красивый код.