diff --git a/.vscode/settings.json b/.vscode/settings.json index cf16c6e1..44e47dde 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,4 +1,4 @@ { - "editor.fontSize": 20 + "editor.fontSize": 15 } \ No newline at end of file diff --git a/index.html b/index.html index 66e17a36..2810849f 100644 --- a/index.html +++ b/index.html @@ -6,7 +6,7 @@ \ No newline at end of file diff --git a/src/app.js b/src/app.js index e69de29b..8dc76b7c 100644 --- a/src/app.js +++ b/src/app.js @@ -0,0 +1,48 @@ +/* console.log("Merhaba Kodlama.io") +let dolarDun=9.20 +let dolarBugun=9.30 + +let konutKredileri=["Konut Kredisi","Emlak Konut Kredisi","Kamu Konut Kredisi","Özel Konut Kredisi"] +console.log("") +console.log(konutKredileri) +console.log("Ahmet ÖZER") */ +let student={id:1, name:"Ahmet"} +function save(ogrenci, puan=10) { + console.log(ogrenci.name + ":"+puan) +} +//save(student); + +let students=["Ahmet", "Mehmet", "Tuna"] + +//console.log(students) + +let students2=[student,{id:2,name:"Nehir"},"Ahmet", "Mehmet", "Tuna"] +//console.log(students2) + +//rest = geriye kalan parametreler (params, varArgs) +let showProducts=function (id,...products) +{ + console.log(id) + console.log(products[0]) +} +//console.log(typeof showProducts) +//showProducts(10,["Elma","Armut","Karpuz"]) //rest parametre + + +//Spread= ayrıştırmak (spread=...) +let points=[1,2,3,50,60,15,30] +console.log(...points) +console.log(Math.max(...points)) +console.log("ABC","D",..."EFG","H") + +//Destructuring = Parçalara ayırmak. Array değerlerini değişkenlere atamak için kullanır. +let populations=[10000,20000,30000] +let [small,medium, high]=populations +console.log(small) +console.log(medium) +console.log(high) diff --git a/src/components/userComponent.js b/src/components/userComponent.js new file mode 100644 index 00000000..779b20ec --- /dev/null +++ b/src/components/userComponent.js @@ -0,0 +1,22 @@ +import { BaseLogger, ElasticLogger, MongoDbLogger } from "../crossCuttingConcers/logging/logger.js" +import User from "../models/user.js" +import UserService from "../services/userService.js" + +console.log("User Component Yüklendi.") + +let logger1 = new MongoDbLogger() +let userService = new UserService(logger1) + +let user1 = new User(1,"Ahmet","ÖZER","Sakarya") +let user2 = new User(1,"Tuna","ÖZER","Sakarya") + +userService.add(user1) +userService.add(user2) +console.log(userService.list()) +console.log(userService.getById(1)) + + + +let customer = {id:1, firstName:"Ahmet"} +//protayping +customer.lastName="ÖZER" \ No newline at end of file diff --git a/src/crossCuttingConcers/logging/logger.js b/src/crossCuttingConcers/logging/logger.js new file mode 100644 index 00000000..479e2af4 --- /dev/null +++ b/src/crossCuttingConcers/logging/logger.js @@ -0,0 +1,17 @@ +export class BaseLogger{ + log(data){ + console.log("Default Logger"+data) + } +} + +export class ElasticLogger extends BaseLogger{ + log(data){ + console.log("Logged To Elastic"+data) + } +} + +export class MongoDbLogger extends BaseLogger{ + log(data){ + console.log("Logged To Mongo Database"+data) + } +} \ No newline at end of file diff --git a/src/functions.js b/src/functions.js new file mode 100644 index 00000000..c09d7f82 --- /dev/null +++ b/src/functions.js @@ -0,0 +1,82 @@ +function addToCart(productName,quantity) { + console.log("Sepete Eklendi : " + productName +" Adet : "+quantity) +} //productName="Ahmet" Default değer ataması + +addToCart("Elma", 10) +//addToCart("Armut") +//addToCart("Karpuz") + +let sayHello=()=>{ +console.log("Selam Ahmet") +} +sayHello() + +let sayHello1 =function () { + console.log("Hello Word") +} +sayHello1() +function addToCart2(productName, quantity, unitPrice) { + +} +addToCart2("Elma", 5, 10) +addToCart2("Armut", 10, 20) +addToCart2("Karpuz", 70, 5) + +let product1={productName:"Elma", unitPrice: 5, quantity: 10} +function addToCart3(product) { + console.log("Ürün: " +product.productName) + console.log("Ürün Fiyatı: " +product.unitPrice) + console.log("Ürün Adedi: " +product.quantity) +} + +addToCart3(product1) + + +function addToCart4(ourProdutcs) { + console.log(ourProdutcs) +} +let products=[ + {productName:"Elma", unitPrice: 5, quantity: 10}, + {productName:"Armut", unitPrice: 15, quantity: 100}, + {productName:"Karpuz", unitPrice: 2, quantity: 80} +] +addToCart4(products) + +//res +function add(...numbers) { + let total=0; + for (let i = 0; i < numbers.length; i++) { + total=total+numbers[i] + } console.log(total) +} +add(20,30) +add(30,60,80) +add(10,20,30,40,50) + +// ... nokta spread=ayrıştırmak için kullanılır. +let numbers=[30,10,50,500,300,600,120] +console.log(Math.max(...numbers)) + +//distraction +let [icAnadolu, maramara, karadeniz,[icAnadoluSehirleri]]=[ + {name:"İç Anadolu", population:"20M"}, + {name:"Marmara", population:"30M"}, + {name:"Karadeniz", population:"10M"}, + [ + ["Ankara","Konya"], + ["İstanbul", "Bursa"], + ["Trabzon", "Rize"], + ] +] +//console.log(icAnadolu.name) +// console.log(icAnadolu.population) +// console.log(maramara.name) +// console.log(maramara.population) +console.log(icAnadoluSehirleri) + +let newProductName, newUnitPrice, newQuantity +({productName:newProductName, unitPrice:newUnitPrice, quantity:newQuantity} +={productName:"Elma",unitPrice:10,quantity:5}) +console.log(newProductName) +console.log(newUnitPrice) +console.log(newQuantity) diff --git a/src/mapFilterReduce.js b/src/mapFilterReduce.js new file mode 100644 index 00000000..4c32629c --- /dev/null +++ b/src/mapFilterReduce.js @@ -0,0 +1,38 @@ +let cart=[ + {id:1, productName:"Telefon",quantitiy:10, unitPrice:3500}, + {id:2, productName:"Bardak",quantitiy:100, unitPrice:50}, + {id:3, productName:"Kalem",quantitiy:50, unitPrice:35}, + {id:4, productName:"Kitap",quantitiy:20, unitPrice:500}, + {id:5, productName:"Televizyon",quantitiy:10, unitPrice:6500}, + {id:6, productName:"Bilgisayar",quantitiy:5, unitPrice:13500}, +] +console.log("") + +//acc = acümülatör +let total = cart.reduce((acc,product)=>acc+product.unitPrice * product.quantitiy,0) +console.log(total) + +let quantityOver2=cart.filter(product=>product.quantitiy>15) +console.log(quantityOver2) + +// cart.map(product=>console.log(product.productName)) + +// function addToCart(sepet) { +// sepet.push({id:7, productName:"Monitör",quantitiy:2, unitPrice:1500}) +// } + +// addToCart(cart) +// console.log(cart) + +// let sayi=10 + +// function sayiToplam(number) { +// number +=1 +// } +// sayiToplam(sayi) +// console.log(sayi) \ No newline at end of file diff --git a/src/models/user.js b/src/models/user.js new file mode 100644 index 00000000..8ed594f0 --- /dev/null +++ b/src/models/user.js @@ -0,0 +1,8 @@ +export default class User{ + constructor(id, firstName, lastName, city){ + this.id=id + this.firstName=firstName + this.lastName=lastName + this.city=city + } +} \ No newline at end of file diff --git a/src/services/userService.js b/src/services/userService.js new file mode 100644 index 00000000..29a4caba --- /dev/null +++ b/src/services/userService.js @@ -0,0 +1,17 @@ +export default class UserService{ +constructor(loggerService){ + this.users=[] + this.loggerService=loggerService +} + + add(user){ + this.users.push(user) + this.loggerService.log(user) + } + list(){ + return this.users + } + getById(id){ + return this.users.find(u=>u.id===id) + } +} \ No newline at end of file