Thread: [Notes2-team] =?iso-8859-1?B?UmU6IFtOb3RlczItdGVhbV0gKioqUGxhbm9zIHBybyBOb3RlcyAyKioq?= =?iso-8859-
Brought to you by:
andersonrb
From: Thiago K. <ko...@ms...> - 2003-07-26 21:48:52
|
Planejamento do Notes 2 Editando texto Para poder atender a todas as sugestões feitas pelos usuários, a Equipe do Notes decidiu construir um componente (controle) de edição próprio.............. Todos estarao empenhados em construir este novo componente??/ alguma tarefa será dividida até que este componente nao esteja pronto??? Coloração de código Esta foi a sugestão mais feita pelos usuários e vamos finalmente poder atendê-la. E não vamos fazer isto de qualquer forma:............... ótimo. com certeza será um grande ponto a favor sobre os outros editores! Analisador de erros O editor poderá também detectar erros no código enquanto você digita............. ####bom, algum componente interessante para nos ajudar nesta funcao? Folding Alguns dos editores mais novos permitem que o usuário esconda certas partes do código. ............ ###isso será um outro componente tambem que usaremos em cima do nosso componente de edicao?? ou nós é que temos que implementar no componente??? Split O velho edit do DOS e outros editores atuais permitem qeu você possa dividir o componente de edição em 2. No Notes 2 está capacidade estará presente, podendo dividir o editor tanto horizontalmente quanto verticalmente, quantas vezes você quiser. ### ótimo.. alguem ficará responsavel pelo ambiente grafico do notes??? A Interface A interface do Notes 2 será altamente configurável. Isso ocorrerá por que menus e toolbars serão criados a partir de arquivos XML, ao invés de serem harcoded. Além disto, o Notes 2 suportará skins (temas) que poderão alterar os controles (botões, campso de edição, bombos, etc.) e os ícones padrões. Apesar de configurável, continuará simples de usar, pois sua organização seguirá a forma a qual os programadores já estão acostumados. # ok! Como será a interface? Num programa tão configurável quanto o Notes 2, esta é uma pergunta difícil de responder. Temos pensando em uma estrutura assim (de cima para baixo): menus; barra de ferramentas; tabs (para mudar entre os arquivos abertos) e um botão seletor de projetos (no Notes 2 você poderá abrir vários projetos ao mesmo tempo, clique no botão para mudar de um para outro); na esquerda um painel vertical onde ficaram várias ferramentas (gerenciador de projetos, gerenciador CVS, etc.) e na direita a área de edição; um painel horizotal (abaixo do editor, mas não abaixo do painel vertical) com outras ferramentas (saída de compiladores, gerenciador de tarefas, etc.); e, por último, a barra de status. # ok.. por mim está ótimo! Dando poder ao teclado A maioria dos programadores usa muito mais o teclado que o mouse - o que difere uma IDE como o Notes 2 de outros aplicativos. Então prometemos desde já dar uma atenção especial a ele. No caso do editor, AutoIndent, SmartIndent,........................... ### isso é um bom recurso tambem! tambem será por arquivos xml nao é? Integração Sendo programadores, estamos cientes de que um editor de código não é a única ferramenta necessária durante o desenvolvimento. Por isto o Notes 2 terá uma boa integração com compiladores, debugers, CVS, FTP, servidores, ferramentas UML, etc... ## pois é.. algumas ferramentas mais simples como ftp, podemos criar a nossa propria tambem ao inves só interagir (ter a nossa e tambem interagir) com outras ferramentas ftp! integrada ao notes. sem sair do ambiente.. Extensibilidade Por mais que nos esforcemos, nunca poderemos oferecer tudo o que um usuário precisa. Há ferramentas que são muito específicas, isto é, úteis apenas para uma linguagem ou para alguns poucos usuários. Há linguagens que não existem ainda ou outras, mais antigas, que poderão não ser suportadas por padrão quando o Notes 2 for lançado..... # boaa.. deve ser um processo meio trabalhoso. mas vale a pena! Plugins Os plugins serão as extensões mais poderosas no Notes 2. Isto por que os plugins terão acesso a uma API do Notes, f....... #perfeito... Scripts No Notes 2 você poderá usar a sua linguagem de scripts preferida para adicionar novas ferramentas ao Notes (claro que você precisará ter o interpretador já instalado, não dá para querer que o Notes aprenda a interpretar... # ótimo tambem! Suporte a novas linguagens Através das extensões será possível também adicionar suporte a outras linguagens e melhorar o suporte as linguagens que são suportadas no Notes 2 por padrão. Uma extensão poderá conter templates, o arquivo de coloração de código para a linguagem, snippets, scripts, plugins, etc. Mais detalhes ToolBox O Notes SE incluia o menu inserir. Apesar de ser altamente funcional, ele tinha um problema: você tinha que navegar pelos submenus até achar o que queria inserir. Para solucionar este problema, a equipe do Notes incluirá um ToolBox no painel vertical, que facilitará o acesso aos códigos do menu inserir. ### E tambem pelas teclas de atalho... nao é mesmo? Ferramentas para SQL e XML O Notes 2 incluirá também ferramentas para que você possa manipular banco de dados, construir querys SQL com facilidade e editar visualmente arquivos XML. ------------- _________________________________________________________________ MSN Messenger: converse com os seus amigos online. http://messenger.msn.com.br |
From: Anderson R. B. <no...@ig...> - 2003-07-27 07:19:08
|
Pessoal, eu e o Koguta tivemos uma conversa altamente produtiva hoje e estamos=20 tornando ela p=FAblica para a equipe... nenhuma id=E9ia realmente nova, mas o=20 escalrecimento de v=E1rios pontos que estavam meio confusos. Quem n=E3o ler n=E3o venha perguntar de= pois :) Ab. Anderson -----------------begin------------------------- > P: Todos estarao empenhados em construir este novo componente? R: depende. Eu mandei alguma id=E9ias sobre um modo de funcionarmos...=20 segundo este modo sempre se implementa uma coisa de cada vez e todo=20 mundo implementa tudo... > otimo.. ou seja, n=E3o existem respons=E1veis por m=F3dulos. Cada um fica respons= =E1vel=20 sim por tarefas curtas - pequenas e implement=E1veis rapidamente... > isso =E9 interessante pois se alguem atrasar na entrega de alguma=20 > tarefa, ir=E1 atrasar toda a equipe, aumentando a responsabilidade de=20 > cada pessoa! a id=E9ia =E9 exatamente esta: todo mundo =E9 sempre respons=E1vel por um= a=20 pequena parte e tem que cumprir a pequena parte no tempo combinado. Se=20 estiver em dificuldades, deve comunicar rapidamente a equipe para que=20 algu=E9m possa ajud=E1-lo a terminar a tarefa a tempo. Tamb=E9m =E9 impor= tante=20 que cada um peque uma tarefa que tenha tempo para concluir. Tarefas=20 grandes - como um componente - s=E3o quebradas em pequenas tarefas, mais=20 curtas, para simplificar o processo... > interessante.. > P: Analisador de erros > ####bom, algum componente interessante para nos ajudar nesta funcao? sim, o Thiago Bard =E9 o nosso componente :) o Thiago Bard est=E1 na equipe para implementar o analisador de erros.=20 Vai acabar fazendo outras coisas tb=E9m, mas acho que se deixarmos algu=E9= m=20 pensando mais tempo nisso, poderemos alcan=E7ar resultados melhores. Ele=20 me disse que j=E1 tema t=E9 algumas id=E9ias... nos pr=F3x. dias ele deve= =20 envi=E1-las pra lista... > otimo... mas isso ele ja pode comecar a implementar nao???? nao.. acho que ele vai precisar do editor.. :) =E9 poss=EDvel que ele precise do editor. O editor pode, p. ex., informar= =20 que linguagem est=E1 sendo editada, qu regi=E3o =E9 um coment=E1rio, etc. > sim... mas ele pode ir pensando na implementa=E7=E3o... e parece ser o que ele a= nda=20 fazendo. > :) > Folding > ###isso ser=E1 um outro componente tambem que usaremos em cima do nosso= =20 > componente de edicao?? > ou n=F3s =E9 que temos que implementar no componente como j=E1 havia dito em algum momento, j=E1 existe um c=F3digo dum editor= =20 chamado JediEdit que implementa folding no synedit... mas precisaremos=20 fazer algumas modifica=E7=F5es - at=E9 pq modificaremos o componente... > ah sim..!! > P: alguem ficar=E1 responsavel pelo ambiente grafico do notes??? R: depende de como formos funcionar... ent=E3o, sei l=E1. Segundo as id=E9= ias=20 que passei, n=E3o teremos respons=E1veis por m=F3dulos - ao menos n=E3o a= gora,=20 quem sabe no futuro isto venha a ser bom, mas no momento n=E3o me parece.= .. > P: ### isso =E9 um bom recurso tambem! > tambem ser=E1 por arquivos xml nao =E9? R: por mim devemos fazer o seguinte: tudo que der para ficar em XML,=20 fica em xml. Se n=E3o der... bom, azar :) > ## pois =E9.. algumas ferramentas mais simples como ftp, podemos criar = a=20 > nossa propria tambem Sim, no caso do ftp =E9 mais f=E1cil implementarmos n=F3s mesmo. Achei um= a=20 biblioteca chamada Synapse que =E9 bem melhor que o Indy que vem com o=20 Delphi. Tipo, pra baixar um arquivo =E9 s=F3 fazer algo tipo: Get(URL,=20 paraarquivotal); A biblioteca implementa ftp tb=E9m... podemos us=E1-la..= . > otimo > ### E tambem pelas teclas de atalho... nao =E9 mesmo? Claro. Na realidade pro Notes teclas de atalho, menus, barras de=20 ferramentas, o toolbox... hum... =E9 tudo a mesma coisa. Acho que deveria= =20 haver algo como um "interpretador" respons=E1vel por chamar todos estes=20 comandos. Ent=E3o no arquivo XML voc=EA poderia ter: <onClick>Notes.OpenProject()</onClick> E a=ED n=E3o importa quem gerou este comando... o interpretador cuidaria = de=20 entender que o usu=E1rio quer que o Notes abra um projeto (=E9 o que=20 significaria "Notes.OpenProject") e acionaria o m=E9todo respons=E1vel... > =E9... mas anderson.... caso o usuario apagasse ou alterasse os arquivo= s=20 > xml.. o notes nao funcionaria direito.. estas funcoes internas nao=20 > seria melhor em Funcoes ou dlls?? quais fun=E7=F5es internas? os menus, toolbars, o toolbox, os atalhos, et= c.=20 s=E3o arquivos XML. Sim, se ele fizesse a estupidez de deletar um arquivo= =20 xml, ele teria que restur=E1-lo de algum modo... ou o notes ficar=E1 sem = os=20 menus ou algo assim... este =E9 o pre=E7o da configurabilidade... mas eu = n=E3o=20 penso nisto deste =E2ngulo. Eu penso que parte do Notes =E9 feita em XML.= ..=20 os arquivos xml s=E3o parte do aplicativo mesmo. O mozilla faz algo=20 parecido, mas usa JavaScript no lugar de xml... e =E9 por isto que eu dig= o=20 que voc=EA pode pegar os arquivos que vem com o Notes, edita-los e criar=20 uma "distribui=E7=E3o nova do notes" s=F3 com isto. Se voc=EA pensa que a= inda=20 pode incluir extens=F5es... uau! o notes vira um linux da vida :) > anderson, me explica melhor esta sua ideia de interpretador ai.. voce=20 > est=E1 que querendo ter um arquivo xml, que quando usuario aperte um=20 > botao, ou v=E1 ao menu ou o que for... o notes verifique no arquivo xml= =20 > qual funcao ele deve executar?? exato! mais do que isto! os menus seram criados pelos arquivos xml. Tipo: <menuitem> <caption>&Colar</caption> <hint>Click aqui para colar seu idiota!</hint> <onclick>Notes.Paste()</onclick> </menuitem> > entendi.. =E9.. se o usuario for uma anta, ele nem vai saber que o note= s=20 > parou de funcionar por que ele apagou os arquivos... mas tudo bemm!!! se tu percebeu, isto criar um item no menu que ao ser clicado permite o=20 usu=E1rio colar o texto... > e o codigo da funcao "Notes.Paste()" ficar=E1 onde??? no .pas nao =E9? isto! A fun=E7=E3o sim fica dentro do Notes. O interpretador que eu dizia= =E9=20 quem reconhece o que =E9 que a string "Notes.Paste()" est=E1 mandando o=20 notes fazer... > interessante... anderson... voce acha interessante o notes trabalhar=20 > com dlls? ser=E1 necess=E1rio para os plugins. Pense que o usu=E1rio tamb=E9m poder= =E1 fazer=20 algo como: <menuitem> <caption>&Aciona Extens=E3o</caption> <hint>Click aqui para acionar a minha extens=E3o</hint> <onclick>Extension.MinhaExtensao.Execute()</onclick> </menuitem> > eu estava pensando em separarmos o notes em varias dlls... > uma dll pra funcao. > uma dll pra interface. > uma dll pra isso > uma dll pra aquilo.. acho que n=E3o precisamos ir t=E3o longe: basta compilarmos o Notes com a= s=20 biliotecas (.bpl). Assim o exe ficar=E1 bem pequeno e poderemos distribui= r=20 updates min=FAsculos... Fora isto, acho que alguns di=E1logos podem ser extens=F5es. Tipo o di=E1= logo=20 localizar. Assim, al=E9m da facilidade de atualiza=E7=E3o, o dialogo s=F3= ocupa=20 mem=F3ria enquanto est=E1 sendo usado pelo usu=E1rio... > bpl? que extensao =E9 esta? =E9 como um dll. s=E3o os pacotes da borland. Borland Package Library...=20 toda a CLX s=E3o pacotes... ent=E3o ter=EDamos BaseCLX, VisualCLX, etc. E= stes=20 nunca modificaremos (a n=E3o ser qdo usarmos o Delphi 8) ent=E3o n=E3o=20 precisam ser baixados pelo usu=E1rio mais de uma vez... -------------------end---------------------- =20 |