[Gelistirici] Çomar ve Yanlışlar

Bahadır Kandemir bahadir at pardus.org.tr
20 Ara 2010 Pzt 16:36:25 EET


20 Aralık 2010 Pazartesi günü (saat 16:21:53) Gökmen Göksel şunları yazmıştı:
> Pazartesi 20 Aralık 2010 günü (saat 14:08:42) Bahadır Kandemir şunları
> yazmıştı:
> > API tanımını ve API'yi sağlayacak kodu, API yazarlarından birinin
> > tekeline vermiş oluyorsun bu durumda.
> 
> Şu anda ne yazılıp ne yazılmayacağı kimin elinde ? Yine API yazarlarının
> elinde değil mi ? Model.xml'i de kendileri hazırlayıp koymuyorlar mı ? Sen
> sadece onları comar paketine dahil etmiyor musun ? Sen sadece kontrol
> ederken modeli kontrol etmiyor musun ?

Aynen bu şekilde işliyor, model kontrolü tek merkezde. Öyle de kalmalı. Görev 
modelleri oyuncak değil, minimum değişiklik ile düzgün bir API sunalım, görevi 
yerine getirecek betiklerdeki değişiklikler arayüzü etkilemesin, arayüz 
geliştiren de görev betiğinde işlerin nasıl yapıldığından bağımsız 
geliştirilebilsin dedik, doğru bir karar bu.

Her şey tutarlı bir API sunalım diye.

> Model standartını belirledikten sonra bu şartlara uymayan modelleri depoya
> almazsın olur biter. Tüm sorumluluğun tek bir kişide olması süreçleri
> uzatıyor.

Nasıl uzatıyor Gökmen?

- Modeli değiştirmek için 1 COMAR güncellemesi, benim işim.
- Görev betiğini sen yazıyorsan paket zaten sende olmalı, güncelleme senin 
işin. ("Backend'i o kadar iyi tanıyorsan, paketi de tanıyorsundur" kuralı)
- Arayüzün güncellenmesi senin işin.

Proje ürüne dahil olurken birkaç defa yapılacak işler bunlar. Paket 
güncellemek ya da başka geliştiriciye paket güncelle demek ne kadar zor?

> Sanki milyonlarca geliştiricimiz var da sen bunların kotrol dışına
> çıkacağında ısrarcı oluyorsun. Bu hale bile getirsek 1 bilemedin 2 kişi
> daha dahil olacak koda.

API'yi tutarlı ve ölçeklenebilir tutmakta fayda var. "X şirketinden biri 
gelse" ne olacak?
 
> Bu kadar önemli, yapılması imkansız gibi gözüken ne hala anlamış değilim.

Yapılması imkansız değil. Modeli ve API'yi geliştiren aynı kişi olacak ve 
"görev temelli" dediğimiz, hala sağda solda anlattığımız API yaklaşımını bir 
kenara atmış olacağız.

> > Kötü bir abstraction. Model ve kod ayrı olmalı.
> 
> Model ve kod ayrı zaten, sadece aynı paket ile geliyorlar.

Bir modeli, birden fazla uygulama sağlayabilir. Belirli bir görevi 
(API'yi/modeli) sağlayan uygulamalar da bu betikleri beraberlerinde getirir. 
Olay bu kadar basit.

1 paket yerine 3 paket release etmeye zor demek nasıl bir tembelliktir 
anlamıyorum.

Görev API'si



Gelistirici mesaj listesiyle ilgili daha fazla bilgi