Questions tagged [extensibility]
50 questions
124
votes
7 answers
What is the most effective way to add functionality to unfamiliar, structurally unsound code?
This is probably something everyone has to face during the development sooner or later.
You have an existing code written by someone else, and you have to extend it to work under new requirements.
Sometimes it's simple, but sometimes the modules…

Coder
- 6,958
- 5
- 37
- 49
23
votes
3 answers
How would one go about building pluggable software?
If you have an application of some sort and you want your users to be able to write plugins for it, how should the application be designed?
What do you have to take into account, what design patterns are for this etc?

user9238
- 239
- 2
- 3
20
votes
19 answers
Programming languages with a Lisp-like syntax extension mechanism
I have only a limited knowledge of Lisp (trying to learn a bit in my free time) but as far as I understand Lisp macros allow to introduce new language constructs and syntax by describing them in Lisp itself. This means that a new construct can be…

Giorgio
- 19,486
- 16
- 84
- 135
14
votes
2 answers
How to make an ASP.NET MVC site modular
I'm in the planning stage for an employee intranet system to be built with ASP.NET MVC 4. We'd like the site to consist of separate "modules", each of which provides a different feature: messaging, payroll changes, etc. I'd like these modules to be…

bdesham
- 343
- 1
- 2
- 11
12
votes
3 answers
What are the pros and cons of using final methods (in abstract classes)
For the purpose of writing a coding styleguide, how should final methods in software design be judged?
By final I mean the Object-oriented sense that a class that can be subclassed provides methods, and that class using special syntax to prevent…

tkruse
- 246
- 2
- 11
12
votes
5 answers
How should I create a mutable, varied jtree with arbitrary/generic category nodes?
Please note: I don't want coding help here, I'm on Programmers for a reason. I want to improve my program planning/writing skills not (just) my understanding of Java.
I'm trying to figure out how to make a tree which has an arbitrary category…

AncientSwordRage
- 1,033
- 1
- 11
- 24
8
votes
3 answers
C++ Extensible namespaces - how to force declarations back into global namespace
It is good programming style to include all necessary dependencies in a header that references them. Often this includes declarations that are placed in the STD & global namespaces (like cstdio). However, this creates problems when a second…

bgulko
- 101
- 1
- 6
8
votes
3 answers
Java Generics - how to strike a balance between expressiveness and simplicity
I'm developing some code that utilizes generics, and one of my guiding principles was to make it usable for future scenarios, and not just today's. However, several coworkers have expressed that I may have traded off readability for the sake of…

RuslanD
- 721
- 6
- 18
7
votes
1 answer
Should I let my users write BnfExpressions to extend my grammar?
Preface
I'm designing a templating language (please skip the don't/why?? speech). One of the major goals of this language is to be extensible. There are 2 main elements in my language. "Tags" and "Directives". Tags, for the most part, map 1-to-1 to…

mpen
- 1,889
- 19
- 29
7
votes
1 answer
How to tackle extensibility considering the Data/Object Anti-Symmetry?
In Clean Code by Uncle Bob, page 124-125 he states
Procedural code (code using data structures) makes it easy to add new functions without changing the existing data structures. OO code, on the other hand, makes it easy to add new classes without…

Jp_
- 189
- 5
6
votes
3 answers
How to design a system that allows for multiple parallel extensions of the same "component"?
As a player, I found the following problems about creating and using "extensions" (aka mods) for games:
1) Whenever the game is updated, all the mods break.
2) Most mods don't work with each other, so the player "has to choose"
3) If you ever…

Sebastien Diot
- 791
- 6
- 13
5
votes
3 answers
Difference between extensible programming and extendible programming?
What exactly is the different between "extensible programming" and "extendible programming?"
Wikipedia states the following:
The Lisp language community remained
separate from the extensible language
community, apparently because, as one
…

loudandclear
- 381
- 3
- 8
5
votes
3 answers
How can I improve the ease of which I can extend my software?
I am thinking about how software like Microsoft Windows grows from small as MS-DOS to Windows 7, Adobe Photoshop from its first version to version CS5. What techniques were used to accomplish this? Did they extend their software from the existing…

Hafizul Amri
- 221
- 3
- 7
4
votes
2 answers
How to model classes that can be extendable?
I have recently inherited a codebase which has a weird problem and I am trying to search for an extensible solution that can solve my issue.
Consider I have a model class that is used as a model to populate data in the UI which looks something like…

BoredToDeath
- 367
- 2
- 6
4
votes
5 answers
Designing for 3rd Party Extensibility
I'm having trouble understanding how to provide an API to 3rd parties in order to allow extensions for desktop applications. I understand that if I'm using a compiled language (e.g. C++), I can load dynamic libraries as extensions at runtime,…

Matt Bise
- 51
- 4