Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Плагин PlantUML (https://javascript.ru/forum/offtopic/30500-plagin-plantuml.html)

B~Vladi 06.08.2012 18:43

Плагин PlantUML
 
Наткнулся на эту утилиту.

Опенсорсная.
Прикольная штука кстати. Т.е. пишешь в комментах к коду блок текста и получаешь красивую диаграмму в окне плагина (есть плагин для IDEA и eclipse).

Есть мануал на англицком по синтаксису. Если посмотреть примеры - достаточно сложные диаграммы можно найти.

Прелесть этого плагина в том, что сама диаграмма хранится вместе с кодом, для которого она создана. Открыл файл, глянул диаграмму - и суть кода становится понятней и приятно :)

Кто-нибудь пользовался такой штукой?
Подумываю взять на вооружение, но сначала попробую что-нибудь сваять на конкретном примере.

Кстати, в процессе знакомства столкнулся с неприятным моментом - некоторые конструкции не рендерятся, пишет "Cannot find Graphviz". Я попробовал поставить эту штуку под виндой, но пока не смог.

B~Vladi 06.08.2012 21:05

Цитата:

Сообщение от B~Vladi
Я попробовал поставить эту штуку под виндой, но пока не смог.

Таки смог. Скачал отсюда.
На семёрку ставить отказывалась, нужно запускать в режиме совместимости.

B~Vladi 06.08.2012 21:20

Потыкать в реальном времени можно тут.

B~Vladi 08.08.2012 11:40

Ога, как сериал обсудить, карму или аниме - так все за, а как что-то касаемо Web-технологий, фреймворков и либ - так всем влом смотреть исходники и википедию.
А ещё спрашивают почему народ отсюда валит...

Кто-нибудь хоть знает что такое UML? Блок-схема? Юзали?

Gozar 08.08.2012 11:59

B~Vladi,
Мож я чего не понял, но мне не понравились возможности этого плагина. Потыкав в реальном времени я понял, что использовать его не буду. Я ещё тыкал в phpmyadmin тоже плагин есть по строению баз и тоже не буду использовать, хотя тот плагин гораздо круче.

nerv_ 08.08.2012 12:01

B~Vladi, думаю, потому, что большинство не в теме ) Бегло посмотрел про UML. Я так понял это для визуализация алгоритма работы программы?

Hekumok 08.08.2012 12:02

Цитата:

Сообщение от B~Vladi (Сообщение 195583)
Кто-нибудь хоть знает что такое UML? Блок-схема? Юзали?

Я знаю, ток чо такое блок-схема

Gozar 08.08.2012 12:03

B~Vladi,
если ты припомнишь, я как-то рисовал схему ООП в js. Так вот я вынес оттуда один немаловажный урок. Все люди воспринимают одни и те же схемы по разному.

Gozar 08.08.2012 12:10

Цитата:

Сообщение от B~Vladi
Прелесть этого плагина в том, что сама диаграмма хранится вместе с кодом, для которого она создана.

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

president 08.08.2012 12:16

Ну бывает нужно описать алгоритм работы кода, хоть что то уже было бы понятным, кто куда и зачем обращается, что бы не разбираться в стопке кода заново, новация полезная но не тянет на обсуждение, нечего обсуждать

моя первая диаграмма
Писька->Жопа : сперма

B~Vladi 08.08.2012 20:53

Цитата:

Сообщение от Gozar
хотя тот плагин гораздо круче.

Чем? Тут прикол в том, что сама диаграмма лежит в коде.

Цитата:

Сообщение от nerv_
Я так понял это для визуализация алгоритма работы программы?

Да, но есть разные типы диаграмм:
Sequence Diagram - хорошо подходит для описания последовательности действий между некоторыми сущностями. Например, общение клиента и сервера.

Use Case Diagram - хорошо описывает взаимодействие пользователя(ей) с интерфейсом, сервисом и т.п.

Class Diagram - описывает структуру и отношение классов (конструкторов) между собой. Например, в Java такие диаграммы генерятся налету.

Activity Diagram -
Цитата:

Сообщение от nerv_
это для визуализация алгоритма работы программы

Component Diagram - показывает отношение компонентов и интерфейсов. Например, для описания архитектуры фреймворка или целого проекта.

State Diagram - описывает состояние некой сущности, например, конечного автомата или алгоритма.

Object Diagram - описывает объекты (списки, хеши) и отношение между ними.

Цитата:

Сообщение от Gozar
если ты припомнишь, я как-то рисовал схему ООП в js

Вроде припоминаю, но не уверен.
Цитата:

Сообщение от Gozar
Все люди воспринимают одни и те же схемы по разному.

Ну не знаю... Может схема не удалась? Может не со всеми типами схем так?

Цитата:

Сообщение от Gozar
а это дополнительная работа к описательной части.

Да, как и документация и тесты. Не нужно описывать каждую сущность в диаграмме. Программист сам должен понимать, где диаграмма будет полезна, а где нет. В каждом конкретном случае.

Цитата:

Сообщение от Gozar
который дергает из кода объекты и визуализирует связи.

Для JS? Пруф?

Цитата:

Сообщение от president
Писька->Жопа : сперма

:blink: Пидорг?!

Gozar 08.08.2012 22:58

Цитата:

Сообщение от B~Vladi
Тут прикол в том, что сама диаграмма лежит в коде

Все диаграммы лежат в коде. Но суть в том, что это ещё один язык для изучения.

Цитата:

Сообщение от B~Vladi
Для JS? Пруф?

Цитата:

Сообщение от Gozar
мне бы больше подошел плагин

Это выражение нужны, я бы очень хотел получить такой пруф. Другими словами мне хотелось бы. Если осилю, то сам сделаю. Если нет, кто знает? ...

B~Vladi 08.08.2012 23:11

Цитата:

Сообщение от Gozar
Но суть в том, что это ещё один язык для изучения.

Я написал 3 диаграммы и уже чувствую себя уверенно. Каждая следующая пишется уже проще. Хотя тут на вкус, да. Но что-то лучше для создания UML я не нашел (в идеале - плагин для IDEA).
Могу завтра скинуть скрины, если интересно.

Цитата:

Сообщение от Gozar
Все диаграммы лежат в коде.

Какая ещё софтина позволяет читать диаграммы в коде?!

Цитата:

Сообщение от Gozar
Другими словами мне хотелось бы.

А, ну и мне хотелось бы, но такое невозможно для JS :)
Вот я и предложил вариант. Если немного поднапречься и потратить времени - в дальнейшем писать схемы будет уже не так сложно. Зато коллегам - неоценимая помощь :)

Я никого не принуждаю, если что :)

B~Vladi 08.08.2012 23:20

Кстати, при хорошем скилле, написать приличную схему можно за пол часа.
В визуальном редакторе получается не меньше.

Потратить 30-60 мин в неделю/месяц - не много.

x-yuri 16.08.2012 20:31

Цитата:

Сообщение от Gozar
если ты припомнишь, я как-то рисовал схему ООП в js. Так вот я вынес оттуда один немаловажный урок. Все люди воспринимают одни и те же схемы по разному.

И так появился UML... точнее в то время было много разных нотаций, а UML предполагался как "язык", который решит эту проблему, типа "одна универсальная нотация для всех".

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

B~Vladi 16.08.2012 22:06

Цитата:

Сообщение от x-yuri
не уверен, что наличие диаграммы в коде - это плюс.

Это и не удивительно, пока не попробуешь - не узнаешь.

Gozar 16.08.2012 22:16

Цитата:

Сообщение от B~Vladi
А, ну и мне хотелось бы, но такое невозможно для JS

Почему?

B~Vladi 16.08.2012 22:27

Цитата:

Сообщение от Gozar
Почему?

Потому что в JS, в большинстве случаев, не возможно построить связь между объектами, так как нельзя с идентифицировать объект на 100%, как например в Java.

Gozar, почему ты просишь объяснять тебе очевидные вещи? Ты и сам должен был это знать...

В IDEA стандартная панель Structure может показать структуру объектов, описанных в файле, включая то, что есть в JSDoc. Но она не показывает связей между ними.

Gozar 16.08.2012 22:37

И вот так нельзя сделать?:

TSN.load = function (path, name, config) {
config = new Config(config);

var fullPath = LIB.path.join(config.templateRoot, path);

if (config.cache === true && TSN.cache.hasOwnProperty(fullPath)) {
return TSN.cache[fullPath];
}

config.path = LIB.path.dirname(fullPath);
return TSN.compile(LIB.fileSystem.readFileSync(fullPath, config.encoding), name || fullPath, config);
};


Могло бы превратиться в нечто подобное:

TSN.load = function {
LIB.path.join
TSN.cache
LIB.path.dirname
TSN.compile
LIB.fileSystem.readFileSync
};


А по моему вполне реально такой парсер написать.

Gozar 16.08.2012 22:52

По сути ты же переписываешь то же самое, только другими словами. А я ой как не люблю делать двойную работу.

B~Vladi 16.08.2012 23:14

Цитата:

Сообщение от Gozar
А по моему вполне реально такой парсер написать.

Основываясь только на именах - реально. Но всплывает много кейсов. Например, откуда парсер будет знать, что возвращает require? Конечно, можно ограничиваться именами, но как-то мало от этого пользы получается.

Если бы ты развил мысль на наглядном абстрактном примере... Т.е. код и полученная схема.

Ещё для такого парсера нужно брать какой-нибудь готовый статический анализатор. Ну и без поддержки JSDoc толку будет мало.

Цены бы не было такому парсеру, если бы он генерировал алгоритм наподобие этого:


Есть ещё один важный момент. Что бы диаграмма была более читабельной, необходимо иметь возможность управлять логикой её генерации. Например здесь описана такая возможность, в разделе "Changing arrow direction". По опыту могу сказать, что без этого будет получаться, скажем так, не то. Например:

/*
@startuml
title The architecture of the site

skinparam componentStyle uml2
skinparam component {
  BorderColor<<P>> #FF6655
}

component "Template Engine" as TEN <<P>>
component "Builder" as Builder <<P>>
component "Router" as Router <<P>>
component "Web Server" as Server
component "Data Base,\nCache" as DB

interface "HTTP(S)" as HTTP

Server -r- HTTP

HTTP .r.> Router: Proxy

package "Project" {
    component "Static" as Stat
    component "Templates" as TMPL
    component "Applications" as Apps

    interface "Data\naccess" as API

    TMPL .r.> API
    TMPL .d.> Builder: Configure

    Apps -l- API
    Apps .r.> DB
}

Router -r-> TEN
TEN -d-> TMPL: Rendering
Builder --> Stat: Build
HTTP .d.> Stat: Proxy
TMPL -u-> HTTP

note right of Builder: It works once at initialization

@enduml
*/


Результат:


Здесь практически для каждой связи используются указания направления (.d. - down, -r- - right и т.д.). Вот, что будет без них:

/*
@startuml
title The architecture of the site

skinparam componentStyle uml2
skinparam component {
  BorderColor<<P>> #FF6655
}

component "Template Engine" as TEN <<P>>
component "Builder" as Builder <<P>>
component "Router" as Router <<P>>
component "Web Server" as Server
component "Data Base,\nCache" as DB

interface "HTTP(S)" as HTTP

Server -- HTTP

HTTP ..> Router: Proxy

package "Project" {
    component "Static" as Stat
    component "Templates" as TMPL
    component "Applications" as Apps

    interface "Data\naccess" as API

    TMPL ..> API
    TMPL ..> Builder: Configure

    Apps -- API
    Apps ..> DB
}

Router --> TEN
TEN --> TMPL: Rendering
Builder --> Stat: Build
HTTP ..> Stat: Proxy
TMPL --> HTTP

note right of Builder: It works once at initialization

@enduml
*/


Результат:


Читабельность явно пострадала.

Ну и ещё один момент. PlantUML может генерировать схемы разного типа. Парсер же кода - одного.

Но всё вышесказанное никак не должно восприниматься как попытка отговорить от этой затеи. Я лишь хочу показать подводные камни, которые могут возникнуть. Их скорей всего будет больше, я лишь привел те, что первыми пришли в голову.
В любом случае мысль интересная, я бы понаблюдал как минимум.

B~Vladi 16.08.2012 23:15

Цитата:

Сообщение от Gozar
По сути ты же переписываешь то же самое, только другими словами.

Да, верно. Но не всегда, смотря какую схему мы хотим иметь в итоге.

x-yuri 16.08.2012 23:34

Цитата:

Сообщение от B~Vladi
Да, верно. Но не всегда, смотря какую схему мы хотим иметь в итоге.

Я бы сказал, смотря что ты хочешь показать. Фаулер пишет, что есть три варианта использования UML: 1) sketch (диаграммы, нарисованные с целью показать "нечто", все несущественные детали опущены), 2) blueprint (весь проект описан с помощью UML со всеми деталями), 3) язык программирования. Он сторонник первого подхода.

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

Gozar 16.08.2012 23:46

Мне по сути не нужна идеальная схема. Я провел очень много времени делая разные не нужные дела, изучая различные программы и т.д. Хочу автоматизации процесса.

Сам хочу увидеть что из этого выйдет. Т.к. времени рисовать схемы у меня сейчас нет, а вот количество кода порой растет в геометрической прогрессии и мне похоже проще написать подобный парсер, чем рисовать схему на каждый метод.

B~Vladi 16.08.2012 23:51

Цитата:

Сообщение от x-yuri
Я бы сказал, смотря что ты хочешь показать.

Ну да, так наверно точнее будет.

Цитата:

Сообщение от x-yuri
Он сторонник первого подхода.

В принципе логично.

Цитата:

Сообщение от x-yuri
у меня возникала необходимость в диаграммах, показывающих то, что разбросано по коду.

Если говорить в контексте PlantUML, то в этом случае код схемы должен быть в общем родительском уровне описываемого кода. Я думаю это логично.
Например: схема, описывающая работу NodeJS-модуля (состоящего из нескольких файлов) должна находится либо в коде индексного файла, либо отдельным файлом в корне модуля.

B~Vladi 16.08.2012 23:53

Цитата:

Сообщение от Gozar
похоже проще написать подобный парсер, чем рисовать схему на каждый метод

Если парсер будет генерировать человеческие диаграммы, то да. Иначе толку не будет.

x-yuri 17.08.2012 00:08

Цитата:

Сообщение от B~Vladi
Если говорить в контексте PlantUML, то в этом случае код схемы должен быть в общем родительском уровне описываемого кода. Я думаю это логично.

И вот возник вопрос о том где в коде размещать диаграмму. Вообще, если диаграмма указана для метода, это скорее всего подразумевает, что код метода не понять без диаграммы. Тогда в этом случае надо обратить внимание на читабельность, а не диаграммы рисовать. А по поводу более "высокоуровневых" диаграмм, а где разместить диаграмму, которая "начинается" с открытия страницы пользователем и "заканчивается" обработкой формы на сервере? Поэтому я и говорю, что необходимость диаграмм в коде - сомнительна.

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

Gozar, а думаешь, связи тебе сильно помогут?

Gozar 17.08.2012 02:05

Цитата:

Сообщение от x-yuri
а думаешь, связи тебе сильно помогут?

Да. Мне сейчас их сильно не хватает. Мне и схемы то не очень нужны, по сути для меня схемы и есть связи. Да и для оптимизации может пригодиться, выявлять перегруженные или неудобные места.

Цитата:

Сообщение от B~Vladi
Если парсер будет генерировать человеческие диаграммы

Они все человеческие :) Главное чтобы мне было понятно. Мне особо без разницы, будут они красивые или просто шарик со стрелками в разные стороны. Мне нужно, чтобы я путь мог отследить. А для этого красота не очень важна. Но если получатся красивые, я буду только рад.

x-yuri 17.08.2012 02:17

а зачем тебе связи?

Gozar 17.08.2012 03:08

Цитата:

Сообщение от x-yuri
а зачем тебе связи?

А зачем мне схемы?

B~Vladi 17.08.2012 07:37

Цитата:

Сообщение от x-yuri
А по поводу более "высокоуровневых" диаграмм, а где разместить диаграмму, которая "начинается" с открытия страницы пользователем и "заканчивается" обработкой формы на сервере?

В корне сайта в папке doc. Отдельным файлом или в составе какой-нибудь доки.

Цитата:

Сообщение от x-yuri
Не думай, что диаграмма всегда лучше текста. Они друг друга дополняют.

А я так и думаю.

Цитата:

Сообщение от Gozar
выявлять перегруженные или неудобные места.

Кстати да.

x-yuri 17.08.2012 19:10

Цитата:

Сообщение от Gozar
А зачем мне схемы?

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

Цитата:

Сообщение от Gozar
Да и для оптимизации может пригодиться, выявлять перегруженные или неудобные места.

И это тоже непонятно. Как парсер может выполнить работу профайлера?

Gozar 17.08.2012 21:12

Цитата:

Сообщение от x-yuri
Я не понимаю

Мне особо нечего добавить.

Цитата:

Сообщение от x-yuri
Как парсер может выполнить работу профайлера?

Парсер - парсит, он не показывает работу. Нужен будет ещё конструктор схем.

B~Vladi 18.08.2012 01:23

x-yuri чего-то не договаривает постоянно. Причём всегда избегает выражения своего мнения/видения. Может боится критики, а может это такой хитрый тактический ход. Типо пусть другие расскажут, а я решу что лучше.
Признаться, такая схема более выгодна, чем гнуть свою линию.

Меня здесь как-то критиковали за "я думаю", "ящитаю", "я бы" и т.д. Типо нехуй другим навязывать своё мнение, в любом случае в инете кто-то не прав. Есть в этом доля истины, ящитаю.

Как бы там ни было, критиковать всегда проще и безопаснее (для репутации), чем делиться мыслями.

По причине моей открытости, я продолжу троллить форумчан и коллег своим "ящитаю", хоть и мне самому не нравится такая позиция.
Но, блиать, кто-то же должен гнуть свою линию!

Мой недоделанный шаблонизатор наипиздатейший, PlantUML ахуитительный. Кто-то хочет поспорить?! (Это риторический вопрос, если что, но я всегда готов подискутировать на эту тему)

В контексте же этой темы я не вижу смысла вести обсуждение с людьми, не имеющими к ней (теме) интереса, опыта, либо своего мнения:
Цитата:

Сообщение от x-yuri
Не могу похвастаться большим опытом в рисований диаграмм, как-то не было особой необходимости.

Получается, что опыта нет, но сказать или научить есть чему.

Я тоже не могу похвастаться большим опытом создания UML-диаграмм. Я год-два назад пытался что-нибудь родить. Искал инструменты. Но дальше дело не пошло - то ли инструменты не понравились, то ли я ещё зелёный был. Сейчас я нашел эту тулзу, которая изменила моё представление на создание схем. Именно поэтому (а не потому что блять в сереале увидел) я и поделился с сообществом.

micscr 18.08.2012 07:46

хранить uml схемы вместе с кодом - просто супер идея. Жаль у меня нетбинс.

B~Vladi 18.08.2012 10:58

Цитата:

Сообщение от micscr
Жаль у меня нетбинс.

Вариантов море: http://plantuml.sourceforge.net/running.html

x-yuri 19.08.2012 01:03

Цитата:

Сообщение от B~Vladi
x-yuri чего-то не договаривает постоянно.

Чего я в этот раз не договорил?

Цитата:

Сообщение от B~Vladi
Причём всегда избегает выражения своего мнения/видения.

Я обычно пытаюсь обобщать, учитывать разные ситуации, а не "мне так удобно, поэтому это круто". Я в первую очередь смотрю со стороны программистов, а не со своей собственной позиции.

Цитата:

Сообщение от B~Vladi
Может боится критики, а может это такой хитрый тактический ход. Типо пусть другие расскажут, а я решу что лучше.
Признаться, такая схема более выгодна, чем гнуть свою линию.

Электричество в сумраке распространяется очень медленно. Нужно два часа давить на звонок, чтобы он зазвенел. Это очень удобно для тех, кто звонит в дверь и убегает. Конечно она удобна, по-своему, но не для репутации. Так же как и твоя позиция удобна, но по-другой причине.

Если бы я был Ларру Уоллом, я бы наверное сказал, что я за эволюцию, за разные подходы. (It is my job in life to travel all roads, so that some may take the road less travelled, and others the road more travelled, and all have a pleasant day.) Я конечно не Ларри Уолл, но мне очень симпатична его позиция, и вообще perl - язык, который произвел на меня наибольшее впечатление. Да и сам человек интересный. В общем, если хочешь лучше понять меня, почитай про Ларри Уолла, интервью, цитаты... ;)

5 миров

Цитата:

Сообщение от B~Vladi
Меня здесь как-то критиковали за "я думаю", "ящитаю", "я бы" и т.д. Типо нехуй другим навязывать своё мнение,

По поводу тебя могу сказать, что ты любишь "давить авторитетом". Типа "исходя из моего опыта..." и все такое. Я подобные высказывания за аргумент не считаю. Кстати, с моей позиции, я не навязываю тебе, что "ты не прав". Это твое дело, гнуть свою линию или не гнуть.

Цитата:

Сообщение от B~Vladi
В контексте же этой темы я не вижу смысла вести обсуждение с людьми, не имеющими к ней (теме) интереса, опыта, либо своего мнения:

По теме UML я и так вроде бы все сказал, так что поздновато... ИЧХ, сначала ты был недоволен тем, что никто не отзывается. А теперь - наоборот. Ты "или крест сними, или трусы одень" ;)

Цитата:

Сообщение от B~Vladi
Получается, что опыта нет, но сказать или научить есть чему.

А ты считаешь, что говорить:
- о музыке имеют право только поп-звёзды,
- о литературе — только авторы бестселлеров,
- о политике — только президенты стран не меньше Израиля,
- о еде — только шеф-повара элитных ресторанов?

Цитата:

Сообщение от B~Vladi
Я год-два назад пытался что-нибудь родить. Искал инструменты. Но дальше дело не пошло - то ли инструменты не понравились, то ли я ещё зелёный был. Сейчас я нашел эту тулзу, которая изменила моё представление на создание схем. Именно поэтому (а не потому что блять в сереале увидел) я и поделился с сообществом.

Понимаешь, я не доверяю своим первым впечатлениям. Я тоже очень обрадовался когда-то, нарисовав свою первую диаграмму. И что? Это ни во что не вылилось и я не жалею об этом.

B~Vladi 19.08.2012 10:50

Цитата:

Сообщение от x-yuri
Я тоже очень обрадовался когда-то, нарисовав свою первую диаграмму. И что? Это ни во что не вылилось и я не жалею об этом.

Эмм, я написал ровно тоже, что и ты. Эти диаграммы не первые :)

Цитата:

Сообщение от x-yuri
А ты считаешь, что говорить:
- о музыке имеют право только поп-звёзды,
- о литературе — только авторы бестселлеров,
- о политике — только президенты стран не меньше Израиля,
- о еде — только шеф-повара элитных ресторанов?

Нет, я считаю, что нет смысла разговаривать о музыке с человеком, который её никогда не слышал или не воспринимает вообще. Аналогично и с остальными пунктами.
Хотя в нашем случае я немного перегнул, да.

Цитата:

Сообщение от x-yuri
сначала ты был недоволен тем, что никто не отзывается

Я выбираю второе.

Цитата:

Сообщение от x-yuri
Типа "исходя из моего опыта..."

С опытом нужно считаться, разве нет? Меня убивают статьи, которые начинаются с "Решил поиграться с NodeJS на выходных, и вот что я вам скажу...". Один раз поигрался - уже можно учить других.
Ну и я же не говорю "исходя из моего опыта вы все не правы, только я один прав, и вообще вы все мудаки здесь"?
Что плохого в том, что если бы ты мне написал: "Я юзал PlantUML, и по опыту могу сказать, что диаграммы ... создаются неудобно и вообще реализация не очень"? Ничего. А вот если так: "я тут глянул - какое-то говно, юзать не буду и вам не советую"? Чьё мнение будет ценнее для читающих?

x-yuri 21.08.2012 09:17

Цитата:

Сообщение от B~Vladi
Нет, я считаю, что нет смысла разговаривать о музыке с человеком, который её никогда не слышал или не воспринимает вообще.

Не очень удачная аналогия. У меня нету необходимости в рисовании UML-диаграмм.

Цитата:

Сообщение от B~Vladi
С опытом нужно считаться, разве нет?

Есть два варианта использования опыта как аргумента: 1) у меня есть опыт использования ..., 2) а теперь умножьте все что я сказал на мою "карму".

Цитата:

Сообщение от B~Vladi
Меня убивают статьи, которые начинаются с "Решил поиграться с NodeJS на выходных, и вот что я вам скажу...". Один раз поигрался - уже можно учить других.

У меня сложилось впечатление, что у тебя недостаточно опыта использования UML, чтобы делать выводы, когда и где его применять. В конце концов, диаграммы - это помимо всего прочего дополнительная работа по поддержке при внесении изменений, надо не забывать содержать их в актуальном состоянии.

B~Vladi 21.08.2012 10:11

Цитата:

Сообщение от x-yuri
а теперь умножьте все что я сказал на мою "карму".

Это не мои слова, не выдумывай.

Цитата:

Сообщение от x-yuri
У меня сложилось впечатление, что у тебя недостаточно опыта использования UML, чтобы делать выводы, когда и где его применять.

Пост совсем не об этом. Единственное, что я говорил на эту тему:
Цитата:

Сообщение от B~Vladi
Программист сам должен понимать, где диаграмма будет полезна, а где нет. В каждом конкретном случае.

но это не вывод и я никого не учил.
А ещё я писал:
Цитата:

Сообщение от B~Vladi
Я никого не принуждаю, если что

К использованию диаграмм имелось ввиду.

Цитата:

Сообщение от x-yuri
В конце концов, диаграммы - это помимо всего прочего дополнительная работа по поддержке при внесении изменений, надо не забывать содержать их в актуальном состоянии.

Забыл поставить тег кэп-mode?


Часовой пояс GMT +3, время: 04:54.