<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>

Vantagens X Desvantagens do RAD

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.

Aplicação do Python

Funções de manipulação de arquivos

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.

Operações Básicas

📂 Abrir um Arquivo

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.

🗃 Modos de Acesso a um arquivo