Como criar aplicativos para iPhone - Edição de velocidade ✅ | Grant Klimaytys | Skillshare

Velocidade de reprodução


  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x

Como criar aplicativos para iPhone - Edição de velocidade ✅

teacher avatar Grant Klimaytys, Software Engineer

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Aulas neste curso

15 aulas (1 h 12 min)
    • 1. Introdução ao Swift 3

      2:30
    • 2. Como configurar Xcode 8 e Swift 3

      2:54
    • 3. Como configurar simuladores do iOS 10

      1:36
    • 4. Configure um Playground no Swift 3

      2:18
    • 5. Variáveis no Swift 3

      7:17
    • 6. Arraias de coleções no Swift 3

      7:37
    • 7. Conjuntos de coleções no Swift 3

      4:21
    • 8. Dicionários de coleções no Swift 3

      4:50
    • 9. Lógica se o caso de outro e mudar no Swift 3

      5:58
    • 10. Loops redondos e redondos no Swift 3

      7:07
    • 11. Funções no Swift 3

      6:48
    • 12. Opcionais no Swift 3

      6:29
    • 13. Aulas e objetos no Swift 3

      6:08
    • 14. Herança no Swift 3

      4:27
    • 15. Resumo de Swift 3

      1:15
  • --
  • Nível iniciante
  • Nível intermediário
  • Nível avançado
  • Todos os níveis

Gerado pela comunidade

O nível é determinado pela opinião da maioria dos estudantes que avaliaram este curso. Mostramos a recomendação do professor até que sejam coletadas as respostas de pelo menos 5 estudantes.

319

Estudantes

--

Sobre este curso

Já quis criar aplicativos para iOS?

Já quis obter um trabalho de pagamento maior?

Bem, tudo começa aqui! Vou ensinar tudo o que você precisa saber sobre a criação de aplicativos de forma DIVERTIDA e NÃO CHORANDO :)

Inscreva-se agora e você vai ter 3 dos seus próprios aplicativos até o final do dia!

Conheça seu professor

Teacher Profile Image

Grant Klimaytys

Software Engineer

Professor

My very first software program was the artificial intelligence brain of an underwater robot in the early 2000's, still the coolest project I have ever worked on!

Since then I have designed and built websites, software and apps using all manner of languages and frameworks. Javascript, Bootstrap, .Net, Python, PHP - you name it, I've probably used it.

These days I focus on building quality cross platform apps using Xamarin studio in C#, Xcode and Swift 2 and Android Studio.

If you're considering becoming a freelance developer then I can honestly say it is the best life in the world. You will have no boss, earn an hourly rate of $60 - $150 and take holiday whenever you want!

Of course you have to learn how to make good apps first, which brings me to my second pa... Visualizar o perfil completo

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%
Arquivo de avaliações

Em outubro de 2018, atualizamos nosso sistema de avaliações para melhorar a forma como coletamos feedback. Abaixo estão as avaliações escritas antes dessa atualização.

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui cursos curtas e projetos práticos

Sua assinatura apoia os professores da Skillshare

Aprenda em qualquer lugar

Faça cursos em qualquer lugar com o aplicativo da Skillshare. Assista no avião, no metrô ou em qualquer lugar que funcione melhor para você, por streaming ou download.

Transcrições

1. Introdução ao Swift 3: Swift três é a nova linguagem brilhante da Apple para criar APS em todos os seus dispositivos. Como você pode imaginar, está agora em sua terceira iteração. E antes disso, tínhamos rápido para simplesmente velho, rápido e objetivo ver caminho de volta no início. Agora, um código C projetivo não é compatível com código rápido. Há maneiras de usar bibliotecas Objective C e código dentro de um projeto rápido. Tudo bem, mas você não pode misturar e combinar os dois tipos de pelagem até certo ponto. O mesmo se aplica entre o Swift 12 e o três. As coisas mudaram entre as versões, e toda vez que você atualizou para uma nova linguagem rápida, você tinha que mudar todas as referências que mudaram dentro do seu código, que era um pouco irritante, mas vale a pena para obter um linguagem madura em Swift três, Apple disse, ou a organização rápida que cuida do idioma disseram que a versão três é a última vez que eles vão ter quaisquer mudanças quebrando. Então o seu código a partir deste ponto deve estar bem com versões futuras do Swift como Swift para cinco, mais longe que eles estão indo para ir. Tudo bem, isso significa que agora você tem estabilidade em seu código, que é uma coisa muito boa porque você não quer voltar e ter que mudar um monte de linhas de casaco. Tudo isso é uma ótima notícia porque significa que tudo o que você está prestes a aprender não vai mudar nesta seção. Vou ensinar-vos a linguagem rápida e o básico. Esses conceitos básicos incluem variáveis, loops, matrizes, funções , classes , objetos, operadores e herança. Claro, há muito mais para o Swift três. Mas estes itens básicos irão ajudá-lo através da maioria das situações e ajudar a dar-lhe uma pista quando você se deparar com vários conceitos que você não sabe muito sobre. Então, quando terminarmos aqui, você terá uma compreensão muito boa fora da linguagem rápida, e você terá todas as ferramentas que você precisa para tornar seu APS 2. Como configurar Xcode 8 e Swift 3: configurar o X Code oito e o Swift três não poderia ser mais fácil nos dias de hoje. Basta saltar para o Google e procurar por X Code oito batedor, eo primeiro resultado que você vai clicar em é aquele do desenvolvedor dot apple dot com . E, a fim de baixar Exco Data parece clicar no ícone e Apple vai pedir-lhe mais propensos a fazer login Tenha em mente. Isso pode mudar, então eu vou apenas fazer login e voltar em um segundo. Se você não tem uma maçã, i d. Para o programa de desenvolvedor ainda, então você pode obter uma e você não tem que pagar até que você liberar APS. Portanto, a conta do desenvolvedor é gratuita. A capacidade de lançar APS não está em seu algo como £80 de engrenagem no Reino Unido, pelo menos. Certo, então feche e volte em um segundo. E uma vez que você está dentro, você recebe uma lista de downloads. Só precisamos de um nesta lista, e esse é o topo, que é o código X 8 batedor. Claro, se você está desenvolvendo para outras plataformas, então você vai precisar de outras coisas como Mac OS IOS 10 e assistir a nós. Mas o Código X 8 contém praticamente tudo o que precisamos. Então deixe o download e volte quando estiver feito. Uma vez concluído, descompacte o arquivo que você acabou de baixar, e você deve tirar este exco batedor fora dele. Depois de tê-lo, basta clicar e arrastá-lo para a pasta de aplicativos. Deixe-o lá dentro e deixe-o na loja. Quando isso estiver completo, você vai executá-lo, então eu vou apenas executá-lo aqui como batedor de traço do Código X. Agora, se Exco Date já foi lançado quando você estiver assistindo isso, será apenas o velho código ex. Vá em frente, aperte , entre, e o que ele vai fazer por você é realmente dar-lhe uma configuração rápida corrida através da qual eu quero que você passe. E você será policial para saber que não há instalação no Swift 3, por assim dizer, em X Code 8. E isso porque X Konate usa o Swift três por padrão. Então, uma vez feito isso, você está pronto para ir com X Code 8 e Swift. Três. Há um último passo que eu quero que você conclua, e que é ir para o seu menu ex code hit preferências e ir para a guia contas. Isso permitirá que você entre com sua Apple I d e sua conta de desenvolvedor. Você pode obter uma conta de desenvolvedor gratuitamente, e você só precisa pagar quando começar a lançar o APS. Então, é uma boa idéia fazer este passo agora para que você não tenha problemas mais tarde. 3. Como configurar simuladores do iOS 10: a maioria do código que escrevemos neste curso vai ser executado em um simulador ou pelo menos ser capaz de ser executado em um simulador. Ocasionalmente vamos ter um código que precisamos executar em um dispositivo, por exemplo, quando queremos usar a câmera em um dispositivo. Ou queremos mexer com a bateria em coisas assim, mas para a maior parte vai ficar com o simulador. data Exco deve vir com simuladores IOS 10 instalados, e você pode verificar que, abrindo indo indo dispositivos de janela do dedo do pé, e você começa uma lista inteira no lado esquerdo do que você instalou. Agora, se você quiser adicionar um simulador diferente, clique no ícone de adição na parte inferior adicionar simulador e ele lhe dará um bom drop down fora do tipo de dispositivo que você deseja adicionar, Então iPhones, iPads, etcetera. Você também pode escolher a versão IOS, e agora, se você quiser baixar mais, basta selecionar essa opção e você terá todo o catálogo traseiro fora dos simuladores IOS. Eu acredito que com algum esforço, você também pode obter IOS sete simuladores, mas neste momento, realmente não vale a pena codificar para IOS sete, talvez nem mesmo oito. A maioria dos dispositivos é executada em nove, e quando 10 for lançado oficialmente, você terá o resto dos dispositivos rodando em 10. Então é basicamente assim que você configura seus simuladores. Eles já deveriam estar lá. Mas se eles não são apertado o ícone de mais e Adam. 4. Configure um Playground no Swift 3: Há um ótimo recurso disponível dentro do X Code, e é chamado de playground, um playground. Vamos experimentar muito código e rápido ou objetivo C, e é uma ótima maneira de entender o que está acontecendo com seu código rápido porque você não tem a sobrecarga de compilar o código. Então ele é executado em um dispositivo ou simulador Com X Code aberto, você deve ser apresentado com uma tela que lhe dá algumas opções. A primeira opção é começar com um playground. Se você não pode ver isso, basta ir até o arquivo de menu novo e você pode abrir um playground a partir daí, e isso vai pedir para você nomear seu playground e dar-lhe uma plataforma. Obviamente, este não é o curso IOS, então vamos dar-lhe na plataforma IOS e chamá-lo de meu playground. Não importa onde você colocou. Nosso playground vem equipado com dois comandos já, o primeiro dos quais é esta importação Você. Eu kit você gosta, como você imagina, cuida dos elementos de interface de usuário do nosso aplicativo, e é uma maneira de acessar o funcionamento interno de todas as classes que rápido nos fornece com. Então temos outra linha, que é simplesmente a declaração de uma string chamada Hello Playground. Então esta seção do meio é onde seu código fica. Do lado direito. Há uma barra leve, ótima, e se eu arrastar um pouco, você vai notar que tem algum texto lá. Ele tem Olá playground, e ele está simplesmente repetindo para nós o que nossa string está no lado direito desse texto. Nós não temos eu para que nós podemos bater olhar rápido, e nos dá uma imagem mais completa dele no caso de que o texto era muito longo e nós temos um pouco mais ícone, que é mostrar resultado por baixo, e nós podemos nos livrar disso. Então expanda essa dor na mão direita porque ela vai ser muito útil para o resto fora deste módulo. 5. Variáveis no Swift 3: variáveis em três rápidos ou variáveis em qualquer idioma. Para isso, variáveis são os blocos fundamentais de construção de qualquer coisa que você vai criar suas pequenas caixas. Se você gosta disso, mantenha bits fora de dados ou lotes e lotes de dados complexos. Vamos ver o que eles são brincando com eles dentro do nosso playground. Então, em nosso playground, já temos essa importação que você gosta e var str é igual a hello playground entre aspas. Agora o que isso está fazendo é declarar uma variável, e essa variável é chamada str Esse nome da variável pode ser quase qualquer coisa que você gosta , mas minha recomendação para você é nomeá-lo algo sensato. Então, quando você olhar para o seu código mais tarde, Ron, faz sentido e você sabe o que ele faz apenas pelo nome que temos. Esta outra palavra chamada var var implica que esta é a variável i e. Ela pode mudar em algum momento no futuro. Então temos um operador de atribuição, que é igual. Isso leva o lado direito e coloca-o no lado esquerdo da variável. Então Olá playground é colocado em str. Há aspas lá porque Esta é uma string e uma string é essencialmente uma frase ou uma frase ou apenas uma coleção de caracteres como números e letras. E se eu quiser colocar outra coisa lá dentro? Str bem eu já declarei e eu declarei isso dizendo var str Então, se eu quiser colocar algo mais nele tudo o que eu tenho que fazer agora é referenciá-lo digitando str é igual ao que eu quero colocar nele. Então agora str detém valor de Grant e ele despejou Olá playground É importante saber na programação não há indevida Então, se você fizer isso, você não pode voltar. Certo, então temos um bar. Mas e se eu quiser fazer esse str imutável Digamos que eu estou trabalhando em uma equipe de programadores e eu não quero que ninguém para mudar o valor de str eu quero que eles obtenham um erro quando eles ainda tentar fazê-lo bem podemos atribuir uma constante let e um Deixe-me apenas colocar isso em str deixe-me apenas excluir tudo isso é igual a Olá playground. O que vamos dizer é que você não pode mudar essa constante uma vez que você atribuí-la pela primeira vez. É por isso que estamos recebendo um erro vermelho aqui. Ele nos diz que você não pode atribuir ao valor str porque ele é deixar sua constante é imutável . Na realidade, você não vai usar deixar isso muitas vezes, mas quando você começa a trabalhar em equipes, é uma boa idéia fazer isso. Então deixe-me apenas remover este str e mudar isso de volta muito longe. Str é igual a hello playground eo momento Swift está inferindo o tipo. Ele sabe que quando colocamos as coisas dentro dessas aspas que estavam realmente declarando uma string. Mas às vezes isso não será tão óbvio para ser rápido. Então nós temos que dizer explicitamente e a forma como explicitamente dizer que tipo de variável é é popping em dois pontos e, em seguida, digitando o tipo. Neste caso, é uma string. Certo, agora se eu quiser guardar um número? Bem, eu iria remover esta linha e eu iria colocar vamos dizer número 18 e eu vou obter um erro e ele me diz que eu não posso converter valor fora do tipo em dois tipos especificados string e que apenas seis são palavras extravagantes para Hey man, você não pode colocar um número dentro de uma string, então nós vamos mudar este tipo. Vamos chamar isto de dormente e interpor. Andam Integer é simplesmente um número inteiro como 89 10 12 e interject não pode conter qualquer valor que tenha um decimal como 1.1. Se você tentar fazer isso, na maioria dos casos, melhor das hipóteses, ele simplesmente vai deixar cair a parte do ponto. Na pior das hipóteses, você vai ter algum tipo de acidente. Então, como você armazena decimais? Bem, o que você deve usar por padrão é chamado de duplo, e podemos ter duas vírgulas seis ou qualquer número fora de caracteres depois disso. Ou números. Agora olha para isto. Muito interessante. No lado direito, diz-nos que o nosso valor é este longo, mesmo que não tenhamos digitado isso. E isso porque o Double tem um número fixo fora dos pontos decimais. Algo como 15. Eu acredito que se eu não estiver errado, então sempre haverá erros muito pequenos, muito ligeiros dentro da programação. E se você está inventando algo como uma matemática complexa, você precisa estar ciente disso, certo? E quanto a outros tipos de números? Bem, podemos ter o que é chamado de carro alegórico. Onda float é como um duplo, mas tem menos pontos decimais precisos na precisão na diferença entre carros alegóricos e duplos é que você usaria à tona quando a precisão não é essencial. Há outras razões que escolhemos entre os dois, mas não vamos falar agora. O tipo de variável final que eu quero mostrar é chamado de booleano. Um booleano é verdadeiro ou falso. Até agora, meu touro, meu livro fora do tipo Booleano, é igual a verdadeiro. Ou isso pode ser igual a falso. Então bilhões são incrivelmente úteis para manter o controle. Você sabe se as coisas estão ativadas ou desativadas ou se o usuário está tocando na tela ou não. Todos esses casos têm verdadeiro ou falso embutido neles, e você vai usar muitos bilhões na lógica de todos os seus APs. Então esses são alguns dos tipos básicos de variáveis dentro do Swift três. Eu não vou passar por todos eles, obviamente, obviamente, porque nós vamos ficar aqui por cerca de cinco dias. Mas uma vez que você sabe como declará-los e para que eles são usados e onde colocá-los, então você deve ser bom para ir quando se trata de aprender tipos mais complexos 6. Arraias de coleções no Swift 3: em Swift três. Temos três tipos diferentes fora de coleções, o primeiro dos quais é um aumento, uma navalha útil para armazenar dados ordenados. Definição da Apple muitas vezes array é um array. Armazena valores fora do mesmo tipo em uma lista ordenada. O mesmo valor pode aparecer em uma matriz várias vezes em diferentes posições. Então vamos ver o que essas matrizes fazem, implementando alguns dentro do nosso playground com seu playground aberto, exclua todo o código lá dentro. Além da instrução import, vamos criar primeiro uma matriz vazia fora inter jizz. Vamos chamar isso de var. Alguns intenso é igual a, e a forma como definimos uma matriz é usando colchetes. Nós dizemos Swift que tipo de matriz que tipo de variável nós queremos armazenar nesta matriz , que é um inteiro neste caso. E, em seguida, inicializá-lo usando para esvaziar colchetes. Então agora temos um vazio de raios fora de imagens. Vamos criar uma matriz vazia fora de strings. Até agora, algumas cordas é igual para abrir seu colchete, tia, colocar o insight tipo variável e abrir e fechar seus colchetes para inicializá-lo. Agora, uma matriz vazia não é exatamente útil. Então vamos fora de valor para estes. Primeiro. Vamos tomar o nosso alguns em Saray e, em seguida, aperte Don't e queremos anexar e depender nos permite adicionar um novo elemento. Então vamos colocar o número quatro na do Ray. E, claro, podemos fazer o mesmo com nossas algumas cordas dot append. E eu posso colocar minha inicial em suas ou talvez minhas duas iniciais, G K. E se você notar no lado direito, ela nos diz exatamente o que nossos arrays contêm. G. K. e quatro. Agora, o que acontece se eu tentar colocar um inteiro em minhas cordas? Um. Digamos, seis. Devemos obter um erro porque nós dissemos que este array contém apenas strings, então você não pode colocar um inteiro nele. Eu poderia colocar um número em comentários invertidos como uma string, mas tenha cuidado porque Swift não entende que esse é o número. Pensa que é uma força. Então deixe-me apenas reverter isso para como eles eram. Agora há uma maneira abreviada de adicionar elementos à sua matriz, e podemos ter algum intenso que podemos ter mais iguais e, em seguida, entre parênteses, podemos adicionar nosso raio e Na verdade, eu poderia adicionar um seis e um oito a essa matriz se eu quisesse. E Swift rapidamente ou rapidamente adicionar esses elementos na minha matriz INTS, como você pode ver no lado direito. O mesmo, é claro, vale para algumas cordas. Agora, é claro, nem sempre temos que fazer assim. Nós também podemos inicializar nossa matriz da seguinte maneira. Então, se chegarmos à nossa linha de topo, atingirmos o cólon, dizemos que isto é uma série de inter jizz, e depois apagamos este casaco aqui. Podemos então dar-lhe um conjunto inicial de valores para essa matriz. Então esta declaração da matriz é muito semelhante ao que tínhamos quando olhamos para variáveis em Swift três. Claro, a mesma coisa se aplica à string, então tente isso. Agora, se você quiser também notar que essas funções upend e essas funções mais iguais funcionam como antes, não importa quantas coisas estão na sua matriz, e tenho certeza que há um limite teórico. Mas na realidade, você nunca vai atingir esse limite a menos que tenha programado as coisas muito mal. Certo, se quisermos saber quantos elementos estão na nossa matriz? É uma coisa muito comum que você precisa saber. Por exemplo, se você tivesse uma matriz de dados pessoais de pessoas como endereços, números de telefone e o que você tem, você diria, Quantas entradas de dados eu tenho? Então, a maneira que obtemos isso é ter alguns pontos contagem. E isso retorna um número fora de entradas que temos quatro horas, alguns INTs e, eventualmente, quando o código X se aproxima a ele. Vamos, código X , deve ficar à direita. Se isso não acontecer, talvez precisemos adicionar uma impressão a isso, e a impressão irá mostrá-la. Então, à direita, agora temos sete elementos em nosso alguns em Saray. Há uma barra invertida ali porque isso significa uma nova linha, e essa nova linha é traduzida aqui no console, onde podemos ver um sete, e da próxima vez que imprimirmos algo, ele vai colocá-lo abaixo Sete. Então não se preocupe com isso. Barra traseira n. Isso não é parte fora de sua matriz ou seu contador qualquer coisa. Então, é claro que podemos fazer a mesma impressão. Algumas cordas não contam, e isso também irá imprimir o tamanho de nossas algumas cordas de Ray, que neste momento não é muito grande. É só um, e podemos ver isso, mais aqui em baixo. E, claro, à direita e ao local. Agora a última coisa que vai olhar é como obter um valor fora da matriz. Então vamos dizer que eu quero tirar este número 88 de alguma intensa. Bem, vamos em frente e imprimir algumas pontas. E então para pegar um array, temos que nos referir ao índice dele, que é algo que colocamos dentro de colchetes. Agora há um conceito e programação importantes em toda a programação. Isso é um aumento? Nosso zero indexado. Então, quando olhamos para o nosso alguns em Saray número elemento na primeira posição é realmente indexado com o número de zero, em seguida, o na segunda posição é elemento um na terceira posição é elemento a. Então temos 0123 índice zero simplesmente significa que começamos a contar a partir de zero. E se você está começando fora da programação, esse é o erro mais comum que você vai cometer. Eu prometo a vocês, então queremos pegar os elementos número três, que na verdade está em um índice off para. E quando fazemos isso, ele informa que temos o número 88 sentado lá. Ok? Há toneladas mais operadores, é claro, para um aumento, mas esses são os conceitos básicos que permitirão que você comece ao fazer o seu APS. 7. Conjuntos de coleções no Swift 3: conjuntos em três conjuntos rápidos são o segundo elemento fora coleções, se você gosta depois de um aumento. Agora, um conjunto armazena valores distintos do mesmo tipo em uma coleção sem ordenação definida. Você pode usar um conjunto em vez de uma matriz quando a ordem de itens não é importante, ou quando você precisa garantir que um item só apareça. Uma vez, vamos ver o que esta confusão de palavras significa criando alguns conjuntos dentro do nosso playground. Vamos criar um set off letras. Vamos chamar este var letras é igual a um conjunto e, em seguida, abrir nossos colchetes triangulares fora caracteres. E isso contém um caractere alfanumérico, e podemos inicializá-lo para esvaziar com nossos dois colchetes. Então agora temos um set off personagens. Vamos inserir um caractere com a função de inserção de ponto, que nos pede um novo membro. Não se preocupe com o que significa tabela de hash agora. Vamos deixar a letra A. Então, de certa forma, é como um aumento na maneira que o definiria, exceto que não usamos upend. Usamos inserir, e a razão por trás disso é a linguagem, as complexidades dela. Quando usamos upend significa que estamos adicionando algo final dentado de outra coisa. Quando usamos inserto, estamos apenas colocando dentro. Não nos importamos com a ordem. Então esta é uma das grandes coisas sobre Swift. A linguagem tipo de vai atrás de um coração linguista se você gosta, upend e insere fazer essencialmente a mesma coisa, mas com uma ligeira diferença que o idioma cuida. Então, quando você não tem certeza, procure o idioma em um dicionário e você deve ser capaz de descobrir o que ele faz. Agora. Conjuntos podem ser inicializados apenas como um aumento, então vamos ter um var off alimentos favoritos. E vamos fazer disso um conjunto igual a e vamos comer pizza. Gostoso. Vamos beber vinho e vinho número dois e agora temos uma expulsão dos nossos favoritos. Então, obviamente, Swift está inferindo o tipo de nosso conjunto olhando para o que ele contém, que neste caso, é cordas. Se quiséssemos que pudéssemos forçá-lo a conter apenas cordas, que pequeno erro que apenas cordas. E isso também seria bom, eu recomendaria para você geralmente dedo do pé sempre especificar os tipos que você tem. Posso não fazer isso porque sou um programador envelhecido e estou caindo em maus hábitos. Mas como iniciante, tê-lo explicitamente definido vai ajudá-lo muito. Agora mesmo. Claro, podemos usar métodos como Contar em nossos sets para nos dizer quantos elementos do presente, mas não vamos fazer isso aqui porque cobrimos isso em uma corrida. Mas eu quero te mostrar uma coisa aqui. Vamos tentar cair em outro elemento de vinho dentro deste conjunto inicializar er, e em uma matriz que seria bom. Teríamos quatro elementos, mas reparem. De certo modo, só temos vinho uma vez. O segundo vinho não é realmente adicionado ou é adicionado e sobrescreve o original. Não tenho certeza de qual. Então, se você inicializar um conjunto com dois valores idênticos, eles irão sobrescrever um ao outro, e você terá apenas um conjunto de uso. Quando um você não se importa com a ordem e B, você tem ou quer apenas valores exclusivos dentro do próprio conjunto 8. Dicionários de coleções no Swift 3: Vamos olhar para a coleção final em Swift três, e estes são chamados dicionários. Um dicionário armazena associações entre chaves fora do mesmo tipo e valores fora do mesmo tipo, e ele armazena essas em uma coleção sem ordem definida porque você realmente não precisa dela . Então, principalmente um dicionário em uma linguagem de programação é muito parecido com um dicionário de palavras, algo que você procuraria uma chave, por exemplo, uma palavra. E você obteria o valor de, por exemplo, definição dessa palavra. Então vamos ver como implementamos esses dicionários dentro do parque de diversões Swift três mais de uma hora . Vamos começar com um documento vazio antes de começarmos. Quero abordar esta linha no topo que diz Playground agora em etcetera, etc. Isso começa com duas barras, e isso significa que é um comentário. Os comentários não são levados em conta pelo compilador, modo que o código X os ignora completamente. Há para nós humanos para lembrar por que acabamos de escrever aquela coisa quando voltamos a ela alguns meses depois, então de volta aos dicionários e um dicionário é algo parecido com isso. Estruturalmente falando, um dicionário tem uma chave, e então um valor como um dicionário de palavras, como acabei de enviar. Então vamos criar um desses. Vamos ter um var chamado nomes fora em Tages, e este vai ser um dicionário que nos permite procurar um inteiro como e, em seguida, retorna o nome legível humano para a palavra. Então vamos inicializar isso com um inteiro como a chave e, em seguida, colocar dois pontos e vamos ter uma string como o valor. Vamos colocar nossos colchetes e inicializá-lo como vazio. Agora eu posso dar a este seu primeiro par de valor chave, então vamos ter nomes fora inter jizz e vamos dar-lhe a chave, que está entre colchetes off para, é igual à palavra a. Então agora o nosso dicionário tem um valor chave. Par dois e dois. E se quisermos colocar mais de uma corda lá? Digamos que este dicionário nos permitiu procurar os valores fora, também, também, em inglês e búlgaro. Bem, isso é bastante simples. Podemos chegar a esta declaração string no topo, e podemos fazer isso uma matriz para que cada inteiro corresponda a uma matriz off strings. Agora vamos ter nomes de safras iguais a, e você vai notar que não temos erro. E se clicarmos nele, ele nos diz que não podemos ter uma string, que é, neste caso, e atribuí-la a uma matriz fora de strings. Então vamos nos livrar de suas queixas. Vamos ter duas vírgulas e vamos colocar em outro valor. Búlgaro para dois é assim Agora temos um dicionário que contém dois e Davar. E como acessamos esses valores? Bem, vamos ter uma impressão de nomes de imagens. Nós abrimos nossos colchetes muito parecido com uma matriz e vamos agarrar a. E então precisamos colocar um ponto de interrogação. Não se preocupe com o que isso significa por enquanto, e então temos que passá-lo onde ou qual valor queremos sair da nossa matriz de cordas. Então, se eu quiser pegar o Índice 1, isso realmente corresponde ao Elemento número dois e você vai notar do lado. Diz-nos que temos opções divididas. Eu vou cobrir mais tarde e final de barra traseira. Você já sabe o que isso significa. Então temos o nosso valor retirado do dicionário. Agora, os valores do dicionário serão muito, muito úteis ou o tipo de estrutura do dicionário mais tarde. Quando você está criando APS, eles são muito, muito flexíveis e um pouco difíceis de entender no início, mas uma vez que você faz, você vai usá-los muito. 9. Lógica se o caso de outro e mudar no Swift 3: Às vezes em nossos programas de cápsulas, precisamos testar certas condições onde dizemos, Se algo é isso, então eu quero que você faça isso. Ou se não for isso, então não quero que faça isso. E outra maneira de escrever que é, usando instruções de caso switch, vamos ver o que cada um desses são implementando alguns deles dentro do nosso playground. Vamos começar criando um var. Meu NUM é igual a 33 que é a minha idade. E então nós vamos dizer se porque nós vamos testar algo relacionado ao meu entorpecimento e precisamos colocar esse teste dentro de parênteses e dizemos, Se meu entorpecimento é igual igual a 33 agora é igual a igual é igual a operador de comparação e verifica se o meu, hum, é igual à entrevista fora 33. Não confunda com um único igual, que é o operador de atribuição de operador de atribuição, se você se lembra, faz 33 igual ao meu número. Então, estamos comparando nesta declaração if, e se isso é verdade do que tudo dentro da instrução if vai executar então chaves abertas e rápido deve fechar abaixo para você. Então, se isso for verdade, quero que imprima meu número, e isso deve imprimi-lo. Do lado direito. Aqui temos a nossa declaração de impressão. Então meu número é definitivamente igual a 33. Portanto, ele imprimiu. Mas e se quisermos testar um número diferente? Bem, nós não queremos escrever muitas declarações se todas acorrentadas porque há muitos erros esperando para saltar para fora em você com essa abordagem. O que queremos ter aqui é uma outra declaração. Então estamos dizendo, se meu número não é igual a 33, então eu gostaria que você verificasse se meu número é maior que 33 e então eu quero que você faça algo. Então vamos imprimir o velho. Então agora, se meus números maiores que 33 deve ir para esta seção. Então, vamos mudá-lo. Vamos colocar para 34. E olha, nós mudamos nossa declaração impressa. Agora temos velho, então, e se estivéssemos comparando um número e quiséssemos executar uma declaração padrão ? Então, se nenhum deles foi avaliado como verdadeiro, podemos ter uma declaração padrão com outro onde nós realmente não colocar nada entre parênteses . Só temos um código de bloco que queremos executar. Vamos imprimir neste caso, o jovem chicotes. E agora, se eu mudar o meu entorpecimento para 31, por exemplo, eu vou fazer o jovem impresso. Eu posso até mudá-lo para menos 100, eu acho. Tecnicamente, é um homem muito, muito jovem, e imprime um jovem para nós. Então deixe-me mudar isso de volta para os nossos 32. E agora eu quero mostrar a vocês a diferença entre uma declaração da NFL em um caso de troca. E isso é principalmente a estrutura, porque se outra coisa se complicar e é difícil de ler em um programa, você sabe quando você está roubando seu código, isso seria difícil de entender imediatamente o que está acontecendo. Então, uma declaração de caso switch meio que contorna essa limitação. Vamos ter um interruptor, e se você pressionar o preenchimento automático, ele diz que você troca requer um valor, e então ele dá-lhe um caso de padrão e código e um código padrão off, então nós vamos passar sobre o valor fora do meu entorpecimento e estamos a dizer do caso em que o meu NUM é 33. Gostaria que imprimisse meu entorpecimento e podemos adicionar outro caso a isso. Se quisermos. Vamos ter caso e vamos ter de zero ponto ponto para trás triângulo 33. Então, se temos um número entre zero em 33, então eu gostaria que você imprimisse Young e nosso código padrão. Vamos tirar uma impressão digital, o velho disse “Ops”. Eu tenho que colocar isso, é claro, entre aspas e então nós devemos estar prontos para ir, certo? Então meu valor atual , é entre zero e 33,o que significa que meu programa imprime jovem se eu mudá-lo para 33. Exatamente todo o meu fl desde que os casos de troca mudam automaticamente. Então, se else e switch case permitem que você verifique se há uma determinada condição e se você tiver muitos fora deles, eu aconselharia você a usar o método de instrução caso switch porque é apenas um pouco mais limpo do que uma string inteira off. Se o outro 10. Loops redondos e redondos no Swift 3: loops em Swift três. Ocasionalmente em seus programas, você precisa executar algum tipo de ação várias vezes em vários pedaços de dados. E em vez de chamar alguma função novamente e novamente, loops permitem que você faça isso em apenas algumas linhas de código. Então vamos ver como esses loops funcionam e todos os tipos diferentes que temos no Swift três implementando-os em nosso playground. O primeiro e mais básico loop está disponível na maioria dos idiomas, e é chamado de Four Loop. Então vamos escrever uma. Vamos começar com quatro var I em zero. Não use menos de 10 chaves abertas e feche-as e dentro daqui, vamos imprimir I. Agora. O que este loop está fazendo é que ele está criando uma variável chamada I, e é uma assinatura dos números zero etcetera Para I, isso é o que para longe, I em 0 para 10 significa cada vez que o loop vai rodada I zero, então eu como um, então eu é todo o caminho até eu ter menos de 10 anos. Então eu vou chegar ao número nove. Vai passar de 0 a 9, mas nunca chegar ao número 10, porque essa é a condição que especificamos. E nós dissemos que cada vez que você ir por aí eu gostaria que você imprimisse eu. E é por isso que à direita, vemos 10 vezes se eu abrir meu olho. Icahn, temos o número nove, que é o que eu sou atualmente. Então este é o básico para loop. Agora, se você programou um rápido antes, você poderia ter feito isso de uma maneira ligeiramente diferente. E esta é a maneira que é reconhecido línguas em todo o mundo sobre onde nós teríamos um quatro var. É igual a não teríamos um semi cólon até eu ter menos de 10 anos. E então nós temos um I plus, que adiciona um dedo I e dentro teria uma declaração de impressão ou o que quer que precisemos. Mas observe como rápido três rapidamente lança uma era e nos diz ver estilo. Quatro. Declaração foi removida no Swift três, e sugere a versão que implementamos logo acima dele. Então, se você se deparar com tutoriais web e eles recomendam isso para declaração, ele não vai funcionar. Vamos apagá-lo das nossas memórias agora, certo? Então, quando você usaria uma declaração de quatro. Bem, se você tinha uma variedade de coisas e você queria ver cada item e imprimi-lo ou fazer alguma adição a ele ou o que você quiser, é aí que quatro loops realmente entram em seus próprios. Vamos ter um número muito chamado, que vai ser um raio Inter Jura. Vamos ter int é igual a um novo raio Inter Jura. E vamos colocar os números que quisermos colocar lá dentro. Agora vamos criar um quatro loop quatro variável n em números, abrir nossas chaves e, em seguida, vamos imprimir e sair. Então este loop de quatro vai passar por cada número um por um nessa matriz, começando a partir do índice zero assim quatro e passando por ele elemento por elemento. Então é assim que você pega cada elemento de uma matriz. Então temos um tipo diferente off loop, e isso é chamado de loop selvagem. Então vamos ter um longe e, na verdade, antes de fazer isso, vou deletar isso para que fique claro para você. Vamos ter nossa contagem é, é e interjetar, o que é igual a nota, e esta variável vai manter a contagem fora do nosso loop selvagem. Então temos um tempo. A contagem é inferior a 10. Gostaria que fizesse as seguintes ações, Príncipe. Como a conta no meu laptop está começando a gaguejar aqui. E vou dizer-te porquê. Olhe para este número ao lado. Este loop já rodou dezenas de milhares de vezes. E você poderia dizer, por que ele está fazendo isso? Bem, é durante isso porque esta contagem é zero, que é sempre menor que 10. E como contornamos isso? Bem, toda vez que o loop de “while “acontece, temos que adicionar um à nossa contagem mais igual a um. E olha para a minha bola de praia giratória da morte no meu Mac. Não está se recuperando. Vou pausar o vídeo aqui e voltar quando estiver consertado. E eu consertei. Então, se você fez o mesmo que eu, você meio que teve um mini Bem, não é um acidente, mas é um lugar onde seu programa fica preso. E esta área onde ele fica preso é um problema que até mesmo programadores experientes como eu correndo para ocasionalmente. Por isso, verifica sempre. Há uma condição de saída para seus loops while ou seus quatro loops ou qualquer loop que você tem. Ok, há uma versão final do loop que é chamado de repetição, enquanto loop onde pedimos para repetir uma determinada função. Então vamos imprimir algo como ainda não e adicionar um às nossas contas, e então nós damos uma condição selvagem. Então eu quero repetir essa função enquanto a contagem é menor que 10. E se eu apenas remover isso enquanto os lábios, então contador zero, ele deve ir em torno do loop de repetição 10 vezes e lá nós temos isso. Então isso é uma repetição. E a diferença entre um loop wild e um repeat while é que a repetição executa a função primeiro, modo que o loop while a executa como parte do próprio loop. 11. Funções no Swift 3: no Swift três nos permitem organizar nosso código de forma muito mais eficiente. Um objetivo principal sempre que você codifica em qualquer idioma é não escrever a mesma linha de código mais de uma vez, e as funções são uma grande parte para nos ajudar a alcançar isso. Vamos ver como eles funcionam implementando uma função dentro do nosso playground. Agora. Até agora, eu tenho esse loop selvagem e conta que vai girando e girando. E se eu quisesse escrever um loop enquanto que fizesse a mesma coisa de novo? Bem, eu teria que copiar todo esse código, e isso é uma coisa muito ruim. Então vamos criar uma função que usa esse loop while ea maneira como criamos uma função e Swift três é usando a palavra-chave funk e vamos chamar essa contagem de verificação e, em seguida, abrimos e fechamos alguns colchetes. Voltarei a eles em um minuto, abrindo abraços fechados. Agora vamos pegar toda a nossa contagem, e enquanto código e despejá-lo nessa função e salvá-lo agora, a primeira coisa que você vai notar é que não há nada impresso no lado direito e isso é porque uma função não é executado como padrão. Você realmente tem que fazer o que é chamado de chamar a função, e a maneira que nós chamamos é por seu nome contagem de verificação com dois colchetes, e agora a função será chamada Executar, e esse loop deve girar quantas vezes for necessário para Agora . A razão pela qual temos estes dois colchetes aqui, o abrir e fechar é por causa de funções podem passar valores ou variáveis ou outros itens para si mesmos. E o que eu quero dizer com isso? Bem, vamos olhar para uma idéia básica disso. Vamos para a nossa função de contagem de verificação, e nós vamos passar sobre uma variável chamada mensagem e isso é off tipo string. Então agora disponível espera dedo do pé. Ter uma string de mensagem de cada vez. E é por isso que temos essa era vermelha, ele diz, falta argumento para mensagem de parâmetro no carvão. E isso é o que esses frios são chamados de argumentos ou parâmetros, ou há uma ou duas outras maneiras de chamá-lo. Mas um argumento é uma boa palavra para lembrar, então temos que passar por cima na contagem de cheques. Temos que dizer a mensagem. Eu vou passar você é o seguinte. Ainda não. E essa string é passada para a nossa contagem de cheques e, em seguida, dentro de nossa contagem Chek, podemos usar essa mensagem, por exemplo, aqui sob mensagem impressa e que irá imprimir ainda não 10 vezes para que possamos passar sobre estes variáveis agora. A vantagem de fazer isso é que agora eu posso executar, verificar contagem e eu posso enviar uma mensagem chamada Grunt e ele vai executar esse código. E se eu arrastar este fundo para cima, olha como ele é executado, ainda não. E Grant e a beleza disso é que Look, nós apenas descansamos duas linhas de código, e nós usamos a mesma função. Mas temos um resultado diferente. Então essa é a coisa fantástica sobre funções. Agora podemos passar mais de um parâmetro. Então, dentro de nossa função, vamos ter algo que a Páscoa chamou de contagem zero. E, claro, opa. Não queremos contar zero. Nós não vamos contar interject porque este é do tipo interject. E agora nossas chamadas de função estão incorretas. Alguns patins apagam este porque não precisamos dele. E dentro daqui eu vou passar minha contagem e eu vou dar esse zero. Então agora ele está passando sobre dois parâmetros para verificar a contagem e dentro da minha função de contagem de cheque . Vou fazer com que este seja igual a contar. Mas isso é meio ruim, porque eu tenho duas contagens aqui, então eu provavelmente gostaria de renomear minha contagem aqui para algo como contagem P. Pode ser o que quiser. Só estou chamando de contagem de p para contagem passada. E, claro, temos que mudar aqui para fazer xixi. Então sempre tente nomear suas variáveis de forma diferente. A menos que faça sentido ter o mesmo. Então, agora, se eu mudei essa contagem anterior para cinco, meu loop será executado apenas cinco vezes porque a contagem está começando em zero. E este é um pouco de um exemplo inventado, mas eu acho que você entendeu a idéia agora. A outra coisa é, sempre chamar sua função de algo óbvio. Cheque a contagem. Eu tenho um verbal, tenho um substantivo, e está dizendo exatamente o que ele está fazendo. Certifique-se sempre de que é descritivo. Não demore muito. Torná-lo curto. Mas descritivo, mesmo assim. Agora a parte final off funções é o fato de que eles podem retornar algo, e a maneira como nós especificá-los, retornando algo é com um traço, um avanço tentando obter um suporte, e nós especificamos o tipo off coisa é vai voltar. Pode ser uma string, um inteiro booleano, o que quiser. Agora há um ar aqui em baixo e diz que está faltando. Retornar em uma função, e isso é porque ele espera que usemos a palavra de retorno e, em seguida, Pospech algum tipo off string. Então vamos ter feito como passado para trás. Agora nossa contagem de cheques recebe de volta uma string, e você pode ver que temos isso feito impresso com ele. Então é uma boa maneira de passar algum tipo de mensagem de nossas cordas ou de nossas funções. 12. Opcionais no Swift 3: opcionais. Ocasionalmente precisamos ter uma variável para a qual não queremos escrever imediatamente. Podemos escrever para ele mais tarde, embora na maioria das linguagens de programação isso cause problemas, o primeiro dos quais é que se nada é armazenado, então nós obtemos o que é chamado de “sem referência”, e isso simplesmente significa que nada é contidos na variável. Isto ocorre normalmente quando ocorre uma falha e esta falha ocorre quando o utilizador está a executar a aplicação, por isso não é bom. Em segundo lugar, precisamos adicionar um cheque para não, o que significa que precisamos escrever mais código e escrever com mais cuidado. Swift acaba com isso muito elegantemente, mas é um pouco confuso no início. Então vamos nos livrar dessa confusão seguindo e olhando as opções dentro do nosso playground. Agora vamos ter uma variável chamada meu STR, que é do tipo string, mas não vamos dar isso de valor agora. Em vez disso, vamos colocar um ponto de interrogação depois dele, e estamos dizendo ao nosso compilador que esta variável é opcional. Pode existir. Pode não existir, e nesse caso tem dois conjuntos ou valores que pode ter, um dos quais é prego, que significa que não tem nada. O outro é um valor, e esse valor contém a própria variável real. Então pense em opcionais como um tipo de dados especial ou não é tão especial, para ser honesto. Mas gosto de pensar que é especial que não contém nada ou algo assim. E se contiver alguma coisa, podemos recuperar o valor. Vamos tentar imprimir isto. Vamos imprimir minha força e notar o que são compilados. Diz que vai reclamar, está a correr e o que não vai reclamar neste caso porque só estamos a tentar imprimi-lo e diz-nos que não temos dentro da nossa cadeia. Vamos fazer isso reclamar. Vamos ter uma variável chamada New string, que é igual à minha string. E então nós vamos adicionar em um sufixo a essa string para que possamos tipo de slam duas strings juntos, e agora temos um erro, e isso é porque o valor da string de tipo opcional não é desembrulhado. Você quis usar etcetera ou etcetera? Então agora temos um acidente. Temos um erro, uma execução fatal. Aí e esse é o nosso segundo acidente. Eu acredito nessa parte do aprendizado rápido, e isso é porque nós realmente não temos um valor dentro da minha variável string. E felizmente para nós, código rápido ou ex está nos dizendo que eles não têm Aaron agora. E se você tiver esse erro, ele não permitirá que você compilar o aplicativo e liberá-lo. É impossível. Outras linguagens podem permitir que você realmente compilar o aplicativo, que, como você pode imaginar, é um lugar perigoso para estar, porque no Swift, podemos ver o erro e corrigi-lo antes que as pessoas se apossem do aplicativo. Em outras línguas, talvez não o vejamos. Nosso pessoal vai pegar o aplicativo e ele vai falhar. E para mim, esta é uma das principais razões que IOS está à frente do Android em termos de qualidade de aplicativo um porque a Apple rever todos os abside e dois porque eles estão avançando com esses idiomas. Java é uma linguagem adorável, e eu gosto de usá-lo. Mas é mais fácil cometer erros em Java do que em rapidez. A ideia do Swift era livrar-se dos pequenos erros tolos. Então, como verificamos esses erros. Bem, quando clicamos nisto, diz-nos que podemos inserir um ponto de exclamação. E se fizermos isso, o que estamos dizendo a Swift é que estamos absolutamente mortos 100% de certeza que meu str contém uma string. Definitivamente não contém nulo. E você quer ter cuidado com isso porque eu vou inserir isso e agora temos uma era. Então cometemos um erro e um monte de Apple Swift. Os desenvolvedores chamam isso de operador de falha ou algo parecido com isso porque é um erro comum que muitas pessoas cometem quando eles realmente não sabem o que são opções, e eles apenas usam as sugestões do compilador para corrigi-lo. Então apague esse ponto de exclamação e vamos fazer isso da maneira correta. O que queremos fazer é ter uma declaração que diz, Se deixar meu valor str é igual ao meu str e o que isso está fazendo, é dizer que se você pode obter um valor fora da minha string, então eu gostaria que você fizesse o seguinte com esse valor para que possamos tem o meu valor str mais sufixo de modo que isso só vai ser executado se realmente tem um valor no meu str e você pode ver como estamos evitando aqueles desagradável nenhuma referência ou zero ar referência é agora então eu posso agora atribuir valor à minha string. Meu str é igual a Grant e que agora deve imprimir Grant Suffolk está dentro daqui porque nós realmente temos um valor e isso é praticamente tudo o que há para opcionais. Estamos ocasionalmente indo para ver esse operador de exclamação e há lugares onde faz sentido usá-lo e não há problema em usá-lo e eu vou destacar aqueles à medida que vamos. Você também, é claro, agora sabe o que significa ponto de interrogação e novamente, quando nos depararmos com isso, vou explicar o que significa em termos do item em que trabalharemos naquele momento . 13. Aulas e objetos no Swift 3: classes e objetos são fundamentais para todas as linguagens de programação orientadas a objetos fora do qual Swift é um. Uma classe é simplesmente um blueprint em código. Ele permite que você crie várias instâncias fora de si mesmo, e essas instâncias são chamadas de objetos. Então, usando um blueprint, você pode criar vários itens chamados objetos. Vamos ver como isso funciona na prática, seguindo dentro do nosso playground. Vamos criar uma classe com a classe palavra-chave. Isso é uma palavra. Você vai ver muita coisa, e esta aula é chamada rápido. Venha agora. Ao contrário de uma função, não há argumentos ou parâmetros para passar nesta parte da classe. Há lugares onde podemos fazer isso, e eu vou cobrir isso. Mas, por enquanto, só queremos chaves. Agora uma aula é um plano. É um contentor. Ele contém coisas como propriedades, variáveis, funções, estruturas em Yuma, rações, muitas outras coisas. Ele pode conter praticamente tudo o que você pode pensar na programação. Então a primeira coisa que vamos fazer é criar esta classe de carro rápido é dar-lhe uma muito chamada velocidade máxima , que é igual a, digamos, 155 E porque é carro rápido, vamos dizer velocidade máxima de todos carros rápidos é 155, que é o padrão Elektronik Lee Limited Top velocidade. Então podemos dar a esta classe uma função e esta função que podemos chamar ainda velocidade máxima e isso não tem argumentos. Mas ele retorna um inteiro, e isso vai retornar a velocidade máxima atualmente sentado em nossa classe. E nós poderíamos apenas a velocidade máxima certa. Mas uma maneira melhor de escrever é eu mesmo e você vai notar. Self aqui refere-se à classe off carro rápido. Então ele está olhando para si mesmo e dizendo, OK, que coisas eu tenho? E se colocarmos ponto em um dos itens que temos é velocidade máxima, então ele vai retornar sua própria velocidade máxima. Agora vamos sair da classe e criar um VAR chamado meu carro, e isso é igual a rápido. Abra e feche seus suportes. Agora temos um carro, disse que este carro está usando este plano da classe para criar-se, e isso significa que ele tem todas as propriedades e funções que estão disponíveis dentro fora dessa classe para que possamos ter o meu ponto carro obter velocidade máxima, e que deve retornar 155 e lá nós temos no lado direito. Agora vamos dizer que nosso carro rápido tem uma velocidade máxima diferente cada vez que criamos, e queremos passar sobre a velocidade máxima bem, em vez de passar pelo Pfaff mudando essa variável cada vez, podemos usar o que é chamado de Isar inicial em a classe. E um izer inicial é o método que é chamado sempre que a classe está em Stan. Ela odiava ou é usado para fazer um objeto, e isso normalmente é criado logo abaixo da nossa lista de variáveis, e nós vamos chamar isso nele, e esta é uma palavra-chave especial, e nós vamos passar por cima de uma velocidade máxima, que é chamado, que é do tipo inteiro abrir e fechar nossas chaves. Agora vamos mudar essa velocidade máxima no topo para um tipo desligado interject. Então o que vamos fazer é atribuir a velocidade máxima. Passamos para a variável de classe. Então nós dizemos auto ponto velocidade máxima é igual a velocidade máxima, e você vai notar como rápido automaticamente sabe que eu estou me referindo a si mesmo. Então é este, e esta velocidade máxima refere-se a este. Mesmo que tenham o mesmo nome, são variáveis diferentes. Então, temos nossa velocidade máxima, e agora temos uma era em que inicializamos nosso argumento de falta de carro. Então vamos dar o argumento de uma vez, que é a velocidade máxima. E vamos dar a este uma velocidade máxima de 210. Então, agora, quando eu salvá-lo, eu deveria imprimir uma velocidade máxima fora 210 sobre a direita. Então, sempre que você receber um erro dizendo argumentos ausentes, o que ele está pedindo é o material nesta função innit. Então, apenas para recapitular uma classe é um blueprint que permite criar objetos. E, na verdade, antes de eu ir, vamos ter nosso Ferrari é igual a um carro rápido, e isso tem uma velocidade máxima off. Digamos que 20 e na nossa Ferrari podemos obter a nossa velocidade máxima. Então veja como uma classe nos permite criar várias instâncias de si mesmo em vários tipos diferentes. Off carros, classes e objetos são uma das partes fundamentais da programação orientada a objetos, e você não pode dar errado sabendo muito sobre eles. Eles são fundamentais 14. Herança no Swift 3: herança em Swift. Anteriormente, nós olhamos para classes e objetos. Agora você pode imaginar tentando escrever uma aula que cobre carros, copagadores, caminhões, carros da família, etc? Bem, haveria um monte de código repetido. E como disse antes, não podemos repetir o código. Isso é ruim. Então é aqui que a herança entra e nos poupa muitos problemas. Vamos ver como funciona a herança implementando parte dela em nosso playground. Vamos criar uma classe que é chamado Just Simply Car, e vamos dar a esta classe apenas uma propriedade, que é deixar número de rodas igual a quatro porque um monte de carros têm quatro rodas. Então digamos que queremos uma família. O Clark. Bem, vamos fazer uma aula chamada família vir agora. Eu poderia inicializar isso e dizer o número vamos fora das rodas igual a quatro. Mas eu repeti o código, e isso é mau. Ou pelo menos eu te disse que isso é ruim. Então exclua isso, e o que você vai fazer é colocar dois pontos e dizer que isso herda do carro, então ele pega todas as propriedades, métodos e coisas disponíveis no carro e atribui a um carro da família do que dentro de um carro da família . Você pode adicionar várias outras propriedades que só se sentar com carro da família. Então vamos deixar o número fora portas igual 25 Agora, se eu criei um carro da família longe, meu carro da família é igual a um carro da família novo. Agora podemos acessar o número de rodas e o número fora das portas. Olha, temos portas e rodas para que eu possa pegar as rodas e isso me diz que temos quatro. Então o nosso carro da família herdou da classe fora do carro. Agora você pode imaginar que esta herança pode realmente continuar continuando. Eu poderia criar uma classe chamada Big Family Car off, e isso herdaria apenas do simples carro da família velho. Então o carro Big Family fica com todas essas propriedades. Mas porque o carro da família herda do carro, carro da família grande também recebe o número de rodas que estão disponíveis dentro do carro e, em seguida, dentro do carro da família grande. Podemos ter do nosso tamanho igual a grande, se assim o desejarmos, modo que é basicamente assim que a herança funciona. E se eu quisesse inicializar uma aula, eu poderia colocar a minha em sua classe de carro. Então vamos ter um nele e núm rodas, que é do tipo interject. E então nós dizemos, auto-pontos. Rodas dormentes é igual ao número off rodas que passamos por cima, alguns escassos para remover isso e torná-lo uma entrevista. Agora temos uma era no meu carro FAM porque ele quer o número fora das rodas e vamos ser hilariantes e colocar seis rodas sobre ele agora o número de rodas do nosso carro. Mas temos uma pequena era, e eu sei o que é. Temos de colocar a nossa rotulagem num rodas é seis, e agora temos a nossa linha no fundo. Isso nos diz que temos seis rodas no nosso carro. Carro ridículo. Então é assim que funciona a herança. E novamente, é um princípio fundamental que vamos ver toda vez que abrirmos nossos projetos IOS . 15. Resumo de Swift 3: tudo bem, Você cobriu muito nesta seção sobre a aprendizagem Básica Swift. Três. Vou passar por ele rapidamente. Mas não se preocupe em lembrar de tudo isso. Vamos ensaiá-los à medida que avançarmos. Você aprendeu sobre variáveis, loops, funções, classes e objetos, matrizes, conjuntos e dicionários, que são todos os tipos de coleção. As instruções de caso de switch FL, opcionais e herança. Há muito mais para três rápidos, claro, mas não quero aborrecê-lo. Eu só quero lhe dar os fundamentos que lhe dão as ferramentas básicas que você precisa para criar APS. Uma vez que você conhece todos esses conceitos, entender coisas novas torna-se mais fácil e fácil. Mesmo que eu tenha programado por anos e anos, ainda me deparo com coisas que eu tenho um tipo de pau na minha cabeça como um cão galo na cabeça dele quando ele não entende. E isso vai acontecer toda a tua vida. Nunca vai embora, mas tenha certeza, eu te dei as ferramentas fundamentais que você precisa para criar o que você pode imaginar.