Python for Maemo

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Python for Maemo - Presentation Transcript

    1. Python for Maemo
    2. APRESENTAÇÃO
      • Osvaldo Santana Neto
        • Pesquisador do INdT, trabalha com Linux desde 2000 e atualmente é coordenador da comunidade PythonBrasil. No INdT faz parte da equipe de SDK onde cuida do port da linguagem Python para a plataforma Maemo.
    3. INdT – BRASIL / RECIFE
      • Instituto Nokia de Tecnologia
        • Instituição sem fins lucrativos, fundada pela Nokia em 2002.
        • Criado com investimentos da Lei de Informática.
        • 3 escritórios, em Manaus, Brasília e Recife.
        • Pesquisa & Desenvolvimento nas áreas de Mecânica & Produtos Eletrônicos, Software, Multimídia, Telecomunicações e Excelência em Operações e Logística.
    4. INdT - ESTRUTURA
      • Estrutura:
      • O INdT conta hoje com uma equipe de cerca de 100 profissionais altamente qualificados, divididos entre 2 áreas-chave: técnica e administrativa. A área técnica é composta por quatro áreas de conhecimento para a execução de projetos. A área administrativa inclui todas as funções de suporte para a execução de projetos como Governança, Recursos Humanos, Administrativo e Financeiro, Escritório de Projetos e TI.
      • Parcerias:
        • Estes são alguns parceiros do INdT para execução de projetos:
      CESAR - Centro de Estudos e Sistemas Avançados de Recife FUCAPI - Fundação Centro de Análise, Pesquisa e Inovação Tecnológica INATEL - Instituto Nacional de Telecomunicações PMR - Escola Politécnica da Universidade de São Paulo UFAM UFCG UFMG UFRJ
    5. PLATAFORMA MAEMO
      • Maemo é uma plataforma para o desenvolvimento de aplicações para Internet Tablets da Nokia e outros dispositivos portáteis compatíveis.
      • A plataforma é formada por componentes populares de Softwares Livre que são largamente utilizados e estão presentes nas principais distribuições Linux da atualidade.
    6. ESPECIFICAÇÕES TÉCNICAS
      • Kernel Linux (Core)
      • D-BUS (IPC)
      • GTK+ (GUI)
      • Xserver
      • Gconf
      • GnomeVFS
      • Hildon (GUI)
      • LibOSSO
    7. NOKIA 770: 1º PRODUTO
      • Primeira versão:
      OMAP 1710 DSP ARM9 220MHz Resolução: 800x480 65 mil cores 4.13” widescreen Touch screen WLAN 802.11b/g Bluetooth 1.2 USB Multimídia
    8. NOKIA N800: 2º PRODUTO
      • Uma nova versão:
      OMAP 2420 DSP ARM11 330MHz Resolução: 800x480 65 mil cores 4.13” widescreen Touch screen WLAN 802.11b/g Bluetooth 1.2 USB Multimídia Câmera VGA Rádio FM
    9. DESENVOLVENDO PARA MAEMO
      • Desenvolvimento muito semelhante ao desenvolvimento Linux para Desktop:
        • As ferramentas são as mesmas utilizadas para desenvolvimento Linux
      • As bibliotecas são as mesmas utilizadas por dezenas de aplicações Linux para Desktop com pequenas optimizações
    10. DESENVOLVENDO PARA MAEMO
      • As ferramentas necessárias para o desenvolvimento:
        • Ambiente para cross-compiling (scratchbox)
        • GNU Toolkit (gcc, gdb, make, autotools, ...)
      • Python
        • projeto criado e mantido pelo INdT de Recife
    11. DESENVOLVENDO PARA MAEMO
      • Aplicação bem simples, componentes básicos sendo utilizados. C e GTK+
      • Tela de abertura de um jogo escrito em Python com PyGame
    12. for
    13. PORQUE PYTHON?
      • Licenciamento:
        • Python possui uma licença de código aberto compatível com GPL
        • Todos os componentes estão sob a mesma licença, inclusive a máquina virtual / interpretador Python
      • Desenvolvimento aberto
        • Python possui uma comunidade participativa e aberta a sugestões
        • Python possui um modelo de desenvolvimento pouco burocrático
    14. PORQUE PYTHON?
      • Qualidade da Linguagem
        • Facilidade de uso, sintaxe limpa, estrutura de dados poderosas como lista, tupla e dicionário
        • Paradigmas suportados: estrutural, bom para scripts rápidos e orientado a objetos¸facilita o desenvolvimento de aplicativos de maior porte
      • Muitos módulos reunidos
        • Parsers XML, HTML, servidores SMTP, HTTP, manipulação de textos, imagens e outros
    15. DESAFIOS PARA O PORT
      • Ocupação de espaço em disco:
        • Redução da instalação padrão
        • Remoção de módulos desnecessários
        • Otimização dos módulos com remoção das “docstrings”
        • Arquivamento dos módulos principais em um arquivo ZIP
    16. DESAFIOS PARA O PORT
      • Velocidade do Interpretador
        • O aplicativos em Python aparentam ter o comportamento esperado para uma linguagem interpretada
      • Calcanhar de aquiles: Tempo de inicialização
        • Experiências de melhoria do tempo de carga do módulo GTK+
        • Python Launcher (experiência para a próxima versão)
        • Melhorias beneficiariam também os projetos OLPC e OpenMoko
    17. CARACTERíSTICAS DO PYMAEMO
      • PyGame
        • Bindings Python para biblioteca SDL. Permite o desenvolvimento de jogos
      • PyGTK/PyHildon
        • GTK componente padrão no Linux
        • Hildon é uma “extensão” do GTK para a plataforma Maemo
    18. CARACTERíSTICAS DO PYMAEMO
      • Python OSSO
        • Acesso à serviços do dispositivo
      • Outros bindings:
        • HildonDesktop - plugins e applets para a plataforma. Desenvolvido pela Nokia
          • Envolvimento do Lucas Rocha
        • LibIconic, GnomeVFS, D-Bus, BlueZ, Gstreamer, ...
    19. IDÉIAS PARA O FUTURO
      • Otimizador de bytecode e compiladores nativos (Psyco, CPython, PyPy/LLVM, ...)
      • Personalizações específicas para plataforma
      • Criação de uma API simplificada para a plataforma
        • Permitir coisas como:
      from easy import camera, audio image = camera.take_picture() image.save(“foto.jpg”) audio.play(“sonzera.mp3”) :
    20. COMO SE ENVOLVER?
      • Em C:
        • http://maemo.org/
      • Em Python:
        • http://pymaemo.garage.maemo.org/
      • Em outras linguagens / plataformas:
        • Java
          • Muitas tentativas e poucos resultados
        • Mono (.Net)
          • Totalmente funcional
    21. LINKS IMPORTANTES
      • http ://www. maemo . org
        • Site oficial da plataforma.
      • http ://www. maemo . org / maemowiki
        • Wiki oficial
      • http://pymaemo.garage.maemo.org
        • Python para Maemo
    22. EXEMPLO DE APLICAÇÃO
      • Colocar o SolarWolf pra funcionar...
    23. PERGUNTAS?
    24. OBRIGADO!
        • [email_address]

    + Osvaldo SantanaOsvaldo Santana, 3 years ago

    custom

    2270 views, 0 favs, 0 embeds more stats

    Presented at FISL8

    More info about this document

    CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

    Go to text version

    • Total Views 2270
      • 2270 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 84
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories

    Tags