наблюдение
Многие инструменты (например, языки программирования) постепенно обрастают сборниками рецептов. Эти шпаргалки слишком обширны для запоминания, а логика рецептов трудна для понимания, но незнание их обходится дорого. Ими вынуждены пользоваться не новички, но профессионалы.
гипотеза 1Инструмент недостаточно мощен в предметной области, где
(
Read more... )
Comments 28
Reply
Однако КПД работы на html+css ужасно низок, как раз по причинам, изложенным по ссылке.
Reply
Reply
Это не говоря о тыще мелких различий реализации, предательски путающихся под ногами.
Reply
Reply
2. увы, с C++ примерно так себя и вели -- только не столько силами производителей компиляторов, сколько комитетом.
Reply
Нет, он есть и там есть набор частовстречающихся решений.
Но можно обходиться и без него. Просто зайти на CPAN, пошукать там нужный модуль, почитать к нему немножечко документации (обычно она уже и с примерами), и всё.
Reply
Хотя перл к интуитивно понятным языкам отнести трудно, несмотря на противоположное стремление Ларри В.
Reply
Reply
Reply
Теперь конечно надо делать новые языки в которых можно обходиться без рецептов.
Если на фирму большое количество негативных отзывов это еще не значит что она плохая, у неё может быть очень большой оборот.
Reply
Большой оборот при плохих отзывах, если считать отзывы искренними -- это либо идейный кризис (никому не приходит в голову, как сделать лучше), либо искусственно поддерживаемая монополия. Imho, второй фактор в области инструментов разработки относительно слаб.
Кроме того, есть аспект совместимости: вещь, один раз ставшую популярной, трудно вытеснить, потому что все на неё заложились. Трудно выкинуть (или радикально переделать) HTML -- нельзя же сломать этим миллионы сайтов. Можно только по чайной ложке вводить, как это было с CSS, который очень улучшил дело. Но посмотрите на ajax: это ж не от хорошей жизни.
Reply
---
Хм. Или наоборот слишком мощен? Я полагаю, рецепты рецептам рознь. Одно дело, когда в инструменте присутствует некий дефект, который, однако, можно хитроумно обойти. Другое -- когда одну и ту же вещь можно сделать миллионом способов, но среди них есть несколько наиболее клёвых, причём клёвость зачастую становится понятна только постфактум, в процессе поддержки и использования.
Тогда design patterns (да и алгоритмы в целом, если так посмотреть) -- "хорошие" рецепты (впрочем, непривязанные к языку).
Reply
А так -- можно написать ИИ на ассемблере чудовищным числом способов, и некоторые из них более клёвые, но всё равно недостаточно, по моим меркам.
Про паттерны -- да, кстати. Хотя это в равной инструмент исследования мышления и архитектуры, как и их определения.
Reply
С другой стороны, мы всё-таки можем пользоваться здравым смыслом, определять с его помощью интересные задачи и сравнивать их решения на разных языках.
Короче, мой основной поинт вот в чём: рецепт, компенсирующий _отсутствие_ хорошего решения, отличается от рецепта, демонстрирующего _неочевидное_ хорошее решение.
Reply
Хотелось только обратить внимание на то, что и отсутствие, и неочевидность хорошего решения типичной задачи являются знаками неадекватности инструмента, хотя второй случай менее тяжёл.
Reply
Leave a comment