Category Archives: Aprendizado

Shell Script a linguagem do Linux

Agora que se adaptou ao mundo Linux, sei que deseja começar a aprender alguma linguagem ou que já tentou mas a apostila (diga-se livro) que usou não era tão clara? Agora é possível aprender Shell Script facilmente e do zero, conheça e baixe a apostila criada por Luiz Alberto e aprenda praticamente brincando. Ainda se acha muito iniciante? Não se preocupe baixe aqui um Guia completo de uso para o Linux.

Java 8 e o Netbeans no Ubuntu 14.04

Muitas pessoas acham o Linux complicado, tenho me adaptado muito bem a este ambiente. Escolhi a distro Ubuntu 14.04 por achá-la a mais amigável entre todas. Vejamos como apenas 3 passos como instalamos o Java 8 e o NetBeans:

  1. Baixe o arquivo com o instalador – acesse aqui
  2. Na pasta downloads, dê permissão para execução do arquivo: sudo chmod+x jdk-8u5-nb-8-linux-x64.sh
  3. Agora basta executar o instador: sudo ./jdk-8u5-nb-8-linux-x64.sh

Se ao invés do NetBeans prefere usar o Eclipse, baixe o Java sem o NetBeans, que pode ser conseguido aqui (por ser um pacote RPM é ainda mais fácil é só clicar em cima para instalar). E apenas descompacte o Eclipse.

Essa dica foi com base na informação do blog da Revista Espírito Livre, para ver outra sobre como colocar o Apache + PHP + MySQL – acesse aqui.

Básico do Linux

PinguimDuas teclas de atalho que são bem interessantes no Linux (usei com o Ubuntu 14.04). a primeira se refere a quando você está na tela gráfica do sistema e deseja abrir uma janela de comandos é a Ctrl+Alt+T. A segunda é possível alternar do mundo gráfico para o mundo de comandos Ctrl+Alt+F5 e retornar Crtl+Alt+F7. Quer aprender mais sobre o Linux? Baixe gratuitamente o Guia Foca. E o que é possível realizar na tela de comandos? Vejamos os comandos mais comuns:

  • whatis – help com as informações sobre um determinado comando
  • whereis – onde está tal coisa?
  • whoami – quem sou?
  • pwd – aonde estou?
  • ifconfig – quais minhas configurações de rede?
  • ps – lista dos processos ativos
  • kill – eliminar um determinado processo
  • ls – listar os arquivos e subdiretórios de uma pasta (similar ao dir do Windows)
  • sudo – permite que um usuário comum tenha permissão do superusuário
  • adduser ou useradd – criar um usuário
  • passwd – altera a senha de um usuário
  • touch – cria um arquivo
  • cd – mudar o diretório corrente
  • cp – copiar um arquivo
  • mv – mover um arquivo
  • rm – excluir um arquivo

Estude na edX

A edX, um site educacional criado pela Universidade de Harvard e o Massachusetts Institute of Technology (MIT) e mantido também por outras universidades como Berkeley e UT, disponibiliza uma série de cursos em várias áreas que variam de Química, Arquitetura, Nutrição até Tecnologia. É um cardápio com mais de 170 cursos sendo muito deles totalmente gratuitos.

Micro Aventura

A revista Micro Aventura foi sem dúvida um dos primeiros contatos que tive com o computador, e isso era através da programação Basic em um Sinclair (minha primeira máquina: TK82-C). A ideia da revista era genial, durante a história interagíamos com a realização de alguns programas (entre digitação, adaptação e criação) e isso me ensinou muito sobre como programar e ter lógica.

  • Baixe aqui as 10 edições disponíveis da revista
  • Baixe aqui um emulador para o TRS-80 (compatível com os programas da revista) – Dica: O melhor que encontrei foi o Model 100 Virtual T – OSX v10.4 v1.5 que é compatível com o Windows 7

Escreva melhor

Escrever é uma questão de hábito, porém algumas técnicas podem ajudar a dominar esse dom. Uma dessas é chamada de Paráfrase e consiste da alteração de um texto sem a mudança de sentido, vejamos a seguinte frase:

Lendo o jornal, cheguei à conclusão de que tudo aquilo seria esquecido após três ou quatro meses de investigação.

Que ao aplicar a paráfrase, ficaria da seguinte maneira:

Sendo assim, o leitor chegou a seguinte conclusão de tudo o que foi lido no jornal, passados três ou quatro meses de investigação, não seria mais lembrado.

Ou seja, pode-se usar essa técnica para a prática de textos no dia a dia, encontrados em revistas, jornais, livros e artigos. O uso dela envolve o domínio de 10 habilidades:

  1. Emprego de sinônimos.
  2. Emprego de antônimos, com apoio de uma palavra negativa.
  3. Utilização de termos anafóricos, que remetem a outros já citados no texto.
  4. Troca de termo verbal por nominal, e vice-versa.
  5. Omissão de termos facilmente subentendidos.
  6. Mudança de ordem dos termos no período.
  7. Mudança de voz verbal (ativa e passiva).
  8. Troca de discurso (direto e indireto).
  9. Troca de palavras por expressões perifrásticas e vice-versa.
  10. Troca de locuções por palavras e vice-versa.

No meu blog, publiquei mais dois artigos que podem lhe ajudar em suas redações:

Java – Quando o “this” é obrigatório

Muitas vezes pensamos no objeto this como opcional, ou seja, meramente documentacional, mas saiba que em determinadas ocasiões ele é obrigatório, veja o exemplo:

01: class Point2D {
02:   private int x, y;
03:   public Point2D(int x, int y) {
04:     x = x;
05:   }
06:   public String toString() {
07:     return "[" + x + ", " + y + "]";
08:   }
09:   public static void main(String []args) {
10:     Point2D point = new Point2D(10, 20);
11:     System.out.println(point);
12:   }
13: }

Qual o resultado deste código:

  1. point
  2. Point
  3. [0, 0]
  4. [10, 0]
  5. [10, 20]

Se marcou a opção 4 errou pois a resposta correta é a opção 3. O motivo está na linha 04 no qual obrigatoriamente é necessário o uso do objeto this para referirmo-nos a variável x da classe. Então a próxima vez que criar um método set tome o máximo de cuidado e insira o this.

 

Java – Criar um objeto sem usar o “new Construtor()”

As vezes, durante a codificação, precisamos criar um objeto de uma classe sem utilizar a sintaxe: “Classe obj = new Construtor()”. Podemos utilizar os seguintes modos:

1. Usar o método newInstance da Classe class:

Class c = Class.forName(“NomeClasse”);
NomeClasse obj = (NomeClasse) c.newInstance();

2. Usar o método clone() da java.lang.Object – Cria uma cópia de um objeto existente:

NomeClasse obj = new NomeClasse();
NomeClasse objCopiado = obj.clone();

3. Usar a deserialização da Object:

ObjectInputStream os = new ObjectInputStream(ObjDaClasseInputStream);
NomeClasse obj = (NomeClasse) os.readObject();

4. Usar o ClassLoader:

getClass().getClassLoader().loadClass(“NomeClasse”).newInstance();

5. Usar por Reflection:

constructor.newInstance() ou class.newInstance()

6. Também, podemos usar o Padrão “Factory Method”. Recomendo uma lida sobre isto.