PHPAlgorithms 1.0.0 is there

Doğan Uçar
2 min readOct 9, 2019

Last year, I announced PHPAlgorithms. Since then, I worked a lot on this repository as part of my personal learning progress on Algorithms and Datastructures.

Now, I am proud to announce that we have reached our first milestone – version 1.0.0. With the support of the community, we fixed remaining issues and made this release happen.

PHPAlgorithms 1.0.0 has breaking changes compared to its previous 0.x- versions:

Namespace Change: From Plural to Singular

For example, the namespace doganoo\PHPAlgorithms\Datastructure\Lists\ArrayLists has been changed to doganoo\PHPAlgorithms\Datastructure\Lists\ArrayList

strict_types=1 for Each Class

each class (including all test classes) got a strict types declaration, which means, that there is no (auto) casting where applicable. For instance, if your a method expects an integer and you pass a number as a string, PHPAlgorithms will throw an exception

Removed Deprecated Classes (such as HashMap, Comparable, etc.)

some classes and interfaces did not fit into naming conventions and thus, they were deprecated in earlier versions and removed in 1.0.0.

Using spl_object_hash for Object Keys in HashTable

Previously, we used object serialization as object keys for HashTable’s. Now, there is another way to create an object hash.

Please check our migration guide for further details.

I want to thank all contributors who made version 1.0.0. happen. You are great guys!

PHPAlgorithms is available on GitHub and Packagist. If you like our work, please consider a donation 😊

And in the meanwhile, we made it into the Jetbrains Blog 🎉🎊

originally posted here: https://www.dogan-ucar.de/phpalgorithms-1-0-0-is-there/

--

--

Doğan Uçar

Software Engineer, PHP/Laminas (Zend), Backend, Cloud, Freelancer & CEO, Open Source Contributor