LINUX.ORG.RU
ФорумTalks

Чему вы уделяете больше внимания в программировании?


0

1

Последнее время вижу разделение знакомых мне программистов на 2 вида

люди, великолепно владеющие общими алгоритмами, решающие задачи каких-то реальных предметных областей и мало интересующиеся, к примеру, что будет при переполнении int при разных ключах компиляции. знатоки технических вопросов, как правило, платформы. Знают что во что компилируется, какие оптимизации производит компилятор, досконально как работают все фазы компилятора... Так вот интересен вопрос стал в первую очередь потому, что, по-моему, чаще всего вторые слабы в задачах первых, они плохо строят абстракции предм. области и вообще слабо абстрагируются от деталей платформы(типов данных, понятий процедур/ф-ций/выражений и т.д. конкретного ЯП). Во всяком случае на моём личном опыте в конкретной конторе.

Т.к. с голосованием на ЛОРе сложно, прошу поставить циферку в комментарии-

Чему вы уделяете больше внимания?

  • 1/ Техническим тонкостям определённой реализации/платформы ЯП
  • 2/ Реальным прикладным задачам
  • 3/ Одинаково важно и первое и второе
  • 4/ Постигаю с опытом тонкости платформы, решая реальные задачи
Ответ на: комментарий от segfault

вы с какими компиляторами работаете? Просто с теми, с которыми я, флаги ставить просто не нужно.

pseudo-cat ★★★
() автор топика

Думаю, как бы не наговнокодить.

netcat ★★
()
Ответ на: комментарий от segfault

я так понимаю для С++/C? Ну так чего удивляться, если в ваших ЯП уровень абстракции не далеко ушёл, особенно в Си, от платформы...

в основном sbcl, fse. Парамеры оптимизации и дебага не считаем ессно, этим необходимо уметь пользоваться.

pseudo-cat ★★★
() автор топика
Ответ на: комментарий от pseudo-cat

Ну так чего удивляться, если в ваших ЯП уровень абстракции не далеко ушёл

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

segfault ★★★★★
()
Ответ на: комментарий от Nagwal

Сударь, вы передергиваете. Умничать != думать. Те товарищи у которых код хороший как раз думают. А те другие умничают.

dizza ★★★★★
()
Ответ на: комментарий от segfault

что не надо? какая разница сколько высокоуровневых ЯП, ситуацию это не меняет. А что за проекты такие, инересно? Уж явно или не сложные проекты или эмбедед?

pseudo-cat ★★★
() автор топика
Ответ на: комментарий от segfault

я надеюсь что не такое - http://www.linux.org.ru/forum/development/7428038?lastmod=1329505199108 а то на лицо знание ключей компилятора, даже код не пришлось писать, ну и подключаем нужные, видимо в рантайме, библиотеки...

*юмор*

pseudo-cat ★★★
() автор топика

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

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

deb
()
Ответ на: комментарий от pseudo-cat

Да, разговор о программировании ради программирования. Спор между «фейри» и «кометом». Забывая о том, что главное - это чтобы было чисто.

Иначе бы понятие «программист» было бы точно определено. Не бывает «программистов», бывают программисты чего-либо. Бывают даже программисты автоексес.бата.

deb
()
Ответ на: комментарий от deb

программирование ради программирования может быть на разных уровнях абстракции и не относится к тому, чем интересуется прораммер. Ещё раз повторяю тему топика - низкоуровневое/высокоуровневое копание доставляет больше удовольствия? Это статистика просто

pseudo-cat ★★★
() автор топика
Ответ на: комментарий от pseudo-cat

А что за проекты такие, инересно? Уж явно или не сложные проекты или эмбедед?

Проекты сложные. Но сложность не в бизнес-логике, а в матане и алгоритмах. 99% процессорного времени, потребляемого конечным приложением, приходится на именно на данный код. А поскольку предметная область - видеообработка, убавка производительности хотя бы в 1,2 раза - уже непозволимая роскошь.

Эмбедед - ну как сказать... под андроид собираем, на мобилках бегает...

я надеюсь что не такое - Компиляция программ использующие LLVM на Windows а то на лицо знание ключей компилятора...

...и умение писать скрипты =)

segfault ★★★★★
()
Ответ на: комментарий от segfault

ок, я примерно так и думал) помню в описании гсс, на разделе типа «Important phases of gcc» были такие вещи как, парсер в AST, потом Gimplifier, CFG -> RTL, local/global reg allocator, что-там ещё... и Pattern Matcher. Так вот если по топику - тебе интересней это всё изучать(именно как устроено, зачем нужно...) или всё таки писать ПО твоей предметной области? А если овертопик - ты это реально знаешь?

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

pseudo-cat ★★★
() автор топика
Ответ на: комментарий от pseudo-cat

Мне действительно без разницы, _как_ gcc делает свою работу. Важно то, что на выходе. Тем более, на gcc свет клином не сошелся. Когда надо - найду в мануале, как та или иная опция задается в том или ином компиляторе. Компилятор - это инструмент, а не объект изучения. Объект изучения - платформа, на которой предстоит работать приложению. А то я насмотрелся на горе-кодеров, не понимающих, к примеру, почему их побайтное чтение из файла медленнее моего покилобайтного, или почему мьютекс во время коллизии срабатывает несоизмеримо дольше чем без нее.

segfault ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.