Joshua Bloch - Joshua Bloch
Joshua J. Bloch | |
---|---|
Bloch em 2008
| |
Nascermos |
|
28 de agosto de 1961
Nacionalidade | americano |
Alma mater |
Universidade de Columbia ( BS ) Universidade Carnegie Mellon ( Ph.D. ) |
Carreira científica | |
Instituições | Universidade Carnegie Mellon |
Orientador de doutorado | Alfred Spector |
Joshua J. Bloch (nascido em 28 de agosto de 1961) é um engenheiro de software americano e autor de tecnologia, anteriormente empregado na Sun Microsystems e no Google . Ele liderou o projeto e a implementação de vários recursos da plataforma Java , incluindo o Java Collections Framework, o pacote java.math e o mecanismo de declaração . Ele é o autor do guia de programação Effective Java (2001), que ganhou o Jolt Award de 2001 , e é coautor de dois outros livros sobre Java , Java Puzzlers (2005) e Java Concurrency In Practice (2006).
Bloch é bacharel em ciência da computação pela Columbia University e Ph.D. em ciência da computação pela Carnegie Mellon University . Sua tese de 1990 foi intitulada Uma Abordagem Prática para Replicação de Objetos de Dados Abstratos e foi indicada para o Prêmio de Dissertação de Doutorado Distinto da ACM .
Bloch trabalhou como Designer de Sistemas Sênior na Transarc e, posteriormente, como Engenheiro Distinto na Sun Microsystems . Em junho de 2004, ele deixou a Sun e se tornou arquiteto-chefe de Java no Google . Em 3 de agosto de 2012, Bloch anunciou que deixaria o Google.
Em dezembro de 2004, o Java Developer's Journal incluiu Bloch em sua lista das "40 maiores pessoas de software do mundo".
Bloch propôs a extensão da linguagem de programação Java com dois recursos: Concise Instance Creation Expressions (CICE) (coproposed com Bob Lee e Doug Lea ) e blocos Automatic Resource Management (ARM). A combinação de CICE e ARM formou uma das três primeiras propostas para adicionar suporte para encerramentos ao Java. Blocos ARM foram adicionados à linguagem em JDK7.
Bloch é atualmente um membro do corpo docente afiliado do Institute for Software Research da Carnegie Mellon University, onde detém o título de " Professor Adjunto da Prática ".
Bibliografia
- Effective Java: Programming Language Guide , ISBN 0-201-31005-8 , 2001; segunda edição: ISBN 978-0-321-35668-0 , 2008; terceira edição: ISBN 978-0134685991 , 2017
- Java Puzzlers: Traps, Pitfalls, and Corner Cases , ISBN 0-321-33678-X , 2005 (em coautoria com Neal Gafter)
- Java Concurrency in Practice , ISBN 0-321-34960-1 , 2006 (em coautoria com Brian Goetz, Tim Peierls, Joseph Bowbeer, David Holmes e Doug Lea )
- Joshua Bloch (2006). “Como projetar uma boa API e por que isso é importante” . Companheiro da 21ª conferência ACM SIGPLAN sobre sistemas, linguagens e aplicativos de programação orientados a objetos - OOPSLA '06 . doi : 10.1145 / 1176617.1176622 . Wikidata Q56602059 .
Referências
links externos
- Bloch, Joshua (4 de janeiro de 2002). “Joshua Bloch: Uma conversa sobre design” . JavaWorld . Entrevistado por Venners, Bill . Página visitada em 2020-07-20 .
- Janice J. Heiss, Java mais eficaz com Joshua Bloch do Google, outubro de 2008
- Josh Bloch, Como criar uma boa API e por que isso importa, Google Tech Talk, 2007