|
Sponsored Link
|
I have been tinkering with CLANG's static analyzer lately. This post summarizes how I installed LLVM and CLANG and performed the analysis of a build of the PHP interpreter.
First, we need to obtain the CLANG and LLVM source trees and build CLANG:
cd /usr/local/src
mkdir clang
cd clang
svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
cd llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
cd ../../
mkdir build
cd build
../llvm/configure --enable-optimized --disable-assertions
make...
PHP has been around for a long time, and it's starting to show its age. From top to bottom, the language has creaky joints. I've decided to take a look at how things got to this point, and what can be (and is being) done about it. I start out pretty gloomy, but bear with me; I promise it gets better.
In the Beginning, There Was Apache and CGIAnd there was much rejoicing.In 1994, Rasmus Lerdorf created the a€oPersonal Home Page Tools,a€¯ a set of CGI binaries written in C. These tools looked...
Henrik BjĆørnskov has posted a bit of an in-depth look at Stampie, an abstraction library for sending emails from PHP applications via various service providers (like SendGrid and Mailchimp).So what is Stampie. Stampie is a API wrapper for the most common email sending services. It provides a standard PHP Api to send emails. But mostly it is a project to test TDD and experiment with a couple of different things. Stampie is developed with Dependency Injection and therefore there is a lot of objects. At...
As mentioned on the main PHP.net site, the latest Release Candidate in the PHP 5.4.x series has been released - PHP 5.4.0RC3:The PHP development team is proud to announce the third release candidate of PHP 5.4. PHP 5.4 includes new language features and removes several legacy (deprecated) behaviours. Windows binaries can be downloaded from the Windows QA site. THIS IS A RELEASE CANDIDATE - DO NOT USE IT IN PRODUCTION!. This is the third release candidate. The release candidate phase is intended as a...
PHPmaster.com has a new introductory tutorial for those just starting out with PHP (or with programming really) talking about using looping structures for sets of data - for, while/do-while and foreach.A significant advantage of computers is that they can perform repetitive tasks easily and efficiently. Instead of writing repetitive code you can write a set of statements that processes some data and then have the computer execute them repeatedly by using a construct known as a loop. Loops come in several...
On the PHPClasses blog today the question is posed "can .NET make PHP run faster than the official PHP implementation?" (relating to the use of the Phalanger tool to compile PHP down to .NET assemblies.Recently Phalanger 3.0 was released introducing numerous improvements in terms of compatibility with the PHP 5.3, interoperability with .NET platform implementations including Mono on Linux, and probably most importantly performance improvements. [...] What motivated this article was that a PHP developer...
Lineke Kerckhoffs-Willems has a new post to her blog today with an update about their in-progress site that wants to share tech knowledge through video, ProTalk:A lot has happened since my October post announcing ProTalk, the secret project I am working on with my friend, Kim Rowan. So much in fact that now seems the ideal time to update you on our progress! Now, down to business! Since announcing the project in early October we have achieved the [several] project milestones.The milestones include...
Here's what was popular in the PHP community one year ago today:Ibuildings techPortal: lessphp: PHP implementation of Less CSS
Webgeekly.com: 20 Tips you need to learn to become a better PHP Programmer
SitePoint.com: Introduction to Unit Testing in PHP with PHPUnit
PHPBuilder.com: 10 PHP Tricks for Associative Array Manipulation
iFadey.com: Get Flickr Images Using SimpleXML
Francesco Montefoschi's Blog: PHPADD: abandoned docblocks detector
Chris Hartjes' Blog: Fun with API's - FRAPI and django-tastypie...
Testdriven Development, also das Schreiben eines oder mehrerer Tests bevor der eigentliche Code entsteht, ist inzwischen ein alter Hut.
Ein groAYer Nachteil dieses Verfahrens ist, dass im agilen Umfeld die User Stories erst verstanden werden mA¼ssen.
Wenn die Story aber falsch verstanden wurde, dann wird auch der Test falsch implementiert.
Knackpunkt ist also immer noch der Abgrund zwischen Analyse und Verdeutlichung der GeschA¤ftsprozesse sowie dem korrekten Erfassen und testen eben jener.
Eine...
Can .NET make PHP run faster than the official PHP implementation?
By Manuel Lemos
Phalanger is compiler that generates .NET assemblies from PHP code, so it runs in a .NET virtual machine.
The latest benchmarks seem to indicate that PHP applications compiled by Phalanger execute noticeably faster than when they are executed by the official PHP implementation based on Zend engine, even when a caching extension is used.
Read this article to learn how Phalanger works and what lessons can be learned to...
When developing enterprise software one should always keep an eye on writing code that is easily maintainable, testable and extendable. Design patterns already propose a way to implement a loosely coupled architecture. With annotations you can take a step forward to make your code look even more expressive, focusing on the primary problem instead of writing a lot of boilerplate code. A single comment line can save you many more lines of code but as it is written in the project's domain language it will...
There's no doubt that Ajax is one of the most exciting, useful, and necessary web technologies available to front-end developers. Unfortunately, it's also one of the most restrictivea€‰-a€‰especially when it comes to gathering content from other domains. Web developers are nothing if not persistent, so we've come up with a variety of ways to get around cross-origin restrictions, including JSONP, server-side proxies made with PHP, ProxyPass proxying, Flash transports, creative iFrame uses, and more. What...
Article originally from rooJSolutions blog
This is NOT a post for people who do not use MVC, Please delete your code, and write it properly.. Anyway, as anybody who has used or written a reasonable framework in PHP knows, MVC is pretty much the golden rule for implementation. There are a dozen frameworks out their based around the principles, with different levels of complexity.My own framework was designed around those principles, and for many years worked perfectly for those classic display a crap...
In a recent post to his blog Devis Lucato introduces the "Inversion of Control" design pattern and shares an implementation he's created as an illustration - a Service Locator called Select.[In a Service Locator] all the dependencies are provided by a builder, which serves as a registry of dependencies and/or service definitions. The service locator knows how to instantiate each dependency. Such service exposes methods like 'getMailer()', 'getLogger()' etc. A service locator centralises the configuration...
In a bit of a ranting post on the WorkingSoftware.com.au blog Iain Dooley shares his opinion about most of the code he's seen, specifically related to templating engines: "Your templating engine sucks and everything you have ever written is spaghetti code (yes, you)".Templating is a real hot button in the web development community. [...] The high horses that people usually get on are that all too familiar TLA MVC (Model/View/Controller) architecture and "separation of presentation and business logic"....
On DZone.com today John Esposito has posted about three guides that want to help you improve your PHP development skills (including a forum post and two articles).Sometimes, then, improving your generic 'programming brain' will help you improve your facility with a particular language. At other times, it's more important to learn the nuances of a language, paying close attention to the kind of applications the language is used for. [...] For improving your PHP, then, you can do two things: become a...
The Ibuildings techPortal has posted the latest episode of their recordings from this year's Dutch PHP Conference - Derick Rethans' talk "Profiling PHP Applications".The web is full of useful advice focussed on pushing out the last bit of performance of your code. They mention trivial changes. like changing every occurrence of print with echo even suggesting to use for instead of foreach. These optimisations help, but you are not going to notice it unless they're in a tight loop with many iterations. It...
In a recent post to his blog Chris Hartjes looks at the idea of better HTTP Request/Response functionality in PHP, more than just the superglobal handling and PECL HTTP extension it has now.I think the fact that we have $_POST and $_GET lulls some of us into the false sense that we should have $_PUT and $_DELETE objects, since that would map to the commonly-desired set of HTTP verbs that REST likes to use. But what should be inside those things, or should we be moving towards a more Pythonesque solution...
The PHP development team is proud to announce the third
release candidate of PHP 5.4.
PHP 5.4 includes new language features and removes several legacy
(deprecated) behaviours. Windows binaries can be downloaded from the
Windows QA site.
THIS IS A RELEASE CANDIDATE - DO NOT USE IT IN PRODUCTION!.
This is the third release candidate. The release candidate phase is intended as
a period of bug fixing prior to the stable release. No new features should
be included before the final version of...
The CICONF (CodeIgniter conference) group has made a new post about the lineup for their next event including people like Adam Griffiths, Alex Bilbie, Alexis Serneels, Harrow "WanWizard" Verton, Nick Jackson and Tyler Flint.The chances are if you are using a library, addon, Spark or tutorial for your CodeIgniter projects it will have been written by one of these guys. Adam Griffiths wrote the book, Alex Bilbie has made some amazing OAuth 2 and Mongo code, WanWizard wrote DataMapper ORM - the most popular...
|
|