10 Características swift que não estão em c
Video: What's New in AppCode 2016.3
Conteúdo
- Video: what's new in appcode 2016.3
- Video: 65 upcoming nintendo switch games of 2017 & beyond [complete]
- Tipagem forte
- Bibliotecas estender c
- Instruções switch cair através casos em c
- C é um padrão internacional
- Swift está intimamente ligado aos quadros toque cacau e suas
- Swift inclui gerenciamento de memória
- Swift é concebido para funcionar em um ambiente multi-threaded
- Tipos podem ser criados facilmente em swift
- Swift tem sua própria ide e compilador
- Tipos podem ser classes, estruturas, ou enumerações
Considerando que Swift é uma linguagem desenvolvida recentemente, orientada a objeto, e que C foi desenvolvido quase meio século atrás (por Dennis Ritchie em 1969-1973), quando o paradigma orientado a objeto não foi ainda em uso generalizado, você pode pensar que comparar estas duas línguas seria difícil e, em muitos aspectos, injusto para ambas as línguas.
Video: 65 Upcoming Nintendo Switch Games of 2017 & Beyond [COMPLETE]
Essa é uma maneira de olhar as coisas, mas uma outra maneira é olhar para o impacto da C em línguas modernas. C ainda é ensinada em cursos de ciência da computação em uma variedade de programas de escolas primárias para cursos de pós-graduação. C ainda está sendo ensinado porque ainda é uma das línguas mais utilizadas. C pode não ser de ponta, mas tem servido um papel importante no desenvolvimento de software de hoje e as pessoas que projetam e desenvolvem-lo.
Para aqueles que estão familiarizados com C e agora aprendendo Swift, esta lista explica as principais diferenças entre as duas línguas. Você sabe que Swift foi desenvolvido para um ambiente que inclui computadores grandes e pequenas (isto é, Macs e dispositivos iOS móveis), enquanto C foi desenvolvido para sistemas médios e grandes.
Com isso fora do caminho, aqui estão dez características Swift que não estão no C.
tipagem forte
Swift é muito mais fortemente tipado de C. Se você quiser lançar um valor para outro tipo, você tem que fazê-lo, em vez de contar com ele sendo feito para você automaticamente. Por exemplo, considere o seguinte código:
var x = y = 4var 4.0var z = x + y
A última linha produz um erro porque você não pode adicionar um int e uma Duplo.
No entanto, qualquer uma das duas linhas a seguir irá funcionar:
var z = x + Int (y) var z = duplo (x) + y
digitação de Swift é tão rigorosa, que mesmo a linha a seguir não funcionará:
var z = flutuador (x) + y
Swift infere o tipo Duplo para o valor de 4.0 a menos que você atribuí-lo a explicitamente Flutuador Tipo de ao usá-lo em uma operação ou ao declarar que, como na seguinte linha de código:
var y: Flutuador = 4
Se você não está acostumado a uma linguagem fortemente digitado, isso pode levar algum tempo para se acostumar.
Bibliotecas estender C
As bibliotecas são a principal forma de C estendendo-se, mas pode estender Swift com bibliotecas (em adição à biblioteca de padrão embutido Swift), bem como com enquadramentos, as classes e subclasses, as extensões para as classes, estruturas e as contagens.
instruções switch cair através casos em C
Às vezes você pode dizer programadores C está escrevendo código Swift pelo seu interruptor afirmações. Em C, uma interruptor declaração consiste em caso elementos, como a seguir:
switch (escolha) {case choice1: quebrar caso escolha2: break}
sem a pausa demonstrações, o controlo passa para a próxima caso. Isso não acontece na Swift. Há algum código C-estilo que tira proveito do fato de que, sem pausa demonstrações, o controlo passa para o próximo caso afirmações). Que sempre foi considerado estilo de programação duvidosa, mas agora isso não vai acontecer em Swift.
C é um padrão internacional
C é um padrão internacional (especificamente a norma ISO / IEC 9899: 201x), e Swift não é. Seja ou não este importa é até você. Um número de pessoas (incluindo o autor) acha que isso é praticamente irrelevante neste momento. Idiomas que não são regidos por organizações internacionais de normalização às vezes pode evoluir mais rapidamente, e, se tais normas se tornar necessário, eles podem ser adicionados mais tarde.
As normas internacionais não têm um grande papel a desempenhar no processo de desenvolvimento inicial de uma língua, quando é mais importante para obter o maior número de pessoas possível para usar a linguagem. Esta é a fase Swift está agora.
Swift está intimamente ligado aos quadros Toque cacau e suas
Na verdade, é difícil dizer onde Swift termina e os quadros assumir. Certas características da linguagem não pode ser descrito sem referência aos quadros de cacau e Cocoa Touch.
Obviamente, este não é o caso com C.
Swift inclui gerenciamento de memória
Automático de contagem de referência (ARC) é construído em Swift. Em C, gerenciamento de memória é tarefa do desenvolvedor.
Swift é concebido para funcionar em um ambiente multi-threaded
Na Swift, certas características da linguagem, tais como fechamentos, são projetados para suportar ambientes multi-threaded em que um número de diferentes tarefas podem ser executadas simultaneamente em vários processadores de múltipla cored. recursos linguísticos, como os fechamentos são projetados especificamente para o ambiente multi-threaded encontrados em Macs e dispositivos iOS.
Tipos podem ser criados facilmente em Swift
Mesmo em comparação com Objective-C, que em muitos aspectos é predecessor mais próximo de Swift, a capacidade da Swift para criar novos tipos (por vezes ao lado ou em vez de classes personalizadas) distingue de todos os outros idiomas, incluindo C.
Swift tem sua própria IDE e compilador
Swift está concebido para ser usado com o seu próprio IDE (Xcode 6 ou mais tarde) e o seu próprio compilador (LLVM). Não há nenhuma razão aparente para que outra IDE não poderia ser usado e outro compilador escrito, mas, no momento, nenhum destes parecem ser nas obras, e os desenvolvedores parecem ser geralmente conteúdo com as ferramentas existentes. C e outros idiomas não são totalmente integrado com um IDE e compilador.
Tipos podem ser classes, estruturas, ou enumerações
Em Swift, tipos podem ser classes, estruturas, ou as contagens, e cada um deles pode ter propriedades e métodos. propriedades e métodos de Swift não são apenas para classes. Esta certeza não é o caso em C!