2010-07-30 3 views
4

Quelqu'un peut-il expliquer les inconvénients, s'il y en a, de l'utilisation d'un framework de développement ColdFusion? Je développe une application traditionnellement, et je suis tenté d'utiliser un framework ayant vu à quel point certaines choses peuvent être faites. Je ne connais pas ColdFusion et les frameworks en général. Je suis novice en ColdFusion et en frameworks. Je veux comprendre les implications de l'utilisation d'un cadre, y compris les avantages et les inconvénients.Utilisation de frameworks ColdFusion

Répondre

8

Inconvénients:

  • courbe d'apprentissage (choisir un cadre maigre pour réduire ce)
  • contrôleur frontal fait URL laid, a souvent besoin de réécriture d'URL sur la couche serveur web
  • risque de cadre étant interrompu (pas support, difficile à maintenir, casser sur le nouveau CF ver)
  • bugs du cadre (choisir un cadre populaire avec un bon support rapide &)
  • plus difficile à déboguer parfois, puisque les actions ne sont généralement plus un .cfm. Astuce: utilisez cfdump et cfabort pour voir le vidage dans la couche contrôleur
  • certains cadres prennent plus de temps à se réinitialiser. Étant donné que la plupart des frameworks mettent en cache les configurations et la couche de contrôleur pour les performances, vous devrez réinjecter tout le temps pendant la phase de développement. CF9 soulage ce problème car il est beaucoup plus rapide. Enfin, parfois, vous utiliserez l'API du framework, une abstraction de CFML, et vous manquerez la méthode native de ColdFusion pour résoudre le même problème.

La performance est généralement un problème. Ne t'inquiète pas.

+0

Merci, Henry. Brièvement, et si vous êtes familier, que pensez-vous de CF on Wheels vs. Coldbox? Si vous étiez un débutant, lequel seriez-vous enclin à choisir? – Mohamad

+2

@Mel - Vous pourriez vouloir lire cette question, qui a été posée plus tôt aujourd'hui: http://stackoverflow.com/questions/3361951/picking-a-coldfusion-mvc-framework –

+1

Choisissez CFWheel si vous préférez le Ruby-on- Rails/Active Record style de développement de l'application web, et besoin de la fonction ORM dans CF8 ou plus. Si vous utilisez CF9, il existe un ORM optimisé par Hibernate, plus puissant, qui fonctionne avec tous les frameworks MVC. ColdBox a beaucoup de documentation et de soutien, mais sa faiblesse est qu'il a tout + évier de cuisine! Bien sûr, vous n'avez pas à les utiliser si vous n'en avez pas besoin, mais je trouve que c'est un peu trop volumineux à mon goût. – Henry

4

Henry est déjà donné une bonne réponse, mais je voudrais juste revenir sur cette partie de votre question:

Mais il ne vient pas avec une taxe sur la performance?

Le surdébit de performance d'une infrastructure est négligeable.

En fait, vous pouvez même obtenir de meilleures performances à partir de frameworks tels que , qui ont une mise en cache intégrée. Rappelez-vous que la plupart des frameworks sont des bases de code matures utilisées par beaucoup de gens - très probablement, votre nouveau code non testé va être le coupable, pas le framework.


Cependant, en règle générale (non spécifique aux cadres) performance n'est pas un problème, sauf si vous avez des résultats mesurables qui disent que c'est. Ne pensez pas simplement "Je vais faire X au lieu de Y parce que je pense que ce sera plus rapide" - choisissez l'option la plus simple qui répond aux besoins de l'utilisateur, et ne la changez que si vous pouvez prouver que il a un problème de performance et que votre solution proposée est meilleure.

+0

Merci, Peter. Pour être honnête, je vais plutôt bien écrire une application par moi-même, en utilisant le guide de développement des FC de Ben Forta. Mais après avoir vu comment fonctionne CF on Wheels, je suis vraiment tenté de commencer à l'utiliser. J'ai peur de le faire parce que je ne suis pas familier avec ça, et je crains d'arriver à un point où j'ai besoin de créer quelque chose et je ne serais pas capable de ... – Mohamad

+1

@Mel, poser une question sur leur groupe d'utilisateurs et tester leur temps de réponse. :) Aussi, n'oubliez pas de twitter. Nous posons des questions tout le temps. – Henry

+1

@Mel, CFWheels est en effet un cadre très intéressant. Vous pouvez consulter leurs présentations à UGTV http://www.carehart.org/ugtv/index.cfm, rechercher "Roues" – Henry

1

Cela dépend de la nature du projet dans lequel vous vous trouvez. Je pense qu'il est toujours conseillé d'utiliser un frameowrk pour une meilleure organisation du code, de l'évolutivité, des conventions et autres.Si vous êtes supposé commencer avec une application au niveau de l'entreprise alors coldbox est le meilleur cadre dans la mesure où mon expriece va. Il a une plus grande courbe d'apprentissage, mais cela vaut la peine d'apprendre. Si son projet de démarrage simple alors FW1 est bon. Vous pouvez trouver une liste ici

http://www.riaxe.com/blog/top-coldfusion-frameworks/