Avaliação de Code Smells e Padrões de Projeto em Aplicações com Angular e React

  • Anderson Hilario Junior Senior Sistemas
  • Paulo Roberto Farah UDESC / UFPR

Resumo


As tecnologias para desenvolvimento web Angular e React são muito populares atualmente. Esse trabalho analisou quinze aplicações desenvolvidas com Angular e quinze com React e analisou a presença de code smells e padrões de projeto nesses programas. Os projetos em React apresentaram menos code smells e mais padrões do que os em Angular. Os resultados sugerem que ferramentas sejam desenvolvidas para auxiliar na identificação e redução de code smells e na aplicacão de mais padrões para essas tecnologias.

Referências

CARVALHO, T. (2016). Orientac¸˜ao a Objetos: Aprenda seus conceitos e suas aplicabi- lidades de forma efetiva. Casa do C´odigo.

Facebook (2019). React a javascript library for building user interfaces. https:// reactjs.org/. Accesso em: 09/08/2019.

Fowler, M. (1999). Refactoring: Improving the Design of Existing Code. Addison- Wesley, Boston, MA, USA.

Gamma,E.,Helm,R.,Johnson,R.,andVlissides,J.(1995). DesignPatterns: Elementsof Reusable Object-oriented Software. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.

GitHub(2019a). Angular: Angular is na open source web application platform. https: //github.com/search?utf8=\%E2\%9C\%93&q=angular&type. Ac- cesso em: 09/08/2019.

GitHub (2019b). React: React is an open source javascript library used for designing user interfaces. https://github.com/search?utf8=\%E2\%9C\%93&q= angular&type. Accesso em: 09/08/2019.

Google (2019). Angular. https://angular.io/. Accesso em: 09/08/2019.

Huang, X., Zhang, H., Zhou, X., Babar, M. A., and Yang, S. (2018). Synthesizing quali- tative research in software engineering: A critical review. In Proceedings of the 40th International Conference on Software Engineering, ICSE ’18, pages 1207–1218, New York, NY, USA. ACM.

Palomba, F., Bavota, G., Di Penta, M., Oliveto, R., De Lucia, A., and Poshyvanyk, D. (2013). Detecting bad smells in source code using change history information. In 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE), pages 268–278.

Palomba, F., Bavota, G., Penta, M. D., Oliveto, R., Poshyvanyk, D., and De Lucia, A. (2015). Mining version histories for detecting code smells. IEEE Transactions on Software Engineering, 41(5):462–489.

Reddit (2019a). Angular (2+). https://www.reddit.com/r/Angular2/. Ac- cesso em: 09/08/2019.

Reddit (2019b). ReactJS. https://www.reddit.com/r/reactjs/. Accesso em: 09/08/2019.

Similartech(2019a). Angular js market share and web usage statistics. https://www. similartech.com/technologies/angular-js. Accesso em: 09/08/2019.

Similartech (2019b). React js market share and web usage statistics. https://www. similartech.com/technologies/react-js. Accesso em: 09/08/2019.

Tufano, M., Palomba, F., Bavota, G., Oliveto, R., Penta, M. D., De Lucia, A., and Poshy- vanyk,D.(2017). When and why your code starts to smell bad (and whether the smells go away). IEEE Transactions on Software Engineering, 43(11):1063–1088.
Publicado
22/10/2019
JUNIOR, Anderson Hilario; FARAH, Paulo Roberto. Avaliação de Code Smells e Padrões de Projeto em Aplicações com Angular e React. In: ESCOLA REGIONAL DE ENGENHARIA DE SOFTWARE (ERES), 3. , 2019, Rio do Sul. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2019 . p. 81-88.