Comments 17
Молодец продолжай дальше, а то совсем «апопсовел» habrahabr.
+3
Какая замечательная шиза, переводи её и дальше. Наткнулся на твой блог, потому что увидел как бармалейкина от чего-то блюёт и кидает, значит надо брать :)
Накидал схемку (http://pic.ipicture.ru/uploads/090311/WQDt1NDSSV.jpg), юзать теперь буду эту технику, а то руки обычно до этого не доходили. В отличие от явы и прочих, дотнетина использует модель документ-вид. Хоть MVP в ней применить и то как говорится хлеб.
А вообще, если меня спросят, зачем я вместо того чтобы набросать гуёвым дизайнером формочки накатал кучу классов и пытаюсь управлять всем вручную, то отвечу просто, — «Я так вижу!!!».
Накидал схемку (http://pic.ipicture.ru/uploads/090311/WQDt1NDSSV.jpg), юзать теперь буду эту технику, а то руки обычно до этого не доходили. В отличие от явы и прочих, дотнетина использует модель документ-вид. Хоть MVP в ней применить и то как говорится хлеб.
А вообще, если меня спросят, зачем я вместо того чтобы набросать гуёвым дизайнером формочки накатал кучу классов и пытаюсь управлять всем вручную, то отвечу просто, — «Я так вижу!!!».
0
«Набрасывание гуёвым дизайнером формочек» совсем не противоречит «накатыванию кучи классов». В частности в VisualWorks, упоминающемся в предыдущих частях этой статьи, очень грамотный и удобный дизайнер формочек. А результат его работы — нормальные классы, созданные в парадигме Application Model, с которыми можно дальше спокойно работать — причём как изменяя их вручную, так и через дизайнер формочек.
А зачем — так затем, что с кодом работать (изменять его, рефакторить и т.д.) гораздо проще, чем с внутренним форматом некого дизайнера формочек. Или вы создаёте приложения раз и навсегда, никак не меняя их в дальнейшем?
А зачем — так затем, что с кодом работать (изменять его, рефакторить и т.д.) гораздо проще, чем с внутренним форматом некого дизайнера формочек. Или вы создаёте приложения раз и навсегда, никак не меняя их в дальнейшем?
0
Я не работаю с VisualWorks и никогда работать не буду, мне даже не интересно что это за фиговина. И вообще не вижу смысла связывать парадигмы программирования (http://ru.wikipedia.org/wiki/Категория: Парадигмы_программирования) и конкретные ограниченные реализации каких-то там систем. Все эти статьи об общих принципах программирования.
-1
Это называется "пример".
0
Это называется тем, что ты не понимаешь для чего это вообще пишут. Не зря тут выше сказали, что хабр это попсовая тусовка.
«Паради́гма (от греч. παράδειγμα, «пример, модель, образец») — универсальный метод принятия эволюционных решений, ментальная модель мира и мироустройства, основанная на сформировавшихся идеях, взглядах и понятиях.»
А ты всё свёл к банальному слону, которым сам похоже пользуешься или просто слышал, что дескать это круто.
«Паради́гма (от греч. παράδειγμα, «пример, модель, образец») — универсальный метод принятия эволюционных решений, ментальная модель мира и мироустройства, основанная на сформировавшихся идеях, взглядах и понятиях.»
А ты всё свёл к банальному слону, которым сам похоже пользуешься или просто слышал, что дескать это круто.
0
Я не кормлю троллей, ешь в другом месте.
0
Извините. но про политику у Вас зажигательнее получается. Замечание о том, что вы не хотите связывать теорию и практику ставит под вопрос вашу квалификацию как программиста :)
Ничего личного, и я вас не минусовал; однако мне нравится этот цикл статей и я благодарен за хороший перевод, а вы устраиваете из обсуждения неконструктивный базар.
>>которым сам похоже пользуешься
Если вы решите мне ответить по существу, попрошу не «тыкать». Спасибо.
Ничего личного, и я вас не минусовал; однако мне нравится этот цикл статей и я благодарен за хороший перевод, а вы устраиваете из обсуждения неконструктивный базар.
>>которым сам похоже пользуешься
Если вы решите мне ответить по существу, попрошу не «тыкать». Спасибо.
0
>Замечание о том, что вы не хотите связывать теорию и практику ставит под вопрос вашу квалификацию как программиста :)
Квалификация программиста зависит прежде всего от того что он сделал. И я знаю свой уровень, не сказал бы, что он такой каким мне хочется его видеть. Так что я сам под сомнение всё время это ставлю.
А практика здесь ни причём. Я практикуюсь на разных конкретных системах, что мне толку смотреть ещё одну. Именно потому мне и интересны абстракции стоящие над моими мыслями во время использования конкретики.
Ведь современные языки позволяют написать и так и сяк и жопой об косяк. Я могу выбирать любую парадигму и мой конкретный код, на конкретном языке, для конкретного компилятора, делающий одно может радикально отличаться.
Всё дело в используемой парадигме, ментальной модели преобразующий мысли в проект программы, а потом и в код.
Квалификация программиста зависит прежде всего от того что он сделал. И я знаю свой уровень, не сказал бы, что он такой каким мне хочется его видеть. Так что я сам под сомнение всё время это ставлю.
А практика здесь ни причём. Я практикуюсь на разных конкретных системах, что мне толку смотреть ещё одну. Именно потому мне и интересны абстракции стоящие над моими мыслями во время использования конкретики.
Ведь современные языки позволяют написать и так и сяк и жопой об косяк. Я могу выбирать любую парадигму и мой конкретный код, на конкретном языке, для конкретного компилятора, делающий одно может радикально отличаться.
Всё дело в используемой парадигме, ментальной модели преобразующий мысли в проект программы, а потом и в код.
0
Ясно. В таком случае или я вас не понял в предыдущем посте, или вы говорите совершенно противоположную вещь. Мне казалось, вы утверждали что парадигма не меняется от реализации к реализации, но ее можно конкретно испортить этой самой реализацией, если оная корява.
Ваши мысли насчет квалификации и мне близки.
Ваши мысли насчет квалификации и мне близки.
0
>Мне казалось, вы утверждали что парадигма не меняется от реализации к реализации
Так надо сразу определиться с понятиями.
Парадигма программирования — это ментальная модель мышления программиста во время написания программы. Более того, один программист может пользоваться разными ментальными моделями.
Система программирования — это набор инструментов позволяющих создать программу. Это могут быть IDE, компиляторы, линковщики, дизайнеры кода, библиотеки алгоритмов и всё что угодно.
Программа — это набор поручений исполнителю, в нашем случае компьютеру. Для её создания мы можем использовать разные парадигмы программирования и разные системы программирования.
Реализация программы — это конкретные данные созданные с помощью определённой парадигмы программирования и на определённой системе программирования.
Причём в настоящее время системы программирования столь мощны, что не ограничивают программиста в парадигмах программирования. Хочешь делай так, а хочешь иначе.
Даже если на конкретной системе программирования существует обширный набор библиотек готовых алгоритмов, которые используют определённую парадигму программирования, языки программирования позволяют с лёгкостью обходить эти ограничения и использовать их именно в той парадигме, в какой больше нравится самому программисту.
Но вот незадача, программист часто привыкает к той парадигме, в которой написаны библиотеки, которыми он пользуется. Или ещё хуже, он пишет как умеет и при этом умеет он скажем так не важно.
Эти статьи помогают взглянуть на процесс программирования с разных точек зрения. А потом приходит какой-нибудь человек и заявляет, а мой слон (система программирования) самый слонистый слон, он умеет становится на задние ноги.
Так надо сразу определиться с понятиями.
Парадигма программирования — это ментальная модель мышления программиста во время написания программы. Более того, один программист может пользоваться разными ментальными моделями.
Система программирования — это набор инструментов позволяющих создать программу. Это могут быть IDE, компиляторы, линковщики, дизайнеры кода, библиотеки алгоритмов и всё что угодно.
Программа — это набор поручений исполнителю, в нашем случае компьютеру. Для её создания мы можем использовать разные парадигмы программирования и разные системы программирования.
Реализация программы — это конкретные данные созданные с помощью определённой парадигмы программирования и на определённой системе программирования.
Причём в настоящее время системы программирования столь мощны, что не ограничивают программиста в парадигмах программирования. Хочешь делай так, а хочешь иначе.
Даже если на конкретной системе программирования существует обширный набор библиотек готовых алгоритмов, которые используют определённую парадигму программирования, языки программирования позволяют с лёгкостью обходить эти ограничения и использовать их именно в той парадигме, в какой больше нравится самому программисту.
Но вот незадача, программист часто привыкает к той парадигме, в которой написаны библиотеки, которыми он пользуется. Или ещё хуже, он пишет как умеет и при этом умеет он скажем так не важно.
Эти статьи помогают взглянуть на процесс программирования с разных точек зрения. А потом приходит какой-нибудь человек и заявляет, а мой слон (система программирования) самый слонистый слон, он умеет становится на задние ноги.
0
Я так долго и красиво говорить и копипастить не умею, извините :)
Отвечу проще — тут дело не в «самом слонистом», а в некотором Abstract Slon, который суть есть парадигма. Поняв его, можно понять любого отдельно взятого Concreete Slon.
В данном случае в качестве Abstract Slon выступает MVC. А Visual Works — просто как доказательство того, что MVC а) существует б) может быть изменено и улучшено для удобства программиста
Хм, наверное, лучше нас автор рассудит.
Отвечу проще — тут дело не в «самом слонистом», а в некотором Abstract Slon, который суть есть парадигма. Поняв его, можно понять любого отдельно взятого Concreete Slon.
В данном случае в качестве Abstract Slon выступает MVC. А Visual Works — просто как доказательство того, что MVC а) существует б) может быть изменено и улучшено для удобства программиста
Хм, наверное, лучше нас автор рассудит.
0
Фаулер чтоли?:)
0
>Я так долго и красиво говорить и копипастить не умею, извините :)
В том то и дело, что то, что пишу я, это не копипаста :) Я движусь от конкретного к абстрактному и вывожу улучшенные определения.
Concreete Slon как и Concreete Slons это пройденный этап. Мне просто уже не интересно мыслить в данных категориях.
>Хм, наверное, лучше нас автор рассудит.
Хорошие книги по программированию можно читать и читать, и каждый раз будешь находить что-то новое. Их восприятие обычно идёт в меру своей ограниченности.
В том то и дело, что то, что пишу я, это не копипаста :) Я движусь от конкретного к абстрактному и вывожу улучшенные определения.
Concreete Slon как и Concreete Slons это пройденный этап. Мне просто уже не интересно мыслить в данных категориях.
>Хм, наверное, лучше нас автор рассудит.
Хорошие книги по программированию можно читать и читать, и каждый раз будешь находить что-то новое. Их восприятие обычно идёт в меру своей ограниченности.
0
спасибо за все параграфы!
0
Sign up to leave a comment.
Martin Fowler — GUI Architectures. Часть 5