php[architect] logo

Want to check out an issue? Sign up to receive a special offer.

Object Orientation

November 2019

There’s more than one way to solve a problem, and one popular approach to designing software is to use classes, interfaces, and objects. Using OOP effectively takes practice augmented with dedicated study. This issue rounds up articles on how to get started with object-oriented programming, understanding the dependency injection pattern, and more.

Object-Oriented Programming: A Primer, Part One

By Matthew Turland

If you’re not familiar with the phrase “object-oriented programming” or haven’t done it before, this article is for you! We’ll start from basic principles and build upon them until you have a decent foundational grasp of what object-oriented programming is, why you should consider doing it, and how to do so.

Building PHP Extensions With C++

By Lochemem Bruno Michael

PHP extensions are primarily composed of additions (functions and classes) to the PHP userland. Considering the PHP virtual machine is built in C, it holds that extensions are generally idiomatic C-based syntaxes. C++, a syntax-base with C-linkage capability, is an eligible extension-builder language and quite robust in its offerings. In particular, C++ 11 and newer versions boast modern features such as Lambda functions, the auto keyword, and templates. Together they can allow for the materialization of powerful PHP modules when used in conjunction with PHP engine-facing syntax.

How To Avoid Job Stagnation

By Dawid Debinski

The average time spent by a developer in one company is 3.2 years. Some companies have a rule, anyone not promoted by that time, can be fired. Those three years are critical because it’s enough time to know everybody around, learn what a company expects, and finally, you should get a promotion notice.

Education Station: Dependency Injection, Part One

By Chris Tankersley

Design patterns provide useful approaches for solving common problems in application design. Dependency injection is a powerful one, but it is also challenging to understand and apply. In this article, we’ll cover what it does and how to use it properly.

The Workshop: What’s New in PHP 7.4

By Joe Ferguson

PHP 7.4 brings typed properties, arrow functions, coalesce assignment operators, and more. PHP 7.4.0RC4 was released on October 17th. There’s still plenty of time as the current planned date for general availability of 7.4 is November 28th, 2019, according to the PHP 7.4 timetable.

Pragmatic PHP: Think Like a Computer

By Edward Barnard

There’s a skill fundamental to software development I’ve always found useful. This skill is essential when working with every programming language, including PHP and when working across PHP frameworks. Like all skills, mastery comes from study and practice. We’ll even discuss how beginners can practice this skill with just HTML and CSS.

Security Corner: Responsible Encryption

By Eric Mann

As early as 2018, many governments began calling for the tech community to create so-called “responsible encryption.” Their goal is for tech companies to provide blessed “back doors” for law enforcement to decrypt and otherwise inspect messages and data created by citizens within their borders. These calls and the arguments made to support them, however, are horribly misguided and do incredible harm to our overall security and privacy.

Community Corner: San Diego PHP

By Eric Van Johnson

You might recognize me as one of the contributors to the php; if you’re not familiar, it’s a great companion to the magazine and the community of PHP podcasts! I’ve been a subscriber to the php[architect] magazine since 2003, so I was thrilled when Oscar Merida asked me if I would be interested in contributing to Community Corner. I am going to take a little different approach to the Community Corner and focus on the various user groups, who they are, and the awesome people running them.

finally{}: Frameworks Don’t Make Any Sense

By Eli White

Now that I have your attention, let’s talk about why the title of this article, I feel, is entirely wrong (though I used to believe it). I’m writing about this because I’ve had a sordid history with frameworks and want to share where I’ve landed.

Leave a comment

Use the form below to leave a comment: