Conhecendo o SDK Android
Seguindo com a serie de artigos sobre Android, chegamos na receita do doce: o SDK do Android, mas espero que vocês já tenham lido a “História do Android“.
Então vamos lá!! Pegue seu copo de café, abra sua mente e vamos começar.
Antes de falarmos mais sobre SDK, precisamos desmistificar alguns conceitos que acabam por confundir diversos usuários, por exemplo:
- API, APK, APP, IDE, SDK. Você conhece todas essas siglas??
O que é API?
É a “matrix” dos aplicativos, ou seja, uma interface que roda por trás de tudo.(Douglas Ciriaco)
API é o acrônimo da sigla em inglês para “Application Programming Interface”, que em português é traduzido como: Interface de Programação de Aplicativos.
Esta interface é o conjunto de padrões e rotinas de programação para acesso a um aplicativo de software ou plataforma baseado na Web, que permite a construção de aplicativos e a sua utilização de maneira não tão evidente para os usuários.
Podemos dizer, de uma forma geral que, a API é a documentação que determina como um programador pode realizar uma tarefa através de uma biblioteca. (Antônio Maniero)
Vale ressaltar que não há uma relação obrigatória com a documentação, visto que ainda é possível encontrar APIs sem nenhuma.
O que é APP e APK?
Parece simples a descrição, mas acredite, ainda há algumas pessoas que têm essas dúvidas, por exmplo: APP ou APPs, é a abreviação da palavra “applications”, ou aplicativos, no contexto dos smartphones. Portanto, toda vez que nos referirmos neste artigo ao termo APP, estaremos falando dos programas para o smartphone.
Já APK ou “Android Package” em inglês, é uma forma de ‘zip’ para Android, ou seja, ele é um arquivo compilado, que é usado para instalar os aplicativos no Android de forma paralela a Google Play Store (a loja de aplicativos da Google).
Trabalhando com IDE
Como já é de costume, basicamente todas essas siglas vem de uma ou mais palavras em inglês, e IDE, não foge a regra. “Integrated Development Environment” ou “Ambiente Integrado de Desenvolvimento”, é um programa de computador que reúne características e ferramentas de uma determinada linguagem de programação, serve de apoio ao desenvolvimento de software, através de uma interface gráfica e diversos recursos com o principal o objetivo de agilizar este processo de criação.
Há diversas IDEs no mercado, dentre as mais conhecidas, podemos citar:
- NetBeans, Free Software, desenvolvido pela Oracle Corporation, com suporte a diversas linguagens de programação. Possui suporte de desenvolvimento de aplicativos para Android.
![ide-netbeans-android-print](https://www.uniaogeek.com.br/wp-content/uploads/2016/08/ide-netbeans-android-1024x577.jpg)
Créditos da Imagem: (C) Youtube, Neri Neitzke, 2011.
- Eclipse, Free Software, desenvolvido pela Eclipse Foundation para o desenvolvimento com JAVA, porém através de seus plugins é possível programar em várias outras linguagens, inclusive para Android (embora este plugin, tenha sido descontinuado).
![elipse-ide-android-adt-print](https://www.uniaogeek.com.br/wp-content/uploads/2016/08/eclipse_adt_android.jpg)
Créditos da Imagem: (C) PPLWare, Pedro Pinto, 2015.
- Android Studio, Open Source, desenvolvido pela Google Inc, é a IDE para desenvolvimento na plataforma Android baseado no InteliJ Community Version. Com o mesmo objetivo do Eclipse + ADT (Android Developer Tools), ele provê um ambiente de desenvolvimento, debug, testes e profile multiplataforma para Android.
![ide-android-studio-print](https://www.uniaogeek.com.br/wp-content/uploads/2016/08/android-studio.jpg)
Créditos da Imagem: (C) PPLWare, Pedro Pinto, 2015.
É interessante citar que todas essas IDEs faladas aqui são também Multiplataformas, ou seja, rodam em diversos Sistemas Operacionais.
Conhecendo o SDK Android
![icone-sdk-android](https://www.uniaogeek.com.br/wp-content/uploads/2016/08/icone-sdk-android.png)
Créditos da Imagem: (C) Protocolo TI, 2016.
Devemos saber que o Kit de Desenvolvimento de Software, também conhecido comoSoftware Development Kit – SDK ou “devkit” – é um conjunto de ferramentas que permite aos programadores desenvolver apps ou apenas encorajar o seu uso, por muitas vezes ser opensource. O SDK possibilita que o desenvolvedor tenha um alto nível de acesso ao código fonte e possa desenvolver seu aplicativo.
Há diferença em você usar um NetBeans ou o próprio Android Studio, esta diferença é na interação com o SDK ou o próprio código fonte, pois eles são IDEs, ou seja, são apenas janelas para escrita de um código fonte. O SDK do Android traz com ele uma série de soluções para ajudar no desenvolvimento de aplicações e na otimização das aplicações que já sofrem bastante com as limitações de desempenho dos smartphones atuais. Contêm código de amostra, que fornece aos desenvolvedores exemplos e bibliotecas. Estas amostras ajuda os desenvolvedores a aprender a criar programas básicos, o que lhes permite eventualmente criar aplicações mais complexas, também oferecem documentação técnica, que podem incluir tutoriais e FAQs e também pode incluir gráficos de amostra, tais como botões e ícones que pode ser incorporado em aplicações.
Curiosidade
Quando a Google teve a brilhante ideia de oferecer 10 milhões de dólares aos desenvolvedores que conseguissem realizar os melhores aplicativos para Android levando em consideração a primeira versão pública, muitos desenvolvedores fizeram projetos, sendo que muitas dessas ideias não receberam o prêmio e mesmo assim a Google continuou com as ideias e ate hoje e muitas delas foram aplicadas.
Conclusão
Uma vez que a maioria das empresas quer incentivar os desenvolvedores a criar aplicativos para a sua plataforma, tem fornecido gratuitamente o SDK no caso do Android ele tem a sua própria IDE. Vocês podem simplesmente fazer download a partir do site da empresa e iniciar a programação imediatamente. No entanto, uma vez que cada kit de desenvolvimento de software é diferente, pode demorar um pouco para os desenvolvedores a aprender a usar. Por conseguinte sempre busque os mais modernas que incluem uma ampla documentação e SDK têm uma intuitiva interface de programação, que ajuda a incentivar o desenvolvimento do programa.
Viu algum erro ou gostaria de adicionar alguma sugestão a essa ou outra matéria? Colabore, clique aqui.
Fontes
Analista de Tecnologia da Informação, Tecnólogo em Análise e Desenvolvimento de Sistemas (Estácio) e Pós-graduando em Desenvolvimento de Aplicações Móveis (FCV). Professor, Palestrante e Programador. Desenvolvedor de Aplicativos Móveis para Android. Programador JAVA para Desktop.