metaclass: (Default)
[personal profile] metaclass
http://nekhill.livejournal.com/162101.html
Непонятно, что делать в случае, когда готовый код или софт вызывает приступы ненависти к его авторам, а пользователи платят за то, что софт работает, а не за то, чтобы вы копались в дебрях чужого бреда.

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

Кстати, еще один вариант, где велосипеды нужны без вариантов - это когда в языке физически нет нормальных способов реализовать функциональность, не сойдя с ума. Например, вкрутить еDSL в дельфи или C#. Или вариантные типы с паттерн-матчингом туда же.
На данный момент, единственно читабельные варианты делать такое мне попадались только на clojure и ruby. В F# метапрограмминга толком нет вообще, на скале - уже начинается жесть с имплиситами и вычислениями на типах, в хаскеле SYB, Template Haskell и аппликативные функторы в качестве замены функциями с переменным числом аргументов.

Date: 2013-08-18 06:24 pm (UTC)
From: [identity profile] anton-arhipov.livejournal.com
"мы посчитали это глупым, имплементировали форт на паскале"

классическое инженерное решение :) лолчто

Date: 2013-08-18 06:25 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Кстати, нормальное решение. Если заказчик сумасшедший и не хочет использовать нормальные языки - то на его любимом косоязычном языке делается DSL и дальше все делается на нем :)

Date: 2013-08-18 06:37 pm (UTC)
From: [identity profile] anton-arhipov.livejournal.com
Впринципе, заказщику должно быть параллельно до технологий, если ему нужен проект на раз.

А с DSLями обычно есть такой "косяк", что ими пользоваться умеют только авторы, поэтому поддерживаемость таких систем весьма сомнительна. Но впринципе это может относиться и к обычному коду на плюсах.

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

Date: 2013-08-18 07:21 pm (UTC)
From: [identity profile] anton-arhipov.livejournal.com
я конечно переборщил с категоричностью в плане "наплевать". Таки не наплевать если на его платформе запускаться не будет, или для этого придётся железо закупать, или некому поддерживать будет.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 26th, 2025 03:47 am
Powered by Dreamwidth Studios