“პატარა და მუშა”
როცა გრძელი არ ნიშნავს უკეთესს
არ ვიცი რა ასოციაცია გაგიჩინათ სათაურმა, თუმცა ეს ის არ არის, რასაც თქვენ ფიქრობთ.
ამ მოკლე პოსტში, ძალიან კონკრეტულ თემაზე დავწერ, ძალიან კონკრეტული მაგალითით.
კარგი, ზომას აქვს მნიშვნელობა. მაგრამ გრძელი არ ნიშნავს უკეთესს. მახინჯი კოდის წერასა და მის შიშსა და კომპლექსებზე ჩემს წინა პოსტშიც მიწერია, სადაც ვამბობ, რომ სწორედ ეს სირცხვილის გრძნობა უბიძგებს ადამიანს, ამ კონკრეტულ შემთხვევაში კი ინჟინერს რომ განვითარდეს და უკეთესი კოდი წეროს.
3 კვირაა ახალ კომპანიაში ვმუშაობ და Ruby-ზე მანამდე არასდროს მიწერია. ჩემი აზროვნება ადრეული დროიდანვე არასწორი მიდგომებით დამიმახინჯეს და მივხვდი, რომ როცა რაღაც ნასწავლი გაქვს და სხვა რამის ათვისებას ცდილობ, რომელთანაც იმ ძველს overlap აქვს და თან ისე, რომ ან ერთი უნდა იცოდე ან მეორე, გიწევს იმ ძველის დავიწყება და ნოლიდან ახლის სწავლა, რაც ბევრად უფრო რთულია ვიდრე თავიდანვე ახლის სწავლა. მგონია, რომ სწორედ ამიტომაა (სხვა ობიექტურ მიზეზებთან ერთად), რომ ბავშვები/მოზარდები ბევრად ადვილად ითვისებენ ახალ უნარ-ჩვევებს, ინფორმაციას და ა.შ.
ხოდა, რატომ ვწერ ამ პოსტს. როგორც აღვნიშნე, რუბიზე მანამდე არ მიწერია და კოდს, რომელსაც ახლა განახებთ, რუბის არცოდნით ვერ გაამართლებთ. შევადაროთ ორი პატარა მეთოდი. პირველი დავწერე რამდენიმე წუთში, ხოლო პირველის მეორემდე მიყვანას მოვანდომე რამდენიმე საათი.
ვიცი, შეიძლება გეცინებათ, მაგრამ დამახინჯებულად ნასწავლის “გადასწავლა” და თავიდან, “სწორად” ფიქრის სწავლა არც ისე ადვილი საქმეა. ჩემს შემთხვევაში, ამ კონკრეტულ მაგალითზე დაყრდნობით, 40 ხაზიანი, ყოვლად მახინჯი კოდის 12-ხაზიან ლამაზ კოდამდე მიყვანა იყო სწორედ ამ პროცესის ძალიან თვალშისაცემი ილუსტრაცია. ამ ერთ დღეში, ამ ერთი მეთოდის რეფაქტორინგში უკვე გავიზარდე. ვიცი, ვხედავ ღიმილს თქვენს სახეზე..
დანარჩენს კი ეს ორი code snippet თავად იტყვის:
პ.ს. ორივე ერთი და იმავე რაღაცას აკეთებს იდეაში. ორივე მუშაობს, but there is a difference. And it’s a HUGE one.
სიმახინჯე:
სილამაზე:
Feel the difference.