Questions tagged [extensibility]
52 questions
125
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,978
25
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
- 259
- 3
- 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,764
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
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
- 276
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,043
8
votes
2 answers
Is there a term that's kind of the opposite of 'deprecated' - that's 'in future major versions this thing will be required'
In terms of deprecation strategies, we can mark a value as deprecated and this can imply that 'this thing exists now and should work, but in future major releases this thing may disappear and will break your code'.
eg:
type MyClient = {
/**
…
dwjohnston
- 2,725
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
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
- 731
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
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
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
- 841
- 8
- 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
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