Test Driven Development
TDD Cycle
TDD, önce test case'in yazılmasını sonrasında kodun yazılmasını söyler.
TDD döngüsel bir süreçtir ve RED, GREEN, REAFTOR olmak üzere üç aşamayı içerir. RED aşamasında test case yazılır ve çalıştırılır. Test başarısız olur. GREEN aşamasında test case'in geçmesi için ilk kod yazılır. Kodun clean olmasına ihtiyaç yoktur. Asıl amaç test case'in geçmesi için en basit kodu yazmaktır. Test case tekrar çalıştırılır. Test başarılı olduysa REFACTOR aşamasına geçilir. Bu aşamada ise kod refactor edilebiliyorsa edilir. Test case tekrar çalıştırılır. Eğer test case başarısız olursa kod tekrar düzenlenir. Bu döngü kod istenen hale gelene kadar devam ettirilir.
Devamını okuModular Monolith Nedir?
Traditional Monolith
Öncelikle Traditional Monolith yaklaşımından bahsedelim. Bu yaklaşım katmanlara odaklanır. UI, Business ve Data olmak üzere üç katman içerir. Bir projedeki tüm özellikler dikey olarak bu katmanlara ayrılır. Bu üç katman arasında Business katmanı, tüm modüllerin business logic'ini içeren katmandır. Her bir modül, diğer modüllerin business logic'ini bilir ki buna tightly coupled diyebiliriz.

Blockchain Uygulamalarına Mobil Cüzdan ile Bağlanma
Blockchain Uygulama Geliştirme yazı serisinde UI projesinde cüzdan olarak MetaMask'ı kullanmıştık. Uygulamayı kullanmak için tarayıcıda MetaMask'ın eklenti olarak kurulu olması gerekiyordu. MetaMask'ın aynı zamanda mobil uygulaması da var. Cüzdan ile iletişimi tarayıcı eklentisi yerine mobil ile sağlayabilir miyiz? Cevap evet sağlayabiliriz.
Devamını okuASP.NET Core Time Limited Protection
ASP.NET Core'da verilerimiz için belirli bir süreliğine koruma sağlayabiliriz. Örneğin şifrelediğimiz bir verinin çözülmesi için bir dakikalık bir süre tanımlayabiliriz. Yani bu bir dakikalık süre aşılırsa şifreli verinin çözülemeyeceği anlamına gelir. Bunun için DataProtectionAPI kullanılıyor.
Devamını okuBlockchain Uygulama Geliştirme – #3 Kontratı Yayınlama ve API Hazırlama
Bir önceki yazımızda UI ile etkileşimin nasıl gerçekleştiğini görmüştük. Bu yazımızda kontratımızı Ethereum'un test ağlarından olan Rinkeby'de yayınlayacağız. Sonrasında kontrat için API hazırlayacağız. Eğer önceki yazıyı okumadıysanız aşağıdaki bağlantıdan giderek okuyabilirsiniz.
Devamını okuBlockchain Uygulama Geliştirme – #2 UI ile Etkileşim
Bir önceki yazımızda kontratımızı hazırlamıştık, test kodlarımızı yazmıştık. Bu yazıda ise UI ile kontratın iletişimini gerçekleştireceğiz ve kontratta tanımlı fonksiyonları çağıracağız. Eğer önceki yazıyı okumadıysanız aşağıdaki bağlantıdan giderek okuyabilirsiniz.
Devamını okuBlockchain Uygulama Geliştirme - #1 Kontrat Oluşturma
3 parça olacak bu yazı serisinde Dapp(Decentralized application) denilen merkeziyetsiz bir blockchain uygulaması geliştireceğiz. Hands-on Labs tadında olacak. Uygulama geliştirmeye başlayarak öğrenme yolunu tercih edeceğiz. İlk yazı kontrat oluşturmak üzerine olacak.
Smart Contract ve Solidity
Smart Contract, blockchain ağı üzerinde çalışan içerisinde veriyi de saklı tutan kod parçalarıdır. Yani kodun ve verinin bir olduğu bir yapı. Bu kontratı yazmamızı sağlayan programa dilinin adı ise Solidity. Çok gelişmiş bir değildir ki zaten kontrat yazarken ihtiyaçlarımız da belli.
Devamını okuBootstrap Filter Plugin
Form elementlerinin yan yana gösterilmesi yerine kullanıcı aksiyonu ile form elementinin gösterilmesini sağlar.

ASP.NET Core Feature Management
Feature Management, .NET Core uygulamalarında özellik yönetimi sağlar. Uygulamaya ait özelliklerin aktiflik/pasiflik durumunun yönetilmesine ve sorgulanmasına imkan verir. Örneğin yeni geliştirdiğiniz bir özelliğin belirli tarih aralığında aktif olmasını sağlayabilirsiniz. Başka bir örnek vermek gerekirse geliştirdiğiniz bir özelliğin belirli yüzdelik oranla aktif olmasını sağlayabilirsiniz. A/B testi gibi.
Devamını okuASP.NET Core ile Event Sourcing - 02 Messaging
1. Giriş
Bu yazı aşağıdaki yazının devamı niteliğinde olduğu için aşağıdaki yazıyı okuyup uygulamanızı öneririm. Aşağıdaki yazıdaki örnek proje üzerinden devam edeceğiz.
Bir önceki yazıda Kanban Board örneği yapmıştık. RESTful API oluşturarak create, assign, move ve complete endpoint'lerini yazmıştık. Bu endpoint'lere gelen istekleri birer event olarak Event Store'a kaydetmiştik. Yani Event Store'un store kısmı ile ilgilenmiştik. Bu yazıda ise messaging kısmı ile ilgileneceğiz.
RESTful API endpoint'lerimize aşağıdaki endpoint'i de dahil edeceğiz.
[GET] api/tasks/{id}
Devamını okuArama
Kategoriler
Etiketler
- ASP.NET Core
- AWS
- Bootstrap
- CQRS
- CloudRun
- Comprehend
- Continous Integration
- Couchbase
- Dapp
- Devops
- DynamoDB
- E2E Tests
- ElasticCache
- Ethereum
- Event Sourcing
- Event Store
- GCP
- Ganache
- GeoSearch
- Infura
- Integration Tests
- JavaScript
- Jenkins
- Kubernetes
- Lambda
- MetaMask
- Node.js
- Rinkeby
- Serverless
- Smart Contract
- Truffle
- Unit Tests
- VueJs
- WalletConnect
- Web3
- xUnit