Class’ları yapmak istediğimiz işlemlerimizi gruplara ayırmak, o grup üzerinden işlemlerimizi yapmak ve rahatlıkla o gruba ulaşmak için kullanırız
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Classes
{
class Program
{
static void Main(string[] args)
{
/*
* Class'ları yapmak istediğimiz işlemlerimizi gruplara ayırmak, o grup üzerinden işlemlerimizi yapmak ve rahatlıkla o gruba ulaşmak için kullanırız
*/
CustomerManager customerManager = new CustomerManager(); //Kullanmak için örneğini oluşturmamız lazım(referansını oluşturduk)
customerManager.Add();
customerManager.Update();
ProductManager productManager = new ProductManager();
productManager.Update();
// Property Classes
Customer customer = new Customer();
customer.Id = 1; //setting (nesne property'sine değer atadık)
customer.FirstName = "Mehmet";
customer.LastName = "ICME";
customer.City = "Kayseri";
//Another method of creating an object
Customer customer2 = new Customer
{
City = "İstanbul",
Id = 2,
FirstName = "Burak",
LastName = "ÖZTÜRK"
};
Console.WriteLine(customer2.FirstName); //getting (nesne property'sinden değer okuduk)
Console.ReadLine();
}
}
class CustomerManager
{
public void Add()
{
Console.WriteLine("Customer Added!");
}
public void Update()
{
Console.WriteLine("Customer Updated!");
}
}
}
Customer.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Classes
{
class Customer
{
//Property Classes
//Genellikle veritabanlarındaki column'ların karşılıklarını class içerisinde property olarak tutabiliriz
//Örneğin bir müşterinin özelliklerini tutmak için kullandığımız nesne
//Property
public int Id { get; set; }
public string LastName { get; set; }
public string City { get; set; }
//Encapsulation
//Bir field üzerinde get veta set ederken ek işlemler yapmak istersek encapsulation kullanırız. Örn müşteri ismini okurken(get) başına Mr ön ekini getir gibi
//Genellikle kullanmayız çünkü SOLID (S) Single Responsibility Prensibine aykırıdır
string _firstName;
public string FirstName
{
get { return "Mr." + _firstName; }
set { _firstName = value; }
}
//Field
public string Mail; //we can't encapsule the fields
}
}
ProductManager.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Classes
{
class ProductManager
{
public void Add()
{
Console.WriteLine("Product Added!");
}
public void Update()
{
Console.WriteLine("Product Updated!");
}
}
}

Yorum bırakın