Skip to content

Instantly share code, notes, and snippets.

View ramon-src's full-sized avatar
🎯
Focused in learn Scalable Architectures

Ramon Schmidt Rocha ramon-src

🎯
Focused in learn Scalable Architectures
View GitHub Profile
// app
<template>
<carros v-if="opcionais.length" :opcionais="opcionais"
</template>
computed: {
opcionais() {
return this.$store.getters.opcionais;
},
},
class Boleto extends TipoDePagamento{
public void debita() {
print("debita com demora, mas sem taxa");
}
}
class Pagamento {
public void executar(TipoDePagamento tipo) {
tipo.debita();
}
}
/*
* Logo, podemos passar por parâmetro qualquer classe que extenda TipoDePagamento,
* para o método executar da classe Pagamento.
*/
// Classe CartãoDebito ao extender TipoDePagamento aceita o contrato de que deve implementar o método debita
class CartaoDebito extends TipoDePagamento{
public void debita() {
print("debita sem taxa");
}
}
// Mesma coisa para CartaoDeCredito
abstract class TipoDePagamento {
/*
* Assinatura abstract no método, obriga as classes que extendem TipoDePagamento a implementarem o método debita,
* ditando assim como elas devem ser estruturadas
*/
abstract void debita();
}
class CartaoDebito {
public void debita() {
print("debita sem taxa");
}
}
class CartaoCredito {
public void debita() {
print("debita com taxa");
}
// Removeremos essas duas condições da classe Pagamento
if (tipoPagamento == "Cartão de Débito"){
print("debita sem taxa");
}
if (tipoPagamento == "Cartão de Crédito"){
print("debita com taxa");
}
class Pagamento {
public void executar(String tipoPagamento) {
if (tipoPagamento == "Cartão de Débito"){
print("debita sem taxa");
}
if (tipoPagamento == "Cartão de Crédito"){
print("debita com taxa");
}
}
@ramon-src
ramon-src / pagamento1if.java
Last active November 21, 2019 00:01
Pagamento com 1 if
class Pagamento{
public void executar(String tipoPagamento) {
if (tipoPagamento == "Cartão de Débito"){
print("debita sem taxa");
}
}
const app = new Vue({
el: '#app',
data: {
errors: [],
name: null,
usuario: null,
senha: null,
age: null,
movie: null
},