[Notes2-team] =?ISO-8859-1?Q?Orienta=E7=F5es_gerais_para_os_novos_de?= =?ISO-8859-1?Q?senvolvedores
Brought to you by:
andersonrb
From: Anderson R. B. <and...@po...> - 2004-03-31 19:41:50
|
Ol=E1 pessoal, Eis algumas orienta=E7=F5es gerais principalmente os desenvolvedores novos... acho que com isso vamos evitar muitas d=FAvidas. O que n=E3o entender ou estiver mal explicado mesmo, fique a vontade para questionar, criticar e perguntar :) *Orienta=E7=F5es gerais para os novos desenvolvedores * TAREFAS As tarefas de desenvolvimento est=E3o no bugtracker do Notes em : http://notes2.sourceforge.net/bugkiller/ (ali=E1s, =E9 importante que voc=EAs se cadastrem nele) Atualmente as seguintes tarefas j=E1 possuem gente trabalhando: #23 - O Notes deve verificar se o arquivo foi modificaod ao ser ativado.=20 (Josimar) #5 - Terminar o di=E1logo de configura=E7=F5es (Anderson) #9 - Di=E1logos localizar/subst. (Josimar) #13 - ir para linha de erro (Anderson) #15 - empacotamento (Jonas) #17 - Autocompletar (Anderson) #28 - menu de contexto da gutter (Anderson) #31 - reformula=E7=E3o do componente de colora=E7=E3o (Anderson e Pedro) As outras tarefas est=E3o esperando que algu=E9m as fa=E7a. Basta escolhe= r uma tarefa e enviar um e-mail para lista dizendo "Eu vou implementar a tarefa [descri=E7=E3o] n=FAmero [n=FAmero dela no bugtracker]". Isto =E9 essencial! Temos poucos desenvolvedores e por isso =E9 importante que n=E3o tenhamos duas pessoas implementando a mesma coisa. Logo que a tarefa for terminada, envie o source para o meu e-mail. Quanto temos bastante modifica=E7=F5es, eu uso ferramentas de compara=E7=E3= o de texto para unir os sources. Esta uni=E3o =E9 ent=E3o testada e logo vi= ra uma nova vers=E3o de desenvolvimento ("dev"). =C9 comum que eu fa=E7a algum tipo de modifica=E7=E3o nos c=F3digos que s= =E3o enviados - seja para resolver conflitos entre as modifica=E7=F5es enviada= s, otimizar alguma coisa, corrigir bugs ou simplesmente para aumentar a clareza do c=F3digo. Se a modifica=E7=E3o enviada estiver muito ruim, eu vou pedir ao desenvolvedor que melhore a implementa=E7=E3o :) C=D3DIGO Estamos tentando usar OOP. Ent=E3o evitem enviar c=F3digo ultra-procedura= l. No m=EDnimo quebrem o c=F3digo em procedimentos menores. Procedimentos longos e mal comentados logo viram c=F3digo imposs=EDvel de manter e chei= o de bugs - digo isto por experi=EAncia, n=E3o apenas por ret=F3rica. O c=F3digo =E9 dividido em algumas pastas: forms (di=E1lgos e forms do No= tes), editor (c=F3digo diretamente relacionado ao editor), 3rdParty (c=F3digo d= e terceiros), core (todo o resto, heheh). Al=E9m disto o c=F3digo =E9 comen= tado para que documenta=E7=E3o possa ser gerada usando o utilit=E1rio DiPasDoc= . Existe um tutorial de como se deve comentar o c=F3digo em: http://notes2.sourceforge.net/dev/wakka.php?wakka=3DDocumenteOCodigo O Notes =E9 um editor que se pretende ser leve, simples de usar e ter sup= orte para qualquer linguagem. Isto acarreta algumas conseq=FC=EAncias: - deve se ter todo o cuidado para criar classes e componentes apenas quando eles forem ser usados. Se poss=EDvel, deve-se destruir as classes = logo ap=F3s o uso para liberar recursos. Por=E9m, a casos em que vale =E0 pena= criar a classe na inicializa=E7=E3o e manter apenas uma inst=E2ncia dela durant= e toda a vida da aplica=E7=E3o - =E9 preciso ver caso a caso o que vale mais =E0= pena; - ferramentas especificas para uma linguagem N=C3O devem ser criadas. Toda ferramenta deve ser us=E1vel para qualquer linguagem. A exce=E7=E3o a esta regra fica por conta de linguagens que s=E3o utilizadas por=20 praticamente qualquer linguagem, como XML, SQL e HTML. No futuro o Notes dever=E1 suportar plugins e scripts para que as necessidades mais espec=EDficas de cada linguagem possam ser atendidas. Outra coisa importante =E9 evitar usar componentes que sejam espec=EDfico para Windows ou certas vers=F5es do Delphi. Temos = a inten=E7=E3o de portar o Notes para linux (e quem sabe outras plataformas= ) logo ap=F3s lan=E7armos esta vers=E3o em que estamos trabalhando. E usar compo= entens que s=F3 existem em uma vers=E3o do Delphi mts vezes pro=EDbem novos=20 desenvolvedores a contribuir com o projeto. ORIENTA=C7=C3O A OBJETOS Sei que nem todo mundo tem no=E7=E3o de orienta=E7=E3o de objetos. Existe= m alguns bons tutoriais em portugu=EAs sobre o assunto nos links abaixo: http://www.demianlessa.com/download/oop.zip http://www.joaomorais.com.br/pascal/push.php?download=3D70913514 Para quem sabe ler em ingl=EAs, o delphi.about.com tem muitos tutotias bons sobre OOP, compoentens, etc. Al=E9m disto, eu e os outros desenvolve= dores do Notes estamos aqui para ajudar nas d=FAvidas. Fiquem =E0 vontade para=20 perguntar, ok?! INTERFACE Uma das maiores vantagens do Notes sempre foi a facilidade de uso. Isto=20 acontece em parte pelo cuidado que sempre se teve ao desenhar as interfaces. Tenham=20 certeza, ent=E3o, que eu vou ser o primeiro a reclamar de interfaces mal feitas :) N=E3o =E9 complicado fazer uma boa interface. Basta alinhar os componente= s=20 perfeitamente, n=E3o usar um TEdit com Hieght 9 e outro com Height 40, n=E3o criar bot=F5= es=20 gigantes ou muito pequenos, n=E3o usar fontes coloridas nem em negrito nem com uma= =20 fonte diferente, etc. Basta seguir os padr=F5es do windows. Outra: o Delphi em=20 geral foi p=E9ssimamente desenhado - aconselho que evitem copiar qualquer di=E1logo= do delphi. Em geral os produtos da Microsoft tem uma interface bem cuidada=20 e s=E3o melhores para serem copiados. (N=E3o me entendam mal. N=E3o sou um adorad= or da Microsoft, mas em termos de interface eles d=E3o de Dez a Zero nas outras= =20 empresas.) FUTURO Temos v=E1rios planos para os futuro, mas todos s=E3o especula=E7=F5es. A= =FAnica=20 coisa certa, ponto em que parece todo mundo concordar, =E9 que o Notes precisa ser portado para o linux logo e que provavelmente isto ser=E1 feito usand= o o Lazarus (lazarus.freepascal.org). Algumas id=E9ias v=E3o no sentido de=20 desenvolvermos um suporte a scripts (provavelmente baseado em ECMAScript) e separar o c=F3digo em pequenos componentes independentes. Mas por enquanto s=E3o s=F3 id=E9ias :) =C9 basicamente isto, T+ --=20 Anderson Rodrigues Barbieri --------------------------------- #Equipe do Notes - Desenvolvedor, Fundador e Coordenador Geral E-mail: no...@ig... ICQ: 149391850 [ NotesLinks ] Notes......... http://notes.codigolivre.org.br BugKiller..... http://notes2.sourceforge.net/bugkiller/ NotesDev...... http://notes2.sf.net/dev Documenta=E7=E3o.. http://notes.codigolivre.org.br/doc/ Forums........ http://notes2.sf.net/forum Lista......... https://lists.sourceforge.net/lists/listinfo/notes2-team |