Что важнее для программиста


3 0

Еще один интересный вопрос, который упал в мой почтовый ящик:

Изучаю программирование недавно, но возник такой вот вопрос. Обычно, что-либо куда гораздо легче изучать, если из этого чего-то можешь выделить главное, так сказать основное. Есть известный холивар на тему что важнее в программе : язык и всё ему сопутствующее или алгоритм; умение грамотно спроектировать или грамотно закодировать. Подскажите пожалуйста, как человек с большим опытом - а что-же всё-таки важнее для программиста - алгоритм/проектировка или остальное?

Я конечно же считаю, что оба навыка очень даже важны, особенно, если придется работать в небольшой компании. В России, кажется, вообще всегда программистам приходится делать все сразу. Правда я в крупных компаниях не работал и не работал в софтверных компаниях. Хотя нет, в одной софтверной я был, но там я банально подстраивался под происходящее и работал только из принципа «тише воды, ниже травы». А в остальных компаниях приходилось самому решать какой алгоритм использовать и как все реализовывать.

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

Из личного опыта скажу, что лучше все же знать алгоритмы. Если стоит выбор, то лучше начать именно с них. Но это не значит, что на проектирование можно забить и вообще ничего не делать в этом направлении.

Ну а если нет особой необходимости выбирать только одно, то изучай и то и другое и можно даже сразу. Эти две науки прекрасно дополняют друг-друга и можно читать книги одновременно по обеим темам. Устал от алгоритмов, почитай проектирование, оптимизацию, рефакторинг, и наоборот.


Понравилось? Кликни Лайк, чтобы я знал, какой контент более интересен читателям. Заметку пока еще никто не лайкал и ты можешь быть первым


Комментарии

AndRoot

26 Aпреля 2011

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


Павел

27 Aпреля 2011

Я работаю в крупной компании в России (более 10к сотрудников). У нас в ИТ-отделе есть архитекторы, которые получают большие деньги. Но - их только пара-тройка человек. Остальные программисты получают намного меньше ЗП. Поэтому, если по деньгам смотреть - то желательно изучать алгоритмы и проектирование, а уж знание языков - приложится.


AndRoot

27 Aпреля 2011

Ну если по деньгам, то да. Но мало в какой компании тебя пустят за алгоритмы и проектирование без опыта работы у них программистом или без опыта работы проектировщиком в другой компании.


Добавить Комментарий

Еще что-нибудь

Хотите найти еще что-то интересное почитать? Можно попробовать отфильтровать заметки на блоге по категориям.

О блоге

Программист, автор нескольких книг серии глазами хакера и просто блогер. Интересуюсь безопасностью, хотя хакером себя не считаю

Обратная связь

Без проблем вступаю в неразборчивые разговоры по e-mail. Стараюсь отвечать на письма всех читателей вне зависимости от страны проживания, вероисповедания, на русском или английском языке.

Пишите мне