Mapa das plataformas/tecnologias do mercado

26 respostas
F

Bom dia galera.
Um questionamento comum que eu vejo por ai é sobre a escolha da plataforma ideal para uma corporação. A pergunta que eu sempre faço é “Quais as plataformas/tecnologias a ser consideradas na escolha?” Como um arquiteto pode realmente decidir por uma plataforma sem realmente saber as opções? Kk
Em virtude disso, estou abrindo esse post convocando a participação de todos com o objetivo de levantar o maior numero de informações possíveis.

Como vai funcionar?
Objeto é sucintamente documentar as plataformas e ou tecnologias existentes no mercado que possam ser usadas para o desenvolvimento de aplicações de alto nível ou corporativas.

Como documentar?
Coloque o nome da plataforma, links oficials, e descreva os tipos de aplicações que podem ser feitas com a mesma.
Depois do post desenvolvido eu gostaria de escrever um documento organizando tudo, com objetivo de ter esse MAPA para ser usado nas futuras considerações.

Estarei começando falando do Java:

Plataforma/Tecnologia - Java
Tipo de aplicações - desktop, web, RIA, web services, celulares, TV, blu-ray, dispositivos eletrônicos em geral, camada de negocio distribuídas, cartões inteligentes.

Links
http://www.oracle.com/technetwork/java/javase/overview/index.html
http://www.oracle.com/technetwork/java/javase/overview/index.html
http://www.oracle.com/technetwork/java/javame/index.html
http://www.oracle.com/technetwork/java/embedded/overview/getstarted/index.html

Plataformas baseadas em Java

Peço ajuda para citar e descrever estes tópicos de outras plataformas

OBS - Não estamos discutindo qual é a melhor, mais pratica, menos trabalhosa, bla bla bla etc. O objetivo é exclusivamente documentar o máximo das plataformas e suas opções para que possamos gerar um MAPA para a tomada de decisão.

26 Respostas

J

Oi fernando,

No caso não sei se deveríamos nos referir ao delphi e os outros de plataformas. Quando a gente se refere a java como plataforma nos referimos a jvm, um processador virtual, e os outros citados não são a mesma coisa(com exceção do dot net).

No caso do qt, ele é um framework desenvolvido pela trolltech, que foi comprada pela nokia há alguns anos atraz. Define uma série de padrões de projetos e é mvc. Esse framework está disponível para ser usado com java, c++, c# e python.

como vários compiladores c++ estão disponíveis para diversas plataformas, isso torna qt amplamente usado para sistemas embarcados, aeronauticos e automotivos.
Abaixo segue uma lista das plataformas disponíveis e o foco de atuação nos mais diversos nichos para aplicações:

Plataformas Suportadas

Desktop Mobile/Embedded
Windows Windows CE and Windows Mobile
Linux/X11 Embedded Linux
Mac OS X Symbian
MeeGo Maemo

Platforma	                                                                                    Compiladores

Linux (32 and 64-bit)	                                                                    gcc 4.2

Microsoft Windows XP	                                                                    gcc 4.4 (MinGW) (32-bit), MSVC 2005 (32 and 64-bit)

Microsoft Windows Vista	                                                            MSVC 2005, 2008

Microsoft Windows Vista 64bit                                                         MSVC 2008

Microsoft Windows 7	                                                                    MSVC 2008

Apple Mac OS X 10.6 “Snow Leopard”	                                            As provided by Apple

Apple Mac OS X 10.5 “Leopard” x86_64 (Cocoa 32 and 64bit)  As provided by Apple

Embedded Linux QWS (ARM)	                                                   gcc (Codesourcery version)

Windows CE 5.0 (ARMv4i, x86, MIPS)	                                   MSVC 2005 WinCE 5.0 Standard (x86, pocket, smart, mipsii)

Maemo 5(Linux, ARM, X11)	                                                           gcc (Scratchbox)

MeeGo (Linux, ARM, X11)	                                                           gcc (Scratchbox)

Symbian (Symbian/S60 5.0)	                                                           RVCT 2.2 [build 686 or later], WINSCW 3.2.5 [build 482 or later], GCCE (for applications)
Windows 7	                                                                                  MSVC 2010

Apple Mac OS X 10.4 Tiger (Carbon)	                                  As provided by Apple

Apple Mac OS X 10.5 Leopard (Carbon)	                                  As provided by Apple

HPUXi 11.23	                                                                                  aCC 6.10

Solaris 10 UltraSparc	                                                                  Sun Studio 12

AIX 6	                                                                                          Power5 xlC 7

Microsoft Windows XP	                                                                  Intel Compiler

Linux	                                                                                          Intel Compiler

Embedded Linux QWS (Mips, PowerPC)	                                  gcc (Codesourcery version)

Embedded Linux X11 (ARM)	                                                          gcc (Scratchbox)

Windows CE 5.0 (ARMv4i, x86, MIPS)	                                  MSVC 2005 WinCE 5.0 Standard (x86, pocket, smart, mipsii)

Windows Embedded CE 6.0 (ARMv4i, x86, MIPS)	                  MSVC 2008 WinCE Embedded 6.0 Professional

Symbian (Symbian/S60 3.1, 3.2)	                                                  RVCT 2.2 [build 686 or later], WINSCW 3.2.5 [build 482 or later], GCCE (for applications)

Qt está presente nos mais diversos nichos de mercado de aplicações

Desktop
http://qt.nokia.com/qt-in-use/target/desktop

Mobiles
http://qt.nokia.com/qt-in-use/qt-in-mobile

Cross
http://qt.nokia.com/qt-in-use/usage/cross-platform-development
ênfaze para a ferramenta de computação gráfica usada pela Lucas Film" no cinema

GUI Avançado
http://qt.nokia.com/qt-in-use/usage/advanced-gui-development
Daz 3D é desenvolvido com qt

Automotive
http://qt.nokia.com/qt-in-use/qt-in-automotive

Home Media
http://qt.nokia.com/qt-in-use/qt-in-home-media

Qt in Tablets, E-books, MIDS & Linux Distros
http://qt.nokia.com/qt-in-use/qt-in-mids-netbooks

IP Communications
http://qt.nokia.com/qt-in-use/qt-in-ip-communications

Dispositivos embarcados
http://qt.nokia.com/qt-in-use/story/device

F

Oi Julio, foi justamente por que isso que eu descrevi como “plataforma/tecnologia”.
Delphi, PHP, etc não são plataformas, mas podem ser usados para desenvolver tipos de aplicações no qual podem ser considerados sim com opções concorrentes.
Sua contribuição foi singular!!! Otimaa!! Muito obrigado.
Alguem mais podem ajudar nas outras?

J

Oi Julio, foi justamente por que isso que eu descrevi como “plataforma/tecnologia”.
Delphi, PHP, etc não são plataformas, mas podem ser usados para desenvolver tipos de aplicações no qual podem ser considerados sim com opções concorrentes.
Sua contribuição singular!!! Muito obrigado.
Alguem mais podem ajudar nas outras?

Opa, tá ok.

A

oi,

Algo sobre o PHP

Caching/Otimização de scripts PHP

Frameworks PHP

http://framework.zend.com

IDE para desenvolvimento

http://devphp.sourceforge.net/

Desenvolvimento GUI
http://gtk.php.net/

F

André Fonseca:
oi,

Algo sobre o PHP

Caching/Otimização de scripts PHP

Frameworks PHP

http://framework.zend.com

IDE para desenvolvimento

http://devphp.sourceforge.net/


Ola Andre…quais os tipos de aplicações podem ser feitas com PHP? Que eu saiba é web e web services…???

A

PHP é mais usado para desenvolver scripts server-side, fazendo a mesma coisas que os scripts CGI faziam ultimamente…

Mas você pode também usar php como linha de comando - scripts para administração de sistemas

Além do PHP-GTK que mencionei acima para GUI (desktop)

Para desenvolver PHP você só precisa do interpretador, um web server e um browser.

O PHP é um dos itens do LAMP (http://pt.wikipedia.org/wiki/LAMP) onde a linguagem pode também ser Phyton ou Perl

(eu gosto de phyton, perl não :slight_smile: )

Mais detalhes http://www.php.net/manual/en/intro-whatcando.php

F

André Fonseca:
PHP é mais usado para desenvolver scripts server-side, fazendo a mesma coisas que os scripts CGI faziam ultimamente…

Mas você pode também usar php como linha de comando - scripts para administração de sistemas

Além do PHP-GTK que mencionei acima para GUI (desktop)

Para desenvolver PHP você só precisa do interpretador, um web server e um browser.

O PHP é um dos itens do LAMP (http://pt.wikipedia.org/wiki/LAMP) onde a linguagem pode também ser Phyton ou Perl

(eu gosto de phyton, perl não :slight_smile: )

Mais detalhes http://www.php.net/manual/en/intro-whatcando.php


Resumindo, com PHP é possível fazer aplicações desktop e web.
E web services?

A

Fernando, ultimamente, acompanhei o PHP mais focado no Zend Framework. Que é o Framework PHP mantido pela Zend (mantenedora da linguagem).

Se deres uma olhada nas opções de Serviços pelo Zend, vais ver que o PHP atua com WebServices e também com Cloud.

Na minha opnião, o Zend Framework eleva o PHP a um patamar a linguagem sozinha consegue de forma bem complicada.

Abs []

F

Ok adriano. Para php acho que é isso!
Vamos para as outras…

M

Não entendi o objetivo deste “mapa”, seria mostrar as platafromas e suas respectiva utilizações e setores (público / privado)? :wink:

F

Mostrar as plataformas e os tipos de aplicações que vc pode gerar com cada delas…
Por exemplo…diante de um requisito/cenario para fazer uma aplicação web + web service qual plataforma adotar? Ou seja, qual plataforma escolher para implementar isso?
Com o mapa vc consegue saber que as plataformas A, B, C, etc vc consegue fazer…dai vc vai avaliar cada um delas para decidir…

A

juliocbq:
Oi fernando,

No caso não sei se deveríamos nos referir ao delphi e os outros de plataformas. Quando a gente se refere a java como plataforma nos referimos a jvm, um processador virtual, e os outros citados não são a mesma coisa(com exceção do dot net).

No caso do qt, ele é um framework desenvolvido pela trolltech, que foi comprada pela nokia há alguns anos atraz. Define uma série de padrões de projetos e é mvc. Esse framework está disponível para ser usado com java, c++, c# e python.

Olá juliocbq, você teria algum material voltado para o uso do qt com Java? Achei o framework espetacular mas estou um pouco confuso sobre como começar algo, na verdade tinha desanimado pois achava que o framework era pra ser usado apenas com C++ (linguagem que eu conheço apenas superficialmente e nunca fui muito fã), mas com você dizendo que pode ser usado com Java voltei a me animar :lol:

Valeu.

F

Se alguem conhecer algum especialista de outra plataforma, pede os caras nos ajudarem ai…

J

alias:
juliocbq:
Oi fernando,

No caso não sei se deveríamos nos referir ao delphi e os outros de plataformas. Quando a gente se refere a java como plataforma nos referimos a jvm, um processador virtual, e os outros citados não são a mesma coisa(com exceção do dot net).

No caso do qt, ele é um framework desenvolvido pela trolltech, que foi comprada pela nokia há alguns anos atraz. Define uma série de padrões de projetos e é mvc. Esse framework está disponível para ser usado com java, c++, c# e python.

Olá juliocbq, você teria algum material voltado para o uso do qt com Java? Achei o framework espetacular mas estou um pouco confuso sobre como começar algo, na verdade tinha desanimado pois achava que o framework era pra ser usado apenas com C++ (linguagem que eu conheço apenas superficialmente e nunca fui muito fã), mas com você dizendo que pode ser usado com Java voltei a me animar :lol:

Valeu.

Olá

O mapeamento oficial das bibliotecas do qt em java é o qt jambi;
http://qt-jambi.org/

Python
http://www.riverbankcomputing.co.uk/software/pyqt/download

Qyoto
mapeamento c#
http://techbase.kde.org/Development/Languages/Qyoto

A

juliocbq:
alias:
juliocbq:
Oi fernando,

No caso não sei se deveríamos nos referir ao delphi e os outros de plataformas. Quando a gente se refere a java como plataforma nos referimos a jvm, um processador virtual, e os outros citados não são a mesma coisa(com exceção do dot net).

No caso do qt, ele é um framework desenvolvido pela trolltech, que foi comprada pela nokia há alguns anos atraz. Define uma série de padrões de projetos e é mvc. Esse framework está disponível para ser usado com java, c++, c# e python.

Olá juliocbq, você teria algum material voltado para o uso do qt com Java? Achei o framework espetacular mas estou um pouco confuso sobre como começar algo, na verdade tinha desanimado pois achava que o framework era pra ser usado apenas com C++ (linguagem que eu conheço apenas superficialmente e nunca fui muito fã), mas com você dizendo que pode ser usado com Java voltei a me animar :lol:

Valeu.

Olá

O mapeamento oficial das bibliotecas do qt em java é o qt jambi;
http://qt-jambi.org/

Python
http://www.riverbankcomputing.co.uk/software/pyqt/download

Qyoto
mapeamento c#
http://techbase.kde.org/Development/Languages/Qyoto

Massa! Valeu velho, obrigado.

M

Quando a plataforma .Net surgiu, era vista como uma evolução em desenvolvimento na plataforma Microsoft com a promessa de unificar o desenvolvimento de aplicações windows, web e mobile.

Nesta época, haviam 36 lingugens homologadas para a plataforma .Net, incluindo Cobol for .Net e Delphi for .Net.

O coração da plataforma .Net é o .Net Framework, que é responsável por gerenciar todos os recursos que são disponibilizados pela plataforma, inclusive gerenciamento de código também conhecido como Managed Code.

De forma muito similar ao Java, a plataforma .Net executa uma pré-compilação do código, que gera uma linguagem intermediária ou IL, para depois gerar a linguagem de máguina.

Podemos criar classes em Visual Basic.Net e herdar estas classes em C# e vice versa.

Além do Visual Basic.Net e C#, temos também o J# (que gera código Java apenas para a plataforma .Net) e o C++, única lingugem que acessa diretamente recurssos de hardware diretamente não sendo gerenciado pelo .Net Framework.

O ADO.Net é a tecnologia utilizada para conectar a diferentes bancos de dados, como por exemplo: MS SQLServer, Oracle, PostgreSQL, MySQL, entre outros.

Atualmente (2009), foi lançada uma versão do Hibernate para pa plataforma .Net: o nHibernate que funciona de forma semelhante ao Hiberntate no Java.

F

Marcio_Nogueira:
Quando a plataforma .Net surgiu, era vista como uma evolução em desenvolvimento na plataforma Microsoft com a promessa de unificar o desenvolvimento de aplicações windows, web e mobile.

Nesta época, haviam 36 lingugens homologadas para a plataforma .Net, incluindo Cobol for .Net e Delphi for .Net.

O coração da plataforma .Net é o .Net Framework, que é responsável por gerenciar todos os recursos que são disponibilizados pela plataforma, inclusive gerenciamento de código também conhecido como Managed Code.

De forma muito similar ao Java, a plataforma .Net executa uma pré-compilação do código, que gera uma linguagem intermediária ou IL, para depois gerar a linguagem de máguina.

Podemos criar classes em Visual Basic.Net e herdar estas classes em C# e vice versa.

Além do Visual Basic.Net e C#, temos também o J# (que gera código Java apenas para a plataforma .Net) e o C++, única lingugem que acessa diretamente recurssos de hardware diretamente não sendo gerenciado pelo .Net Framework.

O ADO.Net é a tecnologia utilizada para conectar a diferentes bancos de dados, como por exemplo: MS SQLServer, Oracle, PostgreSQL, MySQL, entre outros.

Atualmente (2009), foi lançada uma versão do Hibernate para pa plataforma .Net: o nHibernate que funciona de forma semelhante ao Hiberntate no Java.


Ola marcio…na verdade gostariamos de saber isso aqui:

Coloque o 1. nome da plataforma, 2. links oficials, e 3. descreva os tipos de aplicações que podem ser feitas com a mesma (maior importante).

D

André Fonseca:
oi,

Algo sobre o PHP

Caching/Otimização de scripts PHP

Frameworks PHP

http://framework.zend.com

IDE para desenvolvimento

http://devphp.sourceforge.net/

Desenvolvimento GUI
http://gtk.php.net/


Complementando,

PHP já possui frameworks ORM

ActiveRecord
http://www.phpactiverecord.org/

Doctrine

Propel
http://www.propelorm.org/

E tem mais um monte, a maioria baseado e Active Record, que veio do Ruby on Rails

M

Plataforma: .Net
Linguagens: C++,C#,VB,J#
Site: http://www.msdnbrasil.com.br
Aplicações: windows, web e mobile.

F
  • O que vc quer dizer com aplicações “windows”? Seria soluções desktop nativo?
  • .Net não faz SOAP e REST não?
  • Mobile como?
  • .NET não tem camada de negocio distribuída não? Ja ouvi falar de COM+…
  • Existe realmente portabilidade da maquina virtual deles? Tem casos reais?
    Precisamos de respostas curtas, rápidas e com informações.
M

Windows = Desktop. :wink:

D

Windows = batch, não?
Windows roda (até a versão Vista) sobre o DOS (disc operation system).
É plenamente possível criar aplicativos windows sem qualquer janela ou interação do usuário, mesmo em C# ou VB…

J

Windows = batch, não?
Windows roda (até a versão Vista) sobre o DOS (disc operation system).
É plenamente possível criar aplicativos windows sem qualquer janela ou interação do usuário, mesmo em C# ou VB…

os únicos windows que eram apenas gerenciadores de janelas em cima do dos eram o 3.1/11, 95, 98. O nt e o 2000 já funcionavam de outra forma e possuiam outro kernel.
A saída padrão para qualquer programa que seja é o console ou terminal. E todo sistema operacional possui um terminal.

M

Plataforma/Tecnologia - Delphi
Tipo de aplicações - Desenvolvimento de aplicações nativas para plataforma Windows,Mac e iOS através do framework FireMonkey

Links

http://www.embarcadero.com/br/products/delphi

D

Windows = batch, não?
Windows roda (até a versão Vista) sobre o DOS (disc operation system).
É plenamente possível criar aplicativos windows sem qualquer janela ou interação do usuário, mesmo em C# ou VB…

os únicos windows que eram apenas gerenciadores de janelas em cima do dos eram o 3.1/11, 95, 98. O nt e o 2000 já funcionavam de outra forma e possuiam outro kernel.
A saída padrão para qualquer programa que seja é o console ou terminal. E todo sistema operacional possui um terminal.

Mas é exatamente isto que eu estou afirmando (com exceção da versão do Windows, havia esquecido da questão da família NT e da evolução XP e superiores).
Assim sendo, não é correto afirmar que só por ser Windows é desktop based.
Também existem aplicativos em linux que funcionam sem utilizar terminal…

V

Acho que o .Net é dividido em três principais vertentes: Internet, Desktop e Multimídia.

  1. Nome da plataforma: Asp.net
    Principais linguagens/tecnologias: C# + MSMVC + Asp.Net

  2. links oficiais:
    http://msdn.microsoft.com/pt-br/ms348103 (MSDN, equivalente aos “javadocs”)
    http://www.asp.net/mvc (site com tutoriais do mvc)
    http://msdn.microsoft.com/library/bb308959.aspx (projeto LINQ)
    http://msdn.microsoft.com/en-us/library/aa697427(v=vs.80).aspx (ADO.Net e Entity Framework).

  3. No que pode ser usado:

  • Sistemas corporativos;
  • Sites web;
  • Há a possibilidade de RAD e pequenos sites com o WinForms, mas recomendo só para prototipagem.
  1. Nome da plataforma: XNA
    Principais linguagens/Tecnologias: C# + XNA Game Studio

  2. Links oficiais:
    http://create.msdn.com/en-US/
    http://msdn.microsoft.com/en-us/library/bb200104.aspx

  3. No que pode ser usado:

  • Aplicações multimídia em geral (Games, simuladores, players de vídeo e audio, etc).
  • Suporte ao X-Box, Windows Phone e Desktop.
  1. Plataformas derivadas:
  • Unity
  1. Nome da plataforma: C# + Visual Studio
  2. Links oficiais (MSDN, já citada acima);
  3. No que pode ser usado:
  • Aplicações desktop em geral (industriais, corporativas, ou de prateleira).
  • Aplicações em console;
  • Ferramentas para o SO;

OBS: Há suporte a outras plataformas com o Mono.

Criado 10 de novembro de 2011
Ultima resposta 2 de jan. de 2012
Respostas 26
Participantes 9