FAQ |
Kalender |
|
![]() |
#1 | ||
|
|||
Klarade millennium-buggen
|
Citat:
Jag håller med om att språket har utvecklats till det bättre bland annat i och med att de har infört PDO som är ett stort lyft när man jobbar med databaser. Jag vet inte vad det är som är så speciellt med PHP. Det finns flera riktigt bra språk som har bättre stöd till utvecklaren och som är gratis att använda. Jag har kört Mono-Complete i Ubuntu med C# och VBN (VB.NET-clone) och jag kan använda min invanda Visual Studio-miljö i Windows att skapa exe-filer som jag sedan kan lyfta över och köra binärkompatibelt i Ubuntu/Linux-miljön (om jag har paketet Mono-Complete installerat), det funkar riktigt bra och det är då fullt ut objetorientrat med stark typning och semikompilerat till .NET IL-kod (ungefär som Java funkar). PHP-interpretern självt är ju skrivet i C++ och Windows-versionen kompileras med Visual Studio version 11. Jag tycker även att Java är betydligt vassare än PHP. Java, C#, J# och J++ är mycket snarlika varandra i syntaxen. Så det är mycket lätt att växla mellan dessa språk. Jag har även kört Gnu C++ och tycker att det är betydligt vassare än PHP. PHP har visserligen samma grundläggande syntaxstruktur med måsvingar för markering av kodblock, men brister i typningen. Vissa gillar det andra inte, för mig är det egalt. Jag använder både måsvingar och de utan som VB.NET och har inga känslomässiga problem med dem. Stark typning är en viktig del för att få så mycket hjälp som möjligt av kompilatorn att kolla att jag som utvecklare har använt rätt datatyp eller klass. PHP har den lustiga egenheten att det har en "implicit" typning så PHP-interpretern väljer datatyp utifrån den första tilldelningen av en variebel. Om den första tilldelningen var fel så följer det felet med och det tar onödigt lång tid att felsöka. Har man stark typning med en egen deklaration före första användningen av en variabel så får man en extra kontroll som är väldigt viktig i större IT-system. Har man gjort fel i själva deklarationen så upptäcker man det redan vid första tilldelningen eller ibland avläsning av variabeln. Man får även bättre stöd av IDEn då det går att få mer Meta-information som hjälper till att höja produktiviteten mångfalt, se exempelvis "IntelliSense" som finns för exempelvis Java i Eclipse och har funnits många år i Visual Studio. Du får gärna peka på de tekniska fördelar du ser med PHP så ska jag genast undersöka dem. Jag söker hela tiden efter nya kunskaper och best-practise. För mig är det viktigt att ett programmeringsspråk har: - Inkapsling för att dölja komplexitet och göra det förutsägbart och därmed "tryggt" att bygga större system - Modularitet för at enkelt lägga till och förändra funktionalitet - Stark typning för att hitta fel som programmeraren gör direkt vid kodning/kompilering - Kompilering för att dels skydda kod mot ändringar av obehöriga och underlätta modularitet - Objektorienterad paradigm med alla dess övriga fördelar - Numera finns även namespace för att underlätta modularitet och inkapsling med namnrymder - Återanvändbarhet (inte "cut and paste" som mångfaldigar underhållsproblem) är ett mycket viktigt område som är ett kapitel i sig |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Bara ett inlägg till!
|
Citat:
fördelarna jag ser med det är att det går snabbt och enkelt. det går att köra på simpla webbhotell utan att behöva köra MS-licenser och kör man t.ex ett cms så finns det så sjukt mycket färdigutvecklat. sen finns det en hel del nackdelar med det, den största som jag ser är t.ex att det är just ett scriptspråk och det går segt när man har extremt mycket kod, eftersom det inte kompileras. kolla på t.ex magento som är ett superstort system byggt med Zend framework och miljontals rader. går superslött, men många löser det den enkla vägen genom att köra bättre hårdvara med SSD diskar och annat. |
|||
![]() |
![]() |
![]() |
#3 | |||||||
|
||||||||
Har WN som tidsfördriv
|
Conny. No offence, men du måste nog uppdatera dina kunskaper här lite.
Citat:
Citat:
Citat:
Citat:
Finns väldigt bra stöd för objektorienterad sedan PHP 5.3 och den blir bättre och bättre för varje version. Det finns i dagsläget få brister när det gäller det här jämfört med Java eller C#. Citat:
Citat:
Det finns däremot andra områden där det finns viss förbättringspotential när det gäller PHP, men jag tycker inte alls du träffar rätt här. Citat:
Senast redigerad av pelmered den 2013-06-22 klockan 13:08 |
|||||||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Medlem
|
|||
![]() |
![]() |
![]() |
#5 | |||
|
||||
Har WN som tidsfördriv
|
||||
![]() |
![]() |
![]() |
#6 | |||
|
||||
Bara ett inlägg till!
|
Citat:
|
|||
![]() |
![]() |
![]() |
#7 | |||
|
||||
Har WN som tidsfördriv
|
Citat:
|
|||
![]() |
![]() |
![]() |
#8 | |||||
|
||||||
Klarade millennium-buggen
|
Citat:
Citat:
Citat:
Citat:
Det finns visserligen PECL för att skapa nya utökningar i PHP som jag ännu inte kört. Jag tyckte dock det var knepigt att förstå hur det var uppbyggt, men jag ska kolla vidare på det. Jag tycker det borde finnas en möjlighet att kompilera till endera till MSIL eller Java Byte-kod eller motsvarande "PHP bytekod/ILkod" alternativt till ren maskinkod för att skapa motsvarigheten till *.DLL, *.LIB eller *.SO filer. Idag behöver jag kopiera källkoden för att kunna återanvända koden, eller använda "include". Vilket är sämre varianter av "återanvändning". Jag tycker det är viktigt att det finns denna möjlighet att använda externa tredjepartbibliotek som lätt kan användas vid behov, utan att för den skulll tynga ner "kärnan" av språket/interpretern/kompilatorn. Dessa externa återanvändbara komponenter är en av de viktigaste delarna vid återanvändning, eller komponenttänkandet. Citat:
Sammanfattningsvis så ser jag några viktiga saker som jag anser PHP måste blir betydligt bättre på: - Stark typning med möjlighet att ställa in "strict type mode" som man införde i VB när det gick från att vara ett löst typat till starkt typat språk - Kompilerande (Semi- till intermediate/bytekod eller native) - Mer komponenttänkande med exempelvis: DLL-, LIB-, eller SO-filer som kan länkas ihop med applikationen - Mer renodlat objektorienterad språkstruktur En strategi för att komma närmare detta mål är att helt enkelt renodla/kraftsamla språket så det följer dessa grundläggande principer och låta communityt utveckla komponenter för specifika ändamål. Som jag upplever det nu så verkar kommunityn behöva spendera mycket tid på att lösa grundläggande problem i språket, i stället för att tillföra nytt värde. Smart tror jag vore om man väljer att kunna kompilera för MSIL och/eller JavaBytekod så att man underlättar integration med dessa miljöer, så får man automatiskt ett rejält boost i integrationsfrågor med dessa miljöer. Senast redigerad av Conny Westh den 2013-06-25 klockan 18:55 |
|||||
![]() |
![]() |
![]() |
#9 | ||
|
|||
Medlem
|
Citat:
Dessutom, du kanske skall uppdatera till senaste PHP version istället för att klaga på något som är förbättrat i versionerna efter den versionen du kör. Känns lite som att klaga på dagens BMW 3 serie bara för att en BMW 3 serie från 80-talet är skit idag. Senast redigerad av JesperA den 2013-06-25 klockan 18:58 |
||
![]() |
![]() |
![]() |
#10 | ||
|
|||
Klarade millennium-buggen
|
Citat:
|
||
![]() |
![]() |
Svara |
|
|