Kendi kütüphanem mi hazır kütüphane mi?

Başlatan yamak, 12 Ekim 2011, 20:33:58

yamak

Merhaba arkadaşlar.Şimdiye kadar çoğunlukla kendi kütüphane mi yazdım.Pic olsun lpc1768 olsun genellikle kendi kütüphanemi yazıp kullandım.Ancak tft ekran sürme sd karta veri yazma gibi uygulamalarda hazır kütüphane kullandım.Ama staj yaptığım şirkette ti ın mcu larını kullanıyolardı ve hep stellaris ware kütüphaneleri kullanıyolardı.Ben de mecruben staj yaparken sttellarisWare ı kullandım.Stajadaki bi mühendisle geçen muhabbetim genellikle yaptığım uygulamalarda datasheetleri okuyup kendi kütüpahenemi yazıyorum dedim.O da bana bunu gereksiz olduğunu boşuna zaman kaybı olduğunu söyledi.Şimdi soruyorum sizce hangisi doğru hazır kütüphane mi kullanmak yoksa registerları güzelce okuyup kendi kütüphanemizi yazmak mı?Ben hala hazır kullanmama taraftarıyım ama doğru olanın bu olup olmadığını bilmiyorum.Bu konu tecrübeli arkadaşlar bu sorumu cevaplarsa mutlu olurum.

mozkan87

Bu durum içinde bulunulan duruma göre değişir. Eğer çok önemli ve özel bir proje ile çalışıyorsanız kodun tamamına hakim olup kütüphaneyi bizzat hazırlamak önemlidir. Ama hayati önemi olmayan  projeler için böyle bir uğraşa girmeye gerek yok hazır kütüphaneyi kullanmak en iyisi. Hem zaman kaybı olmaz hem yorucu olmaz. Ama bir sorunla karşılaşırsanız sorunu bulana kadar baya bir uğraştırıyor. Eğer kütüphaneyi kendiniz hazırladıysanız koda hakim olduğunuz için sorunun çözümü kolaylaşır. Daha tecrübeli olan arkadaşlar daha güzel açıklamalar yazar. Kolay gelsin.

f_machine

#2
Bende önceden kütüphaneleri kendim yazma taraftarıydım . Ama işe başladıktan sonra bunun gereksiz olduğunu düşünmeye başladım.
Zaten sd card, usb , ethernet , tft gibi kütüphaneleri yazmak öyle bi günde olacak iş değil.
Genelde iş yükü yoğun oluyor.Bunlarla uğraşmak yerine hızlıca çözüme gitmek lazım.Sonuçta bahsettiğiniz kütüphaneler de amatör işi değil.
Test edilmiş , profesyonel kişilerce yazılmış kodlar.

yamak

Evet bu konuda haklısınız.Bazı kütüphaneler gerçekten çabucak yazılacak türden değil.Örnek ethernet kütüphanesi ve fat kütüphanesi.Bu kütüphaneleri sorunsuz bi şekilde yazılması 1 gün değil 1 haftada bile zor yazılır.Benim bu düşünceyi savunmammın nedeni arkada çalışan komutlara hakim olmak.Atıyorum i2c portunu kullanıyosan arkada ne tür işlemler dönüyo bundan haberdar olmak.Sonuçta ilerde karşımıza neyin çıkacağını bilemeyiz.Bence öğrencilik zamanında kütüphanemezi kendimiz yazmalı işe başladığımızda hazır kütüphane varsa kullanmalı.Yanlış mı düşünüyorum?

Sepiroth

Aslinda bana gore her daim kisi kendi kutuphanesini yazip onu kullanmali, en onemli gerekce ise sizinde dediginiz gibi arkada calisan kodun ne is yaptiginin bilinmesi. Ornegin ben ilk CCS ile baslamistim (asm'den sonra) sonra direk C18e gectim, ve hazir olan kutuphaneleri kullanmadim, ve inanin cok faydasini gordum.

Ama is hayatinin getirdigi bazi zorluklarda var tabi, misal bir TCP/IP stack'i olsun, bir GUI kutuphanesi, USB stack vb. kompleks kutuphaneleri yazmak ta bir I2C kutuphanesi yazmaya benzemiyor elbet.. Ozellikle ArGe sektorunde zaman cok kiymetli oldugu icin kendini kanitlamis basarili kutuphaneler kullanmak muhendislik acisindan daha dogru bence, bir nevi kisitli zamanini amerikayi yeniden kesfetmek yerine daha yapici is bitirici isler yapmaya harcamak daha mantikli.. Ha, vaktin vardir, o is icin ayirabilecegin elemanin vardir ve de yeterli bilgin vardir, yazarsin kendi kutuphaneni, o da en guzeli:)
Either you feel it, or not...

Elektroemre

Evde yaptığım projerlerde;
%90 kendim yazıyorum, %10 hazır kullanıyorum,
iş'te;
%10 kendim yazıyorum, %90 hazır kullanıyorum :)

Şartlara, kişiye, verilenler, istenelere, içinde bulunulan duruma, zamana ve başka bir çok sebebe göre durum değişir.
Ama pro yazılmış kodlardan biraz copy-paste yapmanın yada tamamen kullanmanın çok özel bir proje olmadıkça zararı olmaz.
Ne zaman hazır lib işe yaramaz? Yüksek hız gerektiğinde yada daha önce kimsenin yapmadığı bir şeyi gerçeklemek istediğinde vs vs.

yamak

Alıntı YapEvde yaptığım projerlerde;
%90 kendim yazıyorum, %10 hazır kullanıyorum,
iş'te;
%10 kendim yazıyorum, %90 hazır kullanıyorum
Ben de tam böyle düşünüyorum.Fakat bazı kütüphaneleri evde de yazmaya imkan olmuyo mesela ethernet,fat vs..

OptimusPrime

bazı şeyler bazı durumlarda bazı zamanlarda bazı yerlerde bazı şekillerde bazı ....larda gereksizdir, vakit kaybıdır.

mesela;
ti ın grafik kütüphanesi oldukça zengin ve esnek yazılmış. bazı kısıtlamaları olsa da oldukça kullanışlı. yeni font tanımlamasından, sıkıştırılmış resim formatlarına, hatta canvas yapısına izin veriyor. ayrıca entegrasyonu hızlandırmak için adamlar bazı pc programları da yazmışlar. şimdi böyle bir çalışmayı tek başıma ben ne kadar zamanda yaparım sorunu kendime sorarsam. kafadan 1 sene = vakit kaybı/gereksiz iş.

adam yazmış işte kullan gitsin. ama dediğim gibi bazı durumlarda...
https://donanimveyazilim.wordpress.com || Cihân-ârâ cihân içredir ârâyı bilmezler, O mâhîler ki deryâ içredir deryâyı bilmezler ||

SERRO EFE

@OptimusPrime
TI in grafik kütüphanesini paylaşmanız mümkünmü.

OptimusPrime

stellarisware indirip bilgisayarına kurarsan örnek programların içerisinde bahsettiğim kütüphanede geliyor. fakat lib uzantılı olduğu için başka mikrolar ile kullanma şansın yok...
https://donanimveyazilim.wordpress.com || Cihân-ârâ cihân içredir ârâyı bilmezler, O mâhîler ki deryâ içredir deryâyı bilmezler ||