Thread: RES: [Notes2-team] O modelo de desenvolvimento do Notes...
Brought to you by:
andersonrb
From: <lui...@im...> - 2003-07-03 12:35:25
|
Eu apostaria em desenvolver na VCL como nosso amigo havia falado e = manter alguem na equipe para dar suporte para adaptar o codigo para = linux. -----Mensagem original----- De: Anderson Barbieri [mailto:no...@ig...]=20 Enviada em: quarta-feira, 2 de julho de 2003 21:45 Para: Notes Dev List Assunto: [Notes2-team] O modelo de desenvolvimento do Notes... =09 =09 Os 3 modelos... Ol=E1 pessoal. Nos =FAltimos e-mails uma discuss=E3o muito importante = vem tomando corpo e acho que chegou a hora de incluirmos todos (n=E3o = apenas os desenvolvedores) nela para que possamos tomar uma decis=E3o e = seguirmos em frente. A discuss=E3o =E9 sobre qual modelo de desenvolvimento vamos utilizar. = Apesar de parecer algo para programador, na verdade n=E3o =E9 - o modelo = escolhido traz conseq=FC=EAncias para todo o futuro do Notes e, = portanto, conseq=FC=EAncias para o planejamento que temos discutido. = Pelos e-mails que chegaram, temos 3 modelos diferentes e teremos que = escolher um deles. Vou tentar explic=E1-los a seguir do modo que sei. = Por favor, leiam e me corrijam onde for quiserem. 1) Dois c=F3digos fonte: um exemplo deste modelo =E9 o M$ Office. Dois = c=F3digos fontes diferentes s=E3o mantidos e quando capacidades novas = s=E3o implementadas em um precisam ser depois traduzidas para o outro = fonte. Os dois fontes possuem alguma semelhan=E7a, mas tamb=E9m muitas = diferen=E7as, pois cada um deles segue as APIs e padr=F5es espec=EDficos = de cada sistema operacional. O M$ Office no windows =E9 totalmente = integrado ao Windows por causa disto. O M$ Office do Mac tamb=E9m =E9 = bastante integrado ao sistema operacional. Por um lado a forte = integra=E7=E3o aos sistemas operacionais diminu=ED a curva de = aprendizado para pessoas acostumadas com aquele sistema operacional e, = algumas vezes, traz algum aumento de performance. Por outro lado, = usu=E1rios que usam o programa nos dois sistemas operacionais ter=E3o = que reaprender algumas coisas do programa, j=E1 que ele n=E3o =E9 igual = nos dois sistemas operacionais. Al=E9m disso, como isto leva a = desenvolver quase dois programas ao mesmo tempo, o desenvolvimento acaba = sendo demorado e laboroso. Eu vejo este modelo sendo muito adotado por = empresas como M$, Qualcom, Macromedia e Adobe (se bem que estas duas = =FAltimas n=E3o integram seus produtos tanto ao OS, preferindo manter = muitas semelhan=E7as entre as vers=F5es para Mac e Win de seus = produtos). Por causa de todo o trabalho a mais que este modelo de = desenvolvimento gera as empresas mant=E9m duas equipes distintas de = desenvolvimento - uma para cada c=F3digo fonte. Outro por=E9m deste = modelo =E9 que as vers=F5es costumam ter datas de lan=E7amento bastante = diferentes - =E9 normal que o produto para Mac esteja na vers=E3o 2.1 e = que a vers=E3o para windows j=E1 esteja na vers=E3o 3 ou vice-versa. No = nosso caso este modelo nos daria uma vantagem a mais: n=E3o = precisar=EDamos distribuir a QT no windows (o que significa 2 ou 3 Mbs a = menos). 2) IFDEFs: este modelo tamb=E9m traria para n=F3s a vantagem de n=E3o = precisar distribuir a biblioteca QT. Na realidade ele n=E3o chega a ser = t=E3o diferete do modelo 1: usa-se apenas um c=F3digo fonte, pois = atrav=E9s dos famosos ifdefs (*IDEF =E9 uma instru=E7=E3o que permite = que voc=EA use um peda=E7o do fonte ou outro dependendo de certas = condi=E7=F5es podendo assim, por exemplo, usar certo trecho de c=F3digo = no linux e outro diferente no windows*) os trechos espec=EDficos para = cada sistema operacional podem ficar juntos. Este modelo n=E3o =E9 t=E3o = trabalhoso quanto o anterior, mas por causa da grande quantidade de = ifdefs no c=F3digo este acaba ficando menos claro. Mas com algumas = pol=EDticas de desenvolvimento os ifdefs podem ser "escondidos" e a = clareza do codigo pode ser mantida em boa parte do fonte. Parece um bom = modelo. Mas no nosto caso espec=EDfico ele tem um problema - por causa = de certas diferen=E7as entre o linux e o windows (na realidade entre a = CLX e a VCL, para quem programa em Delphi) n=E3o teremos como = implementar temas e skins do modo como vinhamos pensando. (At=E9 existe = uma forma, mas ter=EDamos que usar algo do modelo 1, parte do fonte = teria que ser espec=EDfico para cada plataforma.) Temos que pesar = ent=E3o o qu=E3o importante =E9 para n=F3s a interface do Notes ser = configur=E1vel. 3) Bibliotecas cross-plataforma: voc=EAs conhecem esta solu=E7=E3o de = softwares abertos como OpenOffice e Mozilla. =C9 a que eu tenho visto = ser empregada nos softwares livres mais novos. =C0s vezes penso que o = Java da Sun e o .Net da M$ derivaram suas id=E9ias deste modelo. A = id=E9ia aqui =E9 basear toda a constru=E7=E3o do software em bibliotecas = que sejam multiplataforma ao inv=E9s de usar as APIs providas pelo = sistema operacional. Na verdade, este modelo deixa o trabalho de = adaptar-se as APIs dos sistemas operacionais para as bibliotecas. Como o = trabalho chato fica com os desenvolvedores da biblioteca esta me parece = ser a forma mais r=E1pida e menos trabalhosa de desenvolver um = aplicativo multiplataforma. Claro que h=E1 alguns problemas: A. voc=EA = deve distribuir as bibliotecas junto com o software. No nosso caso isto = significa que ter=EDamos que distribuir a QT no windows (no linux sempre = teremos que distribu=ED-la). B. se a biblioteca tiver alguma falha em = algum dos sistemas operacionais o desenvolvedor depende do desenvolvedor = da biblioteca para corrigir o erro (no nosso caso =E9 assim, mas o = mozilla p. ex. n=E3o sofre deste problema por desenvolver as suas = pr=F3prias bibliotecas) C. os desenvolvedores, normalmente acostumados = com as APIs de algum sistema operacional precisam aprender as APIs da = biblioteca (n=E3o =E9 o nosso caso, j=E1 que a Borland fez as APIs = ficarem na maior parte das vezes iguais a que usamos no windows ou = disponibilizou alguma forma do reaprendizdo n=E3o ser necess=E1rio). No = nosso caso acho que este =E9 o modelo que permitiria o desenvolvimento = mais acelerado e tamb=E9m a interface mais customiz=E1vel. Por outro = lado, os controles da QT tem algumas diferen=E7as dos controles do = windows - o que pode causar alguma estranhesa em algum usu=E1rio, por = mais que todos os controles sejam f=E1ceis de usar. S=E3o estes os tr=EAs modelos e os pr=F3s e contras que conhe=E7o = deles. Qual voc=EAs acham que devemos usar? Aguardo os argumentos de = voc=EAs! Anderson --=20 Anderson R. Barbieri --------------------- Coordenador do Projeto Notes - Notepad Replacement http://notes.codigolivre.org.br * no...@ig... |
From: Anderson B. <no...@ig...> - 2003-07-03 18:15:47
|
*/ ** Aguardo as opini=F5es de todos neste tema t=E3o importante!! De uma olhada agora!!! **/* Repondendo o mail do Luiz <#1>e o outro do Tiago <#2>: > Luiz Antonio Gomes Pican=E7o wrote: > Eu apostaria em desenvolver na VCL como nosso amigo havia falado e=20 > manter alguem na equipe para dar suporte para adaptar o codigo para lin= ux. Luiz, sinceramente...* */duvido muito que uma pessoa s=F3 de conta de=20 traduzir o c=F3digo do windows para o linux./ Precisar=EDamos ou usar duas equipes (o que acho imposs=EDvel, somos muit= o=20 poucos para nos dividirmos) ou responsabilizar a equipe por ir escrevendo os dois=20 c=F3digos - ou seja, precisar=EDamos ir escrevendo os dois c=F3digos ao mesmo tempo. Outro problema =E9 que usando este formato/ n=E3o vejo como poder=EDamos = dar=20 ao usu=E1rio a possibilidade do usu=E1rio customizar a interface usando temas/ - a n=E3o ser que tu ac= ha=20 que o suporte a temas/skins seja desnecess=E1rio ou tenha j=E1 uma id=E9ia alternativa (e eu diria, uma id= =E9ia=20 m=E1gica) para implementarmos isto. Tamb=E9m dizer que vamos traduzir o c=F3digo do windows para o linux =E9 = dizer=20 que o linux =E9 para n=F3s menos importante que o windows... > Tiago Schubert wrote: > > Em rela=E7=E3o as tr=EAs op=E7=F5es que temos, pensei assunto e ache= i muito interessante a id=E9ia de ser usado o CLX, pois isso facilitaria = todo o processo de desenvolvimento. Esta =E9 a op=E7=E3o na qual eu apost= aria. > Esta tamb=E9m =E9 a solu=E7=E3o que mais me agrada, apesar de eu odiar te= r que=20 distribuir a QT junto. Mas vamos ver, se o pessoal preferir outro modelo terei que acat=E1-lo.... a maioria decide= . > Mesmo assim seria poss=EDvel desenvolvermos o Notes em CLX e em VCL= paralelamente utilizando como auxilio alguns programas que come=E7am a s= urgir com o objetivo de transito mais f=E1cil na convers=E3o tanto de CLX= para VCL como o contrario, como o ConvertFiles este Free (http://www.del= phibr.com.br/artigos/ConvertFiles.php)ou o CLXpert este Pago (http://www.= argostecnologia.com/clxpert/). Mas assim manter=EDamos a depend=EAncia de= uma vers=E3o sobre outra. > =20 > Acho que este convertfiles eu j=E1 conhecia. Mas, se =E9 o que eu conhe=E7= o,=20 ele n=E3o faz o trabalho inteiro, n=E9?! Algumas coisas precisam ser feit= as=20 na m=E3o ainda... mas =E9 melhor que nada. Isso resolveria em parte o=20 problema da lentid=E3o de desenvolvimento, mas =E9 provavel que as edi=E7= =F5es=20 para linux fossem acabar sempre saindo um pouco depois das do windows...=20 o que =E9 algo que n=E3o me agrada. Parece que ao fazer isto estamos nos=20 assemelhando a microsoft e cia. Mas pode ser s=F3 neura minha... T+ Anderson |