<aside> 📖 Aluno: Gabriel Moura Guimarães | 202302332137
</aside>
<aside> 👉🏼 O Rapid Application Development (RAD) é uma metodologia de desenvolvimento de software com foco em rápidas etapas de desenvolvimento, com uma contínua iteração. Isso significa que esta metodologia possui entregas ágeis e contínuas, desde a prototipagem, até a implantação em produção, e na medida que os módulos vão sendo entregues, surgem mais requisitos a serem contemplados no sistema. Então sempre teremos o cenário em que o MVP de cada etapa reaproveita as entregas das etapas anteriores incrementando com os módulos já entregues. Ela é dividida em fases, caracterizando-a, assim, como um método com definição de procedimentos que devem ser seguidos para se atingir a meta do projeto: atender às necessidades do cliente dentro de um prazo curto e sem erros, ou, pelo menos, com o mínimo possível de erros. A existência de mais de uma abordagem para tratar as suas fases não muda a essência do processo, que se caracteriza pela interação constante entre usuários e desenvolvedores. Devido à pouca complexidade das decisões de cada etapa, estas podem ser facilmente revertidas ou corrigidas. A definição das etapas são feitas envolvendo o cliente e a equipe, no que chamamos de oficinas JAD, em que são realizados revisões e detalhamento do escopo do sistema para garantir que as entregas ocorram dentro do prazo.
O desenvolvimento rápido torna possível que protótipos evoluam para a versão comercial do sistema, ou seja, que as versões parciais progridam para o software que vai atender às expectativas do cliente. Através de incrementos ao longo das iterações, novos componentes e novas alterações são feitas. As equipes de desenvolvimento usam ferramentas computacionais que viabilizam o progresso rápido para a versão final do sistema. Na metodologia RAD, a maioria dos problemas e ajustes são tratados durante a fase de prototipagem iterativa.
</aside>
INTEGRAÇÃO ANTECIPADA DO SISTEMA E REDUÇÃO DE RISCOS | NECESSIDADE DE EQUIPES TECNICAMENTE MUITO QUALIFICADAS |
---|---|
ADAPTABILIDADE E COMPARTIMENTAÇÃO DOS COMPONENTES DO SISTEMA | FOCO EXIGENTE NA INTERFACE |
VERSÕES ITERATIVAS E MENOR TEMPO DE COLOCAÇÃO NO MERCADO | REQUER ALTO NÍVEL DE COMPROMETIMENTO DE TODAS AS PARTES INTERESSADAS |
FEEDBACK CONSTANTE DO USUÁRIO | REQUER SISTEMAS MODULARES E É DIFÍCIL PARA PROJETOS DE GRANDE ESCALA |
A utilização de ferramentas que acelerem o desenvolvimento auxilia na redução do tempo de lançamento no mercado. No ambiente competitivo do mercado de software, trata-se de uma característica muito importante. Frameworks facilitam a codificação e padronizam o uso de recursos; desse modo, a “reusabilidade” de componentes é um dos benefícios que são obtidos e que podem ajudar no desenvolvimento de novos módulos do sistema. O Python possui várias ferramentas e estruturas projetadas especificamente para RAD, que fornecem componentes genéricos pré-construídos para tarefas comuns de desenvolvimento da Web, como por exemplo a integração de banco de dados, a autenticação de usuário e a validação de formulários. Além de sua grande variedade de frameworks, o Python também possui uma grande e ativa comunidade de desenvolvedores que contribuem com bibliotecas e ferramentas de código aberto. Esse ecossistema de bibliotecas e ferramentas fornece um canivete de funcionalidades que podem ser facilmente integradas a um projeto que faz o uso do RAD. Devido a sua praticidade e de uso, forte comunidade e grande ecossistema, uma Stack que utiliza RAD aplicado em Python põe a ‘cereja do bolo’, levando em consideração que entregas ágeis são desafiadoras para muitos Squads.
Uma das razões pelas quais o Python se popularizou foi a facilidade de programar utilizando essa linguagem. A manipulação de arquivos em Python não é diferente. Os criadores se preocuparam em disponibilizar aos desenvolvedores o que realmente importa! Com nome de métodos intuitivos, como read (ler) e write (escrever), e tratamentos de exceções específicas para cada problema, o Python disponibiliza uma simples e poderosa forma de trabalhar com arquivos. Neste conteúdo, veremos como manipulá-los de forma correta, garantindo que o programa rode sem problemas.
É muito comum ajustarmos e prepararmos um texto antes de incluí-lo em um arquivo. Ajustes como remover espaço em branco, colocar todas as letras maiúsculas, substituir palavras e adicionar conteúdo de variável são alguns exemplos. Esses ajustes podem ser realizados a partir de métodos de manipulação de strings, que também serão tratados adiante.
Para abrir um arquivo, o Python disponibiliza a função interna chamada open. Essa função está disponível globalmente, ou seja, não é preciso importá-la. A função open retorna um objeto do tipo arquivo. Sua forma mais simples de utilização tem a seguinte sintaxe: arquivo = open (caminho)
Veja como o Python trata o acesso aos arquivos a seguir. O caminho de um arquivo pode ser classificado em dois tipos:
<aside> 🗨️ Caminho Absoluto
<aside> 👉🏼 É a referência completa para se encontrar um arquivo ou diretório. Ele deve começar com uma barra ( / ) ou o rótulo do drive ( C:, D: ...).
<aside> 👉🏼 Exemplo:
open(“C:\\Downloads\\arquivo.txt”)
→ utilizado em ambiente Windows.
open(“/home/usuario/arquivo.txt”)
→ utilizado em ambiente Linux.
</aside>
</aside>
</aside>
<aside> 🗨️ Caminho Relativo
<aside> 👉🏼 É a referência para se encontrar um arquivo ou diretório a partir de outro diretório. Normalmente, a partir do diretório de onde o script está.
<aside> 👉🏼 Exemplo:
open(“arquivo.txt”)
→ para os casos em que o arquivo está no mesmo diretório do script.
open(“../arquivo.txt”)
→ para os casos em que o arquivo está no diretório acima do script.
</aside>
</aside>
</aside>
O Python também disponibiliza algumas funções para exibir os caminhos absolutos e relativos de um arquivo ou diretório, que são:
path.relpath
→ para obter o caminho relativo do arquivo em questão.
path.abspath
→ para obter o caminho absoluto do arquivo em questão.