Group Discussion: React, Vue and Others
Students will work in groups to create a Wiki comparing major client-side JavaScript frameworks: React, Vue and others. If you did not work before with Moodle Wikis, see this small video (3:36 min.) on the Wiki activity page.
Our goal here is to compare the three main client-side JavaScript frameworks, React, Vue, and two newcomers (Svelte or Flutter or Elm or Rust Yew or Blazor). There will be four groups, one for each framework. They will create a wiki with the following content:
- Framework name
- Student List (with name and USP id)
- Main Framework Features (Explain how to start an app)
- Framework Advantages
- Framework Disadvantages
- Main Application Niches
- Future Perspectives
They will also make a 22 minutes presentation of their work to the class.
Each group has to choose:
- Coordinator: To coordinate the discussions and group activities. He also has to control the time to make sure the group will post its results on time.
- Editor: To write down the group's contents to the wiki.
- Two or Three Presenters: To present the work to the class
A group may divide the work among subgroups, but, in this case, it is recommended that you plan some time to join the work of each subgroup.
Tip: If you use Google Docs or Slides to create your work, you may just link it to the group's wiki page. But remember to make it readable by everyone and copy its text to the wiki (just as a backup).
React
(Restaurar esta versión)
Modificado: 31 de mayo de 2023, 09:47 Usuario: Igor Cardozo Martins →
Documento da discussao: link do notion no grupo do telegram!!
----------------------------------------------------------------------------------------------------------
Student List (with name and USP id)
Adalton de Sena Almeida Filho - 12542435
Bernardo Rodrigues Tameirão Santos - 12733212
Gabriel dos Santos Brito - 10284250
Felipi Yuri Santos - 11917292
Vinicus Carneiro Macedo - 11915752
Yuri Fernandes Pereira - 1373012
Igor Cardozo Martins - 10387515
Editor: Vinicius
Coordenador: Yuri
Apresentadores: Adalton, Gabriel, Igor
Main Framework Features
- Components: O React permite a criação e utilização de componentes independentes que permite a reutilização do mesmo componente em diversas partes do projeto. Para se ter uma boa funcionalidade desses componentes é necessário seguir algumas diretrizes do próprio React com o uso de Hooks e Props.
- Interface independente do Servidor: Com React a Interface se torna independente do Servidor e utiliza somente o navegador para gerar a interface, além disso possui um DOM Virtual que é quem recebe as mudanças que ocorrem através do usuário. A partir disso compara-se o DOM Virtual com o Real e somente as diferenças entre os dois são modificadas no Real.
- JSX: Permite a mistura entre HTML e JavaScript, isso faz com que a codificação se torne de certa forma simples e escalonável.
- Renderização Condicional: Com React é possível condicionalizar através do JSX o que será exibido para o usuário, isso facilita na criação de componentes que possam ser diferentes dependendo das informações que recebe.
- Typescript: React permite a utilização de Typescript para codificação diminuindo a quantidade de erros possíveis por falta de tipagem em um grande projeto, não há restrições em utilizar somente JavaScript
- Fluxo Unidirecional de Dados: O React é projetado de forma que pode suportar apenas uma direção de fluxo de informação. Caso necessite de fluir em outra direção, será necessário extensões adicionais.
Framework Advantages
Framework Disadvantages
- Alta taxa de Atualizações: React sofre muitas atualizações seguidas, isso por um lado é bom pois mostra comprometimento da empresa com a sua manutenção mas por outro lado dificulta a adaptação de programadores com os atualizações.
- Documentação pobre: Pelo fato de React sofrer muitas atualizações seguidas acaba ficando muitas vezes sem a documentação necessária para cada atualização, complicando para quem programa.
- UI Part: React se preocupa somente com UI e nada mais, então é necessário fazer o uso de extensões para se conseguir uma aplicação mais completa.
Main Application Niches
Future Perspectives
- O React permite a utilização de componentes Vue e vice-versa, entretanto é necessário que o main container desses componentes sejam iguais.
- Migração de muitas aplicações para React Native para progrmaçaõ Mobile.
- Framework mais utilizado do mundo em pesquisa realizada pela JetBrains e StackOverflow
- Suporte Oferecido pela empresa META, não se sabe ao certo como se dará a continuação do react.