UniGUI 1.90.0.1567 Edição completa para Delphi 11.3 Alexandria COMPLETE Professional
R$210,90
UniGUI 1.90.0.1567 Edição completa para Delphi 11.3 Alexandria COMPLETE Professional
Descrição
Atenção:
Essa é a versão mais recente do uniGUI (1.90) – Desktop e Mobile.
NÃO TRAVA
UniGUI Web Application Framework estende a experiência de desenvolvimento de aplicativos da Web para uma nova dimensão. UniGUI permite aos desenvolvedores criar, projetar e depurar aplicativos da Web em seu IDE favorito usando um conjunto exclusivo de componentes visuais.
Novo FmSoft UniGUI 1.90.0 Build 1567 Complete ate D11 Alexandrina
FMSoft_uniGUI_Complete_Professional_1.90.0.1567
FMSoft_uniGUI_Complete_runtime_1.90.0.1567
FMSoft_uniGUI_Documentation_1.90.0.1567
FMSoft_uniGUI_HyperServer_Config_1.90.0.1567
FMSoft_uniGUI_Theme_Pack_1.90.0.1567
** FRETE GRÁTIS. ENVIO DE LINK PARA DOWNLOAD
Description
UniGUI 1.90.0.1567 Edição completa para Delphi 11.3 Alexandria COMPLETE Professional
Descrição
Atenção:
Essa é a versão mais recente do uniGUI (1.90) – Desktop e Mobile.
NÃO TRAVA
UniGUI Web Application Framework estende a experiência de desenvolvimento de aplicativos da Web para uma nova dimensão. UniGUI permite aos desenvolvedores criar, projetar e depurar aplicativos da Web em seu IDE favorito usando um conjunto exclusivo de componentes visuais.
Novo FmSoft UniGUI 1.90.0 Build 1554 Complete ate D11 Alexandrina
FMSoft_uniGUI_Complete_Professional_1.90.0.1567
FMSoft_uniGUI_Complete_runtime_1.90.0.1567
FMSoft_uniGUI_Documentation_1.90.0.1567
FMSoft_uniGUI_HyperServer_Config_1.90.0.1567
FMSoft_uniGUI_Theme_Pack_1.90.0.1567
** FRETE GRÁTIS. ENVIO DE LINK PARA DOWNLOAD
Do suporte na instalação
uniGUI é um Web Application Framework para Delphi . O desenvolvimento do C++ Builder também é suportado para proprietários do RAD Studio . O uniGUI apresenta um rico conjunto de controles visuais para desenvolver aplicativos da Web com estado. Processo de desenvolvimento que é muito semelhante ao desenvolvimento de aplicativos VCL regulares. Os aplicativos da Web uniGUI podem ser facilmente executados e depurados diretamente no Delphi IDE, o que torna o processo de desenvolvimento muito fácil e direto. O uniGUI estende a experiência de desenvolvimento de aplicativos da Web para uma nova dimensão. Nesta nova dimensão, a produtividade é o objetivo principal. uniGUIpermite que o desenvolvedor se concentre na lógica de negócios do aplicativo, em vez de trabalhar em detalhes de desenvolvimento de aplicativos da web, como trabalhar diretamente com HTML, JavaScript, modelos XML e outras tecnologias da web. O uniGUI economizará muitas horas valiosas de desenvolvimento, o que, por sua vez, ajuda a reduzir consideravelmente os custos de desenvolvimento, implantação e suporte do projeto. Isso torna o uniGUI uma ferramenta perfeita para pequenas equipes de desenvolvimento que têm recursos limitados para gastar em detalhes de desenvolvimento. O uniGUI também é perfeito para grandes equipes que precisam entregar projetos de escala empresarial em uma escala de tempo limitada.
A implantação é outra etapa séria no processo de desenvolvimento de aplicativos da Web. Com a implantação do uniGUI é muito fácil e direto. Os desenvolvedores podem escolher uma das opções disponíveis para implantação; Tais como Windows Service , Standalone Server ou ISAPI Module . Os módulos ISAPI podem ser implementados usando o Microsoft IIS , Apache Web Server para Windows ou qualquer outro servidor Web habilitado para ISAPI compatível.
O uniGUI usa as bibliotecas Sencha Ext JS e Sencha Touch para renderização do lado do cliente. Essas bibliotecas são consideradas uma das principais estruturas do setor para criar aplicativos RIA . O uniGUI combina os poderes do Ext JS com os recursos RAD do Delphi, que provavelmente é a maneira mais rápida de criar aplicativos RIA no Delphi. O uniGUI encapsula classes Ext JS dentro de um conjunto especial de controles Delphi que permite aos desenvolvedores criar aplicativos da Web ricos em recursos sem a necessidade de aprender scripts do lado do cliente e trabalhar em detalhes da interface do usuário no lado do cliente, de modo que o valioso tempo de desenvolvimento pode ser gasto na lógica de negócios, em vez de trabalhando em detalhes repetitivos de design de interface do usuário, que podem ser tarefas demoradas e tecnicamente exigentes.
Visão geral da tecnologia
Desenvolvendo um aplicativo de Internet rico(RIA) é um dos campos desafiadores no desenvolvimento de software. Tarefas como manipulação de sessões de usuário, rastreamento de estado de exibição, atualização de controles da Web, manipulação de chamadas AJAX e etc. podem ser muito desafiadoras se sua ferramenta de desenvolvimento não lidar automaticamente com tudo isso para você. A estrutura de aplicativos da Web uniGUI torna o desenvolvimento de aplicativos da Web com estado mais fácil do que nunca. O uniGUI estende a experiência de desenvolvimento de aplicativos da Web para uma nova dimensão. Cada aplicação uniGUI pode ser considerada tanto como uma aplicação Delphi VCL padrão que usa a web como sua camada de apresentação. O uniGUI permite que os desenvolvedores criem, projetem e depurem seus aplicativos Delphi como se estivessem desenvolvendo aplicativos de desktop comuns e, em seguida, escolha uma das opções disponíveis para implantação na web. A própria uniGUI não é uma única biblioteca.Biblioteca Sencha Ext JS JavaScript. Obrigado ao Ext JS por permitir que o uniGUI forneça um front-end da Web de ponta, visualmente perfeito e totalmente habilitado para AJAX.
O uniGUI usa o mesmo modelo de aplicativo orientado a formulário disponível em um aplicativo VCL típico. Isso significa que seu aplicativo consistirá em vários formulários, todos pertencentes à mesma sessão. Isso permitirá que os desenvolvedores sigam os mesmos princípios e padrões de design que seguiram ao projetar aplicativos de desktop padrão. Isso reduzirá muito a curva de aprendizado, que pode ser muito íngreme para outras estruturas de aplicativos da web. Especialmente para aqueles que precisam de interação direta dos desenvolvedores com detalhes de design de interface do usuário, código CSS, código HTML, modelos XML e código JavaScript. Isso significa que um desenvolvedor Delphi com pouco conhecimento da Web pode começar a desenvolver aplicativos da Web usando o uniGUI pronto para uso. Enquanto o uniGUI permite que desenvolvedores desenvolvam aplicações web com pouco conhecimento de tecnologias web, é sempre recomendável que os desenvolvedores se familiarizem totalmente com as tecnologias da web subjacentes à web que são usadas em geral na web e usadas em particular no uniGUI, como o framework Ext JS. Familiarizar-se com o framework Ext JS abrirá as portas para um novo mundo onde os desenvolvedores podem customizar suas aplicações web em uma guerra que não seria possível de outra forma. O uniGUI permite que os desenvolvedores escrevam diretamente manipuladores de eventos JavaScript do lado do cliente para controles Ext JS. Esse recurso avançado permite que os desenvolvedores permitam a interação direta entre os elementos da tela do lado do cliente sem a necessidade de se comunicar com o servidor. Familiarizar-se com o framework Ext JS abrirá as portas para um novo mundo onde os desenvolvedores podem customizar suas aplicações web em uma guerra que não seria possível de outra forma. O uniGUI permite que os desenvolvedores escrevam diretamente manipuladores de eventos JavaScript do lado do cliente para controles Ext JS. Esse recurso avançado permite que os desenvolvedores permitam a interação direta entre os elementos da tela do lado do cliente sem a necessidade de se comunicar com o servidor. Familiarizar-se com o framework Ext JS abrirá as portas para um novo mundo onde os desenvolvedores podem customizar suas aplicações web em uma guerra que não seria possível de outra forma. O uniGUI permite que os desenvolvedores escrevam diretamente manipuladores de eventos JavaScript do lado do cliente para controles Ext JS. Esse recurso avançado permite que os desenvolvedores permitam a interação direta entre os elementos da tela do lado do cliente sem a necessidade de se comunicar com o servidor.
Em geral, cada aplicativo uniGUI é um executável Delphi padrão desenvolvido com módulos especializados que, juntos, transformam o aplicativo em um servidor da Web completo. Entre esses módulos podemos contar Session Manager, Web HTTP Server, ISAPI Handler, Cache Eraser e Server Module. Esses módulos cooperam para criar sessões, manipular chamadas Ajax, criar interface do usuário da Web e gerenciar o tempo de vida da sessão. Todas essas ações acontecem de forma totalmente transparente para os desenvolvedores.
GUI unificada
uniGUI significa Unified G raphical User Interface ou Unified GUI em resumo . _ É chamado de unificado porque permite a mesma experiência de interface do usuário em todos os dispositivos com um navegador da web. Independentemente do dispositivo, sistema operacional, CPU e exibição, o mesmo nível de experiência do usuário pode ser alcançado em todos os dispositivos com um navegador da Web compatível. Permite uma grande liberdade na escolha dos dispositivos clientes. O dispositivo cliente pode ser qualquer coisa, desde um PC com Windows, dispositivo OSX até um PC com qualquer tipo de Linux ou até mesmo um Raspberry Pi !
Claro, esse recurso não é exclusivo do uniGUI. Este nível de independência da plataforma é algo que qualquer aplicativo da web pode fornecer, exceto que o uniGUI permite que você crie aplicativos da web que são muito próximos dos aplicativos de desktop em aparência.
Sessões Web
As sessões da Web são os principais elementos de um aplicativo da Web uniGUI. Cada vez que um usuário abre uma nova instância do aplicativo da Web, uma nova sessão no servidor é criada. Cada sessão permanecerá ativa no servidor até que o usuário a encerre ou ocorra uma condição de tempo limite. Cada sessão mantém um estado completo do aplicativo da Web em execução. É por isso que as sessões uniGUI são chamadas de stateful. Você pode considerar cada sessão como uma cópia privada de seu aplicativo da Web que coexiste com outras sessões no espaço de endereço do servidor. Cada sessão é isolada de outras sessões e cada solicitação da web é redirecionada automaticamente para sua respectiva sessão. Cada sessão tem um “Id de sessão” exclusivo que é usado para distingui-la de outras sessões. A ID da sessão é atribuída na criação da sessão e incluída em cada solicitação Ajax, portanto, a solicitação pode ser direcionada para a sessão correta.
O diagrama abaixo representa a estrutura interna de um servidor uniGUI. Cada servidor uniGUI possui uma única cópia do ServerModule que é criada uma vez por servidor, juntamente com várias sessões que são criadas e destruídas dinamicamente de acordo com a atividade do usuário. Uma sessão uniGUI contém um DataModule especializado chamado MainModule que é criado automaticamente para cada sessão. Também é criado um formulário chamado MainForm , que aparentemente é o principal ponto de entrada do aplicativo da web. O MainForm pode ser precedido por um LoginForm que fornece uma maneira confiável e segura para o login do usuário. Como esperado, cada sessão pode conter vários DataModule s e Forms adicionais.
uniGUI HyperServer
O uniGUI versão 1.50.0 apresenta o uniGUI HyperServer, que foi projetado principalmente para melhorar radicalmente a disponibilidade, estabilidade e escalabilidade dos aplicativos uniGUI. Ele também apresenta outros recursos importantes, como permitir atualizar aplicativos remotamente sem a necessidade de parar o servidor de aplicativos.
O que é HiperServer?
O uniGUI HyperServer é uma nova arquitetura de servidor projetada para melhorar muito a disponibilidade, a estabilidade e especificamente a escalabilidade dos aplicativos uniGUI. Este objetivo é alcançado através da aplicação de técnicas conhecidas e amplamente utilizadas na indústria, como balanceamento de carga e reciclagem de processos.
Um servidor de aplicativos uniGUI tradicional consiste em um único processo e vários threads. O processo único pode ser um executável uniGUI ou um processo de trabalho ISAPI ou Apache. Em todos os casos, todas as sessões residem dentro de um único processo e várias threads no mesmo processo são usadas para lidar com solicitações recebidas.
O uniGUI HyperServer muda o modelo acima e se transforma em um modelo multi-processo multi-thread. Nesse novo modelo, vários processos de trabalho são gerados para atender ao mesmo aplicativo da web. As sessões serão divididas entre os processos de trabalho e com base na configuração, você pode ter vários processos de trabalho para o mesmo aplicativo uniGUI. Os processos de trabalho são gerenciados e orquestrados por outro processo que é, na verdade, o próprio HyperServer. O HyperServer será o principal ponto de entrada para todas as solicitações recebidas. O HyperServer receberá todas as solicitações e as distribuirá entre os processos de trabalho. O HyperServer também tem a responsabilidade de gerar novos processos de trabalho quando necessário e reciclá-los assim que forem eliminados. Como as sessões uniGUI são stateful, outro dever importante do HyperServer é direcionar as solicitações de sessão recebidas para o processo de trabalho correto que criou aquela sessão específica. No hiperservidorterminologia cada processo de trabalho é chamado de Node.
Uma visão mais aprofundada do HyperServer
O HyperServer é uma nova tecnologia de servidor projetada especificamente para melhorar radicalmente a escalabilidade e a estabilidade do aplicativo uniGUI. A questão imediata aqui é por que precisamos do HyperServer em primeiro lugar?
Para responder a esta pergunta, primeiro precisamos nos familiarizar com um aplicativo uniGUI clássico. Em um aplicativo uniGUI clássico, um binário é gerado pelo compilador, que normalmente é uma DLL ou um executável. Este arquivo binário é responsável por atuar como um servidor assim que é carregado no espaço de memória do processo. Ele será executado indefinidamente até que seja descarregado manualmente pelo operador do sistema, automaticamente pelo sistema operacional ou como resultado de um erro de programa que pode levar ao travamento do aplicativo. Em condições ideais, pode-se esperar que o binário do servidor de aplicativos permaneça na memória por um período de tempo indefinido. Algo que se espera de um servidor de aplicações robusto e estável.
Outra característica do modelo clássico de aplicação é que um único processo é responsável por criar, manter e servir todas as sessões. É como colocar todos os ovos na mesma cesta. Nesse caso, as sessões são ovos e o servidor de aplicativos é a cesta. Existem várias fraquezas e desvantagens que podem ser associadas a este modelo. O problema mais óbvio é que todas as sessões ativas serão descartadas assim que o servidor de aplicativos da web for encerrado ou reiniciado. Outro problema que pode afetar muito a estabilidade do aplicativo são os bugs e defeitos no código do aplicativo. Esses bugs podem levar a graves vazamentos de memória e outros problemas que eventualmente podem levar à corrupção de memória e travamento do servidor de aplicativos da web. O problema aqui é que os efeitos cumulativos de até mesmo pequenos problemas de memória podem aumentar com o tempo e afetar a operação do servidor. Como no modelo clássico, o servidor de aplicativos está destinado a ser executado por um período de tempo indefinido, mesmo pequenos problemas podem se tornar fatais com o tempo. Claro, isso só é verdade para aplicativos que sofrem de bugs ocultos, vazamentos de memória, problemas de ponteiro e outros problemas que podem não ser visíveis para o desenvolvedor. Alguns desses problemas podem ser difíceis de detectar e corrigir se um código de aplicativo herdado for transferido de um aplicativo VCL de desktop para uniGUI.
É desnecessário dizer que aplicativos bem desenvolvidos que são desenvolvidos de acordo com padrões de design comuns e bem testados contra problemas de memória, vazamentos e bugs são capazes de rodar indefinidamente no modelo clássico de aplicativo de processo único. Os servidores de aplicativos uniGUI são conhecidos por serem bastante estáveis e robustos. É um fato conhecido que muitos desenvolvedores têm poucos problemas com a estabilidade no uniGUI. No entanto, deve-se enfatizar que, embora o modelo de processo único possa ser considerado estável para aplicativos uniGUI típicos, o mesmo não pode ser dito para escalabilidade. Considerando a estabilidade, o principal problema dos desenvolvedores é que eles podem enfrentar defeitos de software em muitos níveis que podem ser difíceis de detectar, corrigir ou encontrar uma solução alternativa. Vejamos uma lista de tais defeitos:
•Bugs no código do projeto atual.
•Bugs no código legado portado de um projeto mais antigo.
•Bugs em bibliotecas de terceiros.
•Erros do compilador.
•Bugs nas bibliotecas padrão do Delphi (RTL, VCL, DB e etc.)
Algumas das fontes acima podem ser muito raras, como bugs do compilador e bugs da biblioteca Delphi, não podemos negar sua existência. Entre os bugs acima, apenas aqueles que podem levar a vazamento de memória, corrupção de memória ou bloqueio no código podem ser prejudiciais para um aplicativo de servidor. Os bugs mais comuns são aqueles que existem diretamente no código do projeto. A natureza nativa dos aplicativos Delphi os torna vulneráveis a problemas de memória e, até que todos esses problemas sejam corrigidos, os aplicativos não podem ser aceitos como totalmente estáveis. O maior problema das equipes de desenvolvimento de software, especialmente as grandes, é que nem sempre conseguem garantir que o código seja produzido com a mesma qualidade e que cada nova versão esteja livre de defeitos. Mesmo os longos testes de estresse podem não ser suficientes para detectar, isolar e corrigir defeitos de código ocultos.
Para lidar com o problema acima, precisamos de um modelo de servidor que possa tolerar melhor o código do aplicativo com bugs. O principal truque aqui é aumentar a chance de sobrevivência do seu código no ambiente de produção, mesmo quando ele não está pronto para o horário nobre. O HyperServer visa melhorar a estabilidade quando tais condições existem. O HyperServer atinge esse objetivo implementando diferentes mecanismos. Balanceamento de carga interno e reciclagem de nós. O balanceamento de carga distribuirá a carga geral do servidor entre os nós. A reciclagem de nós reduzirá o ciclo de vida dos nós, reciclando-os com base em regras predefinidas. A reciclagem garantirá que os nós residam no espaço de memória do processo apenas por um período definido. Ao contrário do modelo clássico que mantém o processo do servidor de aplicativos na memória indefinidamente.
Deve-se dizer que neste sentido o HyperServer não deve ser considerado como uma solução para um código bugado ou como uma ferramenta para lidar com problemas de memória. O HyperServer não corrigirá os erros de seu aplicativo nem fornecerá uma solução alternativa para eles. A principal tarefa do HyperServer é garantir que todo o servidor de aplicativos não trave como resultado de um defeito de memória ou outro problema em um Node.
Provavelmente agora você é capaz de descobrir que um aplicativo HyperServer é dividido em duas partes essenciais. A primeira parte é o executável do HyperServer, que é o ponto de entrada para seu aplicativo da web. Ele atenderá a todas as solicitações recebidas do cliente. A segunda parte do aplicativo HyperServer é um cluster de nós.
uniGUI HyperServer
Hiperservidor e escalabilidade
Uma das maiores preocupações dos aplicativos da Web é sua capacidade de escalar. O mesmo vale para aplicativos uniGUI. Na verdade, a escalabilidade pode ser uma preocupação maior para o aplicativo uniGUI, pois as sessões uniGUI são stateful e mantêm todas as informações de estado na memória do processo. Podemos dizer que o modelo de aplicativo clássico que usa um único processo para atender a todas as sessões pode escalar até algumas centenas de sessões. Isso não significa que você não possa ter milhares de sessões no modelo clássico. Teoricamente, não há limite superior para o número de sessões no modelo clássico, desde que seu servidor tenha recursos suficientes e seu design de aplicativo seja inerentemente escalável. A questão aqui é se é seguro colocar 1.000 ovos em uma única cesta? Obviamente, a resposta é não. No entanto, todos parecem concordar se distribuirmos 1, 000 ovos em 10 cestos cada um contendo 100 ovos. É aí que o HyperServer entra em cena. O HyperServer divide internamente seu aplicativo em vários Nodes e distribui as sessões entre esses Nodes. Como cada nó é um processo separado, suas sessões são isoladas das sessões em outros nós. Portanto, qualquer problema em um nó só pode afetar esse nó e suas sessões.
O problema dos ovos e da cesta não é o único problema associado ao modelo clássico de servidor de aplicativos de processo único. Outro problema é que manter uma quantidade enorme de sessões no mesmo processo pode levar a outros problemas. Um problema é que os aplicativos uniGUI são aplicativos altamente multiencadeados e, naturalmente, precisam usar bloqueios para sincronizar determinadas operações. Com o aumento do número de sessões, esses bloqueios podem se transformar em gargalos. Embora no uniGUI tentemos usar os bloqueios o mínimo possível, eles são inevitáveis. Os bloqueios de código também podem ocorrer no código RTL e outras bibliotecas de terceiros envolvidas.
O HyperServer não apenas pode gerenciar um cluster de nós dentro do mesmo servidor, mas também pode ser estendido para gerenciar vários clusters de nós em vários servidores. O que significa que você poderá executar aplicativos uniGUI em um farm de servidores. Isso adicionará uma nova dimensão aos aplicativos da web desenvolvidos usando uniGUI e Delphi.
HyperServer e implantação remota
Outro novo recurso interessante que o HyperServer adiciona à estrutura uniGUI é a capacidade de implantar remotamente novas versões de seu aplicativo sem a necessidade de parar o servidor. Portanto, o HyperServer não é apenas estabilidade e escalabilidade. Trata-se também da continuidade e disponibilidade do seu servidor de aplicativos. Em um aplicativo uniGUI de processo único clássico, atualizar aplicativos é relativamente difícil. Primeiro, você precisa rastrear o horário adequado em que o tráfego é baixo e há poucas sessões ativas. Então você precisa derrubar o servidor, o que significa que todas as sessões ativas serão descartadas. Provavelmente, você precisa avisar os usuários do aplicativo para fazer logout e aguardar até que a atualização seja concluída.
Com o HyperServer, o cenário acima é mais longo. Você pode carregar uma nova versão de seu aplicativo remotamente e o restante do trabalho será feito pelo HyperServer. O HyperServer atualizará os Nodes gradualmente e todas as novas sessões serão redirecionadas para os Nodes executando a nova versão do seu aplicativo. Os nós com versões mais antigas serão descartados e limpos assim que todas as suas sessões forem desconectadas.
Para obter mais informações sobre o HyperServer, consulte os documentos on-line da uniGUI .
Marca
ehlib
UniGUI
Only logged in customers who have purchased this product may leave a review.
Reviews
There are no reviews yet.