[Asterisk-Users] Re: IAX2 Java library

Alastair Maw asterisk at almaw.com
Tue Nov 4 04:29:11 MST 2003


On 04/11/03 04:59, Steven Critchfield wrote:

>>But C isn't as maintainable as nice Java apps, and it's as simple as 
>>that. Basically, I'm after the most powerful interface possible to 
>>Asterisk, but trying to make it as friendly as possible to code things 
>>against. As far as our organization is concerned, that pretty much means 
>>Java objects.
> 
> So you bought that line of Marketecture didn't you. I think there are
> several large open source projects that prove that C is maintainable.
> Maintainability is really a function of organization. If you can't be
> organized, you will not produce very maintainable C code. 

Stop it right there. This mailing list isn't the place for language holy 
wars. Java is the tool of choice for our organization, and therefore 
Java code is more maintainable within it. Everyone here talks Java. Not 
everyone talks C. If we hire less good programmers, Java hold their hand 
and enforces structure in a way that C doesn't. I'm not arguing that 
decent C code isn't maintainable. I'm stating that in our particular 
case, Java fits the bill better. It's that simple.

As for this:

> It all comes down to the number of CPU cycles needed to perform a
> given function. When doing real time processing, a few cycles here
> and a few there can add up to make a real difference. Object Oriented
> is nice for ease of writing/maintaining code but all of those objects
> have blocks of code behind them. A slight inefficiency there can
> really impact performance. Sure we have faster processors and lower
> cost memory every 6 months but thats no excuse for not writing the
> most efficient code possible.

You're entirely wrong. Provided it's fast enough, it's all about 
maintainability, extensibility and scalability. The bottom line is that 
we're in it to make money. If it runs on hardware that's $100 cheaper, 
but takes four times as long to develop, then total cost is much higher. 
If it's easy to repurpose it at a later date, or easier to have someone 
unfamiliar with the codebase to come along and customize it, that's 
worth a lot. Both are significant, but maintainability is much more 
important than performance, as that's where the real cost lies.

-- 
Alastair




More information about the asterisk-users mailing list