;(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

Sófocles Dramaturgo grego

495 a.C., Atenas (Grécia)

406 a.C., Atenas (Grécia)

Da Página 3 Pedagogia & Comunicação

14/07/2008 18h05

Sófocles nasceu em Atenas, provavelmente em 495 a.C., e morreu na mesma cidade, no ano 406 a.C. Ele foi contemporâneo da grande época de Atenas, o período no qual a cidade viveu sob a liderança de Péricles, que se estende das vitórias dos gregos sobre os persas até quase o fim da Guerra do Peloponeso.

De sua primeira vitória no concurso teatral ateniense, em 468 a.C., até sua morte, Sófocles foi homenageado e festejado como o maior poeta trágico dos gregos. Infelizmente, chegaram até nós apenas 7 das 120 peças que ele escreveu.

A peça mais antiga de Sófocles, Ájax, ainda apresenta influências de Ésquilo e uma estrutura dramática muito simples. A seguir, temos Antígona, a tragédia da mulher que enfrenta as leis e o governo para respeitar os mandamentos divinos e morais, mas acaba massacrada pelo Estado.

Sua obra-prima, contudo, é Édipo rei, a tragédia do homem perseguido pela fatalidade do destino: transformado em rei, busca um assassino que, na verdade, é ele mesmo, descobrindo, ao final, ter matado seu próprio pai e desposado a própria mãe.
 

Destino e heroísmo

Ainda que seja comum fazer comparações entre os três grandes dramaturgos trágicos da antiga Grécia - além de Sófocles, Ésquilo e os Eurípides -, esses exercícios são de pouca serventia, pois cada um deles apresenta características muito particulares. Ésquilo é mais arcaico, mais religioso, e Eurípides é mais psicológico. Sófocles, por sua vez, elaborou um estilo no qual o enredo e a exposição dos fatos chegam a ser idênticos - ou seja, a revelação dos acontecimentos do ado é o próprio enredo, o que amplia a dramaticidade da peça.

O tema de Sófocles é o destino humano - o destino do herói que sofre e é destruído. A tragédia apresenta a crise desse destino individual, imposto pelas forças sobrenaturais. Sófocles acredita que o homem está no centro do mundo, mas também crê no poder irresistível dos deuses (ainda que não tenha fé na justiça divina).

Mas Sófocles não filosofa nem especula sobre os problemas mais profundos da vida. Seus personagens principais, embora sujeitos a falhas humanas, são heróicos e afetados por motivos superiores. Talvez tenha sido o que ele quis expressar quando disse (segundo Aristóteles), que mostrava as pessoas como elas deviam ser, enquanto Eurípides as mostrava como elas eram.

Para o filósofo Friedrich Nietzsche, Sófocles tem um pessimismo trágico: o mundo e a vida estão cheios da injustiça e da infelicidade dos que são inocentes. Se suas peças apresentam certa serenidade clássica, isso se deve à beleza lírica, sobretudo dos coros. E é exatamente por meio desse lirismo que Sófocles revela como o homem pode ser grande também na derrota.
 

Enciclopédia Mirador Internacional e Dicionário Oxford de Literatura Clássica (Jorge Zahar Editor)