Classes

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

WordPress.com'da bir web sitesi veya blog oluşturun

Yukarı ↑

WordPress.com ile böyle bir site tasarlayın
Başlayın