;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Gustave Flaubert Escritor francês

12/12/1821, Rouen (França)<p>8/5/1880, Croisset (França)

Da Página 3 - Pedagogia e Comunicação

31/07/2005 14h56

"Madame Bovary sou eu", disse Gustave Flaubert quando os juízes lhe perguntaram quem teria sido o modelo da sua personagem, durante o seu julgamento, em 1856.

Ele foi acusado pelo governo francês de ter escrito uma "obra execrável sob o ponto de vista moral". Mas foi absolvido pela Sexta Corte Correcional do Tribunal do Sena, em Paris, em fevereiro de 1857.

Resultado de cinco anos de trabalho, seu romance de estreia, "Madame Bovary", é uma dura depreciação dos valores burgueses. Segundo alguns críticos conservadores, Flaubert ridicularizou sua própria condição social. Afinal, o autor era filho de um médico provinciano rico e vivia de rendas em sua idade adulta na propriedade rural do pai.

A história de Emma Bovary, que trai o marido para fugir da vida medíocre, é um retrato da incapacidade mental, emocional e moral das sociedades provincianas. Flaubert se dizia um estudioso da estupidez humana e colecionava episódios de burrice publicados em livros e jornais. Para ele, estupidez era mais frequente na província. A falta de inteligência também foi o tema de "A Tentação de Santo Antão" (1874).

Em 1840, como prêmio por ter concluído os estudos secundários, ganhou uma viagem para os montes Pirineus e para a ilha de Córsega. Ao ar por Marselha, viveu um namoro com Eulália Foucaud de Langlade. O idílio foi inspiração para a obra "A Educação Sentimental" (1869). Entre 1849 e 1851, o autor viajou para a África, onde colheu informações para "Salambô" (1862), sobre a queda de Cartago.

Flaubert foi um dos autores mais importantes do Realismo, movimento estético de reação ao Romantismo europeu no século 19, influenciado pelas teorias científicas, a Revolução industrial e a linha filosófica de Augusto Comte (o Positivismo). Ele levou à perfeição o ideal do romance realista de harmonizar a arte e a realidade. Sua obra se caracteriza pelo cuidado na sintaxe, na escolha do vocabulário e na estrutura do enredo.

Em 1866, recebeu a Legião de Honra do governo francês. Pouco antes de sua morte, vendeu propriedades para evitar a falência do marido de sua sobrinha. ou a viver de um salário como conservador da Biblioteca Mazarine. O romance "Bouvard et Pécuchet" foi publicado inacabado, postumamente.