[plug] Program modularity/(Server Client?) - IHCC
Tim White
weirdo at tigris.org
Tue Aug 31 09:25:04 WST 2004
I have been reading 'The Art of Unix Programming' [Eric S. Raymond] and
while reading it I learnt lots. Due to my reading I rewrote much of
IHCC[1] before releasing the first public version. This lead to a much
more modulised code base and easied later changes to file formats and
handling of some features.
I initially wrote IHCC in PHP so that it would run on most OS's and so
that you didn't need any special permissions on the server other than
PHP. I have been thinking of adding other frontends and have come to the
realisation that I probably need a real backend and was looking for
opinoins on different methods. I want the application to be reachable by
web browsers, command line programs, x programs, telnet, etc ... so that
it can be accessed through as many methods as possible. The /MAIN/
reason for this is the realisation that not everybody wants a html frontend.
I also don't want it to require to much on the server. Mainly a shell
account and webspace if the webfronted is to be used.
* Perl/C/C++/... server, client connects to port *X* and sends commands
and recieves replies similar to POP or IMAP?
* Perl/C/C++/... backend program that clients call directly and process
the output (can be part of a pipe) - Would also have a 'server' client
so that servers and clients can be on seperate machines
* C/C++ libary[2] loaded into each client (Can this be done in PHP?)
For all but the first method I would write a 'generic' gateway so that
almost any application could communicate with the server. It would be in
the form of ether:
* A server listening on a port (like the first option)
* A php/cgi script on a web server getting commands from GET, or POST
data and recieving txt replies (XML or Token seperated values)
One of the MAIN features of IHCC is that it requires no database due to
it using its own flat file and doesn't need CGI access.
Please comment on all features as well as their crossplatformness. I
would prefer if the backend could run on any OS and the front end on the
majority.
Thanks
Tim
[1] A IRC like web based chat room. http://sf.net/projects/ihcc and to
see the demo ihcc.sf.net/demo
[2] Like a DLL under windows that you can call the function for
More information about the plug
mailing list