Você está na página 1de 21

Associação dos Estudantes

A Associação dos Estudantes da UCAN ( AEUCAN), é dirigida pela Chapa 6 , desde 24 de


Agosto de 2013. Chapa 6 é assim denominada pelo facto de estar composta por estudantes
das 6 faculdades constituintes da UCAN. 
Composição
Presidente: Aldemiro Gonçalves
Vice-Presidente: Hernani Constantino
Presidente do Conselho Fiscal: Jocelino Malulu.
Presidente da Assembleia Geral: Daniel Chitongua
Secretário Geral: António Figueiredo Luciano
Presidentes para as faculdades:
Direito: Joelsin Silvestre                                    
Teologia: Justino Ngola
Economia: Estanislau António                              
Engenharia: Irineu Cunha
Ciências Humanas: Evaristo Halcico                  
C. Saúde: Cristóvão Martins Pedro
Objectivos Gerais:
1. Maior celeridade no tratamento da informação entre os assuntos académicos, associação e
os estudantes;
2. Qualidade de Ensino;
3. Melhoramento do sistema de gestão de dados dos estudantes;
4. Actualização e aumento de bibliografias na biblioteca;
5. Melhoramento da higiene e saneamento básico (Cantinas, W.C e Bebedouros);
6. Criação e/ou melhoria dos Laboratórios;
7. Melhoramento do posto de saúde;
8. Entretenimento:
a) Actividades desportivas: (Campeonatos entre as faculdades nas diversas modalidades)
b) Cultura (Aprimoramento dos ateliers)
c) Promoção de actividades filantrópicas.

Pastoral Universitária

A universidade Católica de Angola oferece uma educação integral aos seus alunos. Por isso,
possui este departamento que promove e anima o crescimento espiritual dos estudantes,
dando um maior sentido existencial e humano na vida dos jovens universitários articulando
diversas propostas de actividades, educativas e associativas.

Este departamento tem como Director e Capelão Pe. Martín Lasarte SDB

Secretários Fernando Tiago que trabalha no período da manhã e Isabel da Silva que cobre o
período da tarde.

Dentro da Pastoral Universitária funciona a catequese que tem como objectivo ajudar os


estudantes a se encontrarem com Cristo e a caminhar com ele.
Grupo de reflexão bíblica: com objectivo de despertar o interesse dos estudantes pelo texto
bíblico, enfatizando a analise do seu contexto na situação social, cultural, económica e politica
que cercou a sua escrita.
Convivência: a pastoral universitária promove actividades de convívio e encontro entre os
estudantes: passeios, eventos desportivos e culturais. É vontade da pastoral da UCAN
favorecer a comunhão de fé e intercâmbio de experiência com jovens de outras Universidades.
Voluntariado é um dos traços da nossa UCAN ela propõe aos jovens o exercício da
solidariedade mediante o serviço social.

A vucan realiza nos meses de férias missões de voluntariado em áreas socialmente vulneráveis
do nosso país. 

Frameworks

O que é um framework?
Qual é o problema?
 Programar é difícil
 Onde está a maior dificuldade?

o "Interface design and functional
factoring constitute the key intelectual
content of software and is far more difficult
to create or re-create than code" (Peter
Deutsch)
 Mas nossos programadores são mortais
o "It shouldn't take a good programmer to
build a good program"
 Solução: Temos que fornecer formas de
re-uso que vão além de código: re-uso de
análise, design, código.
o Framework orientado a objeto

O que é um Framework?
 Um framework captura a funcionalidade
comum a várias aplicações
 As aplicações devem ter algo razoavelmente
grande em comum: pertencem a um mesmo
domínio de problema

 Há várias definições de frameworks


(ver aqui)
 A definição que usamos foca quatro
características principais de um framework
(Orientado a Objeto):

o "Um framework provê uma solução para


uma família de problemas semelhantes, ...
Usando um conjunto de classes e interfaces
que mostra como decompor a família de
problemas, ...
E como objetos dessas
classes colaboram para cumprir suas
responsabilidades, ...
O conjunto de classes deve ser flexível e
extensível para permitir a construção de
várias aplicações com pouco esforço,
especificando apenas as particularidades de
cada aplicação"
 Observe que um framework é uma
aplicação quase  completa, mas com pedaços
faltando
o Ao receber um framework, seu trabalho
consiste em prover os pedaços que são
específicos para sua aplicação
o As técnicas básicas são Template
Method e Composição

Diferenças entre um Framework e


uma Biblioteca de Classes OO
 Numa biblioteca de classes, cada classe é
única e independente das outras

o Num framework, as
dependências/colaborações estão
embutidas (wired-in interconnections)
o Com biblioteca, as aplicações criam as
colaborações
 Vê-se portanto que um framework impõe
um modelo de colaboração (o resultado da
análise e design) ao qual você deve se adaptar

o Já que a comunicação entre objetos já


está definida, o projetista de aplicações não
precisa saber quando chamar cada método:
é o framework que faz isso
 Não se pode embutir conhecimento do
domínio (análise + design) numa biblioteca de
classes
 O framework é usado de acordo com
o Hollywood Principle ("Don't call us, we'll call
you")
o É o framework que chama o código da
aplicação (que trata
das particularidades dessa aplicação)
o Framework = Upside-down library
 Exemplo do Hollywood Principle

o Modelo de eventos em Java/AWT


o AWT é um framework
o No código
abaixo, mouseClicked() e mousePressed() 
são chamados pelo framework (AWT)
public class MeuMouseListener implements
MouseListener {

public void mouseClicked(MouseEvent event) {

...

public void mousePressed(MouseEvent event) {

...

...

}
...

MeuMouseListener mouseListener = new


MeuMouseListener();

JButton meuBotão = new JButton("clique aqui");

// O seguinte método estabelece a interação


entre o objeto

// meuBotão e o objeto mouseListener

meuBotão.addMouseListener(mouseListener);

 A diferença entre um framework e uma


biblioteca de classes não é binária

Diferenças entre Frameworks e


Design Patterns
 Aparentemente, os dois consistem de
classes, interfaces e colaborações prontas
 As diferenças são:

o Design patterns são mais abstratos do


que frameworks
 Um framework inclui código, um
design pattern não (só um exemplo do
uso de um pattern)
 Devido à presença de código, um
framework pode ser estudado a nível de
código, executado, e reusado
diretamente
 Design patterns são elementos
arquiteturais menores do que frameworks
 Um framework típico contém vários
design patterns mas o contrário nunca
ocorre
 Exemplo: Design patterns são
frequentemente usados para documentar
frameworks
 Design patterns são menos
especializados do que frameworks
 Frameworks sempre têm um
domínio de aplicação particular enquanto
design patterns não ditam uma
arquitetura de aplicação particular

Características Básicas de
Frameworks
 Um framework deve ser reusável

o É o propósito final!
o Para ser reusável, deve primeiro
ser usável

 Bem documentado
 Fácil de usar
 Deve ser extensível
 O framework contém funcionalidade
abstrata (sem implementação) que deve
ser completada
 Deve ser de uso seguro
 O desenvolvedor de aplicações não
pode destruir o framework
 Deve ser eficiente
 Devido a seu uso em muitas
situações, algumas das quais poderão
necessitar de eficiência
 Deve ser completo
 Para endereçar o domínio do
problema pretendido

O que é um Framework? Para


que serve?
por Rafael Jaques
Atenção! Essa postagem foi escrita há mais de 2 anos. Na
informática tudo evolui muito rápido e algumas informações podem
estar desatualizadas. Embora o conteúdo possa continuar
relevante, lembre-se de levar em conta a data de publicação
enquanto estiver lendo. Caso tenha sugestões para atualizá-la, não
deixe de comentar!
Na maioria das vezes, aqui no blog, eu me dedico a explicar
algumas funções bastante específicas de uma ou outra tecnologia.
Porém, há alguns dias, recebi um comentário em algum dos meus
posts que indagava, entre outras coisas, “o que é um framework?“.
Dessa forma, decidi que seria interessante desenvolver uma
postagem explicando o que são frameworks PHP e como eles
funcionam. Espero que essa postagem possa ser útil e ajude a tirar
dúvidas.

O que é um framework?
Framework é um conjunto de códigos abstratos e/ou genéricos,
geralmente classes, desenvolvidos em alguma linguagem de
programação, que relacionam-se entre si para disponibilizar
funcionalidades específicas ao desenvolvedor de software. Em
outras palavras, é como uma caixa de ferramentas, um kit
que possui diversas funcionalidades devidamente implementadas,
testadas e prontas para serem utilizadas no construção de
softwares, poupando ao desenvolvedor tempo e trabalho na
elaboração de operações básicas como acesso a banco de dados,
sistema de templates, mapeamento de rotas e validação de dados.
Os frameworks costumam ser divididos em módulos que podem ser
interdependentes ou não. Isso quer dizer que, dependendo do
framework utilizado, você poderá utilizá-lo apenas em sua
totalidade, com todos os seus aparatos, ou então pode haver a
possibilidade de utilização de apenas as partes necessárias.

Para que serve um framework?


Quando devo utilizar?
Talvez ainda não tenha ficado claro para que exatamente serve um
framework. Por isso, tentarei responder a essa pergunta na forma
de uma historinha:
José é um desenvolvedor de softwares que precisa construir
uma nova aplicação. Após realizar a análise dos requisitos, ele
descobre que precisará implementar cadastro de clientes,
publicação de notícias e consulta a um catálogo de produtos,
além de realizar a validação de todos esses dados.
 
Para poder dar vida a esse sistema, José precisará desenvolver
diversos módulos e componentes como paginação de
resultados, ferramentas de criptografia, camadas de conexão a
bancos de dados etc.
 
Com o intuito de pular essas tarefas repetitivas, uma vez que
são coisas comuns em diversos sistemas, José opta por utilizar
um framework. Após a instalação, ele começa a desenvolver
seu código normalmente e, sempre que precisa, faz
requisições às classes do framework para realizar essas tarefas
que já tiveram seu código desenvolvido.
Espero que tenha ficado um pouco mais fácil de entender do que
estou falando aqui. Porém, só saber o que, não é suficiente para
você saber se precisará ou não.
A utilização de frameworks é recomendada quando, ao desenvolver
uma aplicação, você precisa realizar tarefas repetitivas ou que são
comuns a vários sistemas. Por que perder tempo montando e
testando um sistema para validação de dados se existe uma
ferramenta que já faz isso e, melhor, já foi testada por diversas
pessoas? Quando digo “diversas pessoas”, refiro-me às
comunidades que estão por trás do desenvolvimento dessas
ferramentas, ou seja, dificilmente um framework é desenvolvido por
uma pessoa só, existe uma grande comunidade que contribui na
sua construção.

Existem diversos frameworks disponíveis para PHP


Vantagens e desvantagens na
utilização de frameworks
Embora existam muitas vantagens na utilização de frameworks,
nem tudo são flores. Reservei as próximas linhas para realizar
alguns comentários sobre os prós e contras de se utilizar
frameworks no desenvolvimento de uma aplicação. Dependendo do
porte do sistema a ser desenvolvido, é possível até que o
framework atrase o processo. Portanto, muita atenção aos detalhes!

Prós
Eficiência
A utilização das classes presentes nos frameworks pode poupar
horas e horas de desenvolvimento, uma vez que diversas rotinas
comuns no desenvolvimento de softwares já estão implementadas.
Reuso
Existe uma grande probabilidade de você não ficar copiando e
colando código no decorrer do desenvolvimento. Pelo fato de
muitas rotinas estarem prontas, o programador é estimulado a
reutilizar o código.
Segurança
Em frameworks bastante difundidos, que possuem uma
comunidade trabalhado em seu código, o nível de segurança é mais
alto, pois existem diversas pessoas desenvolvendo e reportando
erros, de forma colaborativa, contribuindo para o aumento da
segurança e da estabilidade.
Custo
Geralmente os frameworks são gratuitos, ou seja, você tem acesso
a uma poderosa ferramenta de desenvolvimento sem precisar
gastar dinheiro.
Documentação
A maioria dos frameworks possui uma vasta documentação,
explicando cada detalhe e o funcionamento de cada de suas
ferramentas.
Padrões de codificação
Você não consegue utilizar um framework se não seguir um padrão
de codificação. Isso pode, além de melhorar a legibilidade do
código, tornar mais simples a manutenção e o entendimento
por outros desenvolvedores, tendo em vista que a maneira como as
coisas funcionam está presente na documentação do framework.

Contras
Dependência
Depois que você inicia o desenvolvimento de uma aplicação
utilizando um framework, você está amarrado a ele. Se por acaso
ele não receber mais atualizações, for descontinuado ou receber
uma atualização com quebra de compatibilidade, cabe a você
mantê-lo funcionando ou migrar a aplicação (muitas vezes tendo
que reescrever código). Não costuma acontecer, mas nunca se
sabe.
O framework não é a linguagem
Você está lidando com uma abstração da linguagem, não a
linguagem em si. Isso quer dizer que você passará muito do tempo
aprendendo peculiaridades do framework, não da linguagem que
está por baixo dele. Isso pode ser um problema caso você não
conheça bem a linguagem em que está trabalhando.
Não é muito simples modificar o framework
Aqui é preciso ter muito cuidado, pra que você não me entenda mal.
Estou me referindo ao núcleo do framework, todo o seu código
base. Geralmente é muito complexo de realizar uma modificação,
porque, a menos que você conheça 100% da estrutura do
framework, não sabe como suas modificações irão impactar o
funcionamento do sistema. Além disso, você deverá estar sempre
atento às atualizações, uma vez que suas modificações podem ser
simplesmente “varridas” do código.
Toneladas de códigos desnecessários
Antes de escolher um framework, você deve verificar a relação
entre a sua robustez e as necessidades da aplicação. Você
deve fazer sua escolha baseando-se no tipo de software que você
precisa produzir. Para grandes softwares, frameworks mais
robustos, com diversas funcionalidades. Caso contrário, procure
opções mais leves ou até mesmo microframeworks. Nem sempre a
escolha é feita da maneira certa e isso pode tornar a aplicação
desnecessariamente mais pesada.

Legal, mas então, em vez de aprender,


vou criar meu próprio framework
Muito cuidado aí, campeão. Muitos desenvolvedores podem cair no
erro de desenvolver seu próprio framework. Chamo de “erro” porque
na maioria das vezes é. Não quero dizer que você está impedido de
desenvolver o seu, mas que você deve pensar muito bem antes de
fazê-lo, para compreender se realmente isso é necessário.
Antes de desenvolver sua própria caixa de ferramentas, faça-se as
seguintes perguntas:
 Quem irá auditar o código desenvolvido?
 Quantas pessoas utilizarão meu código? Há gente suficiente
para detectar bugs?
 Quando e como os bugs serão corrigidos? Terei tempo pra
isso?
 Como será feita a atualização das aplicações que utilizarem
esse framework quando algum bug for corrigido ou atualização
realizada?
 Terei tempo para implementar todas as funcionalidades que
eu preciso? Ou desistirei no meio do caminho criando um “meio-
framework”?
 Como o framework será documentado para que outras
pessoas possam utilizá-lo ou dar manutenção?
Porém, podem existir casos em que, realmente, os frameworks
existentes não suprem a necessidade da sua aplicação. Ou
então, até o framework mais simples é muito mais complexo do que
a sua aplicação necessita. Enfim, existem pontos que você
pode levar em consideração para, sim, desenvolver seu próprio
framework.
 Você aprenderá muito sobre a linguagem na qual o framework
será desenvolvido.
 É uma excelente maneira de aumentar seu portfolio (leia-se
GitHub).
 Haverá total controle sobre o código do framework.

Considerações finais
Embora seja um assunto complexo, espero que este artigo tenha
ajudado a “clarear a mente”. A partir de agora, você terá mais
informações para poder fazer suas escolhas.
Se quiser conhecer quais frameworks o PHP tem pra oferecer,
existe um artigo na Wikipedia (inglês) intitulado Comparison of web
frameworks. Lá você encontra uma lista com os principais
frameworks PHP disponíveis atualmente.
E aí? Concordam, discordam, encontraram algo errado, querem
fazer uma sugestão? Utilizem os comentários para entrar em
contato e contribuir com a discussão.
Um abraço a todos e fiquem com Deus!
Rafael Jaques

O QUE É BOOTSTRAP?
Neste curso conheceremos o Bootstrap, um framework para desenvolvimento
web front-end (HTML, CSS e JavaScript) que adiciona às páginas recursos de
responsividade, diversos componentes de interface e estilos leves e modernos.
O Bootstrap é atualmente o principal framework front-end (HTML, CSS e
JavaScript) para desenvolvimento web responsivo. Além de um poderoso
sistema de grid, que facilita a criação de páginas que se adequam aos mais
diversos tamanhos de tela, o Bootstrap conta, ainda, com vários componentes
de uso comum em aplicações web, como botões, menus, tabelas, etc. Tudo
isso é alinhado a um conjunto de estilos visuais elegante e moderno, que reduz
a necessidade de escrita de código CSS em boa parte das situações.
Bootstrap é um framework web com código-fonte aberto para desenvolvimento de
componentes de interface e front-end para sitese aplicações
web usando HTML, CSS e JavaScript, baseado em modelos de design para a tipografia,
melhorando a experiência do usuário em um site amigável e responsivo.
O Bootstrap é um dos projetos mais bem avaliado no site GitHub, com mais de 111 600
estrelas e 51 500 forks.[1]

Índice
  [esconder] 

 1Origem
 2Recursos
 3Estrutura e função
o 3.1Folhas de estilo
o 3.2Componentes reutilizáveis
o 3.3Componentes JavaScript
 4Bootstrap 4
 5Veja também
 6Referências
 7Ligações externas

Origem[editar | editar código-fonte]
Bootstrap é um projeto de código aberto originalmente desenvolvido para o site Twitter,
chamado de Twitter Blueprint, desenvolvido por Mark Otto e Jacó Thornton como um
instrumento para incentivar a consistência através de ferramentas internas.
Antes de Bootstrap, várias bibliotecas foram utilizados para o desenvolvimento de
interfaces, gerando inconsistências e um elevado peso de manutenção. De acordo com o
desenvolvedor Mark Otto:
"Um grupo super pequeno de desenvolvedores e eu nos reunimos para projetar e construir uma
nova ferramenta interna e vi uma oportunidade de fazer algo mais. Através desse processo, nós nos
vimos construindo algo muito mais substancial do que outra ferramenta interna. Meses depois,
terminamos com uma versão inicial do Bootstrap como forma de documentar e compartilhar
padrões comuns de design e ativos dentro da empresa "

Depois de alguns meses de desenvolvimento por um pequeno grupo, muitos


desenvolvedores no Twitter começaram a contribuir com o projeto, como parte da Hack
Week. Ele foi renomeado como Twitter Blueprint to Bootstrap, e lançado como um projeto
de código aberto em 19 de agosto de 2011. [2] Ele continuou a ser mantida por Mark Otto,
Jacob Thornton, e um pequeno grupo de desenvolvedores, bem como uma grande
comunidade de colaboradores.[3]
Em 31 de janeiro de 2012, o Bootstrap 2 foi lançado, foi responsável por acrescentar o
layout grid responsivo de doze colunas, suporte interno para Glyphicons, vários novos
componentes, bem como as alterações para muitos dos componentes existentes. [4]
Em 19 de agosto de 2013, o Bootstrap 3 foi lançado, responsável por redesenhar
componentes para uso flat design, e uma abordagem para dispositivos móveis. [5]
Em 29 de outubro de 2014, Mark Otto anunciou que o Bootstrap 4 estava em
desenvolvimento.[6] A primeira versão alpha do Bootstrap 4 foi lançada em 19 de agosto de
2015.[7] A primeira versão beta foi lançada em 10 de agosto de 2017. [8]

Recursos[editar | editar código-fonte]
O Bootstrap 3 suporta as versões mais recentes do Google Chrome, Firefox, Internet
Explorer, Opera e Safari (exceto no Windows). Além disso, também suporta o IE8 e o mais
recente Firefox Extended Support Release (ESR).[9]
Desde a versão 2.0, o Bootstrap oferece web design responsivo. Isso significa que o layout
de páginas web se ajusta de forma dinâmica, de acordo com as características do
dispositivo (computador, tablet, smartphone).
A partir da versão 3.0, o Bootstrap aprovou uma filosofia de mobile-first design,
enfatizando o design responsivo por padrão.
A versão 4.0 alfa adicionou suporte a Sass e flexbox.

Estrutura e função[editar | editar código-fonte]

Exemplo de uma página da web usando o framework Bootstrap renderizado no Mozilla Firefox

Bootstrap é modular e consiste de uma série de estilos LESS que implementam os vários


componentes do kit de ferramentas. Estas folhas são geralmente compiladas em um
pacote e incluídas em páginas web, mas os componentes individuais podem ser incluídas
ou removidas.
Desde a versão 2, a documentação do Bootstrap inclui um assistente para personalização,
o que gera uma versão personalizada do Bootstrap com base nos componentes solicitados
e várias configurações.
A partir do Bootstrap 4, Sass é usado em vez do LESS para as folhas de estilo.
Cada inicialização do componente consiste em uma estrutura HTML, declarações CSS, e,
em alguns casos, acompanha código de JavaScript.
Folhas de estilo[editar | editar código-fonte]
O Bootstrap oferece um conjunto de folhas de estilo que faculta as definições de estilo
para todos os principais componentes HTML. Estes fornecem uma aparência moderna
para a formatação de texto, tabelas e elementos de formulário.

Componentes reutilizáveis[editar | editar código-fonte]


Além de regular os elementos do HTML, o Bootstrap contém outros elementos de interface
comumente utilizados. Os componentes são implementados como classes CSS, a qual
deve ser aplicada a certos elementos HTML em uma página.

Componentes JavaScript[editar | editar código-fonte]


O Bootstrap vem com vários componentes JavaScript no formulário de plugins jQuery.
Eles fornecem mais elementos de interface do usuário, tais como caixas de diálogo, dicas,
e carrosséis. Eles também estendem a funcionalidade de alguns elementos da interface,
incluindo, por exemplo, uma função auto-completar para campos de entrada. Na versão
1.3,[10] os seguintes plugins JavaScript são suportados: Modal, Dropdown, Scrollspy, Tab,
Tooltip, Popover, Alert, Button, Collapse, Carousel and Typeahead.

Bootstrap 4[editar | editar código-fonte]


Em 29 de outubro de 2014, Mark Otto anunciou que o Bootstrap 4 estava em
desenvolvimento. Em 6 de setembro de 2016, Mark suspendeu os trabalhos no Bootstrap
3, a fim de liberar mais tempo para trabalhar no Bootstrap 4. Mais de 4.000
mudanças foram feitas para o código base do Bootstrap 4 até agora.
o Bootstrap 4 é quase uma reescrita completa do Bootstrap 3. Alterações significativas
incluem:

 Migração do LESS para o Sass.


 Deixou de oferecer suporte para o IE8, IE9, e o iOS 6.
 Adicionado suporte flexbox e, em seguida, deixou de prestar suporte ao non-
flexbox.
 O aumento global do tamanho da fonte de 14px para 16px.
 Reescreveu quase todos os componentes, jQuery, plugins e documentação.

Veja também[editar | editar código-fonte]


 Frameworks CSS
 Web design

Referências
1. Ir para cima↑ «Search · stars:>1». GitHub. Consultado em 23 de fevereiro de 2017
2. Ir para cima↑ Otto, Mark (19 de agosto de 2011). «Bootstrap from Twitter». Developer Blog.
Twitter. Consultado em 23 de fevereiro de 2017. Cópia arquivada em 23 de fevereiro de
2017
3. Ir para cima↑ «About». Bootstrap. Consultado em 23 de fevereiro de 2017
4. Ir para cima↑ Otto, Mark (31 de janeiro de 2012). «Say hello to Bootstrap 2.0». Developer
Blog. Twitter. Consultado em 23 de fevereiro de 2017. Cópia arquivada em 23 de fevereiro
de 2017
5. Ir para cima↑ Otto, Mark (19 de agosto de 2013). «Bootstrap 3 released». Consultado em 23
de fevereiro de 2017. Cópia arquivada em 23 de outubro de 2016
6. Ir para cima↑ Otto, Mark (29 de outubro de 2014). «Bootstrap 3.3.0 released». Consultado
em 23 de fevereiro de 2017. Cópia arquivada em 24 de julho de 2016
7. Ir para cima↑ Otto, Mark (19 de agosto de 2015). «Bootstrap 4 alpha». Consultado em 23 de
fevereiro de 2017. Cópia arquivada em 23 de janeiro de 2017
8. Ir para cima↑ Otto, Mark; Thornton, Jacob (10 de agosto de 2017). «Bootstrap 4 Beta».
Consultado em 16 de agosto de 2017
9. Ir para cima↑ «Supported browsers». Bootstrap. Consultado em 23 de fevereiro de 2017
10. Ir para cima↑ «Bootstrap, from Twitter 1.3.0 Documentation -
BootstrapDocs». bootstrapdocs.com (em inglês). Consultado em 22 de outubro de 2017

Um framework em desenvolvimento de software, é uma abstração que


une códigos comuns entre vários projetos de software provendo uma funcionalidade
genérica. Um framework pode atingir uma funcionalidade específica, por configuração,
durante a programação de uma aplicação. Ao contrário das bibliotecas, é
o framework quem dita o fluxo de controle da aplicação, chamado de Inversão de Controle.
[1]

Índice
  [esconder] 

 1Conceito
 2Tipos
 3Orientação a objetos
 4Partes
 5Framework em administração de empresas
 6Referências
 7Ver também
 8Ligações externas

Conceito[editar | editar código-fonte]
Um Framework, ou arcabouço conceitual, é um conjunto de conceitos usado para resolver
um problema de um domínio específico. Framework conceitual não se trata de um
software executável, mas sim de um modelo de dados para um domínio.[carece  de
fontes]
 Framework de software compreende de um conjunto de classes implementadas em
uma linguagem de programação específica, usadas para auxiliar o desenvolvimento de
software.
O framework atua onde há funcionalidades em comum a várias aplicações, porém para
isso as aplicações devem ter algo razoavelmente grande em comum para que o mesmo
possa ser utilizado em várias aplicações.
Padrões de projeto de software não se confundem com frameworks, pois padrões
possuem um nível maior de abstração. Um framework inclui código, diferentemente de um
padrão de projeto. Um framework pode ser modelado com vários padrões de projeto, e
sempre possuem um domínio de uma aplicação particular, algo que não ocorre nos
padrões de projeto de software.
Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um
domínio de um subsistema da aplicação.
—Fayad e Schmidt[1]
Frameworks possuem vantagens, tais como: maior facilidade para a detecção de erros,
por serem peças mais concisas de software; concentração na abstração de soluções do
problema que estamos tratando; eficiência na resolução dos problemas e otimização de
recursos.

Tipos[editar | editar código-fonte]
Frameworks verticais são confeccionados através da experiência obtida em um
determinado contexto específico. Esses são mais comumente chamados de frameworks
especialistas. Tentam resolver problemas de um domínio e são usados em vários
softwares do mesmo domínio. Exemplos: framework' financeiro, recursos humanos.
Após alguns projetos em um domínio específico, serão percebidos pontos semelhantes
entre estes projetos; E, é com base nesses pontos, que será construído o framework
vertical (especialista).
Frameworks horizontais não dependem do domínio da aplicação e podem ser usados em
diferentes domínios.Exemplos: Interfaces gráficas, persistência, transação.

Orientação a objetos[editar | editar código-fonte]


Esta seção está escrito com linguagem técnica de forma complexa ou inacessível.
Por favor, melhore a linguagem tornando mais acessível para o público leigo, sem empobrecer o texto. A página de discussão pode conter sugestões.

Especificamente em orientação a objetos, framework é um conjunto de classes com


objetivo de reutilização de arquitetura de software, provendo um guia para uma solução
em um domínio específico de software.[carece  de fontes] Framework se diferencia de uma
simples biblioteca, pois esta se concentra apenas em oferecer implementação de
funcionalidades, sem definir a reutilização de uma solução de arquitetura.
Muitos engenheiros acreditam que a arquitetura é determinada pelos requisitos e por isso
esperam que a fase de engenharia de requisitos esteja finalizada para então iniciar sua.
Porém, apenas uma fração dos requisitos específicos do sistema têm influência na
arquitetura. A identificação dos requisitos que são significantes para a arquitetura pode ser
respondida através de um framework conceitual desenvolvido especialmente para um
domínio específico, uma vez que esta resposta é muito dependente do domínio. Avançar
para a fase de projeto ou mesmo iniciar a implementação do sistema não quer dizer que a
definição da arquitetura esteja finalizada. Isto significa que o detalhamento obtido até
então já é suficiente para prosseguir com o projeto de uma parte do sistema.

Partes[editar | editar código-fonte]
Frozenspots são as partes fixas de um framework, também conhecidos como hook points.
São serviços já implementados pelo framework. Normalmente realizam chamadas
indiretas aos hotspots.
Hotspots são as partes flexíveis de um framework. São pontos extensíveis, necessitam de
complementação por funcionalidades/serviços que devem ser
implementados. Hotspots são partes nas quais os programadores que usam
o framework adicionam o seu código para especificar uma funcionalidade de sua
aplicação. São invocados pelo framework, ou seja, classes (implementadas pelo
programador da aplicação) recebem mensagens de uma classe
do framework (frozenspot). Isso geralmente é implementado através de herança e
de métodos abstratos;

Framework em administração de empresas[editar | editar


código-fonte]
Em administração, um framework é uma estrutura conceitual básica que permite o
manuseio homogêneo de diferentes objetos de negócio. Serve para incrementar a
disciplina de gestão e predefinir entregáveis comuns para cada objeto de negócio.
Pode ser visto também como uma tática bem definida para manipular com destreza
ambientes organizacionais complexos. Um framework deve prover sugestões de solução
para uma família de problemas semelhantes.
Exemplos de frameworks para gestão: ISO 9000, ISO 14000, OHSAS
18000, ITIL, COBIT, CMM, HACCP, SCRUM.

Referências
1. ↑ Ir para:a b «O que é um framework?». dsc.ufcg.edu.br (em inglês). Consultado em 30 de
novembro de 2015

Você também pode gostar