A imagem inicial contém códigos de programação onde parte da imagem está desfocada e outra parte om as linhas de códigos em cores alternadas entre azul e laranja.
Neste módulo, você estudará sobre os conceitos fundamentais para que tenha capacidade de utilizar a linguagem C# de modo avançado. Tais conceitos são: classes, métodos, construtores, parâmetros variáveis, enumerações, parâmetros por referência e parâmetro padrão.
Está pronto? Então vamos lá!
O primeiro conceito que você verá é a classe, o qual é um bloco de construção básico na linguagem C#.
Ao criar uma classe, estabelecemos um “tipo”. A partir dessa etapa, criamos uma variável.
Para que você veja na prática, utilizamos no código abaixo, o exemplo da criação de uma classe com nome “Carro” e, posteriormente, um novo objeto “C1” para essa classe.
01. class Carro
02. {
03. ....'Atributos'
04.
05. ....'Algoritmos'
06. }
07.
08. Carro C1 = new Carro();
Acompanhe o passo a passo na sequência, para entender o que foi realizado:
Após criar a classe, inserimos dentro dela seus atributos, ou seja, de forma mais direta, os dados como: cor, marca, nome, potência etc. Temos, também, os comportamentos, os quais receberão os dados e farão as funções desejadas.
A partir do comando new, é elaborado um novo objeto que utilizará a classe em questão, como modelo para a sua criação, fazendo uso dos seus atributos que, apesar de serem parte da classe, cada objeto terá um atributo diferente.
Simples, não é mesmo?
Agora que apresentamos como criar uma classe, vamos conhecer os métodos!
Após estudar sobre as classes, vamos agora para o conceito de método. Para que você entenda melhor as suas características e possíveis aplicações, assista ao vídeo a seguir!
Com o que você aprendeu até aqui, podemos analisar um exemplo inicial para fixar melhor o conceito sobre métodos.
Acompanhe o que preparamos, assistindo a mais um vídeo.
Confira aqui o que foi abordado no vídeo.
Após assistir aos vídeos, não podemos deixar de inserir um elemento importante nesse contexto: os construtores, assunto que você conhecerá melhor no próximo tópico.
Quando nos referimos a construtores, analisamos um método que faz um laço entre classe e objeto. Observe o código abaixo que traz o funcionamento do construtor.
Fizemos a criação de um objeto por método tradicional, realizando a determinação dos parâmetros um a um, assim como está no início do nosso main, mas considerando a criação do construtor “Carro” para receber os parâmetros. Nesse caso, os atributos do construtor iniciam com letra minúscula, tornando-o diferente dos atributos já determinados anteriormente.
Portanto, é possível compreender que o segundo carro é chamado pelo construtor. Então, temos duas formas de trabalhar, sendo que o construtor fez exatamente o papel esperado: a ligação entre classe e objeto.
Para dar continuidade aos seus estudos, no próximo tópico, você verá sobre os elementos estáticos.
Você conhece os elementos estáticos? Sabe como eles funcionam? Acompanhe o slide na sequência para entender como são aplicados!
Verifique no código a seguir que conseguimos chamar a classe “MetodosEstaticos” no main, para a realização da multiplicação sem a necessidade de termos que criar um objeto.
Elementos estáticos
Agora, observe no próximo código que, se excluirmos a determinação static do método multiplicar, será necessária a criação de uma instância. Nesse caso, devemos criar calc para ter acesso ao método “multiplicar”.
Criando uma instância
O mesmo conceito se aplica aos atributos estáticos, em que, caso seja atribuída a característica de estático ao atributo, este passará a se referir à classe como um todo, deixando de ser uma instância específica.
Depois de você entender os conceitos de elementos estáticos, principalmente, em relação à sua capacidade de dispensar a criação de uma instância para a chamativa da classe, você estudará no próximo tópico sobre os parâmetros variáveis.
No contexto da Linguagem C#, quando estamos elaborando uma linha de código, existem os parâmetros, isto é, elementos que passam a obter um valor pelos programadores, os quais podem detalhar os parâmetros separadamente para cada método diferente, no caso, os argumentos, ou seja, o valor atribuído a um parâmetro no momento em que se chama o procedimento.
Já os parâmetros variáveis trazem a possibilidade de passarmos quantos parâmetros desejarmos, e a linguagem agrupará essas variáveis.
Veja no código abaixo que utilizamos a função da linguagem C#, denominada de params, para estabelecermos a criação desse parâmetro variável. Além disso, incluímos o foreach com o objetivo de realizar a varredura enquanto houver nomes disponíveis para expor na tela.
Parâmetros variáveis
Nesse sentido, enviamos para o método “Despedida” mais de uma variável, sendo que todas foram agrupadas em “alunos”.
O resultado desse algoritmo é mostrado no código ao lado. Observe que todas as variáveis criadas no main foram apresentadas na tela.
Além dos parâmetros variáveis, ainda temos os tipos get e set, que você estudará na sequência. Vamos lá!
Até esse ponto você aprendeu que a criação de atributos do tipo public faz com que eles sejam visíveis para todos. O contrário também é válido, ou seja, se criarmos atributos do tipo private, eles serão visíveis apenas para o método.
No código a seguir, note como o termo é feito para a utilização dos métodos get e set, conforme você estudou até o momento.
Método get e set
Perceba que foi criada a classe “Carro”, com os atributos do tipo private — que serão acessados pelos métodos get e set — e, posteriormente, foi criado o construtor. No código, demonstramos a criação dos métodos get e set para o atributo “Marca”, mas o procedimento é realizado para os três atributos.
Neste tópico, você estudou sobre um tipo específico de parâmetro variável, o get e set, cuja função é atribuir a característica “private” a um método específico. Já a seguir, estudaremos as enumerações, enums, recurso usado para as variáveis incomuns presentes na linguagem C#.
Em determinados momentos, é necessário realizarmos a representação de alguma variável que não se encaixa nos tipos comuns, como string ou int. Dessa forma, criamos os enums, que como a própria abreviação nos revela, serve para indicar enumerações de atributos. Observe no código!
Enumeração
Note que ele apresenta um exemplo de enumeração realizada para a designação de um vídeo. É importante observar que, no main, é feita a conversão de string para int. O valor que retornará para a tela será a posição do tipo “serie”, tendo valor igual a “1”, uma vez que a enumeração começa a contar de “0”.
Depois de estudar sobre as enumerações, as quais estão relacionadas a variáveis incomuns, você verá os conceitos de structs e classes.
Antes de continuarmos nossos estudos, é importante reforçarmos a diferença entre dois conceitos: struct e classe.
Isso se justifica, porque ambos influenciam na elaboração das linhas de código, principalmente, quando você, futuro programador, estiver trabalhando com a criação de estrutura de dados.
Sabendo disso, veja nos cards a principal diferença entre eles.
A atribuição é sempre feita por valor, e não por referência.
A atribuição é realizada por referência.
No código a seguir, foram criadas uma struct e uma classe com os mesmos parâmetros, a fim de verificarmos na prática essa diferença. Observe com atenção!
Struct e classe (comparação)
Note que, ao fazer a resolução do algoritmo, no caso da struct, os valores não são iguais, ou seja, mesmo que tenhamos criado uma cópia do ponto, ao modificar um, não se observará a mesma modificação no outro. Esse fato, por outro lado, já não é observado para o caso da utilização da classe.
Até aqui, você conheceu a principal diferença entre struct e classe na linguagem C#. Conforme falamos, saber a distinção entre ambos é relevante, uma vez que isso influencia na criação de linhas de códigos as quais possibilitam a elaboração e o uso de estruturas de dados mais eficazes e eficientes.
A seguir, você verá sobre a maneira pela qual é possível aplicar a referência dentro do contexto de parâmetros.
Vamos lá?
Neste tópico, veremos como utilizar uma referência ou cópia de um valor, o que dependerá da maneira como você deseja criar a chamada da variável. Observe o código com atenção:
Note que os valores que utilizamos ao fazer a chamativa dos métodos faz uma cópia das variáveis “x” e “y”. Com isso, ela não será alterada. Logo, os valores impressos na tela serão “5” e “8”, pois não foi transmitida a referência, mas sim, a cópia da variável.
Observe, ainda, que existe a possibilidade de fazermos a passagem das variáveis como referências. Verifique que a variável “x” está sendo passada como referência, portanto, os valores que serão impressos na tela ao compilar o algoritmo serão “505” e “8”.
Assim como temos o parâmetro por referência, também existe o parâmetro padrão, que você estudará a seguir.
O parâmetro padrão, como o próprio nome indica, está relacionado ao padrão que será atribuído para determinada variável, caso nenhum valor seja concedido a ela. Vamos analisar um exemplo?
Veja o caso a seguir:
Nesse exemplo, foram inseridos valores padrões para as variáveis “x” e “y”, os quais são iguais a “3,4” e “3”, respectivamente. Esses valores podem ser modificados em algum momento, mas, caso não haja alterações durante o decorrer do código, o valor padrão será mantido.
Lembre-se! A utilização desses valores padrões não se aplica para o uso de “ref” ou “out”.
Neste módulo, você conheceu os conceitos fundamentais para a aplicação da linguagem C#, que são relevantes para o seu futuro profissional, como, por exemplo, na programação orientada a objetos, a qual é muito usada em situações de desenvolvimentos de softwares personalizados de acordo com as futuras demandas.
A respeito desses conceitos iniciais, vamos estudar um pouco mais sobre a programação orientada a objeto? Será o assunto do próximo módulo.
Selecione o botão “Avançar” e confira!