Que linguagem usar?

19 respostas
V

Ola amigos.

Tenho varios programinhas em Delphi e queria juntar todos eles numa aplicaçao web pra facilitar a consulta e a modificaçao desses programinhas e seu conteudo.

Gostaria de saber qual é a linguagem, o IDE e o framework mais apropriado para fazer isso, mais simples e mais rapido para programar… e por favor me explique por que ele é melhor.

Java? PHP? .Net?

Obrigada,
Veronica

19 Respostas

Ruttmann

Já te adianto que não é tão simples assim te indicar um framework. Depende do que seus “programinhas” fazem, qual a necessidade em termos de acesso a BD, número de usuário simultâneos e outros aspectos.

Quanto a plataforma, Java ou .Net, dá na mesma, e das diferenças, vantagens e desvantagens de cada uma todo mundo já está careca de saber. :stuck_out_tongue:

E, o que você quer dizer com “modificação desses programinhas e seu conteúdo”?

javaflex

Todas podem gerar o mesmo resultado. Experimenta as três em um CRUD e usa a que for se sentir mais confortável visualizando facilidade de manutencões e evoluções, além de claro se vai atender os requisitos do projeto. .NET por exemplo é somente para servidor Windows, em sua normalidade sem usar soluções obscuras como Mono. Então antes de tudo veja onde vai ser implantada a solução.

V

Obrigada amigos…

Então eu posso fazer testes entre varias tecnologias:

LINGUAGEM - IDE - FRAMEWORK
1 - Java, Eclipse, OSGi (para facilitar a modularizaçao)
2 - PHP, Sublime Text, Yii ou AJAX (creio que HTML, CSS, JS vão ser complementos para o PHP)
3 - Cold Fusion, Cold Fusion Builder 2, ColdBox (PAGA =s)
4 - C++, Visual Studio ou Eclipse, .Net Framework

Essas 4 combinações são boas para começar meus testes com desenvolvimento web???

Obrigada,

M

veronicaveronica:
Obrigada amigos…

Então eu posso fazer testes entre varias tecnologias:

LINGUAGEM - IDE - FRAMEWORK
1 - Java, Eclipse, OSGi (para facilitar a modularizaçao)
2 - PHP, Sublime Text, Yii ou AJAX (creio que HTML, CSS, JS vão ser complementos para o PHP)
3 - Cold Fusion, Cold Fusion Builder 2, ColdBox (PAGA =s)
4 - C++, Visual Studio ou Eclipse, .Net Framework

Essas 4 combinações são boas para começar meus testes com desenvolvimento web???

Obrigada,

C#

V

Obrigada…

Mas uso C# com .Net ? ASP? .Net Framework? Tudo isso?

O Ruby é uma boa opçao para se pensar???

Boa tarde!

adriano_si

veronicaveronica:
Obrigada…

Mas uso C# com .Net ? ASP? .Net Framework? Tudo isso?

O Ruby é uma boa opçao para se pensar???

Boa tarde!

Veronica, o Ruby é uma boa opção sim pra você começar, assim como todas as outras anteriores. Eu recomendo (recomendação MINHA, não verdade absoluta):

  • Se for de Java, use o Spring Web MVC + JSPs, você irá aprender bastante (pode usar também o Spring Roo). Use o STS Tool que nada mais é do que um Eclipse turbinado pela SpringSource;

  • Se for de PHP, vá de Zend Framework. A IDE é bem opicional mesmo sendo que o Zend é fluente e se encaixa muito bem até mesmo com o NetBeans;

  • Se for de Ruby, use o Rails (Ruby On Rails para pesquisas precisas). IDE é algo meio que abominável no meio dos Rubystas, mas você tem a opção do Aptana, que também é um Eclipse turbinado pra Ruby. Eu usei o Aptana quando estudei Ruby e ele é bem decente;

  • Se for de .NET, apesar de eu não ter conhecimentos sobre, ouço sempre falar bem do C# e Asp .NET MVC, IDE é fácil, Visual Studio;

  • Ainda há o Python com Django ou Web2Py (foram os únicos que estudei e que encontrei mais adeptos e materiais). Usei o NinjaIDE, é uma IDE Python BEEEEMMMMM bacana, apesar dos Pythonistas também terem alergias à IDE;

Resumindo, mais importante que tudo isso, é você começar… Sem se preocupar se é A MELHOR forma… Daqui há 10 anos, você vai saber a melhor forma sem precisar perguntar e só de ouvir o problema, hoje, iniciando, comece do básico e aprenda os conceitos envolvidos, mesmo que ainda não use A MELHOR ferramenta. Siga a dica do amigo, faça uma prova de conceito com cada umas das indicações que lhe deram aqui e use aquela que você se adaptar melhor. Mas comece o quanto antes.

Abs [] e bons estudos.

V

Adorei as suas opinioes…

Muito obrigada!
Como você disse: hora de começar!!!

Abraçao e obrigada!

V

Gostaria de saber como funcionam as linguagens interpretadas que eu escolhi… Podem me dizer se esta corrto.

JAVA:
.java --> JAVAC (compilador) --> .class (interpretado pela JVM) --> JVM (interpretador) --> Sistema Operacional

PHP:
browser --> .html com funçoes php --> Apache (interpretador) --> Retorna Html ao browser

C#:
C# --> compilador c# (QUAL SERIA???) --> MSIL Metadata --> .Net Framework --> Sistema Operacional

RUBY ON RAILS:
browser --> ruby.rb (Controle) --> index.html (ViSao) --> Retorna Html ao browser

COLDFUSION:
browser --> arquivo coldfusion --> servidor ColdFusion (interpretador) --> pagina Coldfusion -->Retorna Html ao browser

Muito obrigada,

V

Gostaria de saber como funcionam as linguagens interpretadas que eu escolhi… Podem me dizer se esta corrto.

JAVA:
.java --> JAVAC (compilador) --> .class (interpretado pela JVM) --> JVM (interpretador) --> Sistema Operacional

PHP:
browser --> .html com funçoes php --> Apache (interpretador) --> Retorna Html ao browser

C#:
C# --> compilador c# (QUAL SERIA???) --> MSIL Metadata --> .Net Framework --> Sistema Operacional

RUBY ON RAILS:
browser --> ruby.rb (Controle) --> index.html (ViSao) --> Retorna Html ao browser

COLDFUSION:
browser --> arquivo coldfusion --> servidor ColdFusion (interpretador) --> pagina Coldfusion -->Retorna Html ao browser

Muito obrigada,

rmendes08

Veja bem, aplicações Web são aplicações do tipo cliente-servidor, portanto, você sempre vai ter que se preocupar com os dois lados da aplicação, tanto cliente, quanto servidor.

Do lado servidor é que existe a maior diversidade de opções de plataformas. As mais utilizadas hoje em dia

Java
.NET
PHP
Ruby
Python

Do lado cliente, não tem como fugir de HTML + CSS + Js. Existem alguns zumbis em Flex e Silverlight, mas particularmente eu não recomendo. O que as plataformas do lado servidor fazem é, ao receber uma requisição, elas executam um programa e geram uma resposta em HTML + CSS + Js.

Como o colega já falou, as opções são muitas, e é realmente difícil dizer qual é a melhor.

Minha sugestão, considerando que você veio do Delphi. Tente fazer sua aplicação em .NET, utilizando ASP.NET Web Forms e o Visual Studio como IDE. Dessas opções eu penso que é o ambiente mais próximo possível do Delphi. Assim você migra mais suavemente para o ambiente Web.

rmendes08

veronicaveronica:
Gostaria de saber como funcionam as linguagens interpretadas que eu escolhi… Podem me dizer se esta corrto.

JAVA:
.java --> JAVAC (compilador) --> .class (interpretado pela JVM) --> JVM (interpretador) --> Sistema Operacional

PHP:
browser --> .html com funçoes php --> Apache (interpretador) --> Retorna Html ao browser

C#:
C# --> compilador c# (QUAL SERIA???) --> MSIL Metadata --> .Net Framework --> Sistema Operacional

RUBY ON RAILS:
browser --> ruby.rb (Controle) --> index.html (ViSao) --> Retorna Html ao browser

COLDFUSION:
browser --> arquivo coldfusion --> servidor ColdFusion (interpretador) --> pagina Coldfusion -->Retorna Html ao browser

Muito obrigada,

De todas elas, só não conheço Cold Fusion … Mas vamos lá

Vamos separar o ciclo code-deploy do runtime

Code-Deploy:

Java
escrever código-fonte .java --> javac --> .class --> arquivo .WAR --> copia para o servidor Web

.NET
escrever código-fonte .cs ou .vb --> (Visual Studio) --> CLR --> .zip --> copia para o IIS (servidor Web da MS)

PHP
escrever código-fonte .php --> copiar para o Apache

Ruby
escrever código-fonte .rb --> copiar para o servidor

Execução

Todas elas começam com:

browser --> requisição HTTP --> servidor Web

e terminam com:

–> gera HTML --> retorna ao browser

Java
–> .class --> JVM --> OS

.NET
–> CLR --> .NET Runtime --> OS

PHP
–> .php --> interpretador --> OS

Ruby
–> .rb --> interpretador --> OS

basicamente é isso, é claro que no meio da história tem BD, XMLs, etc.

V

Agora estou começando a entender.
Obrigada!!!

Se eu tiver duvidas eu volto!

V

O Ruby tem alguma coisa no meio do caminho chamdo RAILS ROUTER, o que é isso?
Ele é como se fosse uma JVM?

Obrigada,

rmendes08

veronicaveronica:
O Ruby tem alguma coisa no meio do caminho chamdo RAILS ROUTER, o que é isso?
Ele é como se fosse uma JVM?

Obrigada,

Bom, vamos lá. Nessa sopa de letrinhas nós precisamos diferenciar linguagem de framework.

Ruby é uma linguagem de programação como outra qualquer. Você pode escrever aplicativos console, com interface gráfica etc.

Ruby on Rails é um framework Web desenvolvido sobre a linguagem Ruby. É um conjunto de bibliotecas, padrões e ferramentas que formam o “esqueleto” de uma aplicação completa. Os frameworks trazem uma série de funcionalidades prontas que são comuns a qualquer aplicação, do contrário, você precisaria refazer essas funcionalidades a cada aplicação.

Uma delas seria o mapeamento entre URLs e as classes e métodos da sua aplicação.

Vamos tomar como exemplo um site comum www.veronica.com.br, em um servidor Web “seco”. Imagine que você faça a seguinte navegação: www.veronica.com.br/secoes/fotos.html.

O navegador gera a seguinte requisição:

GET /secoes/fotos.html
Host: www.veronica.com.br

Ao chegar no servidor, este vai procurar no sistema de arquivos algum diretório que corresponda ao site, e dentro desse diretório ele vai procurar o sub-diretório /secoes e em seguida o arquivo fotos.html.

Pois bem, uma aplicação Web precisa mais do que servir arquivos. Da mesma maneira que um servidor Web comum faz o mapeamento de um endereço URL para um arquivo no servidor, uma aplicação Web precisa fazer o mapeamento entre um
endereço URL e uma sub-rotina, geralmente uma classe e um método. Você poderia, apenas com a linguagem Ruby abrir a
porta TCP 80, receber o texto da requisição e fazer esse mapeamento com if’s e else’s. Porém, para grandes aplicações o
código ficaria ilegível, além de você ter que refazer essa tarefa para cada nova aplicação. Já os frameworks incluem bibliotecas
pra fazer essa tarefa pra você, tudo o que você tem que fazer é aprender o padrão utilizado no framework.

V

Mais uma vez brigadinha.

Entao entendi que o Rails Router é quem vai informar ao “Controller” que tipo de açao ele devera executar, segundo a demanda do cliente… correto?

Boa tarde

rmendes08

veronicaveronica:
Mais uma vez brigadinha.

Entao entendi que o Rails Router é quem vai informar ao “Controller” que tipo de açao ele devera executar, segundo a demanda do cliente… correto?

Boa tarde

Exatamente. Em tempo, o Rails Router é uma classe Ruby também, só que fornecida pelo framework.

V

Excelente… Tô entendo bem!

Toda vez que eu faço uma demanda HTTP o primeiro ponto que essa demanda “bate” é no Servidor web (Apache por exemplo).? Entendo que eu faço a demanda ao servidor web.

Brigada,

V

Como vc disse antes sempre inicio com uma demanda HTTP e termino enviando uma pagina HTML (ou outras, ex: JS) para o cliente:

Java:
–> --> -->
BROWSER SERVIDOR WEB J2EE WEB CONTAINER APLICACAO WEB
<-- <-- <–

PHP e Ruby
–> -->
BROWSER SERVIDOR WEB BD
<-- <–

ColdFusion:
–> -->
BROWSER SERVIDOR CF BD
<-- <–

C#:
–> -->
BROWSER SERVIDOR IIS BD
<-- <–

Brigadao…

V

Melhorando a visao da anterior:

Java:
BROWSER --> SERVIDOR WEB --> J2EE WEB CONTAINER --> APLICACAO WEB

PHP e Ruby
BROWSER --> SERVIDOR WEB --> BD

ColdFusion:
BROWSER --> SERVIDOR CF --> BD

C#:
BROWSER --> SERVIDOR IIS --> BD

Criado 4 de fevereiro de 2014
Ultima resposta 6 de fev. de 2014
Respostas 19
Participantes 6