sadeceben

println!("sadeceben");

println!("sadeceben@vuhuv.com");

Nov 18, 2020 • software

YAZILIM TASARIM MIMARILERI

Dekorator Tasarim Deseni :

usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;

namespace ConsoleApp2 {
	class DekoratorDeseni {
		interface IAraba {
			void bilgiDetaylari ();
			void fiyatEkle(double eklenmisFiyat);
			void tanimEkle(string eklenmisTanim);
		}
		public class Araba: IAraba {
			public string model { get; set; }
			public string marka { get; set; }
			public double fiyat { get; set; }
			public string tanim { get; set; }
			public Araba() {
				fiyat = 125.000;
			}
			public void bilgiDetaylari () {
				Console.WriteLine(tanim);
			}
			public void fiyatEkle(double eklenmisFiyat) {
				fiyat += eklenmisFiyat;
			}
			public void tanimEkle(string eklenmisTanim) {
				tanim = "Model:" + model + " Marka: " + marka + " Guncel Fiyat: " + fiyat.ToString() + " " + eklenmisTanim;
			}
		}
		class ArabaDekorator: IAraba {
			private IAraba araba;
			public ArabaDekorator(IAraba a) {
				araba = a;
			}
			public void bilgiDetaylari () {
				araba.bilgiDetaylari ();
			}
			public void fiyatEkle(double eklenmisFiyat) {
				araba.fiyatEkle(eklenmisFiyat);
			}
			public void tanimEkle(string eklenmisTanim) {
				araba.tanimEkle(eklenmisTanim);
			}
		}
		class camTavanDekorator: ArabaDekorator {
			public camTavanDekorator(IAraba araba) : base(araba) {}
			public void bilgiDetaylari () {
				base.fiyatEkle(15);
				base.tanimEkle("camTavan bilgisi araca eklendi");
				base.bilgiDetaylari ();
			}
		}
		class parkSensoruDekorator: ArabaDekorator {
			public parkSensoruDekorator(IAraba araba) : base(araba) {}
			public void bilgiDetaylari () {
				base.fiyatEkle(10);
				base.tanimEkle("parkSensoruaraca eklendi");
				base.bilgiDetaylari ();
			}
		}
		static void Main(string[] args) { //Orjinal nesne
            IAraba araba = new Araba() { model = "Polo", marka = "Volkswagen", fiyat = 125.000, tanim = "Yeni araba eklendi"};
            //Nesneye cam tavan ozelliginin eklenmesi
            camTavanDekorator camTavan = new camTavanDekorator(araba);
            camTavan.bilgiDetaylari();
            //Park sensoru ozelliginin eklenmesi
            parkSensoruDekorator parkSensoru= new parkSensoruDekorator(araba);
            parkSensoru.bilgiDetaylari();
			//Orjinal ikinci nesne
            IAraba araba2 = new Araba() { model = "S90", marka = "Volvo", fiyat = 240.000, tanim = "Yeni araba eklendi"};
            //Park sensoru ozelliginin eklenmesi
            parkSensoruDekorator parkSensoru2 = new parkSensoruDekorator(araba2);
            parkSensoru2.bilgiDetaylari();
 
       }
    }
 }

Proxy Deseni :

using System;
namespace ConsoleApp2 {
	class Program {
		public interface INesne {
			string istek();
		}
		private class Nesne {
			public string istek() {
				return "Sol taraftaki kapiya git\n";
			}
		}
		public class Proxy: INesne {
			Nesne _nesne;
			public string istek() {
				if (_nesne == null) {
					Console.WriteLine("Robot inaktif durumdadir");
					_nesne = newNesne();
					return "Proxy sinifirobotun istegini bulamiyor. Lutfen robotu aktif ediniz. \n";
				}
				else Console.WriteLine("Robot aktif durumdadir");
				return "Proxy sinifirobotun istegini belirtiyor: " + _nesne.istek();
			}
		}
		public class korumaProxy: INesne {
			Nesne _nesne;
			string sifre = "hodor";
			public string dogrulama(string _s) {
				if (_s != sifre) return "Koruma Proxy: Sifre gecerli degil, erisim izni yok";
				else_nesne = new Nesne();
				return "Koruma proxy: Sifre gecerli, erisim saglandi";
			}
			public string istek() {
				if (_nesne == null) return "Koruma proxy: Ilk olarak dogrulama islemi gerceklestirinz";
				else return "Proxy sinifirobotun istegini belirtiyor: " + _nesne.istek();
			}
		}
		static void Main(string[] args) {
			INesne _nesne = new Proxy();
			Console.WriteLine(_nesne.istek());
			Console.WriteLine(_nesne.istek());
			_nesne = new korumaProxy();
			Console.WriteLine((_nesne askorumaProxy).dogrulama("Deneme"));
			Console.WriteLine((_nesne askorumaProxy).dogrulama("hodor"));
			Console.WriteLine(_nesne.istek());
			Console.ReadKey();
		}
	}
}

Adaptör Deseni :

using System;
namespace ConsoleApp5 {
	class Program {
		class Adapte {
			public double ozelIstek(double a, double b) {
				return a / b;
			}
		}
		interface IHedef {
			string istek(int i);
		}
		class Adaptor: Adapte,
		IHedef {
			public string istek(int i) {
				return "Sayinin yuvarlanmishali " + (int) Math.Round(ozelIstek(i, 3));
			}
		}
		static void Main(string[] args) {
			Adapte _adapte = new Adapte();
			Console.WriteLine("Yeni arayuzden once: ");
			Console.WriteLine(_adapte.ozelIstek(5, 3));
			IHedef _hedef = new Adaptor();
			Console.WriteLine("Yeni arayuz ile: ");
			Console.WriteLine(_hedef.istek(5));
			Console.ReadKey();
		}
	}
}

using System;
namespace ConsoleApp6 {
	class Program {
		interface ISiparis {
			void siparis (string s);
		}
		class Adapte {
			public void ozelSiparis () {
				Console.WriteLine("Gitar siparisi basarilibir sekilde olusturulmustur... ");
			}
		}
		class Adaptor: Adapte,
		ISiparis {
			public void siparis (string s) {
				Console.WriteLine(s + " siparisi basarilibir sekilde olusturulmustur... ");
			}
		}
		static void Main(string[] args) {
			Adapte _adapte = new Adapte();
			_adapte.ozelSiparis ();
			ISiparis_siparis = new Adaptor();
			_siparis.siparis ("Keman");
			ISiparis_siparis2 = new Adaptor();
			_siparis2.siparis ("Tulum");
			ISiparis_siparis3 = new Adaptor();
			_siparis3.siparis ("Saz");
			Console.ReadKey();
		}
	}
}

Cephe Deseni :

using System;
namespace ConsoleApp3 {
	class Program {
		public class Gadget {
			public string islem1() {
				return "Gadget: Hazir\n";
			}
			public string islem2() {
				return "Gadget: Kalkisa Hazirlaniyor...\n";
			}
		}
		public class Spencer {
			public string islem1() {
				return "Spencer: Hazir\n";
			}
			public string islem2() {
				return "Spencer: AtesEtmeye Hazirlaniyor...";
			}
		}
		public class Cephe {
			protected Gadget _g;
			protected Spencer _s;
			public Cephe(Gadget altG, Spencer altS) {
				this._g = altG;
				this._s = altS;
			}
			public string Islem() {
				string sonuc = "Cephe  Tasarim Altsistemleri Baslatti\n";
				sonuc += this._g.islem1();
				sonuc += this._s.islem1();
				sonuc += "Cephe TasarimiAltsistemlere Komut Gonderiyor...\n";
				sonuc += this._g.islem2();
				sonuc += this._s.islem2();
				return sonuc;
			}
		}
		static void Main(string[] args) {
			Gadget altG = new Gadget();
			Spencer altS = new Spencer();
			Cephe cep = new Cephe(altG, altS);
			Console.WriteLine(cep.Islem());
		}
	}
}

Diğer bloglarıma erişmek için bir tık yapmanız yeterli :)