₀₀Erlang : uma extensão de Erlang orientada a objetos
Autor(a) principal: | |
---|---|
Data de Publicação: | 2013 |
Tipo de documento: | Tese |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFPE |
Texto Completo: | https://repositorio.ufpe.br/handle/123456789/13357 |
Resumo: | Jogos via Internet, redes sociais e as novas aplicações web demandam acesso simultâneo e interativo de milhares (às vezes milhões) de pessoas. Esses sistemas são quase sempre desenvolvidos usando linguagens de script como PHP ou usando frameworks baseados em linguagens como Java, Ruby ou Pyhton. À proporção que o acesso a esses sistemas cresce, os fornecedores de tais serviços necessitam atender a novas demandas por meio da substituição de hardware por modelos mais potentes, aumentando seus custos operacionais. Quando o nível de acesso cresce drasticamente, o projetista se vê forçado a reprojetar toda a arquitetura do sistema migrando para soluções complexas usando Java Enterprise Edition (JEE) ou Node.js. Essas soluções também demandam mais e mais servidores. O problema possui uma raiz mais profunda: as linguagens de programação usadas para o desenvolvimento de sistemas não foram projetadas para suportar concorrência massiva. Linguagens com suporte a concorrência baseadas no modelo de memória compartilhada não possuem a escalabilidade necessária para atender a demanda. Para resolver os problemas ocasionados pela concorrência massiva, os desenvolvedores estão optando por usar linguagens funcionais como Scala e Erlang na arquitetura do sistema ao contrário de linguagens orientadas a objetos como Java. Mas Erlang não possui uma sintaxe própria para programação orientada a objetos. Este trabalho mostra o desenvolvimento de uma extensão orientada a objetos para a linguagem Erlang, chamada ooErlang, que possui uma melhor expressividade para resolução de problemas “do mundo real” e que não degrade o bom desempenho da linguagem em aplicações que demandam alto tráfego de dados e fina granularidade computacional, tal qual em programas Web 2.0. Assim sendo, o nicho da extensão aqui apresentada é o mesmo de Erlang: desenvolver sistemas backend para grandes aplicações onde a concorrência massiva e tolerância a falhas são requeridas. |
id |
UFPE_f42833eb78cbc8fb2ec518b36fa7351f |
---|---|
oai_identifier_str |
oai:repositorio.ufpe.br:123456789/13357 |
network_acronym_str |
UFPE |
network_name_str |
Repositório Institucional da UFPE |
repository_id_str |
2221 |
spelling |
SILVA JÚNIOR, Jucimar Maia daLINS, Rafael DueireCARVALHO JÚNIOR, Francisco Heron de2015-04-17T14:15:28Z2015-04-17T14:15:28Z2013-07-31https://repositorio.ufpe.br/handle/123456789/13357Jogos via Internet, redes sociais e as novas aplicações web demandam acesso simultâneo e interativo de milhares (às vezes milhões) de pessoas. Esses sistemas são quase sempre desenvolvidos usando linguagens de script como PHP ou usando frameworks baseados em linguagens como Java, Ruby ou Pyhton. À proporção que o acesso a esses sistemas cresce, os fornecedores de tais serviços necessitam atender a novas demandas por meio da substituição de hardware por modelos mais potentes, aumentando seus custos operacionais. Quando o nível de acesso cresce drasticamente, o projetista se vê forçado a reprojetar toda a arquitetura do sistema migrando para soluções complexas usando Java Enterprise Edition (JEE) ou Node.js. Essas soluções também demandam mais e mais servidores. O problema possui uma raiz mais profunda: as linguagens de programação usadas para o desenvolvimento de sistemas não foram projetadas para suportar concorrência massiva. Linguagens com suporte a concorrência baseadas no modelo de memória compartilhada não possuem a escalabilidade necessária para atender a demanda. Para resolver os problemas ocasionados pela concorrência massiva, os desenvolvedores estão optando por usar linguagens funcionais como Scala e Erlang na arquitetura do sistema ao contrário de linguagens orientadas a objetos como Java. Mas Erlang não possui uma sintaxe própria para programação orientada a objetos. Este trabalho mostra o desenvolvimento de uma extensão orientada a objetos para a linguagem Erlang, chamada ooErlang, que possui uma melhor expressividade para resolução de problemas “do mundo real” e que não degrade o bom desempenho da linguagem em aplicações que demandam alto tráfego de dados e fina granularidade computacional, tal qual em programas Web 2.0. Assim sendo, o nicho da extensão aqui apresentada é o mesmo de Erlang: desenvolver sistemas backend para grandes aplicações onde a concorrência massiva e tolerância a falhas são requeridas.porUniversidade Federal de PernambucoAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessErlangLinguagens de programaçãoProgramação orientada a objetos₀₀Erlang : uma extensão de Erlang orientada a objetosinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPETHUMBNAILTESE Jucimar Maia da Silva Júnior.pdf.jpgTESE Jucimar Maia da Silva Júnior.pdf.jpgGenerated Thumbnailimage/jpeg1299https://repositorio.ufpe.br/bitstream/123456789/13357/5/TESE%20Jucimar%20Maia%20da%20Silva%20J%c3%banior.pdf.jpg57c3ee7cd60b682bb3d17bcf86b195d8MD55ORIGINALTESE Jucimar Maia da Silva Júnior.pdfTESE Jucimar Maia da Silva Júnior.pdfapplication/pdf4954306https://repositorio.ufpe.br/bitstream/123456789/13357/1/TESE%20Jucimar%20Maia%20da%20Silva%20J%c3%banior.pdffbddc0017ae748afd4a4afa5751c4a17MD51CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81232https://repositorio.ufpe.br/bitstream/123456789/13357/2/license_rdf66e71c371cc565284e70f40736c94386MD52LICENSElicense.txtlicense.txttext/plain; charset=utf-82311https://repositorio.ufpe.br/bitstream/123456789/13357/3/license.txt4b8a02c7f2818eaf00dcf2260dd5eb08MD53TEXTTESE Jucimar Maia da Silva Júnior.pdf.txtTESE Jucimar Maia da Silva Júnior.pdf.txtExtracted texttext/plain227471https://repositorio.ufpe.br/bitstream/123456789/13357/4/TESE%20Jucimar%20Maia%20da%20Silva%20J%c3%banior.pdf.txt6e0d506623f14e603bdbf72beaf69d2fMD54123456789/133572019-11-11 16:17:43.986oai:repositorio.ufpe.br:123456789/13357TGljZW7Dp2EgZGUgRGlzdHJpYnVpw6fDo28gTsOjbyBFeGNsdXNpdmEKClRvZG8gZGVwb3NpdGFudGUgZGUgbWF0ZXJpYWwgbm8gUmVwb3NpdMOzcmlvIEluc3RpdHVjaW9uYWwgKFJJKSBkZXZlIGNvbmNlZGVyLCDDoCBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBQZXJuYW1idWNvIChVRlBFKSwgdW1hIExpY2Vuw6dhIGRlIERpc3RyaWJ1acOnw6NvIE7Do28gRXhjbHVzaXZhIHBhcmEgbWFudGVyIGUgdG9ybmFyIGFjZXNzw612ZWlzIG9zIHNldXMgZG9jdW1lbnRvcywgZW0gZm9ybWF0byBkaWdpdGFsLCBuZXN0ZSByZXBvc2l0w7NyaW8uCgpDb20gYSBjb25jZXNzw6NvIGRlc3RhIGxpY2Vuw6dhIG7Do28gZXhjbHVzaXZhLCBvIGRlcG9zaXRhbnRlIG1hbnTDqW0gdG9kb3Mgb3MgZGlyZWl0b3MgZGUgYXV0b3IuCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwoKTGljZW7Dp2EgZGUgRGlzdHJpYnVpw6fDo28gTsOjbyBFeGNsdXNpdmEKCkFvIGNvbmNvcmRhciBjb20gZXN0YSBsaWNlbsOnYSBlIGFjZWl0w6EtbGEsIHZvY8OqIChhdXRvciBvdSBkZXRlbnRvciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMpOgoKYSkgRGVjbGFyYSBxdWUgY29uaGVjZSBhIHBvbMOtdGljYSBkZSBjb3B5cmlnaHQgZGEgZWRpdG9yYSBkbyBzZXUgZG9jdW1lbnRvOwpiKSBEZWNsYXJhIHF1ZSBjb25oZWNlIGUgYWNlaXRhIGFzIERpcmV0cml6ZXMgcGFyYSBvIFJlcG9zaXTDs3JpbyBJbnN0aXR1Y2lvbmFsIGRhIFVGUEU7CmMpIENvbmNlZGUgw6AgVUZQRSBvIGRpcmVpdG8gbsOjbyBleGNsdXNpdm8gZGUgYXJxdWl2YXIsIHJlcHJvZHV6aXIsIGNvbnZlcnRlciAoY29tbyBkZWZpbmlkbyBhIHNlZ3VpciksIGNvbXVuaWNhciBlL291IGRpc3RyaWJ1aXIsIG5vIFJJLCBvIGRvY3VtZW50byBlbnRyZWd1ZSAoaW5jbHVpbmRvIG8gcmVzdW1vL2Fic3RyYWN0KSBlbSBmb3JtYXRvIGRpZ2l0YWwgb3UgcG9yIG91dHJvIG1laW87CmQpIERlY2xhcmEgcXVlIGF1dG9yaXphIGEgVUZQRSBhIGFycXVpdmFyIG1haXMgZGUgdW1hIGPDs3BpYSBkZXN0ZSBkb2N1bWVudG8gZSBjb252ZXJ0w6otbG8sIHNlbSBhbHRlcmFyIG8gc2V1IGNvbnRlw7pkbywgcGFyYSBxdWFscXVlciBmb3JtYXRvIGRlIGZpY2hlaXJvLCBtZWlvIG91IHN1cG9ydGUsIHBhcmEgZWZlaXRvcyBkZSBzZWd1cmFuw6dhLCBwcmVzZXJ2YcOnw6NvIChiYWNrdXApIGUgYWNlc3NvOwplKSBEZWNsYXJhIHF1ZSBvIGRvY3VtZW50byBzdWJtZXRpZG8gw6kgbyBzZXUgdHJhYmFsaG8gb3JpZ2luYWwgZSBxdWUgZGV0w6ltIG8gZGlyZWl0byBkZSBjb25jZWRlciBhIHRlcmNlaXJvcyBvcyBkaXJlaXRvcyBjb250aWRvcyBuZXN0YSBsaWNlbsOnYS4gRGVjbGFyYSB0YW1iw6ltIHF1ZSBhIGVudHJlZ2EgZG8gZG9jdW1lbnRvIG7Do28gaW5mcmluZ2Ugb3MgZGlyZWl0b3MgZGUgb3V0cmEgcGVzc29hIG91IGVudGlkYWRlOwpmKSBEZWNsYXJhIHF1ZSwgbm8gY2FzbyBkbyBkb2N1bWVudG8gc3VibWV0aWRvIGNvbnRlciBtYXRlcmlhbCBkbyBxdWFsIG7Do28gZGV0w6ltIG9zIGRpcmVpdG9zIGRlCmF1dG9yLCBvYnRldmUgYSBhdXRvcml6YcOnw6NvIGlycmVzdHJpdGEgZG8gcmVzcGVjdGl2byBkZXRlbnRvciBkZXNzZXMgZGlyZWl0b3MgcGFyYSBjZWRlciDDoApVRlBFIG9zIGRpcmVpdG9zIHJlcXVlcmlkb3MgcG9yIGVzdGEgTGljZW7Dp2EgZSBhdXRvcml6YXIgYSB1bml2ZXJzaWRhZGUgYSB1dGlsaXrDoS1sb3MgbGVnYWxtZW50ZS4gRGVjbGFyYSB0YW1iw6ltIHF1ZSBlc3NlIG1hdGVyaWFsIGN1am9zIGRpcmVpdG9zIHPDo28gZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3UgY29udGXDumRvIGRvIGRvY3VtZW50byBlbnRyZWd1ZTsKZykgU2UgbyBkb2N1bWVudG8gZW50cmVndWUgw6kgYmFzZWFkbyBlbSB0cmFiYWxobyBmaW5hbmNpYWRvIG91IGFwb2lhZG8gcG9yIG91dHJhIGluc3RpdHVpw6fDo28gcXVlIG7Do28gYSBVRlBFLMKgZGVjbGFyYSBxdWUgY3VtcHJpdSBxdWFpc3F1ZXIgb2JyaWdhw6fDtWVzIGV4aWdpZGFzIHBlbG8gcmVzcGVjdGl2byBjb250cmF0byBvdSBhY29yZG8uCgpBIFVGUEUgaWRlbnRpZmljYXLDoSBjbGFyYW1lbnRlIG8ocykgbm9tZShzKSBkbyhzKSBhdXRvciAoZXMpIGRvcyBkaXJlaXRvcyBkbyBkb2N1bWVudG8gZW50cmVndWUgZSBuw6NvIGZhcsOhIHF1YWxxdWVyIGFsdGVyYcOnw6NvLCBwYXJhIGFsw6ltIGRvIHByZXZpc3RvIG5hIGFsw61uZWEgYykuCg==Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-11-11T19:17:43Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false |
dc.title.pt_BR.fl_str_mv |
₀₀Erlang : uma extensão de Erlang orientada a objetos |
title |
₀₀Erlang : uma extensão de Erlang orientada a objetos |
spellingShingle |
₀₀Erlang : uma extensão de Erlang orientada a objetos SILVA JÚNIOR, Jucimar Maia da Erlang Linguagens de programação Programação orientada a objetos |
title_short |
₀₀Erlang : uma extensão de Erlang orientada a objetos |
title_full |
₀₀Erlang : uma extensão de Erlang orientada a objetos |
title_fullStr |
₀₀Erlang : uma extensão de Erlang orientada a objetos |
title_full_unstemmed |
₀₀Erlang : uma extensão de Erlang orientada a objetos |
title_sort |
₀₀Erlang : uma extensão de Erlang orientada a objetos |
author |
SILVA JÚNIOR, Jucimar Maia da |
author_facet |
SILVA JÚNIOR, Jucimar Maia da |
author_role |
author |
dc.contributor.author.fl_str_mv |
SILVA JÚNIOR, Jucimar Maia da |
dc.contributor.advisor1.fl_str_mv |
LINS, Rafael Dueire |
dc.contributor.advisor-co1.fl_str_mv |
CARVALHO JÚNIOR, Francisco Heron de |
contributor_str_mv |
LINS, Rafael Dueire CARVALHO JÚNIOR, Francisco Heron de |
dc.subject.por.fl_str_mv |
Erlang Linguagens de programação Programação orientada a objetos |
topic |
Erlang Linguagens de programação Programação orientada a objetos |
description |
Jogos via Internet, redes sociais e as novas aplicações web demandam acesso simultâneo e interativo de milhares (às vezes milhões) de pessoas. Esses sistemas são quase sempre desenvolvidos usando linguagens de script como PHP ou usando frameworks baseados em linguagens como Java, Ruby ou Pyhton. À proporção que o acesso a esses sistemas cresce, os fornecedores de tais serviços necessitam atender a novas demandas por meio da substituição de hardware por modelos mais potentes, aumentando seus custos operacionais. Quando o nível de acesso cresce drasticamente, o projetista se vê forçado a reprojetar toda a arquitetura do sistema migrando para soluções complexas usando Java Enterprise Edition (JEE) ou Node.js. Essas soluções também demandam mais e mais servidores. O problema possui uma raiz mais profunda: as linguagens de programação usadas para o desenvolvimento de sistemas não foram projetadas para suportar concorrência massiva. Linguagens com suporte a concorrência baseadas no modelo de memória compartilhada não possuem a escalabilidade necessária para atender a demanda. Para resolver os problemas ocasionados pela concorrência massiva, os desenvolvedores estão optando por usar linguagens funcionais como Scala e Erlang na arquitetura do sistema ao contrário de linguagens orientadas a objetos como Java. Mas Erlang não possui uma sintaxe própria para programação orientada a objetos. Este trabalho mostra o desenvolvimento de uma extensão orientada a objetos para a linguagem Erlang, chamada ooErlang, que possui uma melhor expressividade para resolução de problemas “do mundo real” e que não degrade o bom desempenho da linguagem em aplicações que demandam alto tráfego de dados e fina granularidade computacional, tal qual em programas Web 2.0. Assim sendo, o nicho da extensão aqui apresentada é o mesmo de Erlang: desenvolver sistemas backend para grandes aplicações onde a concorrência massiva e tolerância a falhas são requeridas. |
publishDate |
2013 |
dc.date.issued.fl_str_mv |
2013-07-31 |
dc.date.accessioned.fl_str_mv |
2015-04-17T14:15:28Z |
dc.date.available.fl_str_mv |
2015-04-17T14:15:28Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufpe.br/handle/123456789/13357 |
url |
https://repositorio.ufpe.br/handle/123456789/13357 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFPE instname:Universidade Federal de Pernambuco (UFPE) instacron:UFPE |
instname_str |
Universidade Federal de Pernambuco (UFPE) |
instacron_str |
UFPE |
institution |
UFPE |
reponame_str |
Repositório Institucional da UFPE |
collection |
Repositório Institucional da UFPE |
bitstream.url.fl_str_mv |
https://repositorio.ufpe.br/bitstream/123456789/13357/5/TESE%20Jucimar%20Maia%20da%20Silva%20J%c3%banior.pdf.jpg https://repositorio.ufpe.br/bitstream/123456789/13357/1/TESE%20Jucimar%20Maia%20da%20Silva%20J%c3%banior.pdf https://repositorio.ufpe.br/bitstream/123456789/13357/2/license_rdf https://repositorio.ufpe.br/bitstream/123456789/13357/3/license.txt https://repositorio.ufpe.br/bitstream/123456789/13357/4/TESE%20Jucimar%20Maia%20da%20Silva%20J%c3%banior.pdf.txt |
bitstream.checksum.fl_str_mv |
57c3ee7cd60b682bb3d17bcf86b195d8 fbddc0017ae748afd4a4afa5751c4a17 66e71c371cc565284e70f40736c94386 4b8a02c7f2818eaf00dcf2260dd5eb08 6e0d506623f14e603bdbf72beaf69d2f |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE) |
repository.mail.fl_str_mv |
attena@ufpe.br |
_version_ |
1802310676687880192 |