Saltar para o conteúdo

Computação

Origem: Wikipédia, a enciclopédia livre.
 Nota: Para a área acadêmico-profissional, veja Ciência da computação.
Simulação de computador, uma das principais metodologias de computação cruzada.[1]

A computação é qualquer atividade orientada a objetivos que exija, se beneficie ou crie máquinas de computação.[2] Ela inclui o estudo e a experimentação de processos algorítmicos e o desenvolvimento de hardware e software. A computação tem aspectos científicos, de engenharia, matemáticos, tecnológicos e sociais. Pode ser definida como a busca de solução para um problema a partir de entradas (inputs), de forma a obter resultados (outputs) depois de processada a informação através de um algoritmo.[3] É com isto que lida a teoria da computação, subcampo da ciência da computação e da matemática. Disciplinas de computação incluem engenharia da computação, ciência da computação, segurança cibernética, ciência de dados, sistemas de informação, tecnologia da informação, arte digital e engenharia de software.[4]

O termo computação também é sinônimo de contagem e cálculo. Antigamente, era usado em referência à ação executada por máquinas de computação mecânica e, antes disso, por computadores humanos.[5]

O termo computação tem origem no latim, computatio, que indica cálculo ou conta

Early vacuum tube Turing complete computer
ENIAC, o primeiro computador eletrônico digital de uso geral programável

matemática.[6]

A história da computação é mais longa do que a história do hardware de computação e inclui a história dos métodos destinados à caneta e ao papel (ou ao giz e à lousa) com ou sem o auxílio de tabelas.[7] A computação está intimamente ligada à representação de números, embora os conceitos matemáticos necessários para a computação existissem antes dos sistemas numéricos. A ferramenta mais antiga conhecida para uso em computação é o ábaco, utilizado por diversas civilizações ao redor do mundo, como o Império Romano e o Egito Antigo.[6] Acredita-se que tenha sido inventado na Babilônia por volta de 2700-2300 a.C.

A primeira proposta registrada para o uso da eletrônica digital na computação foi o artigo de 1931 "The Use of Thyratrons for High Speed Automatic Counting of Physical Phenomena" ("O uso de Tiratrons para Contagem Automática de Fenômenos Físicos em Alta Velocidade"), de C. E. Wynn-Williams.[8] O artigo de 1938 de Claude Shannon "A Symbolic Analysis of Relay and Switching Circuits" (Uma Análise Simbólica de Circuitos de Relés e Comutação") introduziu a ideia de usar a eletrônica para operações algébricas boolianas.

O conceito de um transistor de efeito de campo foi proposto por Julius Edgar Lilienfeld em 1925. John Bardeen e Walter Brattain, enquanto trabalhavam com William Shockley no Bell Labs, construíram o primeiro transistor funcional, o transistor de contato pontual, em 1947.[9][10] Em 1953, a Universidade de Manchester construiu o primeiro computador transistorizado, o Manchester Baby.[11] No entanto, os primeiros transistores de junção eram dispositivos relativamente volumosos e difíceis de produzir em massa, o que os limitava a várias aplicações especializadas.[12] O transistor de efeito de campo de óxido metálico e silício (MOSFET ou transistor TECMOS) foi inventado por Mohamed Atalla e Dawon Kahng nos Laboratórios Bell em 1959.[13][14] O MOSFET possibilitou a construção de circuitos integrados de alta densidade,[15][16] levando ao que é conhecido como a revolução dos computadores[17] ou revolução dos microcomputadores.[18]

A partir da segunda metade do século XX, com o advento dos computadores eletrônicos, a Computação passou a ter uma presença cada vez mais marcante na sociedade, influenciando a vida diária de parte da população mundial. Nesse período, a Computação ganhou o status de Ciência, surgindo então o termo ciência da computação, uma área do conhecimento humano hoje fortemente ligada à produção de software.

Os algoritmos computacionais hoje estão presentes na rede mundial de computadores (internet), bem como em smartphones, computadores pessoais e outros dispositivos que executam processamento de dados.[19]

Ver artigo principal: Computador

Um computador é uma máquina que manipula dados de acordo com um conjunto de instruções chamado programa de computador. O programa tem uma forma executável que o computador pode usar diretamente para executar as instruções. O mesmo programa, em sua forma de código-fonte legível por humanos, permite que um programador estude e desenvolva uma sequência de etapas conhecida como algoritmo. Como as instruções podem ser executadas em diferentes tipos de computadores, um único conjunto de instruções de origem é convertido em instruções de máquina de acordo com o tipo de CPU.

O processo de execução executa as instruções em um programa de computador. As instruções expressam os cálculos realizados pelo computador. Elas acionam sequências de ações simples na máquina de execução. Essas ações produzem efeitos de acordo com a semântica das instruções.

Hardware de computador

[editar | editar código-fonte]
Ver artigo principal: Hardware

O hardware de computador inclui as partes físicas de um computador, inclusive a unidade central de processamento, a memória e a entrada/saída. A lógica computacional e a arquitetura do computador são tópicos importantes no campo do hardware de computador.

Software de computador

[editar | editar código-fonte]
Ver artigo principal: Software de sistema

O software é um conjunto de programas de computador e dados relacionados que fornece instruções para um computador. Software refere-se a um ou mais programas de computador e dados mantidos no armazenamento do computador. É um conjunto de programas, procedimentos, algoritmos, bem como sua documentação relacionada à operação de um sistema de processamento de dados. O software de programa executa a função do programa que implementa, seja fornecendo instruções diretamente ao hardware do computador ou servindo como entrada para outro software. O termo foi criado para contrastar com o antigo termo hardware (que significa "dispositivos físicos"). Em contraste com o hardware, o software é intangível.[20]

Às vezes, o software também é usado em um sentido mais restrito, significando apenas software de aplicação.

Software de sistema

[editar | editar código-fonte]
Ver artigo principal: Software de sistema

O software de sistema é um software de computador projetado para operar e controlar o hardware do computador e para fornecer uma plataforma para a execução do software de aplicação. O software de sistema inclui sistemas operacionais, software utilitário, drivers de dispositivos, sistemas de janelas e firmware. As ferramentas de desenvolvimento usadas com frequência, como compiladores, ligadores e depuradores, são classificadas como software de sistema.[21] O software de sistema e o middleware gerenciam e integram os recursos de um computador, mas normalmente não os aplicam diretamente na execução de tarefas que beneficiam o usuário, ao contrário do software de aplicação.

Software de aplicação

[editar | editar código-fonte]
Ver artigo principal: Software aplicativo

O software aplicação, também conhecido como aplicação ou app, é um software de computador projetado para ajudar o usuário a realizar tarefas específicas. Os exemplos incluem software empresarial, software de contabilidade, suítes de escritório, software gráfico e reprodutores de mídia. Muitas aplicações lidam principalmente com documentos. As aplicações podem ser incluídas em pacotes do software e do sistema ou podem ser disponibilizadas separadamente. Alguns usuários ficam satisfeitos com as aplicações incluídas no pacote e não precisam instalar aplicações adicionais. O software do sistema gerencia o hardware e atende à aplicação, que, por sua vez, atende ao usuário.

O software de aplicação aplica o poder de uma determinada plataforma de computação ou software de sistema a uma finalidade específica. Algumas aplicações, como o Microsoft Office, são desenvolvidas em várias versões para várias plataformas diferentes; outros têm requisitos mais restritos e geralmente possuem o nome plataforma em que são executados. Por exemplo, uma aplicação de geografia para Windows ou uma aplicação Android para educação ou jogos no Linux. As aplicações executadas somente em uma plataforma e que aumentam a aderência à essa plataforma devido à popularidade da aplicação, são conhecidas como "aplicações matadoras" ("killer applications").

Rede de computadores

[editar | editar código-fonte]
Ver artigo principal: Rede de computadores

Uma rede de computadores, geralmente chamada simplesmente de rede, é um conjunto de componentes de hardware e computadores interconectados por canais de comunicação que permitem o compartilhamento de recursos e informações.[22] Quando pelo menos um processo em um dispositivo é capaz de enviar ou receber dados de ou para pelo menos um processo residente em um dispositivo remoto, diz-se que os dois dispositivos estão em uma rede. As redes podem ser classificadas de acordo com uma ampla variedade de características, como o meio usado para transportar os dados, o protocolo de comunicação usado, a escala, a topologia e o escopo organizacional.

Os protocolos de comunicação definem as regras e os formatos de dados para a troca de informações em uma rede de computadores e fornecem a base para a programação da rede. Um protocolo de comunicação bem conhecido é a Ethernet, um padrão de hardware e camada de enlace que é onipresente em redes locais. Outro protocolo comum é o Internet Protocol Suite, que define um conjunto de protocolos para internetworking, ou seja, para comunicação de dados entre várias redes, transferência de dados de host (hospedeiro) para host e formatos de transmissão de dados específicos de aplicações.

Às vezes, a rede de computadores é considerada uma subdisciplina da engenharia elétrica, das telecomunicações, da ciência da computação, da tecnologia da informação ou da engenharia da computação, pois se baseia na aplicação teórica e prática dessas disciplinas.

Ver artigo principal: Internet

A internet é um sistema global de redes de computadores interconectadas que usam o conjunto de protocolos padrão da internet (TCP/IP) para atender a bilhões de usuários. Isso inclui milhões de redes privadas, públicas, acadêmicas, comerciais e governamentais, com escopo que varia de local a global. Essas redes são conectadas por uma ampla gama de tecnologias de rede eletrônica, sem fio e óptica. A internet oferece uma ampla gama de recursos e serviços de informação, como os documentos de hipertexto interconectados da World Wide Web e a infraestrutura de suporte a e-mail.

Programação

[editar | editar código-fonte]

A programação de computadores é o processo de escrever, testar, depurar e manter o código-fonte e a documentação dos programas de computador. Esse código-fonte é escrito em uma linguagem de programação, que é uma linguagem artificial, geralmente mais restritiva do que as linguagens naturais, mas facilmente traduzida pelo computador. A programação é usada para invocar algum comportamento desejado (personalização) da máquina.

Escrever um código-fonte de alta qualidade requer conhecimento tanto do domínio da ciência da computação quanto do domínio em que a aplicação será usada. Por isso, o software da mais alta qualidade costuma ser desenvolvido por uma equipe de especialistas. No entanto, o termo "programador" pode se aplicar a uma variedade de qualidades de programa, desde hacker até colaborador de código aberto e profissional. Também é possível que um único programador faça a maior parte ou toda a programação de computador necessária para gerar a prova de conceito para lançar uma nova "aplicação matadora".

Programador de computador

[editar | editar código-fonte]

Um programador é uma pessoa que escreve softwares para computador. O termo "programador de computador" pode se referir a um especialista em uma área de programação de computadores ou a um generalista que escreve códigos para vários tipos de software. Uma pessoa que pratica ou professa uma abordagem formal à programação também pode ser conhecida como analista programador. A linguagem de computador principal de um programador (C, C++, Java, Lisp, Python etc.) costuma ser prefixada aos títulos acima, e aqueles que trabalham em um ambiente da Web costumam prefixar seus títulos com Web. O termo "programador" pode ser usado para se referir a um desenvolvedor de software, engenheiro de software, cientista da computação ou analista programador. No entanto, os membros dessas profissões geralmente possuem outras habilidades de engenharia de software, além da programação.[23]

Setor de computadores

[editar | editar código-fonte]

O setor de tecnologia da informação é composto por empresas envolvidas no desenvolvimento de software de computador, no projeto de hardware de computador e infraestruturas de rede de computadores, na fabricação de componentes de computador e no fornecimento de serviços de tecnologia da informação, incluindo administração e manutenção de sistemas.

A indústria de software inclui empresas envolvidas no desenvolvimento, na manutenção e na publicação de softwares. O setor também inclui serviços de software, como treinamento, documentação e consultoria.

Subdisciplinas da computação

[editar | editar código-fonte]

Engenharia da computação

[editar | editar código-fonte]
Ver artigo principal: Engenharia da computação

A engenharia da computação é uma disciplina que integra vários campos da engenharia elétrica e da ciência da computação necessários para desenvolver hardware e software para computadores.[24] Os engenheiros da computação geralmente têm formação em engenharia eletrônica (ou engenharia elétrica), projeto de software e integração de hardware e software, em vez de apenas engenharia de software ou engenharia eletrônica. Os engenheiros de computação estão envolvidos em muitos aspectos de hardware e software da computação, desde o projeto de microprocessadores individuais, computadores pessoais e supercomputadores, até o projeto de circuitos. Esse campo da engenharia inclui não apenas o projeto de hardware em seu próprio domínio, mas também as interações entre o hardware e o contexto em que ele opera.[25]

Engenharia de software

[editar | editar código-fonte]

A engenharia de software (ES) é a aplicação de uma abordagem sistemática, disciplinada e quantificável ao projeto, desenvolvimento, operação e manutenção de software, e o estudo dessas abordagens. Ou seja, a aplicação da engenharia ao software.[26][27][28] É o ato de usar percepções para conceber, modelar e dimensionar uma solução para um problema. A primeira referência ao termo é a Conferência de Engenharia de Software da OTAN de 1968, com o objetivo de provocar uma reflexão sobre a crise de software percebida na época.[29][30][31] O desenvolvimento de software, um termo amplamente usado e mais genérico, não necessariamente inclui o paradigma de engenharia. Os conceitos geralmente aceitos de engenharia de software como uma disciplina de engenharia foram especificados no Guide to the Software Engineering Body of Knowledge (SWEBOK). O SWEBOK tornou-se um padrão internacionalmente aceito na ISO/IEC TR 19759:2015.[32]

Ciência da computação

[editar | editar código-fonte]
Ver artigo principal: Ciência da computação

Ciência da computação ou ciência da computação (abreviado CS ou Comp Sci) é a abordagem científica e prática da computação e suas aplicações. Um cientista da computação é especializado na teoria da computação e no projeto de sistemas computacionais.[33]

Seus subcampos podem ser divididos em técnicas práticas para sua implementação e aplicação em sistemas de computação e áreas puramente teóricas. Algumas, como a teoria da complexidade computacional, que estuda as propriedades fundamentais dos problemas computacionais, são altamente abstratas, enquanto outras, como a computação gráfica, enfatizam as aplicações do mundo real. Outras se concentram nos desafios da implementação de cálculos. Por exemplo, a teoria da linguagem de programação estuda abordagens para a descrição de cálculos, enquanto o estudo da programação de computadores investiga o uso de linguagens de programação e sistemas complexos. O campo da interação humano–computador concentra-se nos desafios de tornar os computadores e as computações úteis, utilizáveis e universalmente acessíveis aos seres humanos.

Segurança cibernética

[editar | editar código-fonte]
Ver artigo principal: Segurança de computadores

O campo da segurança cibernética diz respeito à proteção de sistemas e redes de computadores. Isso inclui a privacidade das informações e dos dados, a prevenção da interrupção dos serviços de TI e a prevenção de roubos e danos a hardware, software e dados.[34]

Ciência de dados

[editar | editar código-fonte]
Ver artigo principal: Ciência de dados

A ciência de dados é um campo que usa ferramentas científicas e de computação para extrair informações e percepções dos dados, impulsionadas pelo aumento do volume e da disponibilidade dos dados.[35] Mineração de dados, big data, estatística e aprendizado de máquina estão todos interligados à ciência de dados.[36]

Sistemas de informação

[editar | editar código-fonte]
Ver artigo principal: Sistemas de informação

Os sistemas de informação (SI) são o estudo de redes complementares de hardware e software (tecnologia da informação) que as pessoas e as organizações usam para coletar, filtrar, processar, criar e distribuir dados.[37][38][39] O Computing Careers da Association for Computing Machinery descreve os SI como:

"A maioria dos programas [de graduação] em SI está localizada em escolas de negócios; no entanto, eles podem ter nomes diferentes, como sistemas de informações gerenciais, sistemas de informações de computadores ou sistemas de informações comerciais. Todos os cursos de SI combinam tópicos de negócios e computação, mas a ênfase entre questões técnicas e organizacionais varia entre os programas. Por exemplo, os programas diferem substancialmente na quantidade de programação exigida."[40]

O estudo de SI une negócios e ciência da computação, usando os fundamentos teóricos da informação e da computação para estudar vários modelos de negócios e processos algorítmicos relacionados dentro de uma disciplina de ciência da computação.[41][42][43] O campo de sistemas de informação computacional (CIS) estuda computadores e processos algorítmicos, incluindo seus princípios, seus projetos de software e hardware, seus aplicativos e seu impacto na sociedade,[44][45] enquanto o SI enfatiza a funcionalidade em relação ao design.[46]

Tecnologia da informação

[editar | editar código-fonte]
Ver artigo principal: tecnologia da informação

A tecnologia da informação (TI) é a aplicação de computadores e equipamentos de telecomunicações para armazenar, recuperar, transmitir e manipular dados,[47] geralmente no contexto de uma empresa ou outro empreendimento.[48] O termo é normalmente usado como sinônimo de computadores e redes de computadores, mas também abrange outras tecnologias de distribuição de informações, como televisão e telefones. Vários setores estão associados à tecnologia da informação, incluindo hardware, software, eletrônicos, semicondutores, internet, equipamentos de telecomunicação, comércio eletrônico e serviços de informática.[49][50]

Pesquisa e tecnologias emergentes

[editar | editar código-fonte]

A computação em DNA e a computação quântica são áreas de pesquisa ativa tanto para hardware quanto para software de computação, como o desenvolvimento de algoritmos quânticos. A infraestrutura em potencial para tecnologias futuras inclui DNA origami fotolitografia[51] e antenas quânticas para transferência de informações entre armadilhas de íons.[52] Em 2011, os pesquisadores haviam emaranhado 14 qubits.[53][54] Circuitos digitais rápidos, incluindo aqueles baseados em junções Josephson e tecnologia quântica de fluxo único rápido, estão se tornando mais fáceis de realizar com a descoberta de supercondutores em nanoescala.[55]

Os dispositivos de fibra óptica e fotônicos (ópticos), que já foram usados para transportar dados por longas distâncias, estão começando a ser usados pelos centros de dados, juntamente com componentes de memória de CPU e semicondutores. Isso permite a separação da memória de acesso aleatório (RAM) da CPU por interconexões ópticas.[56] A IBM criou um circuito integrado com processamento de informações eletrônicas e ópticas em um único chip. Isso é denominado CINP (CMOS-integrated nanophotonics, nanofotônica integrada ao CMOS).[57] Um benefício das interconexões ópticas é que as placas-mãe, que antes exigiam um determinado tipo de sistema em um chip (SoC), agora podem mover a memória dedicada e os controladores de rede das placas-mãe, espalhando os controladores pelo rack. Isso permite a padronização de interconexões de backplane e placas-mãe para vários tipos de SoCs, o que permite atualizações mais oportunas de CPUs.[58]

Outro campo de pesquisa é a spintrônica. A spintrônica pode fornecer potência de computação e armazenamento, sem acúmulo de calor.[59] Algumas pesquisas estão sendo feitas em chips híbridos, que combinam fotônica e spintrônica.[60][61] Também há pesquisas em andamento sobre a combinação de plasmônica, fotônica e eletrônica.[62]

Computação em nuvem

[editar | editar código-fonte]

A computação em nuvem é um modelo que permite o uso de recursos de computação, como servidores ou aplicações, sem a necessidade de interação entre o proprietário desses recursos e o usuário final. Normalmente, ela é oferecida como um serviço, o que a torna um exemplo de Software como Serviço, Plataformas como Serviço e Infraestrutura como Serviço, dependendo da funcionalidade oferecida. As principais características incluem acesso sob demanda, amplo acesso à rede e a capacidade de escalonamento rápido.[63] Permite que usuários individuais ou pequenas empresas se beneficiem das economias de escala.

Uma área de interesse nesse campo é seu potencial para apoiar a eficiência energética. Permitir que milhares de instâncias de computação ocorram em uma única máquina, em vez de milhares de máquinas individuais, pode ajudar a economizar energia. Também poderia facilitar a transição para uma fonte de energia renovável, pois bastaria alimentar um farm de servidores com energia renovável, em vez de milhões de residências e escritórios.[64]

Entretanto, esse modelo de computação centralizada apresenta vários desafios, especialmente em termos de segurança e privacidade. A legislação atual não protege suficientemente os usuários de empresas que manipulam mal seus dados nos servidores da empresa. Isso sugere a possibilidade de mais regulamentações legislativas sobre computação em nuvem e empresas de tecnologia.[65]

Computação quântica

[editar | editar código-fonte]

A computação quântica é uma área de pesquisa que reúne as disciplinas de ciência da computação, teoria da informação e física quântica. Embora a ideia da informação como parte da física seja relativamente nova, parece haver uma forte ligação entre a teoria da informação e a mecânica quântica.[66] Enquanto a computação tradicional opera em um sistema binário de uns e zeros, a computação quântica usa qubits. Os qubits são capazes de estar em uma superposição, ou seja, em ambos os estados de um e zero, simultaneamente. Assim, o valor do qubit não está entre 1 e 0, mas muda dependendo de quando é medido. Essa característica dos qubits é conhecida como entrelaçamento quântico e é a ideia central da computação quântica que permite que os computadores quânticos façam cálculos em grande escala.[67] A computação quântica é usada com frequência em pesquisas científicas nos casos em que os computadores tradicionais não têm capacidade de computação para fazer os cálculos necessários, como na modelagem molecular. Moléculas grandes e suas reações são complexas demais para serem calculadas pelos computadores tradicionais, mas a capacidade de computação dos computadores quânticos poderia fornecer uma ferramenta para realizar esses cálculos.

Wikiquote
Wikiquote
O Wikiquote possui citações de ou sobre: Computação
  1. «Computing Classification System». Digital Library (em inglês). Association for Computing Machinery 
  2. «Computing Classification System». Digital Library (em inglês). Association for Computing Machinery 
  3. «Computação». Encyclopædia Britannica Online (em inglês). Consultado em 7 de agosto de 2020 
  4. «Computing Careers & Disciplines: A Quick Guide for Prospective Students and Career Advisors (2nd edition, ©2020)». CERIC (em inglês). 17 de janeiro de 2020. Consultado em 4 de julho de 2022 
  5. «The History of Computing». mason.gmu.edu (em inglês). Consultado em 12 de abril de 2019 
  6. a b unius (3 de outubro de 2018). «Afinal, como surgiu a computação? — TND Brasil». Consultado em 15 de novembro de 2021 
  7. Hein, James L: Theory of Computation. Sudbury, MA: Jones & Bartlett, 1996. Uma introdução suave ao assunto da Teoria da Computação, apropriado para alunos do segundo ano de um curso de graduação em Ciência da Computação.
  8. Wynn-Williams, C. E. (2 de julho de 1931), «The Use of Thyratrons for High Speed Automatic Counting of Physical Phenomena», Proceedings of the Royal Society A (em inglês), 132 (819): 295–310, Bibcode:1931RSPSA.132..295W, doi:10.1098/rspa.1931.0102 
  9. Lee, Thomas H. (2003). The Design of CMOS Radio-Frequency Integrated Circuits (PDF) (em inglês). [S.l.]: Cambridge University Press. ISBN 9781139643771. Consultado em 16 de setembro de 2019. Cópia arquivada (PDF) em 9 de dezembro de 2019 
  10. Puers, Robert; Baldi, Livio; Voorde, Marcel Van de; Nooten, Sebastiaan E. van (2017). Nanoelectronics: Materials, Devices, Applications, 2 Volumes. [S.l.]: John Wiley & Sons. p. 14. ISBN 9783527340538 
  11. Lavington, Simon (1998), A History of Manchester Computers (em inglês) 2 ed. , Swindon: The British Computer Society, pp. 34–35 
  12. Moskowitz, Sanford L. (2016). Advanced Materials Innovation: Managing Global Technology in the 21st century (em inglês). [S.l.]: John Wiley & Sons. pp. 165–167. ISBN 9780470508923 
  13. Lojek, Bo (2007). History of Semiconductor Engineering (em inglês). [S.l.]: Springer Science & Business Media. pp. 321–3. ISBN 9783540342588 
  14. «1960 - Metal Oxide Semiconductor (MOS) Transistor Demonstrated». Computer History Museum. The Silicon Engine (em inglês) 
  15. «Who Invented the Transistor?». Computer History Museum (em inglês). 4 de dezembro de 2013. Consultado em 20 de julho de 2019 
  16. Hittinger, William C. (1973). «Metal-Oxide-Semiconductor Technology». Scientific American. 229 (2): 48–59. Bibcode:1973SciAm.229b..48H. ISSN 0036-8733. JSTOR 24923169. doi:10.1038/scientificamerican0873-48 
  17. Fossum, Jerry G.; Trivedi, Vishal P. (2013). Fundamentals of Ultra-Thin-Body MOSFETs and FinFETs (em inglês). [S.l.]: Cambridge University Press. p. vii. ISBN 9781107434493 
  18. Malmstadt, Howard V.; Enke, Christie G.; Crouch, Stanley R. (1994). Making the Right Connections: Microcomputers and Electronic Instrumentation (em inglês). [S.l.]: American Chemical Society. p. 389. ISBN 9780841228610. The relative simplicity and low power requirements of MOSFETs have fostered today's microcomputer revolution. 
  19. MARTIN, R.C. Código Limpo. Rio de Janeiro: Alta Books, 2020.
  20. «Wordreference.com: WordNet 2.0» (em inglês). Princeton University, Princeton, NJ. Consultado em 19 de agosto de 2007 
  21. Rouse, Margaret (Março de 2019). «system software». WhatIs.com (em inglês). TechTarget 
  22. «Computer network definition» (em inglês). Consultado em 12 de novembro de 2011. Cópia arquivada em 21 de janeiro de 2012 
  23. «5 Skills Developers Need Beyond Writing Code» (em inglês). 23 de janeiro de 2019 
  24. IEEE Computer Society; ACM (12 de dezembro de 2004). Computer Engineering 2004: Curriculum Guidelines for Undergraduate Degree Programs in Computer Engineering (PDF) (em inglês). [S.l.: s.n.] p. iii. Consultado em 17 de dezembro de 2012. Tradicionalmente, a engenharia de sistemas de computação é vista como uma combinação de engenharia eletrônica e ciência da computação. 
  25. Trinity College Dublin. «What is Computer System Engineering». Consultado em 21 de abril de 2006 , "Os engenheiros de computação precisam não apenas entender como os sistemas de computador funcionam, mas também como eles se integram ao quadro geral. Considere o carro. Um carro moderno contém muitos sistemas de computador separados para controlar coisas como a sincronização do motor, os freios e os airbags. Para poder projetar e implementar esse carro, o engenheiro de computação precisa de um amplo entendimento teórico de todos esses subsistemas e de como eles interagem."
  26. Abran, Alain; Moore, James W.; Bourque, Pierre; Dupuis, Robert; Tripp, Leonard L. (2004). Guide to the Software Engineering Body of Knowledge (em inglês). [S.l.]: IEEE. 1 páginas. ISBN 978-0-7695-2330-9 
  27. ACM (2006). «Computing Degrees & Careers» (em inglês). ACM. Consultado em 23 de novembro de 2010. Cópia arquivada em 17 de junho de 2011 
  28. Laplante, Phillip (2007). What Every Engineer Should Know about Software Engineering (em inglês). Boca Raton: CRC. ISBN 978-0-8493-7228-5. Consultado em 21 de janeiro de 2011 
  29. Sommerville, Ian (2008). Software Engineering (em inglês) 7 ed. [S.l.]: Pearson Education. p. 26. ISBN 978-81-7758-530-8. Consultado em 10 de janeiro de 2013 
  30. Peter, Naur; Randell, Brian (7–11 de outubro de 1968). Software Engineering: Report of a conference sponsored by the NATO Science Committee (PDF) (em inglês). Garmisch, Germany: Scientific Affairs Division, NATO. Consultado em 26 de dezembro de 2008 
  31. Randell, Brian (10 de agosto de 2001). «The 1968/69 NATO Software Engineering Reports». Brian Randell's University Homepage (em inglês). The School of the Computer Sciences, Newcastle University. Consultado em 11 de outubro de 2008. A ideia da primeira Conferência de Engenharia de Software da OTAN e, em particular, a de adotar o então praticamente desconhecido termo "engenharia de software" como seu título (deliberadamente provocativo), acredito que veio originalmente do professor Fritz Bauer. 
  32. «Software Engineering -- Guide to the software engineering body of knowledge (SWEBOK)» (em inglês). International Organization for Standardization. ISO/IEC TR 19759:2015. Consultado em 21 de maio de 2019 
  33. «WordNet Search - 3.1» (em inglês). Wordnetweb.princeton.edu. Consultado em 14 de maio de 2012 
  34. Schatz, Daniel; Bashroush, Rabih; Wall, Julie (2017). «Towards a More Representative Definition of Cyber Security». The Journal of Digital Forensics, Security and Law (em inglês). 12 (2). doi:10.15394/jdfsl.2017.1476Acessível livremente 
  35. Dhar, Vasant (2013). «Data science and prediction». Communications of the ACM (em inglês). 56 (12): 64–73. ISSN 0001-0782. doi:10.1145/2500499 
  36. Cao, Longbing (31 de maio de 2018). «Data Science: A Comprehensive Overview». ACM Computing Surveys (em inglês). 50 (3): 1–42. ISSN 0360-0300. arXiv:2007.03606Acessível livremente. doi:10.1145/3076253Acessível livremente 
  37. «Definition of Application Landscape» (em inglês). Software Engineering for Business Information Systems (sebis). 21 de janeiro de 2009. Consultado em 14 de janeiro de 2011. Cópia arquivada em 5 de março de 2011 
  38. Denning, Peter (Julho de 1999). «COMPUTER SCIENCE: THE DISCIPLINE». Encyclopaedia of Computer Science (2000 Edition) (em inglês). O domínio da ciência da computação: Embora a ciência da computação trate de processos de informação naturais e criados pelo homem, o principal esforço da disciplina tem sido direcionado aos processos criados pelo homem, especialmente sistemas e máquinas de processamento de informações 
  39. Jessup, Leonard M.; Valacich, Joseph S. (2008). Information Systems Today (em inglês) 3rd ed. [S.l.]: Pearson Publishing. pp. –, 416 
  40. «Computing Degrees & Careers " Information Systems» (em inglês). Association for Computing Machinery. Consultado em 6 de julho de 2018. Cópia arquivada em 6 de julho de 2018 
  41. Davis, Timothy; Geist, Robert; Matzko, Sarah; Westall, James (Março de 2004). «τ'εχνη: A First Step». Technical Symposium on Computer Science Education (em inglês): 125–129. ISBN 1-58113-798-2. Em 1999, a Clemson University criou um programa de pós-graduação que une as artes e as ciências... Todos os alunos do programa devem concluir o trabalho de nível de pós-graduação em artes e ciência da computação 
  42. Khazanchi, Deepak; Bjorn Erik Munkvold (Verão de 2000). «Is information system a science? an inquiry into the nature of the information systems discipline». ACM SIGMIS Database (em inglês). 31 (3): 24–42. ISSN 0095-0033. doi:10.1145/381823.381834Acessível livremente. A partir disso, concluímos que a SI é uma ciência, ou seja, uma disciplina científica em contraste com campos supostamente não científicos 
  43. «Computer Science is the study of all aspects of computer systems, from the theoretical foundations to the very practical aspects of managing large software projects». Massey University (em inglês). Cópia arquivada em 19 de junho de 2006 
  44. Polack, Jennifer (Dezembro de 2009). «Planning a CIS Education Within a CS Framework». Journal of Computing Sciences in Colleges (em inglês). 25 (2): 100–106. ISSN 1937-4771 
  45. Hayes, Helen; Onkar Sharma (Fevereiro de 2003). «A decade of experience with a common first year program for computer science, information systems and information technology majors». Journal of Computing Sciences in Colleges (em inglês). 18 (3): 217–227. ISSN 1937-4771. Em 1988, foi lançado um programa de graduação em Sistemas de Informação Computacional (CIS) com o objetivo de oferecer uma opção para os alunos menos inclinados a se tornarem programadores e mais interessados em aprender a projetar, desenvolver e implementar sistemas de informação e resolver problemas de negócios usando a abordagem de sistemas 
  46. Freeman, Peter; Hart, David (Agosto de 2004). «A Science of Design for Software-Intensive Systems». Communications of the ACM. 47 (8): 19–21. ISSN 0001-0782. doi:10.1145/1012037.1012054. A ciência e a engenharia da computação precisam de um processo de design intelectualmente rigoroso, analítico e ensinável para garantir o desenvolvimento de sistemas com os quais todos possamos conviver... Embora as conexões dos outros componentes com o software e sua função no design geral do sistema sejam essenciais, a principal consideração para um sistema com uso intensivo de software é o próprio software, e outras abordagens para sistematizar o design ainda não resolveram o "problema do software" - que não será resolvido até que o design do software seja compreendido cientificamente. 
  47. Daintith, John, ed. (2009), «IT», A Dictionary of Physics, ISBN 9780199233991 (em inglês), Oxford University Press, consultado em 1 de agosto de 2012  (inscrição necessária)
  48. «Free on-line dictionary of computing (FOLDOC)». Consultado em 9 de fevereiro de 2013. Cópia arquivada em 15 de abril de 2013 
  49. Chandler, Daniel; Munday, Rod (Janeiro de 2011), «Information technology», A Dictionary of Media and Communication, ISBN 978-0-19-956875-8 (em inglês) first ed. , Oxford University Press, consultado em 1 de agosto de 2012  (inscrição necessária)
  50. Sobre a aplicação mais ampla do termo TI, Keary comenta: "Em sua aplicação original, 'tecnologia da informação' era apropriada para descrever a convergência de tecnologias com aplicação no amplo campo de armazenamento, recuperação, processamento e disseminação de dados. Desde então, esse termo conceitual útil foi convertido para o que parece ser um uso concreto, mas sem o reforço da definição... o termo TI carece de substância quando aplicado ao nome de qualquer função, disciplina ou cargo." Anthony Ralston (2000). Encyclopedia of computer science (em inglês). [S.l.]: Nature Pub. Group. ISBN 978-1-56159-248-7. Consultado em 12 de maio de 2013 .
  51. Kershner, Ryan J.; Bozano, Luisa D.; Micheel, Christine M.; Hung, Albert M.; Fornof, Ann R.; Cha, Jennifer N.; Rettner, Charles T.; Bersani, Marco; Frommer, Jane; Rothemund, Paul W. K.; Wallraff, Gregory M. (2009). «Placement and orientation of individual DNA shapes on lithographically patterned surfaces». Nature Nanotechnology (em inglês). 4 (9): 557–561. Bibcode:2009NatNa...4..557K. CiteSeerX 10.1.1.212.9767Acessível livremente. PMID 19734926. doi:10.1038/nnano.2009.220 
  52. Harlander, M. (2011). «Trapped-ion antennae for the transmission of quantum information». Nature (em inglês). 471 (7337): 200–203. Bibcode:2011Natur.471..200H. PMID 21346764. arXiv:1011.3639Acessível livremente. doi:10.1038/nature09800 
  53. Monz, Thomas (2011). «14-Qubit Entanglement: Creation and Coherence». Physical Review Letters (em inglês). 106 (13): 130506. Bibcode:2011PhRvL.106m0506M. PMID 21517367. arXiv:1009.6126Acessível livremente. doi:10.1103/PhysRevLett.106.130506 
  54. «World record: Calculations with 14 quantum bits». www.nanowerk.com (em inglês) 
  55. Saw-Wai Hla et al., Nature Nanotechnology March 31, 2010 "World's smallest superconductor discovered" Arquivado em 2010-05-28 no Wayback Machine. Foi demonstrado que quatro pares de certas moléculas formam um supercondutor em nanoescala, com uma dimensão de 0,87 nanômetro. Consultado em 2010-03-31
  56. Tom Simonite, "Computing at the speed of light", Technology Review Wed., August 4, 2010 MIT (em inglês)
  57. Sebastian Anthony (Dec 10,2012), "IBM creates first commercially viable silicon nanophotonic chip" (em inglês). Consultado em 2012-12-10
  58. Open Compute: Does the data center have an open future? (em inglês). Consultado em 2013-08-11
  59. «Putting electronics in a spin» (em inglês). 8 de agosto de 2007. Consultado em 23 de novembro de 2020 
  60. «Merging spintronics with photonics» (PDF) (em inglês). Consultado em 6 de setembro de 2019. Cópia arquivada (PDF) em 6 de setembro de 2019 
  61. Lalieu, M. L. M.; Lavrijsen, R.; Koopmans, B. (10 de janeiro de 2019). «Integrating all-optical switching with spintronics». Nature Communications (em inglês). 10 (1). 110 páginas. Bibcode:2019NatCo..10..110L. ISSN 2041-1723. PMC 6328538Acessível livremente. PMID 30631067. arXiv:1809.02347Acessível livremente. doi:10.1038/s41467-018-08062-4 
  62. Farmakidis, Nikolaos; Youngblood, Nathan; Li, Xuan; Tan, James; Swett, Jacob L.; Cheng, Zengguang; Wright, C. David; Pernice, Wolfram H. P.; Bhaskaran, Harish (1 de novembro de 2019). «Plasmonic nanogap enhanced phase-change devices with dual electrical-optical functionality». Science Advances (em inglês). 5 (11): eaaw2687. Bibcode:2019SciA....5.2687F. ISSN 2375-2548. PMC 6884412Acessível livremente. PMID 31819898. arXiv:1811.07651Acessível livremente. doi:10.1126/sciadv.aaw2687 
  63. «The NIST Definition of Cloud Computing» (PDF). U.S. Department of Commerce (em inglês). Setembro de 2011. Cópia arquivada (PDF) em 9 de outubro de 2022 
  64. Berl, A.; Gelenbe, E.; Girolamo, M. Di; Giuliani, G.; Meer, H. De; Dang, M. Q.; Pentikousis, K. (Setembro de 2010). «Energy-Efficient Cloud Computing». The Computer Journal (em inglês). 53 (7): 1045–1051. ISSN 1460-2067. doi:10.1093/comjnl/bxp080 
  65. Kaufman, L. M. (Julho de 2009). «Data Security in the World of Cloud Computing». IEEE Security Privacy (em inglês). 7 (4): 61–64. ISSN 1558-4046. doi:10.1109/MSP.2009.87 
  66. Steane, Andrew (1 de fevereiro de 1998). «Quantum computing». Reports on Progress in Physics (em inglês). 61 (2): 117–173. Bibcode:1998RPPh...61..117S. ISSN 0034-4885. arXiv:quant-ph/9708022Acessível livremente. doi:10.1088/0034-4885/61/2/002 
  67. Horodecki, Ryszard; Horodecki, Paweł; Horodecki, Michał; Horodecki, Karol (17 de junho de 2009). «Quantum entanglement». Reviews of Modern Physics (em inglês). 81 (2): 865–942. Bibcode:2009RvMP...81..865H. arXiv:quant-ph/0702225Acessível livremente. doi:10.1103/RevModPhys.81.865 

Leituras complementares

[editar | editar código-fonte]
  • Gary, Michael R., and David S. Johnson: Computers and Intractability: A Guide to the Theory of NP-Completeness. New York: W. H. Freeman & Co., 1979. Uma referência padrão aos problemas do tipo NP-Completo, uma importante categoria de problemas cuja solução parece requerer um tempo impraticavelmente longo para efetivar sua computação.
  • Hein, James L: Theory of Computation. Sudbury, MA: Jones & Bartlett, 1996. Uma introdução suave ao assunto da Teoria da Computação, apropriado para alunos do segundo ano de um curso de graduação em Ciência da Computação.
  • Hopcroft, John E., and Jeffrey D. Ullman: Introduction to Automata Theory, Languages, and Computation. Reading, MA: Addison-Wesley, 1979. Uma das referências padrão na área de autômatos finitos e linguagens formais.
  • Taylor, R. Gregory: Models of Computation. New York: Oxford University Press, 1998. Um dos raros textos facilmente legíveis sobre Teoria da Computação, apropriado para alunos de gradução ou mestrado.