Well, I'm not a Java fan myself, I've always been C/C++ guy, till I started
working with PHP, but for me Programming Languages are tools that you use to
accomplish things, and that's the way I think we should look at them, before
starting the comparison.
About performance, yes it's expected to have a lower performance, but it
gained the speed the hardware is offering, but it feels that way cause it's
slower than everything else. well try running OpenOffice on a PII with a
32M/ RAM machine and you'll see there is a difference :P.
About OO, well OO is a programming style, the language only offers you tools
that would make it easier to implement, I've written a lot of OO
applications using C, and believe me, whatever the programing language is
fully OO, I can assure you that you can write your applications in a
Top/Down code style.

Also, strongly typed languages are not just about defining a space in the
memory, and one of the problems I had with PHP is that it doesn't have the
double type, I needed that while writing a package that calculates the
praying times in a day, and the precision I needed for it, well it had an
error of minutes, which wasn't a good result, so I needed to write it in C,
and call it from PHP to get a better result. and sometimes you just need to
specify the actual type of a certain variable, in a big application, a
variable tossed around the whole application his type might change in the
middle of something that has a bug, causing a logical error in the end. I
prefer to see that as a warning, or an error.

Also code generators are not as bad as people talk about them, they are very
useful for all types of languages, I have bash and vim scripts all over my
machine that it's job is to generate certain code for me that I don't think
that I need to waste my time writing, it saves me a lot of time, also most
of the frameworks (including rails) have some certain feature that would
generate part of the code for you. If I had a better knowledge with gtk I
would write a wizard to generate most of the stuff for me, like imagine
every time I need to write a class, I would write the basic class structure
that I use for most of the classes I write. also I hope I can write a class
generator for inherited classes, to at least write the function prototype
for all the abstract functions in its parent. using my written generators, I
managed to cut down about 25% of the time I need to write a certain
application, we really waste a lot of time writing stupid stuff that we
don't even think about.

it's a very nice quote, but when it comes to the point that Java runs on all
platforms, well this is really not true, have you ever tried Java with a
64bit OS (which is not Mac of course), it's a real pain in the A**. also I
guess there is no Programming language that runs on all platforms, it should
say it's easy to be ported to all platforms, and the best thing to do to
achieve that, is to publish your source code, and use only open source
libraries in it (i.e. comply to the gnu standards), that way, someone might
figure out a way to run it on his system, and whatever Suns CEO says, Java
is still not open source which makes porting harder.

If you want to see on it's best performance, try it on Mac OSX, as it's
built into the core of the OS, (an upgrade of the JVM used to require a
reboot, I don't know how it is now, I haven't used a Mac in a very long
time).

but still a lot of problems arise in scripted languages, like the system
exceptions, it's different from a language to another, but for example, PHP
(as when it was built it wasn't written to be a language that supports OO)
till the moment, a lot of errors can happen and you have no way of handling
them in your application, I know it's uncommon, but for me, I had to deal
with a lot of Segmentation Faults with it, also the common problem, a Fatal
Error for reaching the maximum memory limit, cannot be handled via PHP in a
productive way.

This is what is on my mind right now, I have to go back to working :P

On 11/16/07, Al-Faisal El-Dajani <[EMAIL PROTECTED]> wrote:
>
> Hey Guys,
>
> I just had a _very_ heated debate with a friend of mine about the merits
> of using Java, and just wanted your input on the matter. I was a Java fan up
> until I left university and met the real world, and there, the whole
> paradigm of predefined variables just crumpled on itself.
>
> I just can't stop thinking that in the 12 years that Java has existed (and
> hardware has evolved 8x, according to moore's law), Java applications have
> not gained one ounce of speed that the hardware should be giving. I mean,
> they seem to be some kind of performance blackholes. Seriously, whenever I
> use any Java application (Azureus, OpenOffice, Eclipse), I actually feel
> physical pain.
>
> And ever since I tried out PHP and Ruby, I just completely lost faith in
> ALL strongly typed languages. I mean, come on, do I really need to specify
> that this variable is a double? It's some space in memory that I use to
> whatever ends I see fit. If you want to protect me as a developer from using
> my variables in the way I want, then perhaps the language should be
> developed using wizards and auto code generators like a certain set of other
> languages does.
>
> The Java proponents, however, keep saying "well, it works on all
> platforms". That is true, but I'll take online applications over Java anyday
> of the week. I actually _prefer_ network latency to Java's performance, at
> least the PC would be free to do a sophisticated thing as "Multitasking".
> And sometimes I retort with this qoute <http://bash.org/?338364> which
> usually shuts them up :).
>
> Another point that Java proponents use (or at least try to), is the claim
> that Java is an OO language as opposed to PHP (and they seem to prefer JSP
> over PHP, go figure...). Of course I would (politely) point to them that
> PHP5 is OO, and more importantly that Java is not fully OO. No offense, but
> ever after using Ruby, I don't view Java to be the pinnacle of OO (as it
> shouldn't be).
>
> Now don't get me wrong, this extends to languages far beyond Java, but the
> question I have is: Am I being overly critical of Java? Is there any merit
> to my points? or theirs? What's your input?
>
> --
> Al-Faisal El-Dajani
> Phone: +962-7-79 73 70 50
> P.O Box: 140056
> 11814 Amman, Jordan
> >
>


-- 
                                 Ala'a A. Ibrahim
http://guru.alaa-ibrahim.com/

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Jolug" group.
 To post to this group, send email to [email protected]
 To unsubscribe from this group, send email to [EMAIL PROTECTED]
 For more options, visit this group at 
http://groups.google.com/group/Jolug?hl=en-GB
-~----------~----~----~----~------~----~------~--~---

رد على