0

I have some questions on modularization of a Prism application:

  • Are there any (official) references with recommendations regarding this topic?
  • What are your personal experiences? Do you have worked at some bigger or smaller projects where some strategies have been better?
  • Are there any disadvantages of having too much or too few modules?
  • Would you create a module for huge parts / components of the application or would you create modules for much smaller portions, like a toolwindow or the statusbar or something like that?

Thank you in advance!


I would be glad if you would comment how I can improve my question or why you vote it down.

EDIT: As an additional information: My project currently scales at > 30 Prism modules.

ˈvɔlə
  • 9,204
  • 10
  • 63
  • 89
  • I didn't downvote, but I suppose you should give some information about your application. Otherwise, it's nigh impossible to give a sensible answer... – Haukinger Oct 16 '17 at 10:03
  • @Haukinger For my question, it doesn't matter if it's a small application or a big enterprise solution. I just wan't to know if there is a reference where I can read about it. – ˈvɔlə Oct 16 '17 at 10:12
  • My guess on the down-vote: You’re asking 4 questions. The first one is asking for an offsite resource. The rest are asking for opinions. The link you cite is for resources that are at least 3 years old. It seems like you have done little of no research outside of asking this question. Just clicking on the [Learn more…](https://stackoverflow.com/tags/prism/info) link for this Prism tag on the question would likely have given you much of what you need. Many of the questions aren’t about programming issues, they’re about programming techniques, which tend to attract debate and opinion. – R. Richards Oct 16 '17 at 12:02
  • @R.Richards I think my question can be answered with one sentence and an url... The very outdated resource I mentioned is a very good example why I don't find any good resource. The 'Learn more...' description of the prism tag contains a 404 to the current documentation and the other resource is the github page, which I have red multiple times but does not answer any of my questions. I already researched a lot, but cannot find anything good... But I agree with your last argument. – ˈvɔlə Oct 16 '17 at 12:43
  • Here are the docs. This link is on the home page of the Prism site: http://prismlibrary.readthedocs.io/en/latest/ –  Oct 16 '17 at 14:13

1 Answers1

1

I have developed several applications with PRISM and there are different approaches to how split the code between modules:

  1. Functionality: if your application can work with different features on or off every feature should be a module, therefore you would deploy the feature only if it is active.

  2. Teams: if your application will be developed by different teams the code made by a team should be located on one or more modules. As teams wouldn't have any hard reference both can build their modules without sync'ing with the other team(s).

Modules have an impact on startup time so there should be a reason to create it, the more modules you have the slower the startup. A module should be created based on the two previous assumptions.

Ignacio Soler Garcia
  • 21,122
  • 31
  • 128
  • 207