[Powered by Google Translate] NATE HARDISON: proqramlaşdırma, bir kitabxana toplusudur
əlaqədar prewritten kodu.
Kitabxanalar necə, kimi proqramçılar, səhm ümumi və
müxtəlif proqramları ilə bir-biri ilə faydalı kodu, biz
, yazmaq və hətta müxtəlif proseslər çalışan ilə
bizim kompüter eyni zamanda.
>> Nin bir az tədqiq edək.
Yəqin etdik ki, daha ümumi funksiyalarından biri
istifadə edən printf funksiyası var.
İndi printf oldu ki, bəzi sehrli funksiyası deyil
kompüter olan ağır kodlu -
daha doğrusu, bu olan C Standard Kitabxanalar hissəsi var
ilə gəlir ki, funksiyalarının toplusu
C proqramlaşdırma dili.
Printf kompüter daxil deyil ildən, o deməkdir ki,
orada həqiqətən getdi bəzi proqramçı idi və yazdı
printf funksiyası və standart qalan ilə paketlenmiş
kitabxana gələcək proqramçılar var ki, belə
səy dublikat.
Yoxlamaq, çünki biz o halda ki, əmin şükür edirik
faktiki printf həyata keçirilməsi nə qədər çox kodu out.
>> Printf bir hissəsi olan C Standard Kitabxanalar, var
ən mühüm vasitələrdən biri
CS50 həlli var.
Giriş-çıxış kitabxana əlavə yerləşir
printf yaşayır, digər kitabxanaların bir qom var
yəqin ki, CS50 ərzində istifadə edəcəyik.
Məsələn, simli kitabxana funksiyaları vardır
C strings müqayisə, onların uzunluğu almaq və onlara concatenate.
Və riyaziyyat kitabxana sizə yardım verir
pi və e kimi sabitləri.
İndi, digər proqramlaşdırma standart kitabxana ilə müqayisədə
Dil, C Standard Kitabxanalar, həqiqətən, kiçik
lakin onlar hələ məhsullarının əhəmiyyətli miqdarda var.
Və Standard kitabxanalar var ki, deyil
yalnız C kitabxanalar; də orada daha çox var
dünya sizə CS50 Kitabxana, o cümlədən istifadə üçün,
şifrələmə və parol çözme ilə kartoqrafiya kitabxana
kodlar və funksiyaları ilə funksiyaları, kitabxana
video geri oynamaq, və s.
>> Bu əhəmiyyətli bir kənara bizə gətirir.
Engineering əsas bacarıqlarının biri biləndir
tools sizin qutusu mövcud istifadə edə bilər ki,
onlara və halda tam yeniləndirir qarşısını almaq
Bunu etmək lazımdır.
Proqramçılar kimi, kitabxanaların ən mühüm biridir
biz alətlər.
Tapmaq zaman özünüzü yorucu və ya görünür bir tapşırıq qarşı-qarşıya
adi bir C simli uzunluğu tapmaq kimi,
o halda ola bilər if özünüz xahiş etməlidir ki,
kimsə artıq əvvəl eyni şeyi edir.
Fırsatlarımız bəzi tapa bilər ki,
bir kitabxana daxilində kömək edir.
>> Belə ki, texniki baxımından bir kitabxana bir ikili fayl
toplusu birlikdə birləşdirən tərəfindən istehsal olunub
bir alət istifadə edərək, obyekt faylları adlı siz
ki, Linker guessed.
Obyekt faylları olur. O faylları zaman sizə almaq
C mənbə kodu tərtib edir.
Proqramçılar kitabxana yazmaq, onlar adətən
faylları iki növ öz C kodunu ayırmaq:
mövzu faylları və həyata faylları.
Konvensiya tərəfindən header fayl,. H fayl uzantısı verilir
və kitabxana bəyan edir ki, kodu daxil
istifadə üçün mövcud olan resursları.
Bu ehtiyatlar funksiyaları, dəyişənlər, structs daxildir
tipli anlayışlar və s və birlikdə onlar
ümumi interfeys adlandırılacaq.
Əslində, əgər heç bir kitabxana var nə merak
mövzu faylları axtarmaq üçün yer var.
>> Məsələn, usr qoparmaq / daxil / stdio.h və kontrol edə bilərsiniz
hər şeyi Əgər haqqında bilmək istəyirdilər
standart io kitabxana.
Burada ildə məhsullarının çox var, və bir az bilər
taramak zorunda vaxt.
Lakin, Google və manpages ilə yanaşı, bu ki,
siz merak istəyirsinizsə getmək üçün yer necə standart I / O
kitabxana funksiyaları işləməyəcək.
Belə ki, burada qeyd etmək üçün bir əsas şey olsa da, mövzu faylları ki,
adətən funksiyası anlayışlar daxil deyil -
ki, faktiki funksiyası tətbiq edir.
Bu əhəmiyyətli bir kompüter bir illüstrasiya edir
prinsipi ilə istinad məlumat gizlətmək adlı
encapsulation dəfə.
>> Kitabxana istifadəçi və ya müştəri kimi, ehtiyac yoxdur
ildə kitabxananın daxili bilirik
istifadə etmək üçün.
Yalnız bir az əvvəl printf görən saxla?
Əgər əvvəl faktiki kodu görmüşdü?
Bəli, Mən sizə güc olsa da, siz ki, güman
dəfə printf ton istifadə.
Bildiyiniz idi Bütün funksiyası bəyannamə olub
bu stdio.h header fayl.
Hər halda, yaxşı məlumat gizlətmək xeyrinə olduğunu
və yazmaq proqramlar hər hansı dəyişikliklər izolə olunur
kitabxana funksiyalarının həyata keçirilməsi kodu.
Printf dəyişikliklərin həyata keçirilməsi, siz yoxdur
getmək və printf istifadə proqramları bütün dəyişdirmək üçün.
>> Belə ki, həyata yerləşir getmək edir?
Bəli, yenə konvensiya tərəfindən icrası gedir
edir. c fayl uzantısı ilə faylı.
Adətən, mövzu faylları və həyata faylları əl getmək
tərəfdən, belə ki, yeni simli bir dəstə elan olsanız
mystring.h funksiyaları, sonra bütün müəyyən olacaq
mystring həmin funksiyaları. c.
Beləliklə mövzu və həyata faylları sonra
sonra bağlı olan obyekt faylları yaratmaq, tərtib
ikili kitabxana fayl istehsal birlikdə.
Kitabxana yazıçı sonra ikili fayl boyunca yükləyəcək
mövzu faylları istifadə etmək istəyən proqramçılar ilə
kitabxana.
Bu nöqtədə. C həyata faylları deyil
ki, sıfırdan kitabxana derleyeceğiz istisna olmaqla, ehtiyac
onlar tez-tez tərk edirik.
>> C kitabxana istifadə etmək üçün iki şeyə var.
Birincisi, # kitabxana mövzu faylları və daxil olmalıdır
istifadə istediğiniz mənbə kodu fayl
kitabxana kodu.
Bu bəyannamə bütün compiler məlumat
funksiyaları, dəyişənlər, structs, Et Cetera ki, mövcud
mövzu faylları belə compiler bir sığortalaya bilər ki,
Əgər lazımi şəkildə kitabxana resurslarının istifadə etdiyiniz
və iki, müvafiq toplaşmaq kodu yaratmaq.
Kitabxana mövzu faylları olduğu asılı olaraq
yerləşən # daxildir sintaksis dəyişir.
Mövzu faylları sisteminin yerləşir edin
default qovluğu daxil -
adətən, usr/include--
daxildir # kimi sonra bucaq mötərizədə sintaksis istifadə olunur
.
Lakin, mövzu faylları eyni yerləşir əgər
directory öz kodu kimi, ikiqat quote sintaksis edir
# "mylib.h" daxildir kimi istifadə olunur.
>> Siz ikinci şey ikili keçid etmək
Siz kodu tərtib zaman kitabxana faylı.
Bu super mühüm addımdır.
Mövzu haqqında bizim əvvəllər müzakirə saxla
faylları həyata kodu daxil deyil?
Bu addımı unutsanız, haqqında səhvlər almaq lazımdır
undefined simvol kodunuzu müraciət.
Bu həll etmək üçün,-l bayrağı dərhal sonra istifadə
kitabxana adı ilə bir yer yoxdur.
Aracın, C Standard daxil olmaqla bir çox sistemləri, On
Kitabxanalar sizin üçün avtomatik olaraq bağlıdır.
Lakin, riyaziyyat kitabxana bəzən ayrı-ayrı paketlenmiştir
və-lm ilə bağlı lazım ola bilər.
Aracın, biz sizin üçün bu qayğı və biz də
-lcs50 ilə CS50 kitabxana keçid.
Siz etmək çalıştırdığınızda Aracın bu bütün bilərsiniz.
>> İndi siz istifadə lazımdır bilik olmalıdır
C. kitabxana kəşfiyyat fun var.
My name Nate Hardison və bu CS50 edir.