Python

É bom conhecer mais profundamente a linguagem que se pretende utilizar logo aconselho a ler o livro on-line.

Veja em Qual a melhor IDE para Python uma abordagem muito interessante.


Uma IDE interessante é a Zeus.

A internet é sem dúvidas o melhor local para sanar as dúvidas sobre Python porém alguns livros sempre ajudam. Como programação é muito dinâmica as mudanças não ocorrem nos livros tão rapidamente. Tenho me orientado por dois livros básicos que são:

 Custa menos de R$ 50,00.
Custa menos de R$ 150,00.

Dicas para os estudantes que querem se aprofundar e ser um profissional de peso na área.

A _nomeempresa, empresa de soluções de gerência de serviços de telecomunicações, redes e TI, busca para o setor de desenvolvimento:

Agile Developer
  • com sólidos conhecimentos web;
  • bom de Python (+1 ponto se for bom de Django, mas se souber Ruby, PHP ou outra linguagem dinâmica do tipo, a gente pode conversar);
  • sinistro em Javascript (sinistro mesmo. Só saber validar formulário não adianta);
  • que conheça REST;
  • saiba e goste de trabalhar com TDD;
  • saiba usar o GIT;
  • tenha conhecimento de Agile;
  • apaixonado pela área e disposto a evoluir diariamente;
Conhecimentos de redes e ITIL são muito úteis para o entendimento do nosso mercado. ExtJS 4 é um grande diferencial. Saber um pouco de Linux seria interessante, apesar de não ser obrigatório.

Trabalhamos com scrum em uma equipe autogerenciável e de alto desempenho. Oferecemos:
  1. Ótimo ambiente de trabalho e de troca de conhecimento;
  2. Café expresso;
  3. Xbox com Kinect pra jogar a hora que der na telha;
  4. Horário flexível;
  5. VR;
  6. Estacionamento;
  7. Academia (Smart Fit);
  8. Inglês (EnglishTown);
  9. Contratação CLT com salário a combinar de acordo com o seu nível de conhecimento e experiência;
  10. Possibilidade de trabalhar de bermuda e descalço se estiver muito calor.

Se quiser impressionar, mande junto o seu login no Github, twitter, blog e afins.

Fonte: lcmattoso - vagasispm

Deste anúncio tiramos algumas ferramentas, técnicas e tecnologias que devemos estudar:
  • DJANGO
  • Ruby
  • REST
  • TDD
  • GIT
  • ITIL
  • ExtJS 4
  • github

Pymite

Python-em-um-ci é um projeto para desenvolver uma reduzido máquina virtual Python (codinome PyMite) que executa um subconjunto significativo da linguagem Python em microcontroladores sem um sistema operacional [1].

PyMite é uma máquina virtual Python peso mosca. Este projeto é executado no modo interativo que permite que você digite o código Python em um prompt ao vivo e tê-lo executado no dispositivo embarcado. Ele vem com sua pequena e própria biblioteca de módulos e este projeto inclui wrappers para algumas das classes e métodos na biblioteca embarcada (mbed) [2].











PyMite é um interpretador Python peso mosca escrito a partir do zero para executar em microcontroladores de 8 bits e com maiores recursos tão limitado como 64 KB de memória de programa (flash) e 4 KB de memória RAM. Este suporta um subconjunto da sintaxe Python 2.5 e pode executar um subconjunto de Python 2.5 bytecodes. E também pode ser compilados, testados e executados em um computador de mesa [3].

Apostila
Há pela internet alguns lugares interessantes para se aprender a linguagem Python irei citar alguns aqui:
1- Aprendendo com Ricardo Duarte

MODBUS
A comunidade Python não para de contribuir para o desenvolvimento da linguagem e tem um belo projeto para a área industrial como o pymodbus. Veja a elegância e simplicidade da código com a linguagem Python retirado da referência [4] mostrado abaixo:

from pymodbus.client.sync import ModbusTcpClient
client = ModbusTcpClient('127.0.0.1')
client.write_coil(1, True)
result = client.read_coils(1,1)
print result.bits[0]
client.close()

#Import Files
from convert_data import *
from pymodbus.client.sync import ModbusTcpClient
#Open TCP Port
client = ModbusTcpClient('192.168.1.15')
#Read AIN0
rr = client.read_input_registers(0,2)
print 'AIN0 val:', data_to_float32(rr.registers)
#Close TCP Port
client.close()

Documentação [5]

Docstrings são strings que inserimos dentro de nosso código Python com o intuito de fornecer uma explicação sobre o funcionamento deste. Essa string deve ser colocada como a primeira linha da definição de uma classe, método ou função.

O texto representado por tal string será apresentado quando for executado o comando help() utilizando como entrada a função onde a docstring está inserida.





Excessões [6]:

Exception
StopIteration
StandardError
ArithmeticError
OverflowError
FloatingPointError
ZeroDivisonError
AssertionError
AttributeError
EOFError
ImportError
KeyboardInterrupt
LookupError
IndexError
KeyError
NameError
UnboundLocalError
EnvironmentError
IOError
SyntaxError
IndentationError
SystemError    
SystemExit
ValueError
RuntimeError
NotImplementedError
BaseException


        try:
            ...
        except ZeroDivisionError:
            print('Erro divisao por zero')
        except RuntimeError:
            print('Erro  execuçao')
        except TypeError:
            print('Erro  tipo')
        except NameError:
            print('Erro  nome')
        except ValueError:
            print('Erro  valor')
        except IOError:
            print('Erro  E/S')
        except (Exception, e):
            print('Erro %s.</p>' % str(e))
        except:
            print('Erro geral.')

Logging [7][8][9]


A distribuição Python inclui mais de cem codecs para conversão de texto em byte e vice-versa.

O módulo "struct" oferece funções para análise de bytes compactos, extraindo-os em uma tupla com campos de diferentes tipo e para realizar a conversão inversa de uma tupla para bytes compactos.


Bom para os desenvolvedores Python

Interessante conceito de formação de um sistema operacional com Python em um sistema embarcado ou microcontrolado. Este é o microPython veja mais em: https://micropython.org/
Há eletrônica e programa para a formação do sistema.

Fonte: micropython.org

 Tem-se muito eletrônica ao dispor com fácil acesso devido a linguagem Python.

https://micropython.org/

Firmware para o pyboard
As compilações diárias do código (o diretório stmhal /) estão disponíbilizadas. A versão de hardware da placa que você tem deve ser escrita em sua plataforma eletrônica; Seguindo a nomenclatura pré-definda como em PYBv1.0 devem usar o arquivo pybv10_xxx.dfu.

Uma visão geral das alterações para cada versão pode ser encontrada no site.

Atualização de Firmware do Dispositivo - DFU
Esses arquivos podem ser escritos - flashed, diretamente no pyboard usando um programador DFU, para o Linux é encontrado em: https://github.com/micropython/micropython/wiki/Pyboard-Firmware-Update.

Fonte: https://www.embarcados.com.br/micropython
O software é disponível ao publico sob a licença de código aberto.
 



Referências
[1] https://code.google.com/p/python-on-a-chip
[2] http://systembus.com/110621/mbed.org/projects/cookbook/wiki/PyMite.htm
[3] https://wiki.python.org/moin/PyMite
[4] https://code.google.com/p/pymodbus
[5] https://pythonhelp.wordpress.com/2011/02/14/docstrings/  em 05/02/2015 as 20:19 horas.
[6]  http://www.tutorialspoint.com/python/python_exceptions.htm 17/05/2015 às 14:10
[7] https://www.red-dove.com/python_logging.html#loggers
[8] https://docs.python.org/2/howto/logging-cookbook.html#multiple-handlers-and-formatters
[9] https://www.python.org/dev/peps/pep-0282/
[10] Luciano Ramalho, Python fluente, O'Reilly, 2015.
.

Nenhum comentário:

Postar um comentário