We have been approached by a developer who would like to work on a project and he mentioned that he uses ORM. We have no experience in code and would be grateful if anyone could shed light on:
- Is it easy to take over a project which is based on ORM if you do not use it yourself?
- What are your thoughts about ORM, is it efficient or outdated?
Many thanks to those that can help.
ORM means Object Relational Mapping. It merely means that records in a database (e.g. user information, product records etc) are turned into objects - collections of information - rather than being loose and unorganised. Pretty much every framework I’ve ever seen uses ORM of some kind.
It’s not like a type of software or anything like that, it’s just a methodology. The major benefit is that data (within the code) is organised. On top of that, all database interactions (creating information, removing it, editing it, searching for it) are generally implemented in one process (the building of the framework/modules) and all possibilities are catered for there. So later on, programmers can forget about needing to validate information in the middle of processing code - they can forget about building different query strings up in the middle of module code, etc. That’s handled by the ORM, and can be a major time saver in the long run.
One thing I’d watch out for though. It sounds a little… buzz-wordy. Either he’s an honest guy and is just telling you how he does things (In which case he would also probably mention words like ‘MVC’, ‘OOP’, etc) or ORM is important because he considers it a major thing. If the latter, he probably (based on personal experience) doesn’t use it very well - but it’s something; it sure beats procedural regardless.
ORM is a good thing and is certainly in no danger of being outdated. In fact the latest and greatest ORMs (such as Doctrine 2) rely on latest php features found in php 5.3. ORMs won’t be going away any time soon.
Is it a good fit for your project and team? Need more details to even begin to address that question.
Thank you both very much, I am now much clearer about ORM. I believe he uses Kohana, is that a fairly standard framework?
Thanks again guys.
I have not used used Kohana but have seen the name pop up here and there. I looked at it’s documentation. Seems to be a nice straight forward framework.