Tecnologias e Frameworks que você precisa conhecer!

Eu vou começar esse post com uma “sopa de letrinhas”:

C, C++, Java, Delphi, Basic, VB, C#, Python, Pearl, Objective C, HTML, CSS, JavaScript, PHP, ASP, .Net, Ajax, JSON, jQuery, Bootstrap, NodeJS, AngularJS, Knockout, Hibernate, Struts, ORM, DAO, SQL, MySQL, PostgreSQL, Oracle, SQL Server, NoSQL, Mongo, Cassandra, Orientação a Objetos, MVC, REST, Web Services, CodeIgniter PHP, Zend, PhoneGap, Appcelerator, WordPress, CMS, Joomla, Drupal, SVN, Git, SourceForge, front-end, back-end…

Estes são APENAS alguns nomes e siglas bastante comuns na área de TI. Eu diria, inclusive, mais especificamente do segmento de desenvolvimento e programação (sim, pois temos uma quantidade enorme de nomes e siglas também para o segmento de hardwares, configurações, servidores etc).

Ok, se você se sentiu desmotivado ao ter lido tudo isso, acalme-se! Nesse post irei ajudar você a organizar o pensamento e dar foco em algumas tecnologias e frameworks que realmente são fundamentais para iniciar na área de desenvolvimento web. E claro, ninguém está esperando que você aprenda tudo da noite para o dia, isto leva tempo, dedicação, estudo e muita prática. Bom, vamos lá!

A TI é mutável. Tudo muda, o tempo todo…

O mercado de TI é realmente desafiador: muitas tecnologias “super promissoras” que são lançadas no início do ano e mal chegam ao Natal.

– Ah, entendi, não vou aprender nada que seja lançado no início do ano…

Não é isso!

É assim, as coisas mudam mais rapidamente na área de TI do que no resto do mundo. Então, antes de mergulhar com tudo em um novo recurso ou linguagem ou tecnologia ou facilitador ou qualquer coisa que tenha sido lançado como “indispensável”, pesquise sobre QUEM está por trás mantendo o projeto; verifique se há alguma empresa grande apostando nisso; veja há quanto tempo está disponível no mercado; procure por ofertas de trabalho que necessitem desse conhecimento; e faça uma busca nos sites de pesquisas e fóruns.

Para facilitar, vou listar agora algumas tecnologias e frameworks (facilitadores) que já comprovaram ser úteis, tanto pela quantidade de profissionais que as utilizam, quanto pelos projetos que usam seus recursos, além da maioria já estar no mercado há mais de anos!

1) C

Sim, isso mesmo que você leu: C.

Você pode reclamar, espernear, gritar e até me xingar (o que não é nada legal e eu repudio veementemente), mas a verdade é que quase tudo que temos hoje vem dessa linguagem aí.

Não vai fazer nenhum mal você aprender a criar um programinha simples com C, apenas para saber que ele existe ou mesmo só pra dizer que “conhece” a linguagem C, reconhecida mundialmente como a mãe de todas as linguagens de programação.

2) Java

Tecnologia 2: Java - Tecnologias e Frameworks que você precisa conhecer

Alguns dizem que não se usa mais ou que é “pesada”, ou que existem outras mais recentes que fazem a mesma coisa ou bla bla bla.

Aprenda. São muitos detalhes e conceitos presentes nessa linguagem que também estão disponíveis em outras linguagens mais novas.

Além disso, muitas empresas de desenvolvimento de sistemas e softwares usam Java.

Se você fizer uma graduação na área da ciência da computação, muito provavelmente você terá disciplinas de programação que usam C ou Java.

3) .NET

.NET, também conhecida como “Ponto Net ou Dot Net” é uma plataforma de recursos tecnológicos da Microsoft.
Mas não se engane, o negócio da Microsoft é vender software, então, você só terá uma experiência completa usando, adivinhe, o Visual Studio, o qual é uma plataforma paga.

A partir do Visual Studio você pode escolher se quer fazer um projeto desktop (VB ou C#), ou um projeto web (ASP) ou até mesmo um projeto mobile. Tem tudo nele, além de vários outros recursos embutidos para facilitar a vida do programador e fidelizar o seu uso, obviamente.

De qualquer maneira, é importante que você conheça um pouco dos recursos que a Microsoft oferece para desenvolvedores. Sugiro, inclusive, que comece com o ASP.NET que é mais próximo do que estamos acostumados a usar no dia a dia, a web.

4) PHP

Tecnologia 4: PHP - Tecnologias e Frameworks que você precisa conhecer

Já faz um bom tempo que ele está aí, sendo usado por muita gente do mercado de desenvolvimento. São vários motivos para isso, mas principalmente porque a web é muito utilizada em seu formato tradicional (navegador – website). Claro, hoje temos uma “invasão” de outros dispositivos com acesso à internet e muitos aplicativos para esses dispositivos, onde para desenvolver esses apps geralmente não usamos PHP.

O fato é que já a linguagem existe há mais de 20 anos, onde muitos falaram mal e profetizaram o seu fim há no mínimo uns 10 anos atrás.

De qualquer maneira, aprenda a usá-la!

E não se engane caso você ache que de todas as outras essa é a linguagem de programação mais fácil de se aprender. Há vários níveis de uso do PHP, onde você pode obter algum resultado já com o básico e, se preferir, pode usá-la em projetos complexos e cheios de padrões e regras bem estruturadas.

Outro detalhe importante sobre o PHP é que essa linguagem é para desenvolvimento web, portanto, você deve conhecer um mínimo de HTML para sair do lugar (além de alguns outros detalhes sobre a relação cliente x servidor).

5) HTML, CSS, JavaScript

Tecnologias 5: HTML,CSS e JavaScript - Tecnologias e Frameworks que você precisa conhecer

Chegamos na trinca de siglas/nomes que são FUNDAMENTAIS para essa área.

HTML você precisa conhecer. Para qualquer coisa ligada à web: uma página simples, um currículo online, um ajuste em um blog, um email marketing, um website etc. E a vantagem é que não tem “muita” lógica (aliás, nenhuma para ser bem sincero). Você só precisa decorar umas cento e poucas tags e como usá-las. É isso! Simples assim.

CSS, que é uma maneira mais elegante, padronizada e fácil de formatar as páginas feitas em HTML, já é um pouco mais complicado do que HTML, mas de maneira mais simplificada e prática, você também consegue excelentes resultados apenas decorando algumas regras.

JavaScript já utiliza a lógica de programação, algoritmos e tudo mais. Vale a pena, inclusive, saber mais detalhes sobre a origem, fazer exercícios mais complexos (fundamental saber lógica de programação), fazer manipulação de HTML e CSS, entre tantas outras possibilidades que essa linguagem de programação oferece.

Depois que você já tiver feito alguns exercícios com esses três “carinhas”, aí sim, já estará na hora de conhecer as “benfeitorias desenvolvidas por uns malucos espalhados pelo mundo afora”, como jQuery, Bootstrap, AngularJS, Dojo Toolkit, ReactJS, Nodejs, plataformas de CMS (WordPress e Joomlas) etc.

6) Ajax (Asynchronous Javascript) e XML

Tecnologias 6: AJAX - Tecnologias e Frameworks que você precisa conhecer

Antes de mergulhar nos facilitadores front-end, vale a pena saber que não é só na prateleira do supermercado que você encontra Ajax (péssima piada, mas é o que eu tenho para o momento). Sim, esse recurso têm ajudado muitos desenvolvedores a oferecerem uma opção de interação mais rica com as páginas web. Aliás, só foi possível pensar em uma interação com as páginas web de forma mais “avançada” em virtude do uso de Ajax.

A verdade é que o Ajax nada mais é do que – atenção – JavaScript.

É assim: cada vez que você solicita uma página ao navegador, ele vai até o servidor e busca o que você pediu, entregando tudo na sua tela. Com o Ajax quem faz essa busca aos dados no servidor é o JavaScript, permitindo que o conteúdo seja mostrado em um pedaço da sua tela (uma área da página), de uma maneira onde eu posso ter várias coisas diferentes ao mesmo tempo sendo carregadas dentro dessa página, de forma assíncrona (ufa, difícil explicar esse assíncrono da sigla).

Enfim, é o JavaScript fazendo a vez de navegador, para ir lá no servidor e buscar os dados, que uma vez já foram em XML e hoje é mais comum usarmos JSON ou texto puro, por ser mais leve e prático.

7) jQuery e Bootstrap

Agora sim, vamos falar de alguns facilitadores da vida do programador indefeso em meio ao caos da sopa de letrinhas (fiquei até comovido agora…).

jQuery foi criado por John Resig quando ele possuía lá pelos seus 20 anos. É caro leitor, existem gênios mundo afora!

Ok, fofocas à parte, o fato é que o jQuery é um conjunto de facilidades de JavaScript agrupadas em um arquivo, permitindo aos seus adeptos não passarem muito trabalho para interagirem com o HTML e CSS. Ou seja, lembra da interação rica de página web com os usuários? Sim, ele ajuda E MUITO nesse trabalho.

Tecnologia 7 jQuery - Tecnologias e Frameworks que você precisa conhecer

E o Bootstrap? Ah bom, esse é o “cara” que te ajuda na formatação da tela, deixando-a visualmente mais rica. É assim, você faz toda uma interação bacana com o visitante da sua página, tipo o usuário arrasta a imagem do produto pra cima da imagem de um carrinho de compras e “magicamente” ele já é adicionado às suas compras (loja virtual, saca?). Ok, até aí, jQuery fazendo o seu papel, mas e quem faz o layout ficar bacana? Aí está o Bootstrap.

Claro, é mais que isso e não precisa ser só com o Bootstrap. Há várias outras bibliotecas e facilitadores de CSS que te ajudam a fazer um layout ficar mais atrativo, responsivo e fácil de realizar a manutenção. Mas, de todas as possibilidades, o Bootstrap é sem dúvida nenhuma o mais utilizadp no mercado.

8) SQL e MySQL

Tecnologias 8: SQL e MySQL - Tecnologias e Frameworks que você precisa conhecer

Agora vou escrever um pouco sobre dados. Sim, em algum momento você vai precisar armazenar informações das suas aplicações e sistemas, seja para consulta posteriormente, para gerenciamento dinâmico, ou até mesmo para controle de acesso. O fato é que em algum momento você vai usar.

Então, primeiro vamos esclarecer um detalhe: SQL é uma coisa. MySQL é outra.

E SQL Server é outra ainda… Na verdade SQL é uma linguagem de manipulação de dados, os outros (MySQL, SQL Server, PostgreSQL etc) são SGBDs, sistemas gerenciadores de banco de dados, ou seja, softwares.

Eu nem preciso dizer que, para você conseguir manipular os seus dados de forma organizada e através dos SGBDs você vai precisar conhecer SQL, certo? Ok, aprenda um pouco de SQL.

Em um momento inicial, quando você precisar manipular dados, a primeira opção possivelmente seja o MySQL.

O MySQL é um SGBD que usa o formato de relacionamento entre tabelas através de chaves e outros controles, ou seja, ele possibilita o controle dos dados de forma bem estruturada e, se você organizar direito o seu banco de dados, certamente poderá usar o MySQL para manipulação de um grande volume de informações.

E, seguindo as minhas dicas iniciais, ele já está no mercado há um bom tempo e tem sido melhorado ao longo desse período. Além disso, é usado por grandes empresas e sistemas, o que aumenta a confiança quando temos que fazer uma escolha de qual SGBD usar, mesmo se não tivermos muito conhecimento dessa área.

Ah bom, e o Oracle e o SQL Server? Esses SGBDs também são muito utilizados por grandes sistemas e grandes empresas e também estão no mercado há bastante tempo. São ótimas opções, mas para uma primeira experiência, talvez o tempo de aprendizado seja mais longo do que com o MySQL, além de ter menos opções disponíveis no mercado de hospedagens de site.

Teste seus conhecimentos com o nosso quiz de banco de dados relacionais e SQL

9) MVC, ORM e DAO

Mais siglas, vamos lá, não desista… Se você já chegou até aqui, não pare agora. Vamos dar uma organizada nas coisas que vimos antes, classificando cada uma delas em uma área.

MVC (Model View Controller) é uma sigla utilizada para representar uma metodologia de desenvolvimento de sistemas que separa os dados (M) das telas (V) e dos controles (C).

Usando o que temos até aqui, seria como desenvolver um sistema web usando HTML, CSS em uma camada (V), o PHP para a camada de meio de campo (C) e o MySQL para armazenar os dados (M).

Obviamente, a ligação entre essas três camadas é que faz a mágica acontecer e esse detalhe a gente vê nos cursos disponíveis no mercado (achou que ia ser fácil assim?

ORM e DAO são formas de usar tabelas criadas em um SGBD, de maneira mais próxima a programação, através de Orientação a Objetos e alguns outros detalhes. ORM é o mapeamento objeto-relacional das tabelas do banco de dados para o formato de orientação a objetos. DAO é o formato de acesso aos dados através de funções que agrupam os principais comandos de manipulação dos dados (SQL e outros).

É claro que existem vários frameworks no mercado que fazem isso tudo de forma mais automática e deixam tudo pronto para o programador. Contudo, antes de usar esses “recursos mágicos”, sugiro que você faça uns testes sem usar esses facilitadores (por aprendizado). Tente fazer por sua conta. Vai ajudar bastante quando você for realmente escolher um framework para realizar estas atividades.

10)  PhoneGap e Appcelerator

E, por fim, eu não poderia terminar essa lista de dicas sem falar do desenvolvimento de aplicativos para smartphones e tablets. Para desenvolvimento mobile, já existem muitas opções disponíveis, mas podemos classificá-las da seguinte maneira:

desenvolvimento nativo vs desenvolvimento híbrido.

As opções “nativas” são as que usam as linguagens próprias para a criação dos apps das suas plataformas. Ex:

– Objective C e Swift são linguagens para desenvolver apps para iOS.

– Java (item 2) é a linguagem “oficial” para desenvolver apps para Android.

Fora essas duas mais, digamos, tradicionais, temos umas opções mais “amigáveis” para quem está começando e, dentre essas tecnologias paralelas, as que mais se destacam são o PhoneGap e o Appcelerator.

O Appcelerator, de forma resumida, é JavaScript (ah, só para esclarecer, JavaScript NÃO É Java). Claro, é um pouco mais complexo que isso, mas a grande vantagem é que ele gera apps nativos, tanto pra iOS quando para Android.

Tecnologia 10: Appcelerator- Tecnologias e Frameworks que você precisa conhecer

Já o PhoneGap é ainda um pouco mais fácil e permite que você desenvolva seus aplicativos usando HTML, CSS e JavaScript. E mais, permitindo usar jQuery, Bootstrap e etc. Simples assim!

Tecnologia 10: Phonegapp - Tecnologias e Frameworks que você precisa conhecer

Se você tem interesse por essa área de desenvolvimento de aplicativos para smartphones e tablets, sugiro que você comece a fazer seus testes iniciais usando um desses dois. Se gostar do resultado e se animar, aprenda as outras linguagens também!

Conclusão

Parabéns! O texto é longo e nós sabemos o quanto é difícil manter o foco com esse monte de distrações à nossa volta. Contudo, se você chegou até aqui, significa que sua vontade de aprender mais sobre essa área é grande. Não desista!

Só para lembrar, essas são apenas ALGUMAS dicas sobre tecnologias e recursos que seria interessante você conhecer. Nesta lista, priorizamos as tecnologias mais essenciais para início de carreira em desenvolvimento web. Certamente, depois de conhecer um pouco mais sobre esse monte de siglas e nomes descritos no post, você estará apto para desbravar esse universo de novidades tecnológicas que se amplia a cada dia. Boa sorte!

 

Curso online de HTML5, CSS3 e JavaScript da Becode! O seu primeiro passo para se tornar um front-end developer!

Written by Erick Scudero

Especialista em Marketing Digital e apaixonado por tudo que envolve o universo de tecnologia e comunicação. Durante sua jornada na terra dos cangurus (Austrália), atuou em diversos projetos prestando consultoria em questões de UX, SEO, Marketing Digital e modelos de negócio com foco em startups. É cofundador da Becode, da M2up e instrutor de cursos presenciais na TargetTrust.

3 Livros de SQL que você deveria ler (além de outras dicas)

3 Livros de SQL que você deveria ler (além de outras dicas)

A melhor forma de aprender lógica de programação | Becode

A melhor forma de aprender lógica de programação!