![]() |
Паттерны или фи....
Вопрос скорее риторический, флеймовый ( если нужно перенести в соотв раздел ). Заметил посл время задают вопросы про паттерны, примером может служить топик про паттерн фабрика и т.п.
Допустим я - читал книги про паттерны, знаю как они выглядят, и т.д. - но полноценно ими не пользуюсь, а тем более обдуманно. Что это значит - к примеру, пишу я реализацию проекта, не важно какого... изначально я продумываю стратегию поректа, но не вдумываюсь, каким из паттернов я пользуюсь, почему именно этим и т.д. В итоге я пишу проект - и только потом, могу рассуждать на тему, ОГО тут я юзал фабрику, а тут стратегию, а тут... Толку в этом я не вижу, - знание хорошо - знать и понимать это только + , но в 90% никто целенапрвленно ничего не использует. - пишут и пишут. Хм... имхо могу ошибаться, конечно, но думаю так оно и есть. P.s. простите за пьяный разброд и шатания |
Цитата:
|
Потому флеш и ненавидят, когда баннер с анимацией весь проц сожрал. Если, как вы в статье написали принимать * а потом кастовать к интерфейсу, то понятно что жопа будет. Шаблон нужен чтобы всё было однотипно, и включая в проект нового прогера можно было в трёх словах описать архитектуру модуля над которым он работает. Ну и для удобства конечно тоже.
|
carrotoff, наверное фраза "изначально я продумываю стратегию поректа" является ответом на ваш вопрос.
Конкретного вопроса топикстартер так и не задал, но думаю имеллось ввиду то, что все эти паттерны это узконаправленные решения. Я тоже перечитал не одну реализацию, но когда думаешь о том, что тебе надо написать, структура приложения сама вырисовывается в голове на основе имеющихся знаний. Если делать всё по одному паттерну, то некоторые приложения будут раза в 3 больше нежели когда их писали руководствуясь рационализмом. |
willis83 - понял меня в точности, как я и хотел передать
|
Цитата:
И да, если вы пишите код один, то пишите как хотите. Но если вы пишите командой, или пишите код которым будут пользоватся другие люди, то алгоритмы и архитектурные решения должны быть хоть немного стандартезированы, в чем и помогают паттерны. |
Цитата:
|
Цитата:
|
а поделитесь ссылкой на адекватную инфу по паттернам пжалста.
|
Цитата:
Цитата:
Я буду придерживаться мнения, что нужно знать паттерны как приёмы для решения типичных задач, чтобы не изобретать велосипед в коде. Однако, я всегда буду отступать от классических реализаций паттернов, если я получу от этого выигрыш. Приятней работать в хорошем и понятном коде, в котором все паттерны "не соответствуют точному описанию", чем в какой-нибудь каше, зато по всем стандартам. |
Цитата:
|
по author например :D
|
Цитата:
Цитата:
|
Цитата:
-Но когда видишь какое-то нестандартное и хитроумное решение - а еще и с документацией ограничивающейся парой строчек комментариев - вот здесь убить хочется, потому что потом еще пол дня тратишь на то, чтобы отследить мысль автора. Поэтому я склоняюсь больше к использованию пусть менее простых решений, но за то, если эти решения подходят под общий стиль и шаблон - за это можно будет сказать спасибо. зы. Заметьте, я говорю в данном моменте о коде, у которого есть вероятность стороннего review, или доработки другими разработчиками. Хотя и в частном случае, я бы всё равно не рекомендовал использовать какие-то чересчур хитрые конструкции. |
to Bgg, чё-то я не догнал краями... разве я выразил в своём предыдущем посте какое-то неуважение к паттернам? Или может оскорбил кого-то? Я не в коей мере не претендую на свою превосходность мысли над кем-то, я учусь. Да, Вы правы, я пишу сам, но это не значит что я неуч, и не достоен своего мнения на счёт паттернов. И даже программируя в одно лицо я оптимизирую свой код под общепринятые правила. Но всё же то, что я видел порой не приминимо под мои структуры. Вы пишете всё на одном паттерне? Поделитесь опытом, если вы такой защитник стандартов!
|
Код AS3:
|
Как яснее? Скажем человек придерживается паттерна MVC и пишет баннера и игры через него... или VMC и всё через него... прибавим ещё кучу паттернов к этому. Нельзя на одном паттерне написать разно жанровые приложения.
|
MVC - это не паттерн, а парадигма программирования.
Model (M) - обычно паттерн Observer View (V) - обычно паттерн Composite Controller (C) - обычно паттерн Command Ну это я так, для общего развития. А чем плох хороший продуманный структурированный подход? Bgg уже пытался объяснить, что паттерны - результат многолетнего опыта серьезных программистов. Или вам нравится на собственном опыте устанавливать что хорошо, а что нет. Ну раз так - никто, по-моему, и не против. Цитата:
|
Чушь какая-то.... нигде не прописаны эти правила программирования.... и ни какая это не парадигма... это элюзия. Ваши расшифровки - абсурд. Чётких правил нет... Вы сможете переубедить меня?
|
Цитата:
|
Жаль у нас нет возможности опросить ведущих разработчиков по поводу пренадлежности к какому либо паттерну
to carrotoff, смысл тогда вступать в дискуссию? Цель - выразить свою точку зрения. |
Цитата:
|
to strangedk, Не охото быть козлом отпущения, вы тоже пишите всё по одному паттерну?
carorotoff, у вас всё под одним паттерном? |
Паттерны помогают осмысливать архитектуру чужого кода. Я вижу в коде: PlayerView, PlayerPM, PlayerData, ChartacterFactory, CharacterWrapper (Decorator), EventBus и AbstractLinker
и я приблизительно понимаю связи и легенды объектов и классов. |
Внесу свои 5 копеек. Не могу ничего сказать относительно ас3, ибо с ним я только начинаю работать. Но что касается оформления кода и вообще принципов программирования и построения структуры кода - общепринятые стандарты должны соблюдаться. Многие плюются от 1С из-за ее корявости и тупости. Я с этой
А теперь, собственно, ответ на вопрос "А зачем этого придерживаться, если я пишу код сам и никто его не увидит". Тут все очевидно - это как минимум дисциплинирует и прививает привычку писать красиво независимо от ситуации. Сумбурно пост вышел, но суть надеюсь понятна. |
Цитата:
Я могу ошибаться, но кажется вы потеряли нить противоречия. Что вы доказываете исходя из этого сообщения: Цитата:
Но ведь это не касается того, какие шаблоны использовать. Можно использовать один шаблон, и сделать его невозможным для понимания. А можно использовать уйму, и получить респект от людей которые будут дорабатывать код после тебя. Повторю вопрос - в чем ваше противоречие? |
Пока, что тоже непонятно в чем идет дискуссия и кто прав, а кто виноват. Фишка в том, что большенство, если не сказать более - пишут реализацию ТАК, как им хочется, как они видят ее. И только потом - говорят ого а тут я юзал фабрику....)))) С другой стороны работая в команде и создавая ТЗ на архитектуру, можно и изначально заявить о правах реализации на некий паттерн например в каком либо куске коде, и по нему уже работать, чтобы ваши товарищи знали и думали, что вы написали под этот паттерн, значит в Доке об этом будет освещено, и им проще будет понять где оно и как.
Но еще раз повторюсь, мало кто пишет реализацию изначально задумываясь о происходящем... ( утрирую ). Как то была статья на хабре, про уровни программеров, типа новичек пишет ересь, матерый пишет реализации вдумывается и т.д., ну а проффи пишет как новичек - потому, что ему положить на реализации, главное чтобы все работало и побыстрее и бобос тек рекой ( опять же утрирую, конечно писать он будет не как новчиек - это ясно, но запариваться МВС например в средних и простых проектах, просто не будет... ну тут еще зависит от амбициозности и уровня. скажем сделав 100-200 средних и больших проектов, далее вам уже ниче интересно особо не будет, тем более смотреть на реализацию. стареем... и хоорош ) |
Цитата:
@strangedk, не в ту степь пошли, всё скорее наоборот. Паттерны призваны любое хитрожопоумное решение стандартизировать под отдельные блоки, назначение которых понятно, что в целом упрощает картину. Я против использования шаблонов, когда они предельно ясную картинку превращает в хитрожопоумное решение. Добавлено через 15 минут Цитата:
|
И работал и работаю. а что?
|
Цитата:
willis83, я так и не понял Вашу позицию, что за один паттерн и откуда эта странная идея про один паттерн. Паттерны призваны решать стандартные задачи, стандартные ситуации, и никоим образом не позиционируются как решения по организации ВСЕГО проекта (хотя есть и такой класс паттернов, шаблоны уровня приложения, но и они не запрещают Вам использовать "внутри" шаблоны для ситуаций). Вообще весь этот разговор начинает напоминать баталии про интерфейсы. "Я вот тут попробовал, написал этот дурацкий интерфейс в своем проекте, и что? Без него было все просто и наглядно, а теперь интерфейсы какие-то.." Еще раз – если вы не занимаетесь проектированием, то шаблоны вам нафиг не нужны. Не ищите, куда их приткнуть. Когда будет четко осознанная задача, шаблон сам вас найдет. Но для этого его надо знать. И изучение шаблонов – не бесполезная трата времени, оно дисциплинирует мозг и учит его думать в пространстве ООП, в котором и реализован ActionScript. Рассматривайте их как "ката" в карате, если еще не создаете больших и сложных проектов. А если уже создаете – таких вопросов просто не возникнет. |
А куда же без шаблонов? Шаблоны они везде и во всем. На кухне, на работе, в отношениях... Они позволяют не выдумывать велосипед, а вместо этого быстро применить готовое архитектурное решение.
|
Цитата:
Цитата:
|
ммм. ни разу не понял вопроса, пахнет холиваром. Если есть какие то личные вопросы ТИПА можно взглянуть - пишем вличку. не?
|
Цитата:
|
Цитата:
Подкрепи пруфлинком, что такое вообще существует, или выложи сюда свой пример и пользу от него. |
| Часовой пояс GMT +4, время: 15:35. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.