{"id":677,"date":"2015-12-30T09:27:09","date_gmt":"2015-12-30T11:27:09","guid":{"rendered":"http:\/\/www.inf.ufrgs.br\/profcomp_wp\/?page_id=677"},"modified":"2018-01-23T10:44:04","modified_gmt":"2018-01-23T12:44:04","slug":"cmp167","status":"publish","type":"page","link":"https:\/\/www.inf.ufrgs.br\/profcomp\/lista-de-disciplinas\/cmp167\/","title":{"rendered":"CMP167"},"content":{"rendered":"<h3><strong>Programa\u00e7\u00e3o com Objetos Distribu\u00eddos B<br \/>\n<\/strong><\/h3>\n<p><b>Respons\u00e1vel<\/b>: <a href=\"http:\/\/www.inf.ufrgs.br\/site\/docente\/claudio-fernando-resin-geyer\/\">Cl\u00e1udio Fernando Resin Geyer<\/a><br \/>\n<b>Pr\u00e9-Requisitos<\/b>: &#8211;<br \/>\n<b>Carga Hor\u00e1ria<\/b>: 60 hs<br \/>\n<b>Cr\u00e9ditos<\/b>: 4<br \/>\n<b>Semestres Oferecidos<\/b>: Primeiro semestre<br \/>\n<b>Matr\u00edcula de Graduandos<\/b>: A matricula dever\u00e1 ser feita como Aluno Especial<br \/>\n<b>P\u00e1gina da Disciplina<\/b>: &#8211;<\/p>\n<p><strong>S\u00daMULA<\/strong><\/p>\n<p align=\"justify\">Introdu\u00e7\u00e3o a sistemas distribu\u00eddos. Revis\u00e3o dos conceitos de POO. Abordagens para ambientes de POD. Modelos de concorr\u00eancia, sincroniza\u00e7\u00e3o e comunica\u00e7\u00e3o em POD. Exemplos de ambientes de POD: comerciais e acad\u00eamicos: Java, CORBA, CC++, e outros. Algoritmos distribu\u00eddos com POD. Extens\u00f5es de POD: replica\u00e7\u00e3o, persist\u00eancia, agentes m\u00f3veis e outros.<\/p>\n<p><strong>OBJETIVOS<\/strong><\/p>\n<p align=\"justify\">O tema central da disciplina \u00e9 o estudo de ambientes de programa\u00e7\u00e3o com objetos distribu\u00eddos. Ao final da disciplina o aluno dever\u00e1 conhecer os principais modelos de POD, tanto por uma abordagem conceitual quanto atrav\u00e9s de exemplos acad\u00eamicos e comerciais. O aluno tamb\u00e9m dever\u00e1 saber usar os recursos da POD atrav\u00e9s do estudo de algoritmos distribu\u00eddos. O aluno ainda tomar\u00e1 conhecimento das principais tend\u00eancias e extens\u00f5es da POD.<\/p>\n<p><strong>PROGRAMA<\/strong><\/p>\n<p align=\"justify\">\u2022 Introdu\u00e7\u00e3o: Conceitos b\u00e1sicos de programa\u00e7\u00e3o distribu\u00edda e paralela: sistemas distribu\u00eddos, aplica\u00e7\u00f5es distribu\u00eddas, modelos de programa\u00e7\u00e3o, express\u00e3o da concorr\u00eancia, sincroniza\u00e7\u00e3o e comunica\u00e7\u00e3o. Revis\u00e3o dos conceitos de POO.<br \/>\n\u2022 Concorr\u00eancia, comunica\u00e7\u00e3o e sincroniza\u00e7\u00e3o em POOD<br \/>\nAbordagens biblioteca, integra\u00e7\u00e3o e reflex\u00e3o; cria\u00e7\u00e3o de objetos distribu\u00eddos; concorr\u00eancia inter e intra objeto; atomicidade, sincroniza\u00e7\u00e3o entre threads; tipos de comunica\u00e7\u00e3o (send\/receive, chamada remota de m\u00e9todo s\u00edncrona e futura, &#8230;)<br \/>\n\u2022 Exemplos de ambientes: padr\u00e3o CORBA, linguagens Java e CC++, &#8230;<br \/>\nCORBA: hist\u00f3rico, arquitetura, vers\u00f5es, ORB, servi\u00e7os e facilidades, objetos de neg\u00f3cio, chamada est\u00e1tica e din\u00e2mica, rep\u00f3sit\u00f3rio de interfaces, &#8230;; Java: threads, m\u00e9todos de sincroniza\u00e7\u00e3o, sockets, RMI, &#8230;; caracter\u00edsticas de outras linguagens; extens\u00f5es atuais: agentes m\u00f3veis, replica\u00e7\u00e3o, &#8230; (Voyager, Agglets, Concordia, &#8230;).<br \/>\n\u2022 Algoritmos paralelos e distribu\u00eddos. Tipos de algoritmos: cliente\/servidor, filtros, pares, mestre\/escravo, &#8230;Exemplos: difus\u00e3o e coleta de dados, produto vetorial, multiplica\u00e7\u00e3o de matrizes,<\/p>\n<p><strong>CRIT\u00c9RIOS DE AVALIA\u00c7\u00c3O<\/strong><strong>BIBLIOGRAFIA<\/strong><\/p>\n<p align=\"justify\">\u2022 ORFALI, R. and HARKEY, D. Client\/Server Programming with JAVA and CORBA. Wiley, New York, 2o edition, 1998.<br \/>\n\u2022 ORFALI, R., HARKEY, D. and EDWARDS, J. The Essential Distributed Objects Survival Guide. Wiley, New York, 1996.<br \/>\n\u2022 AGHA, G., WEGNER, P. and YONEZAWA, A. Research Directions in Concurrent Object-Oriented Programming. The MIT Press, Cambridge, 1993.<br \/>\n\u2022 OAKS, S. and WONG, H. Java Threads. O\u2019Reilly, 1997.<br \/>\n\u2022 BRIOT, J-P. and GUERRAOUI, R. A Classification of Various Approaches for Object-Based Parallel and Distributed Programming. Technical Report, EPFL and Univ of Tokyo, 1996.<br \/>\n\u2022 ANDREWS, G. R. Concurrent Programming &#8211; Principles and Practice. The Benjamin\/Cummings, Redwood City, 1991.<br \/>\n\u2022 LEA, P. Concurrent Programming in JAVA &#8211; Design Principles and Patterns. Addison-Wesley, 1997.<br \/>\n\u2022 LYNCH, N. Distributed Algorithms. 1996.<br \/>\n\u2022 Artigos selecionados.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Programa\u00e7\u00e3o com Objetos Distribu\u00eddos B Respons\u00e1vel: Cl\u00e1udio Fernando Resin Geyer Pr\u00e9-Requisitos: &#8211; Carga Hor\u00e1ria: 60 hs Cr\u00e9ditos: 4 Semestres Oferecidos: Primeiro semestre Matr\u00edcula de Graduandos: A matricula dever\u00e1 ser feita como Aluno Especial P\u00e1gina da Disciplina: &#8211; S\u00daMULA Introdu\u00e7\u00e3o a sistemas distribu\u00eddos. Revis\u00e3o dos conceitos de POO. Abordagens para ambientes de POD. Modelos de concorr\u00eancia, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":462,"menu_order":167,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/pages\/677"}],"collection":[{"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/comments?post=677"}],"version-history":[{"count":5,"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/pages\/677\/revisions"}],"predecessor-version":[{"id":3572,"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/pages\/677\/revisions\/3572"}],"up":[{"embeddable":true,"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/pages\/462"}],"wp:attachment":[{"href":"https:\/\/www.inf.ufrgs.br\/profcomp\/wp-json\/wp\/v2\/media?parent=677"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}