Switch განცხადებები უფრო სუფთა სინტაქსია if else განცხადებების კომპლექსურ ან დაწყობილ სერიაზე. გამოიყენეთ switch ნაცვლად if, როდესაც: თქვენ ადარებთ გამოთქმის მრავალ შესაძლო პირობას და თავად გამონათქვამი არატრივიალურია. თქვენ გაქვთ მრავალი მნიშვნელობა, რომელსაც შეიძლება ერთი და იგივე კოდი დასჭირდეს.
როდის იქნება მიზანშეწონილი switch განაცხადის გამოყენება?
გადამრთველის განცხადება გამოდგება ცვლადების შედარებისას და ასევე გამართვის მიზნებისთვის კოდის შექმნისას. ის ასევე სასარგებლოა ცვლადის კლასის ტესტირებისას, განსაკუთრებით Ruby-ში. ის დამატებით ამოწმებს რამდენიმე ცვლადს ერთი ცვლადის წინააღმდეგ შედარების მიზეზების გამო.
გამორთვის განცხადებების გამოყენება ცუდია?
Switch case არ არის ცუდი სინტაქსი, მაგრამ მისი გამოყენება ზოგიერთ შემთხვევაში მას კოდის სუნის ქვეშ აქცევს. ის ითვლება სუნი, თუ იგი გამოიყენება OOPS-ში. ამგვარად, გადამრთველი უნდა იყოს გამოყენებული ძალიან ფრთხილად.
რატომ არ უნდა გამოვიყენოთ გადამრთველი?
ბოლო, მაგრამ არანაკლებ მნიშვნელოვანია, რადგან switch განაცხადი მოითხოვს ჩვენგან ბევრი კლასის შეცვლას, ის არღვევს Open-Closed პრინციპს SOLID პრინციპებიდან. დასკვნის სახით, გადართვის განცხადება ცუდია, რადგან ისინი შეცდომისკენ მიდრეკილნი არიან და მათი შენარჩუნება შეუძლებელია.
განაცხადების გადართვა თავიდან უნდა იქნას აცილებული?
IMO გადართვის განცხადებები არ არის ცუდი, მაგრამ თავიდან უნდა იქნას აცილებული თუ ეს შესაძლებელია. ერთი გამოსავალი იქნება რუკის გამოყენება, სადაც კლავიშები არის ბრძანებები დამნიშვნელობები Command ობიექტები შესრულების მეთოდით. ან სია, თუ თქვენი ბრძანებები არის რიცხვითი და არ აქვთ ხარვეზები.