Re: The Revenge of the Geeks
Date: Sat, 26 Jan 2013 12:40:18 -0600
Message-ID: <ke1811$g4n$1_at_news.albasani.net>
On 1/26/2013 5:25 AM, Arved Sandstrom wrote: > On 01/26/2013 01:31 AM, BGB wrote: >> On 1/25/2013 9:05 PM, Arne Vajhøj wrote: >>> On 1/24/2013 11:31 PM, BGB wrote:
>>>> On 1/24/2013 9:15 PM, Arne Vajhøj wrote:
>>>>> On 1/24/2013 10:10 PM, BGB wrote: >>>>>> On 1/24/2013 4:58 PM, Arne Vajhøj wrote: >>>>>>> On 1/24/2013 5:10 PM, BGB wrote: >>>>>>>> On 1/24/2013 10:06 AM, Arne Vajhøj wrote: >>>>>>>>> On 1/23/2013 11:47 PM, BGB wrote: >>>>>>>>>> but, in any case, with the other languages there are a wide >>>>>>>>>> range of >>>>>>>>>> libraries available, many under fairly open licenses (like MIT or >>>>>>>>>> BSD), >>>>>>>>>> and there is a lot more GPL stuff available, >>>>>>>>> >>>>>>>>> In the EE space you would need to look at CORBA or DCOM. >>>>>>>>> >>>>>>>>> You would prefer Java EE believe me. >>>>>>>>> >>>>>>>>> :-) >>>>>>>>> >>>>>>>> >>>>>>>> errm, so you can't just copy all the files over to ones' servers? >>>>>>>> and/or >>>>>>>> recompile the code for ones' servers?... >>>>>>> >>>>>>> The coding model in Java EE is definitely more modern than that >>>>>>> of CORBA and DCOM. >>>>>>> >>>>>> >>>>>> I didn't mean like CORBA or DCOM, but probably directly copying over >>>>>> program binaries (DLLs or SOs and precompiled binaries and similar), >>>>>> and >>>>>> probably using traditional compilation and linking. >>>>> >>>>> You lost me. >>>>> >>>>> How to get the same type of services as Java EE provides is related >>>>> to copying binaries how? >>>>
>>>> I may be missing something here...
>>>>
>>>> because... it involves linking against and using libraries, correct?...
>>>>
>>>> like "both languages have libraries, but maybe not the same libraries".
>>>>
>>>> as in, for Java, you can copy around and use a JAR.
>>>> or in C or C++, you link against the DLL or SO, or use a static-library
>>>> (which then becomes a permanent part of the binary), ...
>>>>
>>>> like, for Java there is LWOGL, and for C there is "opengl32.dll".
>>>> or, one person uses AWT or Swing, and another uses GDI+ or WinForms.
>>>>
>>>> if you have some program and need to run it on a web-server, it can be
>>>> copied over into its "cgi-bin/" directory or similar, or set it to run
>>>> at start-up as a deamon (or a as a service on Windows, or launch it via
>>>> "start-up applications" or similar).
>>>>
>>>> if end users run a program, they typically download it off the
>>>> internet,
>>>> maybe as a ZIP, or maybe as a self-extracting "setup.exe" or similar.
>>>>
>>>> any libraries would be contained inside, and copied over into the
>>>> relevant directories. any data files are typically copied along as
>>>> well,
>>>> and the installer might put everything in its place.
>>>>
>>>> and, if a person needs new libraries for a project they are developing,
>>>> they will go and download them off the internet, maybe recompile it
>>>> from
>>>> source, ...
>>> >>> You copy jar files in Java EE just like you do in Java SE. >>> >>> The difference is in what the libraries do. Not how they are >>> distributed. >>> >> >> yes, ok. >> >>
>>>> I actually have little idea how DCOM or CORBA fits into this, as they
>>>> are network protocols (like for doing RPC),
>>> >>> They are not. >>> >>> CORBA is a component model that uses IIOP as network protocol. >>> >>> DCOM is a component model that uses ncacn_tcp as network protocol. >>> >> >> fair enough... >> >> I haven't really used either of them personally, FWIW. >> >> I will assume then that they are probably for inter-operation with other >> servers or similar? > [ SNIP ] > > Both CORBA and DCOM are meant for distributed applications. Like Arne > said, both have to do with software components on numerous different > machines, possibly different languages, and having defined interfaces > for RPC. Myself I wouldn't even use the term "server" to explain what > DCOM and CORBA do, not at a high level. >
if it is on a different machine, and is providing something for being accessed over a network, wouldn't that machine be by definition a server?
>>>> but, for most client/server apps I am familiar with are more like:
>>>> server runs somewhere (opening a listen port, for example, port 80 for
>>>> HTTP, ...);
>>>> user downloads and runs client;
>>>> client opens socket to connect to server (such as TCP or UDP);
>>>> then they share whatever data is relevant over the socket, using the
>>>> relevant protocol (often application-specific).
>>>> > [ SNIP ] >>> >>> Let me give you a very simple example. >>> >>> You want to allow browsers to connect to your code and be >>> told what the time is. >>> >>> You could write that in Java SE. You listen on port 80, accept >>> a connection, start a thread that parse the request and outout >>> the response. >>> >>> With Java EE you could write now.jsp: >>> >>> <%=new Date()%> >>> >>> and Java EE would handle sockets, threads, reading and writing for >>> you. >>> >>> The JSP get compiled to Java that get compiled to byte code that >>> get JIT compiled. >>> >> >> ok, so it does something sort of like a web-server then, but with Java >> taking the role of PHP or similar? >> >> I guess maybe that has to do with the whole "application server" thing, >> which was another part I didn't really understand what it was doing >> exactly... > [ SNIP ] > > Don't make the mistake of thinking that Java EE == web application. > Although I expect that a lot of Java coders who write only web apps in > the Java EE space may get to thinking that way. > > Your typical Java EE enterprise app running on top of a Java EE > application server may or may not have a web tier. Just like servers > written in other languages on other platforms may often also have > nothing whatsoever to do with HTTP and HTML and web browsers. > > But I suppose if you look at the numbers of Java EE app deployments, > I'll speculate that the very large majority are web apps or at least > incorporate one. >
ok, but all this is still a bit outside my area.
> Since you mentioned PHP, and Arne mentioned JSP, you're aware that you > might run a PHP app on Apache with mod_php. Think of that latter as > being your app server. Similarly, if you want to run an ASP.NET MVC app, > you might set up an IIS website for it - IIS is your app server. In the > case of Java EE web apps using JSP as a view technology (with or without > JSF in the picture) then a Java EE server is your application/web server. >
I think I may have enabled mod_php, partly as IIRC the MediaWiki installation instructions said to do something like this (along with which things to install, ...).
I have not personally messed with IIS or ASP.NET.
the vast majority of code I have written in C# has been either small tools (command-line or sometimes with a GUI), or Paint.NET plugins. Received on Sat Jan 26 2013 - 19:40:18 CET