LINUX.ORG.RU

История изменений

Исправление AndreyKl, (текущая версия) :

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

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

Но как то так получается, что типы рулят в моём случае. Вот изменилась у меня страница (либо я понял что делал не так, либо заказчик прислал правки). Изменилось представление модели. Штука в том что эта (изменённая) модель используется не только на данной странице, но и ещё в двух-трёх местах.

Ну на php ясно что происходит (если нет тестов): f5 -> error-> fix -> f5 -> error -> fix -> f5 -> ура -> submit -> error -> fix -> submit -> ура -> (если вспомнил без сабмита про третье место) fix -> fix -> submit 2 -> (всё равно) error -> fix -> fix -> ура

через неделю: submit3 -> error -> чёрт, когда же я это сломал то? ах неделю назад, так что тут было...

ну да, тесты бы выручили. подсказки IDE тоже, но она что то структуру php массива не очень считает руководством к действию. Хотя кажется могла бы. А на начальном этапе написания веб прилжения, когда ни заказчик ни ты сам до конца не осознаёте что это и изменения просто часть ежедневной рутины - бог его знает какие преимущества даёт написание тестов. Ваш легендарный Умный лиспер по-моему был прав лишь отчасти: кодовая база действительно растёт как дерево, но только не на лиспе - она всегда растёт как дерево. И никто и никогда (кроме разве что случая когда заранее известна спецификация, да и то вряд ли) не пишет программы так как строит дом. А изменения в кодовой базе , по моему (скромному) опыту, значительно проще проводить, когда есть типы. Тем более такие типы как в хаскеле. Но мой опыт на хаскеле пока недостаточен, чтобы вот прям положить тебя на лопатки. Возможно я ошибаюсь и не вижу подводных камней длительной разработки на хаскеле.

По поводу «я всегда знаю что где лежит» - думаю , ты выдающийся знаток того что где лежит. По другому объяснить не могу.

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

Исправление AndreyKl, :

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

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

Но как то так получается, что типы рулят в моём случае. Вот изменилась у меня страница (либо я понял что делал не так, либо заказчик прислал правки). Изменилось представление модели. Штука в том что эта (изменённая) модель используется не только на данной странице, но и ещё в двух-трёх местах.

Ну на php ясно что происходит (если нет тестов): f5 -> error-> fix -> f5 -> error -> fix -> f5 -> ура -> submit -> error -> fix -> submit -> ура -> (если вспомнил без сабмита про третье место) fix -> fix -> submit 2 -> (всё равно) error -> ура

через неделю: submit3 -> error -> чёрт, когда же я это сломал то? ах неделю назад, так что тут было...

ну да, тесты бы выручили. подсказки IDE тоже, но она что то структуру php массива не очень считает руководством к действию. Хотя кажется могла бы. А на начальном этапе написания веб прилжения, когда ни заказчик ни ты сам до конца не осознаёте что это и изменения просто часть ежедневной рутины - бог его знает какие преимущества даёт написание тестов. Ваш легендарный Умный лиспер по-моему был прав лишь отчасти: кодовая база действительно растёт как дерево, но только не на лиспе - она всегда растёт как дерево. И никто и никогда (кроме разве что случая когда заранее известна спецификация, да и то вряд ли) не пишет программы так как строит дом. А изменения в кодовой базе , по моему (скромному) опыту, значительно проще проводить, когда есть типы. Тем более такие типы как в хаскеле. Но мой опыт на хаскеле пока недостаточен, чтобы вот прям положить тебя на лопатки. Возможно я ошибаюсь и не вижу подводных камней длительной разработки на хаскеле.

По поводу «я всегда знаю что где лежит» - думаю , ты выдающийся знаток того что где лежит. По другому объяснить не могу.

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

Исходная версия AndreyKl, :

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

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

Но как то так получается, что типы рулят в моём случае. Вот изменилась у меня страница (либо я понял что делал не так, либо заказчик прислал правки). Изменилось представление модели. Штука в том что эта (изменённая) модель используется не только на данной странице, но и ещё в двух-трёх местах.

Ну на php ясно что происходит (если нет тестов): f5 -> error-> fix -> f5 -> error -> fix -> f5 -> ура -> submit -> error -> fix -> submit -> ура -> (если вспомнил без сабмита про третье место) fix -> fix -> submit 2 -> (всё равно) error -> ура

через неделю: submit3 -> error -> чёрт, когда же я это сломал то? ах неделю назад, так что тут было...

ну да, тесты бы выручили. подсказки IDE тоже, но она что то структуру php массива не очень считает руководством к действию. Хотя кажется могла бы. А на начальном этапе написания веб прилжения, когда ни заказчик ни ты сам до конца не осознаёте что это и изменения просто часть ежедневной рутины - бог его знает какие преимущества даёт написание тестов. Ваш легендарный Умный лиспер по-моему был прав лишь отчасти: кодовая база действительно растёт как дерево, но только не на лиспе - она всегда растёт как дерево. И никто и никогда (кроме разве что случая когда заранее известна спецификация, да и то вряд ли) не пишет программы так как строит дом. А изменения в кодовой базе , по моему (скромному) опыту, значительно проще проводить, когда есть типы. Тем более такие типы как в хаскеле. Но мой опыт на хаскеле пока недостаточен, чтобы вот прям положить тебя на лопатки. Возможно я ошибаюсь и не вижу подводных камней длительной разработки на хаскеле.

По поводу «я всегда знаю что где лежит» - думаю , ты лукавишь. Уж прости. Ну или ты выдающийся знаток того что где лежит.

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