sábado, 29 de setembro de 2012

Roteiro do exercício da aula de Edeyson

Definindo:

Classe Mãe:  
            Pizza
Classes Filhas:
            PizzaDiet
            PizzaNormal
Classes de composição (eu que dei esse nome):
            Massa
            Recheio
Interfaces:
            IMassa
            IRecheio
Fabricante:
            Fabrica
            FabricaPizzaDiet
            FabricaPizzaNormal


      Na construção sem factory
  1. Acoplado
    • Classes de composição: construtor, gettings e settings
    • Classe mãe: construtor, gettings e settings
    • Construtor sem parâmetros e  inicializa os atributos com new (composição)
    • O Teste: instancia a classe mãe.
  1. Desacoplado
    • Classes de composição:  construtor, gettings e settings
    • Classe mãe: construtor, gettings e settings, construtor recebe parâmetros e inicializa os atributos com os parâmetros (agregação simples)
    • Classe Teste: instancia as classes de composição e também a classe mãe, passando as classes de composição como parâmetros para a criação da classe mae. 
     Com Factory Method
  1. Factory Method
    • Cria-se um pacote para interfaces
    • Para cada classe de composição, cria-se uma interface
    • Cria-se pacotes para cada agrupamento de classes de composição
    • Cada classe de composição implementa a sua própria interface
    • As classes de composição são concretas e possuem seus próprios construtores
    • A classe mãe passa a ser abstrata
    • Os atributos da classe mãe que é do tipo da classe de composição, passa a ser do tipo Interface
    • No construtor da classe mae,  os atributos do tipo Interface recebem os métodos de criacao (factoryMethod): atributo = criaClasse()
    • Na classe mãe, também são definidos os métodos de criação
    • Esses métodos de criação são abstratas e retornam uma Inteface
    • A implementação dos métodos de criação só ocorre nas classes filhas
    • Na classe teste é criado um objeto do tipo da classe mãe e então pode-se instanciar qualquer classe filha.
  1. Abstract Factory
    • Cria-se uma classe abstrata fabricante que vai conter os a definição dos métodos de criação (abstratos) que estavam na classe mãe
    • As classes filhas agora serão filhas do fabricante e será acrescentado o singleton em cada uma delas. Não esquecer que o método de criação é publico e static e o construtor privado
    • A classe mãe passa a ser concreta (não abstrata)
    • O construtor da classe mãe receberá como parâmetro uma fabrica e atribuição dos valores do atributos serão dos métodos de criação dessa fabrica. Ex: (this.massa = fabrica.criaMassa(100))
    • Na classe teste será criado um objeto do tipo fabrica instanciando a fabrica filha e este será  parâmetro para a criação da classe mãe.

quinta-feira, 31 de maio de 2012

Imprimindo seu documento PDF no formato de livro, fácil, facil!

 
Temos plena consciência da necessidade de reduzir o consumo de recursos naturais a fim de garantirmos a vida para gerações futuras. Além disso, evitar gastos faz bem para o bolso de qualquer um.A tecnologia nos ajuda muito na economia de papel ao proporcionar uma leitura diretamente na tela do notebook, computador, tablet e até mesmo do celular. Há situações, porém, que a impressão é extemamente necessária e o velho papel é a melhor solução.

Atentos ao consumo sustentável, vamos ao objetivo deste post.

Você já tentou fazer a impressão de um livro ou imprimir seu documento neste formato mesmo nos sofisticados editores de texto? Se você já tentou, sabe que às vezes o resultado não é o esperado e você perde papel e tempo tentando acertar. Se você conseguir fazer sem passar por isso, parabéns!

Para facilitar a nossa vida a tecnologia faz o seu papel. Aliada à tecnologia algumas pessoas colocam o seu conhecimento a serviço do próximo, sem cobrar nada! É o caso do EXCELENTE programa PDF Booklet Creator, um programa opensource (código aberto) e gratuito que tem como objetivo colocar o seu arquivo pdf no formato de um livro, pronto para imprimir.

Para começar, baixe o programa no site http://opensource.marten.dk/sider/pdf-booklet-creator_67.aspx conforme a tela abaixo, e instale na forma padrão do Windows (next,next, ...). O nome do arquivo baixado é installer.msi.  Aproveite e dê uma olha no site do desenvolvedor, ele merece!





Após instalado, o programa vai estar lá no seu Iniciar --> Programas --> PDF Booklet Creator. Execute-o e em seguida informe o documento de origem e a pasta de destino. Clique no botão 'Create BookLet PDF' e pronto. Você agora tem um novo arquivo na pasta de destino no formato livro. Se você tiver deixado a opção 'Show output pdf after processing' marcado seu documento será aberto no seu leitor pdf padrão. Eu uso o Foxit PDF Reader que também é free (gratuito) e possui muitos recursos. Você pode baixá-lo em http://www.baixaki.com.br/download/foxit-pdf-reader.htm.



Se você você observar o documento gerado vai perceber que as folhas estão completamente fora de ordem. Não se preocupe é esta ordem que garante que o livro saia certinho.

Imprima primeiro as páginas ímpares (odd pages) e depois as pares (even pages) sendo que para a impressão das pares você deverá marcar a opção Reverse page, conforme a figura abaixo. Observe o posicionamento das folhas na hora de imprimir as páginas pares; elas devem estar com a parte já impressa para cima, girando-as no sentido horário.



Após impressas, as folhas deverão ser dobradas todas de uma vez, na mesma sequência em que foram impressas e depois grampeadas. Uma outra opção é corta-las todas ao meio e encadernar, sempre observando a numeração.

Espero ter sido claro, mas qualquer dúvida, faça um comentário.

Um abraço a todos!








segunda-feira, 29 de agosto de 2011

Mensagem

Se você abre uma porta, você pode ou não entrar em uma nova sala.
Você pode não entrar e ficar observando a vida.
Mas se você vence a dúvida, o temor, e entra, dá um grande passo: nesta sala vive-se !
Mas, também, tem um preço...
São inúmeras outras portas que você descobre.
Às vezes curte-se mil e uma.
O grande segredo é saber quando e qual porta deve ser aberta.
A vida não é rigorosa, ela propicia erros e acertos.
Os erros podem ser transformados em acertos quando com eles se aprende.
Não existe a segurança do acerto eterno.
A vida é generosa, a cada sala que se vive, descobre-se tantas outras portas.
E a vida enriquece quem se arrisca a abrir novas portas.
Ela privilegia quem descobre seus segredos e generosamente oferece afortunadas portas.
Mas a vida também pode ser dura e severa. Se você não ultrapassar a porta, terá sempre a mesma porta pela frente. É a repetição perante a criação, é a monotonia monocromática perante a multiplicidade das cores, é a estagnação da vida...
Para a vida, as portas não são obstáculos, mas diferentes passagens!”

Içami Tiba


domingo, 14 de agosto de 2011

FELIZ DIA DOS PAIS

Parabéns, PAI!!!

Aquele que gerou ou não!
Mas sobretudo aquele que cria, que educa, que ensina, que ama!
Que dá afeto e carinho!
Que sustenta fornecendo o alimento, mas também sustenta com o ombro amigo!
Aquele que sabe dizer SIM e NÃO na hora certa, pois dizer NÃO, além do SIM, é um gesto de amor!
Sabe ser amável mesmo sendo rígido!
Sabe reconhecer as dificuldades dos filhos, reconhecendo as suas próprias!
Aquele que abre mão dos seus sonhos, para realizar os sonhos dos filhos!
Aquele que mesmo conhecendo os defeitos dos filhos, sabe valorizar as virtudes!
E mesmo valorizando as virtudes, reconhece também as limitações e os defeitos!
Aquele que parte do erro para ensinar ao invés de punir!
Aquele que além de mostrar o melhor caminho, caminha junto!
Ser PAI não é apenas ser pai. É ser amigo, irmão, é ser mãe, também!!!
É ficar acordado, mesmo estando com sono, enquanto o filho não chega!
É achar que o filho não deixa de ser uma criança, apesar da idade e maturidade!!
É respeitar sempre,
É, sobretudo, amar incondicionalmente!!!

PARABÉNS, PAI!!!

quarta-feira, 25 de maio de 2011

Juntar documentos do word

Veja como é possível juntar documentos do word a partir de uma pasta!!!!

Crie um novo documento em branco, crie uma macro e coloque o código abaixo. Após executar, você terá todos os documentos da pasta especificada em pastaDocs no seu novo documento.
Legal, não é?


Private Sub juntarDocs()
'
' juntarDocs Macro
'

Dim nomeArquivo As String
Dim r As Range
Dim doc As Document
Const pastaDocs = "J:\"
Set doc = ActiveDocument
nomeArquivo = Dir$(pastaDocs & "\*.doc")
Do
Set r = doc.Bookmarks("\EndOfDoc").Range
If r.End > 0 Then
r.InsertBreak wdSectionBreakNextPage
r.Collapse wdCollapseEnd
End If
r.InsertFile (pastaDocs & "\" & nomeArquivo)
nomeArquivo = Dir$()
Loop Until nomeArquivo = ""

End Sub