Какой практический опыт Вы имеете от использования Шаблонов программного дизайна? [закрытый]

Обновлено:

Из того, что вы опубликовали, я полагаю, вы рассматриваете HTML-файл как простой текст и собираетесь выполнить замену строки.

Функция replace () работает только тогда, когда оба ее аргумента являются строками.

Причина, по которой вы получили ошибку, заключается в том, что links [0] - это не строка, а тег.

Если вам удастся получить такие ссылки (обратите внимание на одинарные кавычки)

links=['http://hexagon-dashboard-gbc-01/vboard/latest?regs=3281546']

, то

content.replace(links[0],str1)

не приведут к ошибкам.

Для редактирования HTML-файлов вы также можете использовать HTML Parser .

9
задан 3 revs 23 May 2017 в 10:30
поделиться

10 ответов

Вам определенно следует избегать «шаблонно-ориентированного дизайна», когда вы пытаетесь втиснуть как можно больше шаблонов в ваши классы. Я считаю полезным знать наиболее важные шаблоны проектирования, и когда я сталкиваюсь с новой проблемой проектирования, я задаю себе вопрос «Знаю ли я схему, которая может быть полезна здесь?». Если я это сделаю, то я попытаюсь использовать это; если нет, то я этого не делаю (я также иногда просматриваю их, потому что я не знаю наизусть каждый шаблон).

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

18
ответ дан 4 December 2019 в 06:11
поделиться

Re , что люди, которые могут не иметь опыта работы со всеми шаблонами, смогут понять, что делает ваш код

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

alt text
(источник: headfirstlabs.com )
« Head First: Design Patterns » у них также есть несколько форумов , касающихся книги и медитации дизайна .

Хороший сайт для паттернов http://www.dofactory.com/Patterns/PatternObserver.aspx

6
ответ дан 4 December 2019 в 06:11
поделиться

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

4
ответ дан 4 December 2019 в 06:11
поделиться

Well the one pattern which I use for most of my projects is MVC. It had proven to be perfect for my type of programming. I've also used a combination of most of the patterns that are available considering the amount of programming I actually do. Don't forget that patterns are "solutions to common problems" that we experience in programming.

Here's a cool link for reading about patterns with implementations (in C# and VB.NET).

2
ответ дан 4 December 2019 в 06:11
поделиться

As Benedikt already wrote, as a rule of thumb, only use patterns to solve problems, don't change your problem to make it fit to a pattern. ;-)

I use factories and builders a lot. Command, Observer and Visitor patterns on the behavioural side.

They naturally fit in most problems I am encountering in my daily development life.

2
ответ дан 4 December 2019 в 06:11
поделиться

Factories and Decorators are used a lot in both Java and .Net frameworks.

1
ответ дан 4 December 2019 в 06:11
поделиться

Мы пытаемся определить, где можно применять хорошо известные шаблоны. Обычно мы не пишем код для них, мы просто берем его из разных мест. Как правило, мы используем существующий код для Singleton, Proxy, State и т. Д.

взгляните на книгу Гаммы «Шаблон проектирования»

В «Коде Java-лагеря» также есть код для общих шаблонов. ( http://www.javacamp.org/designPattern/ )

также в Википедии есть код для паттернов

Луис

1
ответ дан 4 December 2019 в 06:11
поделиться

Отвечая на заголовок: «Какой практический опыт ...?», Я бы сказал, что опробование DP научило меня, как на самом деле работает ОО , особенно сила интерфейсы.

Отвечая на остальные посты:

Мои любимые шаблоны:

  • MVP (пассивное представление для тестирования)
  • Стратегия - в сочетании с TDD,
  • Метод шаблона - для извлечения обычное поведение в суперклассах.

После использования множества шаблонов, я замечаю, что вижу, что они все чаще и чаще "спонтанно" появляются как ответы на некоторые проблемы.

Я согласен с другими, что вы не должны использовать шаблоны для ради использования шаблонов - вы застрянете, пытаясь сформировать проблему в соответствии с решением, что часто проблематично.

1
ответ дан 4 December 2019 в 06:11
поделиться

По моему опыту, некоторые шаблоны проектирования больше подходят для какого-либо типа программирования, чем другие, например, в программировании игр, шаблон State Machine - это то, что я часто использую. Шаблоны проектирования MVC и Template также очень полезны.

1
ответ дан 4 December 2019 в 06:11
поделиться

Мой опыт показывает, что большинство программистов, которые говорят о DP, не понимают ни капли сил и т. Д. Вокруг! Процитирую Йегге в его великом «Синглтоне, считающемся глупым» :

Если они претендуют на опыт разработки шаблонов, и они могут ТОЛЬКО назвать шаблон «Синглтон», то они будут работать ТОЛЬКО в какой-то другой компании.

4
ответ дан 4 December 2019 в 06:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: