Dado que a UML é orientada para uma abordagem mais clássica da orientação a objetos, ainda é utilizável de maneira confiável para projetar sistemas JavaScript?
Um problema específico que vejo é que os diagramas de classes são, de fato, uma visão estrutural do sistema, e o JavaScript é mais orientado pelo comportamento. Como você pode lidar com isso?
Lembre-se de que não estou falando sobre o domínio do mundo real aqui; é um modelo para a solução que estou tentando alcançar.
design
object-oriented
javascript
uml
Julio Rodrigues
fonte
fonte
Respostas:
Parece que você está perguntando duas coisas diferentes
Lembre-se de que a UML inclui muitos tipos de diagramas , especificamente uma ramificação de diagramas de comportamento, incluindo diagramas de sequência e de casos de uso. Esses diagramas tratam especificamente da sua preocupação em modelar o javascript como uma linguagem orientada a comportamentos.
É bem possível que um sistema javascript não esteja usando design orientado a objetos. Nesse caso, os diagramas de classe provavelmente não seriam apropriados, como você apontou. No entanto, como o javascript oferece suporte ao design orientado a objetos, é possível que os diagramas de classes representem efetivamente um sistema usando javascript. Realmente depende de como o javascript está sendo usado.
fonte
Sua resposta está oculta na sua pergunta:
Veja as técnicas de BDD (Behavior-driven Development) e escolha ferramentas que atendam às suas necessidades de design.
Discussão relacionada que você pode achar útil - Como escrever histórias / cenários no BDD . E um artigo muito abrangente da revista Code - Behavior-Driven Development
ps: em geral,
UML represent general types of behavior
no entanto, ainda pode ser usado para modelar seu design com o conjunto correto de categorias selecionadas (como um diagrama de sequência).I would reference the Wikipedia and find the right UML diagram category to use.
fonte
Foi feito um trabalho para adaptar o aplicativo da Web à UML, chamado de extensão WAE, e há um livro chamado Construindo aplicativos da Web com UML por Jim Conallen, explicando-o em detalhes. Você pode ver variáveis e funções do JavaScript no diagrama de classes.
Por que acredito que é a melhor opção para modelar aplicativos da web? Porque todo mundo sabe como o diagrama de classes funciona e essa é a coisa mais próxima dele. É muito fácil de entender e os programadores ficam com preguiça de ler a documentação em palavras, mas olhar para um diagrama não é tão difícil;). No entanto, se você deseja ver o que acontece na execução, deve procurar um diagrama de sequência, porque no aplicativo da Web, em algum momento os arquivos são gerados dinamicamente.
fonte
Também existem modelos de comportamento na UML que você pode usar para representar o comportamento do sistema, como Diagramas de Sequência ou Diagrama de Gráfico de Estado
fonte
Sim, você pode usar UML, principalmente diagramas de sequência .
Com relação ao uso de diagramas de classes , depende se você projeta seu aplicativo usando princípios de design orientado a objetos ou não. Se você possui apenas algumas funções JavaScript, os diagramas de classes não acrescentam muito. Se você usar protótipos de objetos JavaScript para simular um tipo de classe, esses diagramas serão úteis.
Com base na minha experiência no design de front-ends Javascript em UML, escrevi um white paper sobre o assunto: Design técnico em UML para aplicativos Angular .
fonte
Parece que você pode usar a UML para JavaScript, mas isso dependerá de como você abordará seu trabalho.
Especificamente, o JS / UML pode automatizar a documentação UML para JSDoc, Dojo, YUI.
Eu acho que há mais por aí, mas ainda não encontrei mais nada.
fonte