There was some interesting points brought up, and I can see that on some things, I was not able to quite communicate what I meant.
On 7/14/05, Bill Cavalieri [email protected] wrote:
Generics
Its not difficult to emulate generics with php callbacks. Many documented examples of this, just google, c++ has had generics for eons, and not surprising that people would come up with ways in php either.
This was not a c++ vs .NET, this was php vs. .Net. The fact of the matter is that C# has this built in and it's quite easy to use. No looking for third party software. This is going to be a theme. Yes, you have many solutions to problems in php, but for the most part, they are third party.
Strongly Typed Data Types
Thats a religious battle thats been around since types themselves. You can argue the merits of dynamically vs static types all day, If its important to know the type, php has several methods to determine what the type can be (its dynamic after all).
Ok, we can agree to disagree on this. I can't stand the thought of the compiler trying to figure out what I meant when I wrote the code. I always want it to be explicit.
Function Overloading
Not sure of the merit of function overloading, when php types are dynamic anyways (although I could see if number of arguments vary). But easy enough to emulate with func_get_args(), and some type checking code in the function.
This is an extremely helpful feature. Once again, you are talking about emulation, which only makes the code more complex.
URL Rewriting without resorting to writing C modules for the webserver (there might be a way to do this with PHP, but I've not found it)
I'm not clear what your wanting to do here, but there is no shortage in methods of url rewriting.
Can you do URL rewriting in pure PHP? I don't know, but if you can, no arguements from me.
Databinding to either business objects or datasets Number of controls (Gridview, Details View)
No shortage of php classes to do grids, tables, graphs, etc.....
I agree, but there are all third party, and do not have the features that are contained in the .Net framework. I know, because I've spent many hours looking for a php datagrid like control, and found nothing that would work. In .NET 2.0, you can have a fully function CRUD datagrid without writing a single line of code. I'd like to see that in PHP.
Personalization with custom objects Automatic Membership / Subscription functionality with the Provider
A zillion ways to do this, lots and lots of pre-written classes as well.
Yes, I know that there are a zillion ways to do this, but show me one that is as easy to use as .NET's version? Or one that is shipped with the distribution. It doesn't exist. Once again, I can implement all this in .NET without writing a single line of code.
Multiple Languages possibilities inside projects or applications
I use perl, php, and even soap calls back to a realbasic daemon in projects/applications. I know asp.net does it differently, but definitely ways to do it with php.
I understand that, but do you have ways to pass objects around between all those languages without serialization, or share libraries? Once again, I might be ignorant in this area, but it didn't take me but about 30 seconds to grasp this concept in .NET.
Ok, seems as though we've gone a little OT, so I'll quickly summarize my points. Sorry about that. I'm off to code some Ruby!