Questions tagged [modularity]

Modularity describes the degree to which a system’s components may be separated and recombined. It refers to both the tightness of coupling between components, and the degree to which the “rules” of the system architecture enable (or prohibit) the mixing and matching of components.

Modular programming is a software design technique that increases the extent to which software is composed of separate, interchangeable components. This is done by breaking down program functions into modules, each of which accomplishes one function and contains everything necessary to accomplish this.

Conceptually, modules represent a separation of concerns, and improve maintainability by enforcing logical boundaries between components.

http://en.wikipedia.org/wiki/Modularity

http://en.wikipedia.org/wiki/Modular_programming

729 questions
4
votes
2 answers

How to handle generic classes / interfaces in a modular application?

I am new to Java and I am coding up a modular application made like this: ************* ******* *********** * * * * * Data * * Front-end * -------- * API * ------- * Handler * * * …
nzapponi
  • 476
  • 1
  • 3
  • 14
4
votes
1 answer

Evaluation metrics for community detection algorithms

I want to evaluate and compare the result of my community detection algorithm in R. My algorithm doesn't allow overlapping, and there are some nodes that are not treated. For example, for the Zachary Karate club, I have 1 node not treated. I've…
Sasa88
  • 327
  • 1
  • 3
  • 15
4
votes
2 answers

How can I get automatic unique atomic counter binding points (no hard coded binding=)?

Many articles describe using atomic counters by specifying a fixed binding point: //Shader: layout(binding = 0, offset = 0) uniform atomic_uint myAtomicCounter; //App code glBindBufferBase(GL_ATOMIC_COUNTER_BUFFER, 0, myBufferHandle); Here, the…
jozxyqk
  • 16,424
  • 12
  • 91
  • 180
4
votes
2 answers

MS Access - best way to modularise/decouple forms for refactoring

So I've been working with a large access database recently and I've been thinking about the best way to begin refactoring it. One of the primary difficulties in refactoring, is most of the forms rely on data in other forms. The way it is currently…
wackozacko
  • 682
  • 1
  • 8
  • 18
4
votes
1 answer

What is the deal with returning empty functions for modularity?

More and more javascript has this modular approach where empty functions are returned. You can find it in the source of node.js. It's in the documentation of require.js. What does it do? define(['jquery'] , function ($) { return function()…
Redsandro
  • 11,060
  • 13
  • 76
  • 106
4
votes
1 answer

Questions on MEF strategy and structure

I am tasked with modularizing a C# app that is a rewrite of a very large Delphi app (the DB has 249 tables!). Business constraints proscribe a complete redesign for .NET and better overall architecture, so we are basically just incrementally…
ProfK
  • 49,207
  • 121
  • 399
  • 775
4
votes
1 answer

Maven multi-modules by features but sharing webapp

I'm building a multi-modules J2EE web application by Maven. The web business application contains several sub-systems / modules. To get high modularity, easy-for-distributed-team-development, easy code navigation, easy deployment and upgrading, we…
xoyoja
  • 436
  • 1
  • 5
  • 18
4
votes
2 answers

Titan Graph Database Modularity/Community Detection

Is anyone aware of an existing way to execute a modularity (community detection) algorithm on a Titan graph? I'm looking for something like Gephi's modularity feature which I believe uses https://sites.google.com/site/findcommunities/. The Gephi…
Bob B
  • 4,484
  • 3
  • 24
  • 32
4
votes
1 answer

Using modularization in Android

The objective is to be able to develop modules / plugins (apks) to a main application. I've googled and found that there is the use of intents through broadcast receivers (http://www.openintents.org/), but the weakness of this approach is the memory…
ricardo
  • 621
  • 1
  • 11
  • 22
4
votes
2 answers

Python framework as an alternative for "Java + OSGi" combination

I'm thinking about Python and C/C++ combination to replace the original concept about OSGi + Java + JNI + C/C++ in our SW architecture. I definitely don't need to replace all features of such OSGi frameworks as Felix or Equinox. What I really will…
Oleg Puzanov
  • 71
  • 1
  • 3
4
votes
1 answer

How do I resolve avoid duplicate symbols in common transitive Xcode dependencies?

I have the following Xcode project dependencies: A -> C B -> C When I build these separately, everything works fine. However, I want to add A and B to the same Xcode project, creating the following dependency graph: / -> A -> C D-< \ -> B…
Heath Borders
  • 30,998
  • 16
  • 147
  • 256
3
votes
5 answers

design patterns for code that breaks regularly?

I have this class that tries multiple methods of getting data from Google maps web services API. If one method fails, it tries another. etc. Something like this (pseudo code): FUNCTION FIND_ADDRESS( house_number, postcode ) get location…
AlexMorley-Finch
  • 6,785
  • 15
  • 68
  • 103
3
votes
1 answer

Struts 2 modular web application

I am using Struts 2 web application. It has lot of modules and functionality. I want to enable or disable (or remove) some modules based on customer requirement. But in Struts 2 under single WAR file deployment how can I make it as modular? Is it…
kannan
  • 571
  • 2
  • 6
  • 8
3
votes
1 answer

Good coding practice / modular HTML structuring

I am making a webpage with two levels. The first contains things like home, music, engineering, etc. Each level has a sublevel. Engineering would have circuits, programming, etc for example. I have a tab system set up for navigation that looks…
Chet
  • 1,209
  • 1
  • 11
  • 29
3
votes
2 answers

Modular design pattern

I'm trying to decide the design of a system which is meant to allow for a high amount of extensiblity. From what I can tell, a pattern such as the abstract factory would not allow for overriding of the base methods, apart from duplicating code (as…
Godwin
  • 9,739
  • 6
  • 40
  • 58