Quantcast
Channel: PHP Hypertext Processor
Browsing index pages (69 articles)
↧

Refactoring Matrix

When you are beginning to consider refactoring your big legacy codebase towards a new software design, then it is not uncommon to feel helpless after estimating this to be a huge terrifying 2-5 years...

View Article


OOD: Injectables vs.Newables

Many projects I join - even those that claim to already do dependency injection - suffer from issues that result from mixing injectable and newable classes. Keeping these two appart seems to be...

View Article


Checklist For A Reliable Load-Test

Setting up a load-test that produces results you can rely on is not that simple. But without realistic test-results you cannot be sure that your application handles sudden increases of traffic, rapid...

View Article

Why Apache Benchmark Is Not Enough

You are working for months on a new web application or e-commerce system and usually a few weeks or just days before the launch a complete enough feature set is running on a production-like system so...

View Article

Methods Of Teaching

There are many different ways to teach topics of software developments. From recorded lectures to pair programming. Over the time we tried many of them with different customers and different topics. I...

View Article


Refactoring Singleton Usage to get Testable Code

So your code base is littered with singletons and using them? Don't worry, you can start refactoring them out of your code base class by class and introduce increased testability at every step. This...

View Article

Crafting Quality Software 2.0

The second version of our book "Crafting Quality Software – Gems From the Qafoo Blog" is ready and available for download from now on. In the recent months we wrote a lot about refactoring techniques,...

View Article

Five Tips to Improve Your Unit Testing

After you got the hang of unit testing there is still so much space for improvement. In this post I want to share five tips with advanced testers I have seen to influence testing in the right direction.

View Article


Refactoring with the Advanced Boy Scout Rule

When we join teams to coach them with refactoring their legacy code base, many of them are overwhelmed by the sheer mass of code. That typically results in the request for "some refactoring sprints" or...

View Article


Extracing Value Objects

Software systems usually get more complex over time. In the beginning a variable starts out to represent something very simple with very few rules and constraints that can are enforced in a single...

View Article

Testing the Untestable

A long time ago I wrote a blog post about Testing file uploads with PHP where I have used a CGI PHP binary and the PHP Testing Framework (short PHPT), which is still used to test PHP itself and PHP...

View Article

How You Can Successfully Ship New Code in a Legacy Codebase

Usually the problems software needs to solve get more complex over time. As the software itself needs to model this increased complexity it is often necessary to replace entire subsystems with more...

View Article

Loving Legacy Code

Many developers want to "rewrite the whole application" and "get rid of all that sh*t". Most of them are pretty blank when I tell them that I really like working on such code bases, even if I just...

View Article


How to Perform Extract Service Refactoring When You Don't Have Tests

When you are refactoring in a legacy codebase, the goal is often to reduce complexity or separate concerns from classes, methods and functions that do too much work themselves. Primary candidates for...

View Article

Extract Method

Refactoring is the process of restructuring code without changing its behaviour and the technique "Extract Method" is one of the most important building blocks of refactoring. What do you need to keep...

View Article


Extended Definition Of Done

When software projects grow it is considered helpful if the software follows an established structure so that every developer finds their way easily. If the used structures and patterns change per...

View Article

Refactoring: Extracting Data Objects

Extracting data objects from your code will make it easier to read and write, easier to test and more forward compatible. This post shows you the two most common cases where introducing a data object...

View Article


Refactoring Should not Only be a Ticket

In this blog post I would like to elaborate a bit further on why refactoring should never only be a dedicated task on your board. It should be an essential part of every task you work on…

View Article

Getting Rid of static

When people start (unit-)testing their code one of the worst problems to tackle are static calls. How can we refactor static calls out of an existing application without breaking the code and while...

View Article

Free eBook For Christmas

This year we do not only have Christmas presents for our customers for all of you. We created a book and an ebook out of the most important articles in our blog. Gave them a sensible order, so that you...

View Article
Browsing index pages (69 articles)


Latest Images