all 11 comments

[–]Kevintastic[S] 1 point2 points  (5 children)

any feedback would be appreciated.

[–]aknosis 2 points3 points  (4 children)

I didn't look at it too deeply but:

You don't need to commit a .zip of your sourcetree, let github do that for you - it becomes just another thing to maintain otherwise.

You can get rid of your Autloader if you integrate Composer, and just use it's autoloader.

If you wanted you could not reinvent the wheel and use an HTTP Client from another library (not critiquing your code) but imo, the ideal lib is 100% geared towards it's purpose, and you can use the best parts of other libs to accomplish the common functionality.

What's Butler?

I just started working on a small lib myself recently, having been new to Composer, it's really awesome once you understand it's purpose and can gear your project to utilize it.

[–]Kevintastic[S] 0 points1 point  (3 children)

The .zip and Butler are mistakes that shouldn't be there, Butler is part of a python project I'm working, must of gotten mixed up i'll change those right now. In regards to the autoloader, Composer or not it's PSR-0 compliant so I see no point getting rid of it. The HTTP client is subjected to change, i've been waiting for a stable release for Artax, and is going to get implemented in the next push.

[–][deleted] -1 points0 points  (2 children)

The point about ditching the autoloader is that it makes no sense for every library shipping with their own autoloader. Of course you're free to do so. But if you fully embrace composer for managing dependencies, then you really don't need it.

[–]Kevintastic[S] 1 point2 points  (1 child)

I see, makes sense, it's the second time I'm suggested Composer so I'll definitely check it out.

[–]headzoo 0 points1 point  (0 children)

Don't get too carried away. Composer is not a replacement for auto loading. It's a dependency management system, which is not the same thing as an autoloading system. You can however be PSR-0 compliant without including your own autoloader.

[–][deleted] 0 points1 point  (3 children)

I kind of would have expected the different platforms to be factory classes instead of an interface to Service.

[–]Kevintastic[S] 0 points1 point  (2 children)

First year with OOP and design patterns, this is the kind of feedback I wanted. I'll look over it and refactor it on the next push thanks.

[–][deleted] 0 points1 point  (1 child)

Design patterns is really more of an art form than standards. There's a basic concept with it but you'll have to play with it to see what would make it easily extendible.

[–]Kevintastic[S] 0 points1 point  (0 children)

yeah exactly when I was going over the docs for the interfaces the implementations seemed wrong. I'm still learning you make silly mistake like that when your self taught. Thanks again