SDK é a sigla para Software Development Kit, ou kit de desenvolvimento de software. Um SDK são ferramentas fornecidas pelo fabricante de uma plataforma de hardware, sistema operacional ou linguagem de programação.
Por que usar SDKs?
Com os SDKs, os desenvolvedores de software criam aplicações para essa plataforma, sistema ou linguagem de programação específica. É como um kit de ferramentas ou o pacote de peças que vem com o armário que você comprou para montar em casa, mas usados para o desenvolvimento de aplicações. Os SDKs são os elementos ou as ferramentas de desenvolvimento necessários para executar o trabalho, e o conteúdo desse kit varia conforme o fornecedor.
Geralmente, um SDK básico inclui um compilador, um debugger e interfaces de programação de aplicações (APIs), mas também pode incluir:
- Documentação
- Bibliotecas
- Editores
- Ambientes de execução/desenvolvimento
- Ferramentas de teste/análise
- Unidades
- Protocolos de rede
Um bom SDK fornece todos os componentes de que o desenvolvedor pode precisar para criar aplicações para uma determinada solução e o respectivo ecossistema. Alguns SDKs também incluem um exemplo ou um projeto de teste básico para ajudá-lo a começar o mais rápido possível.
Exemplos de kits de desenvolvimento de software incluem o kit de desenvolvimento Java (JDK), o SDK do Windows 7, o SDK do MacOs X e o SDK do iPhone. Como um exemplo específico, o Operator SDK do Kubernetes pode ajudar você a desenvolver seu próprio operador Kubernetes. Ele contém APIs de alto nível, ferramentas para scaffold e geração de código e extensões para casos de uso comuns de operador.
SDKs e APIs
A maioria dos SDKs inclui uma API para conectar novas aplicações mobile ou projetos no nível do texto fonte na linha de comando. Além disso, eles geralmente incluem amostras de código, com bibliotecas e programas de exemplo para que os desenvolvedores aprendam a criar programas básicos. Depois, esses profissionais podem otimizar e desenvolver aplicações mais complexas com mais facilidade, além de fazer a depuração e adicionar novas funcionalidades conforme necessário.
Às vezes, leva algum tempo até que o desenvolvedor aprenda a usar um novo SDK. Por isso, alguns incluem documentação sobre como usar as APIs, além de tutoriais, perguntas frequentes e gráficos de exemplo. Por isso, uma interface de usuário ou de programação intuitiva (ou documentação mais abrangente) incentiva os desenvolvedores a utilizarem o programa específico de uma empresa em vez da opção da concorrência.
Da mesma forma, um SDK é uma ótima maneira de apresentar a solução de uma empresa aos desenvolvedores e incentivá-los a criar aplicações usando essa plataforma ou sistema operacional, em tempo real, em um ambiente de desenvolvimento integrado. Por esse motivo, a maioria dos SDKs é de uso livre, ou seja, qualquer desenvolvedor pode fazer o download e começar a programar imediatamente.
Considerações
Alguns SDKs podem ter regras ou contratos que devem ser aceitos previamente, especialmente no caso de novas soluções na fase Alfa ou Beta ou aplicações com algoritmos confidenciais (ou seja, que não são open source). Além disso, um SDK pode estar sujeito a um contrato de licença para que as aplicações criadas não sejam lançadas sob uma licença incompatível.
Um desenvolvedor precisa levar isso em conta na hora de escolher um SDK para trabalhar. Por exemplo:
- Um SDK com uma licença proprietária é incompatível com o desenvolvimento de aplicações open source.
- SDKs com uma Licença Pública Geral (GPL) não podem ser usados para desenvolver aplicações proprietárias.
- Há limitações a serem contornadas ao usar uma Licença Pública Geral Menor (LGPL) em projetos com elementos de código proprietário.
Subscribe by Email
Follow Updates Articles from This Blog via Email
No Comments