I'm currently working on a project to forge my personal experience, and I have big doubts about the techno I should use, let me explain:
My project would be a kind of craiglist-like, basically a site where users could post anouncements ( evereday-life objects, cars, flat etc ). So : authentication, profile page, content creation, display the for-sale objects etc ...
I have developed a very large part of the backend: I have a RESTful API in three-tier architecture developed in java. It makes the link with the db, to provide me with different urls and send me the relevant JSON.
URLs example:
http://ift.tt/1MIxhuI sends me back:
{"user": {"username": "jdoe1234", "email", "jdoe1234@gmail.com"}}
I have urls for all actions performed on the entire site (anouncement creation, last data updates ... everything, and I've carefully declared them POST, GET , UPDATE, DELETE, etc ...). There is also oAuth to protect the API from queries that are not allowed for the token.
That's all for the "server" aspect, i think that there is no problem with that, if so please tell me. ;)
But then, I tell myself that if all the actions are managed by the webservice, I do not see the interest that could bring me a big server-side framework like Symfony/cakePHP,Zend etc, to make HTTP requests on my different entry points, retrieve JSON and populate the HTML. It would be a shame if I only use very few of its features.
So I looked at client framework, like Angular , Ember and so on. At first, it seemed very suitable for my case: possibility of http requests, manage what to do in case of success or error , directly exploit the resulting JSON to populate the view etc .. Very strong tool, with a good learning curve!
But As my research to try to find out if it was really what I needed, I doubt more. I didnt even manage to make my choice between angularjs and Ember, both being very similar , but with the release of Angular v2, I fear the maintainability of v1 (if I choose Angular, it will be v1 , because the majority of tutorials and questions relate to Angular 1.X).
I don't know if I'm doing the right thing by choosing client-side framework, I am afraid that they 'brident' (not sure of that word, sorry ) me. Plus, it's fully instantiated in the browser,so the user can change absolutely all code and data I provide...that's seem weird to me :/
I want to be absolutely sure of the technology that I use in case I make this application available to the public for example. I want to do things properly, in order to avoid maintainability or security problems .
Summary: With the things that i already have(webservice / api), is it a good idea to use a client framework like Angular? Or should I stay on big server-side framework like Symfony/Zend etc . Knowing that I position myself in the context in which this platform would be massively used (craiglist comparable traffic ).
Really sorry for the bad english, hope you understood me !
Thank you for kindly enlighten me and for reading :)
Aucun commentaire:
Enregistrer un commentaire