Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nahakiole/staruml-php
PHP extension for StarUML
https://github.com/nahakiole/staruml-php
code-generator extension php staruml uml uml-diagram
Last synced: 5 days ago
JSON representation
PHP extension for StarUML
- Host: GitHub
- URL: https://github.com/nahakiole/staruml-php
- Owner: nahakiole
- License: mit
- Created: 2019-02-27T14:42:16.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2020-09-22T08:49:50.000Z (over 4 years ago)
- Last Synced: 2024-04-14T06:00:07.049Z (10 months ago)
- Topics: code-generator, extension, php, staruml, uml, uml-diagram
- Language: JavaScript
- Homepage: https://staruml.io/extensions
- Size: 554 KB
- Stars: 18
- Watchers: 2
- Forks: 8
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
PHP Extension for StarUML
==========================This extension for StarUML(http://staruml.io) support to generate PHP code from UML model. Install this extension from Extension Manager of StarUML.
Based on https://github.com/staruml/staruml-java
PHP Code Generation
--------------------1. Click the menu (`Tools > PHP > Generate Code...`)
2. Select a base model (or package) that will be generated to PHP.
3. Select a folder where generated PHP source files will be placed.Belows are the rules to convert from UML model elements to PHP source codes.
### UMLPackage
* converted to _PHP Namespace_ (as a folder).
### UMLClass
* converted to _PHP Class_. (as a separate `.php` file)
* `visibility` to one of modifiers `public`, `protected`, `private` and none.
* `isAbstract` property to `abstract` modifier.
* Default constructor is generated.
* All contained types (_UMLClass_, _UMLInterface_, _UMLEnumeration_) are generated as inner type definition.
* Documentation property to PHPDoc comment.### UMLAttribute
* converted to _PHP Field_.
* `visibility` property to one of modifiers `public`, `protected`, `private` and none.
* `name` property to field identifier.
* `multiplicity` property to array type.
* `isStatic` property to `static` modifier.
* `defaultValue` property to initial value.
* Documentation property to PHPDoc comment.### UMLOperation
* converted to _PHP Methods_.
* `visibility` property to one of modifiers `public`, `protected`, `private` and none.
* `name` property to method identifier.
* `isAbstract` property to `abstract` modifier.
* `isStatic` property to `static` modifier.
* _UMLParameter_ to _PHP Method Parameters_.
* _UMLParameter_'s name property to parameter identifier.
* Documentation property to PHPDoc comment.### UMLInterface
* converted to _PHP Interface_. (as a separate `.php` file)
* `visibility` property to one of modifiers `public`, `protected`, `private` and none.
* Documentation property to PHPDoc comment.### UMLEnumeration
* converted to _PHP Class_. (as a separate `.php` file)
* `visibility` property to one of modifiers `public`, `protected`, `private` and none.
* _UMLEnumerationLiteral_ to literals of enum.### UMLAssociationEnd
* converted to _PHP Field_.
* `visibility` property to one of modifiers `public`, `protected`, `private` and none.
* `name` property to field identifier.
* `defaultValue` property to initial value.
* Documentation property to PHPDoc comment.### UMLGeneralization
* converted to _PHP Extends_ (`extends`).
* Allowed only for _UMLClass_ to _UMLClass_, and _UMLInterface_ to _UMLInterface_.### UMLInterfaceRealization
* converted to _PHP Implements_ (`implements`).
* Allowed only for _UMLClass_ to _UMLInterface_.---
Licensed under the MIT license (see LICENSE file).