Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

review the FamixTag / subtag model ? #20

Open
NicolasAnquetil opened this issue Dec 20, 2021 · 3 comments
Open

review the FamixTag / subtag model ? #20

NicolasAnquetil opened this issue Dec 20, 2021 · 3 comments

Comments

@NicolasAnquetil
Copy link
Contributor

currently tags can have sub-tags, but this is not a clear model:

  • Does it mean that a sub-tag is a sub concept of a tag ? In this case the sub-tag should only contain entities that its parent tag have (this is not checked)
  • Does it mean that a sub-tag is "tagged" by its parent tag ? But what would it mean for tagged entities?

For now, it seems a simple model with categories, tags, and no sub-tags is enough to fulfill many needs.

@jecisc
Copy link
Member

jecisc commented Dec 20, 2021

Hi,

In the use of tags currently, a subtag is a subconcept of a tag.

If we have a tag Car and a subtag SteeringWheel, if we tag something with SteeringWheel we do not need to tag it with Car also. It should be implicit that if something is tagged with a subconcept, then it is also part of the higher-level concept.

This was useful to split god classes. Maybe it's overkill for other uses.

@NicolasAnquetil
Copy link
Contributor Author

OK, thanks a lot for reminding this.
Do you remember what was exactly the scenario (how it was used to split god class) ?
To try to see if we can do the same thing in some other way (see also #18)

@jecisc
Copy link
Member

jecisc commented Dec 27, 2021

The concept of nested tags is used to represent composite entities.

For example if we want to rearchitect something to have a package A containing a class B containing a method C but currently in the real code we have only a method C we can create a tag A with a subtag B that tags C.

@anneetien anneetien transferred this issue from moosetechnology/Famix Jul 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants