6 maneiras de fazer a mesma coisa, o que é considerado boas práticas?

As vezes tem tantas maneiras diferentes de fazer o mesmo código que nós ficamos na dúvida quanto a qual maneira usar. O que seria considerado "boa prática" pela comunidade e o que sua equipe entenderia melhor. Suponhamos que você esteja trabalhando dentro de um método de um Domain Service chamado UmDomainServiceChique(objetoDoDominio) que será chamado por uma API. Você tem uma regra de negócio chique para ser verificada que por enquanto chamarei de VerificaMinhaRegraChiqueComplexa(). Você chama UmDomainServiceChique(objetoDoDominio) e caso VerificaMinhaRegraChiqueComplexa() retorne true você vai querer que UmDomainServiceChique faça o que tem que fazer e a api retornar Ok 200, caso contrário você quer que a API responda um erro qualquer, tipo BadRequest, e retornar uma mensagem dizendo que VerificaMinhaRegraChiqueComplexa deu ruim. Eu vejo 6 maneiras de fazer isso, gostaria de saber a opinião de outrs devs sobre qual seria a maneira menos gambiarr

Delphi Tour 2010 - Eu Fui ^^ (continuação)

Como eu prometi no meu  post anterior, abaixo vão as fotos que eu tirei do evento. Tirei apenas 5 ou 6 fotos.
Desculpem o tamanho desse post, mas ele tem informações importantes sobre o preço do Delphi até dia 25, e o preço da concorrência.

O evento foi pequeno, não tinha muito o que fotografar.


Você pode encontrar essas fotos no meu album do picasa http://picasaweb.google.com/vitorrubio/DelphiTour2010#

Durante o evento tive 6 decepções:
1) Não haverá mais nenhum tipo de versão Express ou Turbo do Delphi. E entrando no site do Turbo Explorer, eu não encontrei a versão 2006 do Turbo Delphi. A embarcadero tirou os links e você é remetido direto para o site da Embarcadero, na página de  produtos free, e não tem mais o Turbo Delphi 2006, apenas o trial do 2010.

2) Fui informado que as versões personal 3 e 4, e o Turbo Delphi 2006, que foram distribuidas gratuitamente nas revistas Geek e internet, respectivamente, podem servir de base para um upgrade, mas apenas até o dia 25/06/2010 (pelo menos isso me foi informado por e-mail por uma pessoa do departamento comercial, mas não sei se ela entendeu direito minha pergunta). O que acontecerá depois do dia 25? As versões de 1 a 2005 perderão suporte a upgrade e apenas as versões 2006 em diante terão direito a upgrade. Se você não quer comprar a licença de New User, que é mais cara, essa é sua última oportunidade.

3) As versões professional não tem o Datasnap, apenasas versões enterprise em diante. Triste isso, porque na minha opinião as biblitecas deveriam ser iguais para todas as versões, sendo o diferencial apenas recursos, experts  e plugins da IDE, alem de componentes de integração, softwares para diagramas UML e recursos para desenvolvimento em equipe.

4) O Delphi Professional também não tem todos os drivers dbXpress que você precisa. Os bons mesmo só a partir do Enterprise.

5) Fazendo uma comparação, o Delphi Professional não atende a maioria das minhas necessidades, e ele é comparável à versão Express dos produtos da Microsoft, que são gratuitos. O Rad Studio Archited é sem dúvida um sonho, mas salgado demais pelo que tem a oferecer. As versões "Professional" da concorrente equivalem as versões "Enterprise" da embarcadero. Mas o preço .... Enquanto o Delphi enterprise Upgrade está R$ 2.533,50, o VS 2010 com MSDN Subscription NEW USER está US$799,00, com o dolar a 1,775 ficaria a R$ 1418,23, ou seja, um pouco mais que a metade do preço (não estou contando com impostos). Esse é o preço do pacote que vem com MSDN Essentials. Com MSDN completo vai para US$1,199. Tudo bem que o pacote Premium e  o Pacote Ultimate são muito mais caros que o Rad Studio Architet. O ultimate bem masi caro até. Mas o preço do Delphi (não rad studio) Professional e Enterprise é injustificável. Se fosse rad studio então nem se fala. Qualquer pacote da M$ já vem com suporte a mais de uma linguagem, então equivaleria (em necessidades de desenvolvedores e não em questões de análise, bd ou ALM) a um rad studio.

Esses são os preços da M$

Abaixo os preços do RadStudio ou do Delphi:

Conforme contato no Delphi Tour São Paulo, seguem informações comerciais dos produtos. Lembramos que essas condições são promocionais, válidas somente para inscritos no Delphi Tour e para propostas oficiais assinadas e recebidas originais até a data de 25/06. Caso tenha interesse na aquisição, por favor, envie a ficha cadastral anexa preenchida para que possamos gerar a proposta oficial. Aproveitamos para lembrar que essa é a última oportunidade para a atualização de versões antigas do Delphi 1 ao 2005)


PROMOÇÃO 25% DE DESCONTO
(Você pode adquirir os produtos abaixo com 25% de desconto. Valores abaixo já com desconto sobre a tabela de preços)

Para receber o Delphi ou C++ Builder Professional UPGRADE
R$ 778,50

Para receber o Delphi ou C++ Builder Enterprise UPGRADE
R$ 2.533,50

Para receber o Delphi ou C++ Builder Architect UPGRADE
R$ 4.483,50


PROMOÇÃO RAD STUDIO
(Para adquirir o seu RAD Studio até 25/06, você paga por ele apenas o preço de tabela do Delphi. Valores promocionais abaixo)

Para receber o RAD Studio Professional NEW USER
R$ 2.338,00

Para receber o RAD Studio Professional UPGRADE
R$ 1.038,00

Para receber o RAD Studio Enterprise NEW USER
R$ 5.198,00

Para receber o RAD Studio Enterprise UPGRADE
R$ 3.378,00

Para receber o RAD Studio Architect NEW USER
R$ 9.098,00

Para receber o RAD Studio Architect UPGRADE
R$ 5.978,00


PROMOÇÃO RAD + DB OPTIMIZER
(Para adquirir o seu RAD Studio Architect + DB Optimizer até 25/06, você paga por ele apenas o preço de tabela do RAD Enterprise. Valores promocionais abaixo)

Para receber o RAD Studio Architect NEW USER + DB Optimizer
R$ 7.278,00

Para receber o RAD Studio Architect UPGRADE + DB Optimizer
R$ 4.678,00



Condição de Pagamento:             Vencimento em 14 dias após o faturamento, com boleto bancário

Prazo de Entrega:                            Até 15 dias a contar da data da emissão da NF


Detalhe: pagamento apenas a vista. ( PORRA, À VISTA?).
A empresa que eu trabalho hoje não utiliza Delphi (a que eu trabalhava antes sim). Por isso, se quero ter um Delphi que não seja o 2006 ou os Trials da vida, tenho que comprar. Eu compraria se fosse parcelado, mesmo tendo outras prioridades na vida como casa e carro.
Como eles não vendem parcelado....

Os parceiros da M$ no Brasil, como a Brasoftware, vendem a liceça professional New User (não é upgrade, não é standard) do VS 2008 (não achei a versão 2010 no site ainda) por 2485,00 (mais barato que o upgrade de 2533,50 ou o new user de sabe-se Deus Quanto do Delphi Enterprise.) E ainda parcela em 5x. no cartão de crédito.

Vou te dizer, sou um apaixonado por Delphi(leia o post), por muitos motivos mas principalmente pela quantidade de documentação, exemplos, componentes, facilidades e pelo apelo didático da linguagem pascal, idealizada por Niklaus Wirth.

É hora de ir para o MonoDevelop e Lazarus. Com meu orçamento, se eu for comprar um produto profissional e original, só posso comprar da M$, sinto muito.

Na minha humilde opinião, a Embarcadero poderia abrir o source do Delphi 7 para download e uso irrestrito, já que ele é tão velho que não merece mais consideração. Ele é o segundo melhor Delphi depois do 2010. E minha preferência pelo 2010 se dá apenas por causa dos generics, alguns novos recursos da linguagem e a nova RTTI (que tem uns bugs chatos que serão vistos em outro post).

A 6° decepção é que, nas palavras do próprio Andreano Lanusse, a Embarcadero não tem planos de portar nativamente, ou recriar, para o Delphi bibliotecas muito usadas e muito necessárias que hoje são desenvolvidas por terceiros, como Relatorios (RAVE) e Sockets (Indy), além de coisas como REgEx, que você pode encontrar open-source por aí, ou não. Essa posição é para não concorrer com os próprios parceiros desenvolvedores de componentes.

O que acontece? o Cenário que já conhecemos: você adquire uma nova versão do Delphi, suponhamos a 2012 (no fim do mundo), mas os seus componentes de terceiros adquiridos do D 2010 não funcionam ou não são suportados no D 2012. A empresa mudou, faliu, parou de dar suporte ao componente, o que fazer?

1) Não migre seus projetos D 2010 para D 2012.
2) Migre e tenha o retrabalho de migrar ou portar o componente. (ou trocar de componente, e pague novamente)
3) Mesmo que você tenha o source do componente, estará fadado e escravizado a dar suporte, manutenção e talvez até migrar um código de um projeto que não foi você que fez e que talvez você nem saiba como funcione. (Esqueci de adicionar nos custos do Delphi o custo dos componentes de terceiros que você precisará e que talvez já venham nativamente no Visual Studio e no .net Framework...)

O resto da história vocês já conhecem.

Comentários

Postagens mais visitadas deste blog

Busca de CEP com o Lazarus - Parte 1 - UrlEncode

Botão Add This para adicionar seu post em qualquer rede

Uso de memória no SQL Server