[Powered by Google Translate] مقابله HARDISON: در برنامه نویسی، کتابخانه، مجموعه ای از
مربوط به prewritten کد.
کتابخانه ها چگونه ما، به عنوان برنامه نویسان، سهم مشترک و
کد مفید با یکدیگر، با برنامه های مختلف
نوشتن، و حتی با فرآیندهای مختلف در حال اجرا در
همان زمان در رایانه های ما.
>> اجازه دهید به بررسی کمی.
یکی از توابع شایع تر است که شما احتمالا
شده است با استفاده از تابع printf است.
در حال حاضر، printf است برخی از عملکرد سحر و جادو شده است
به کامپیوتر hard-coded بودن -
در عوض، آن را بخشی از کتابخانه استاندارد C است که عبارتند از
مجموعه ای از توابع است که همراه با
C زبان برنامه نویسی است.
از آنجا که printf به کامپیوتر ساخته شده است، که بدان معنی است که
برخی از برنامه نویس وجود دارد که در واقع در رفت و نوشت:
تابع printf و آن را با بقیه استاندارد همراه
کتابخانه ها به طوری که برنامه نویسان در آینده مجبور به
تکراری تلاش.
و خدا را شکر که ما مطمئنیم که این مورد، به دلیل چک
خارج چقدر کد آن را در واقع طول می کشد تا پیاده سازی printf است.
>> کتابخانه های استاندارد C، که printf است،
یکی از مهم ترین ابزار های شما
در مقابله با CS50.
علاوه بر کتابخانه های ورودی و خروجی که در آن
زندگی printf، یک دسته از کتابخانه های دیگر وجود دارد که
احتمالا شما می خواهید در طول استفاده از دوره CS50.
به عنوان مثال، کتابخانه رشته ای توابع به
مقایسه رشته های C، طول آنها و الحاق آنها.
و کتابخانه ریاضی به شما می دهد مفید
ثابت، مانند PI و E است.
در حال حاضر، در مقایسه با کتابخانه های استاندارد های برنامه نویسی دیگر
زبان، کتابخانه های استاندارد C واقعا کوچک است،
اما آنها هنوز هم مقدار قابل توجهی از مسائل است.
و این که می گویند که کتابخانه استاندارد
فقط C کتابخانه، بسیاری از خارج وجود دارد در وجود دارد
جهان را برای شما به استفاده کنید، از جمله کتابخانه CS50،
کتابخانه های کارتوگرافی با رمزگذاری و رمزگشایی
توابع، کتابخانه با توابع به رمز و
پخش ویدئو، و غیره.
>> این ما را به کنار گذاشته مهم است.
یکی از مهارت های اساسی از مهندسی است که دانستن
ابزارهای موجود در جعبه ابزار خود را به طوری که شما می توانید استفاده کنید
آنها و اجتناب از اختراع دوباره چرخ، مگر
شما مجبور به انجام این کار است.
به عنوان برنامه نویسان، کتابخانه ها یکی از مهم ترین
ابزار در حال حاضر.
هنگامی که شما به خودتان پیدا کنید در برابر یک کار خسته کننده به نظر می رسد که یا
پا افتاده، مانند پیدا کردن طول رشته C،
باید از خود بپرسید که اگر آن را ممکن است به صورت
کسی که در حال حاضر انجام می شود همان چیزی که قبل از.
شانس هستند که شما ممکن است در بعضی از
کمک در درون یک کتابخانه.
>> بنابراین از لحاظ فنی، یک کتابخانه، یک فایل باینری است که
شده است با ارتباط با هم یک مجموعه از تولید
فایل های جسم با استفاده از یک ابزار به نام، شما
حدس زده آن، لینکر.
فایل های مورد نظر که فایل های O که شما می توانید زمانی که شما
کامپایل کد منبع C.
هنگامی که برنامه نویسان نوشتن کتابخانه ها، آنها به طور معمول
جدا کد C خود را به دو نوع از فایل ها:
فایل های هدر و اجرای فایل های.
یک فایل هدر توسط کنوانسیون با توجه به ساعت فرمت فایل،
و حاوی کد است که اعلام کتابخانه
منابعی که در دسترس هستند را برای شما به استفاده از.
این منابع عبارتند از: توابع، متغیرها، ساختمانها،
تعاریف نوع ها، و غیره، و با هم، آنها
معمولا به عنوان رابط نامیده می شود.
در واقع، اگر شما همیشه تعجب آنچه که در یک کتابخانه،
فایل هدر به نگاه.
>> به عنوان مثال، شما می توانید بکشید تا مسیر usr / شامل / stdio.h و چک
از همه چیز شما همیشه می خواستم به دانستن در مورد
کتابخانه استاندارد یو.
در بسیاری از مسائل در اینجا وجود دارد، و می توان آن را کمی از
زمان به اب راه رفتن را از طریق.
با این حال، همراه با گوگل و راهنماها، این است که
جایی برای رفتن اگر شما در حال تعجب که چگونه استاندارد I / O
توابع کتابخانه ای کار می کنند.
بنابراین یک نکته کلیدی توجه داشته باشید، هر چند، این است که فایل های سرآیند
به طور معمول تعریف توابع را شامل نمی شود -
است که عملکرد واقعی پیاده سازی شده است.
این یک تصویر از یک علم کامپیوتر مهم است
اصل نام پنهان کردن اطلاعات، نیز به در
بار به عنوان یگدیگر.
>> به عنوان کاربر یا مشتری از یک کتابخانه، شما لازم نیست که به
می دانم در مورد داخلی از کتابخانه
منظور استفاده از آن.
به یاد داشته باشید دیدن printf کمی پیش؟
اگر شما تا کنون دیده ام کد واقعی قبل از؟
خوب، من فرض می کنیم که شما را نداشته باشند، حتی اگر شما ممکن است
استفاده کرده اند تن printf بار.
همه شما تا به حال به دانستن عملکرد اعلامیه حاضر بود
در هدر فایل stdio.h.
به هر حال، به نفع مخفی کردن اطلاعات خوب این است که شما
و برنامه های تو می نویسم از هر گونه تغییر در عایق
کد از اجرای توابع کتابخانه است.
در صورتی که اجرای تغییرات printf، شما لازم نیست که
برای رفتن و تغییر همه برنامه های خود را که با استفاده از printf است.
>> بنابراین که در آن پیاده سازی می کند برود؟
خوب، دوباره، توسط کنوانسیون، پیاده سازی می رود در
فایل را با فرمت فایل C.
معمولا فایل های هدر و فایل اجرای به دست
در دست، بنابراین اگر شما یک دسته از رشته های جدید اعلام کرد
توابع در mystring.h، پس شما همه تعریف
این توابع در mystring ج.
تا پس از آن فایل های هدر و پیاده سازی هستند و سپس
وارد شده، ایجاد فایل های شی که هستند و سپس مرتبط
با هم به فایل باینری کتابخانه.
نویسنده کتابخانه خواهد شد و سپس از فایل باینری در کنار کشتی
با این فایل های سرآیند به برنامه نویسان که مایل به استفاده از
کتابخانه.
در این مرحله، فایل های C پیاده سازی
مورد نیاز است، به جز به کامپایل مجدد کتابخانه، از ابتدا،
آنها اغلب از سمت چپ.
>> برای استفاده از کتابخانه های C، شما را مجبور به انجام دو چیز است.
اول، شما باید # کتابخانه فایل های هدر و عبارتند از
فایل کد منبع که در آن شما می خواهید به استفاده از
کد کتابخانه.
این کامپایلر تمام اعلامیه های اطلاع
توابع، متغیرها، ساختمانها، و غیره، در حال حاضر
فایل هدر به طوری که کامپایلر می تواند یک، مطمئن شویم که
شما با استفاده از منابع کتابخانه را در راه مناسب،
و دو، تولید کد اسمبلی مناسب است.
بسته به جایی که فایل های سرآیند کتابخانه
قرار گرفته است، به نحو # شامل متغیر است.
اگر فایل های هدر در سیستم قرار گرفته اند
به طور پیش فرض شامل پوشه -
به طور معمول، usr/include--
سپس نحو براکت زاویه استفاده می شود، در # شامل
است.
با این حال، اگر این فایل های سرآیند در همان واقع شده
دایرکتوری به عنوان کد های خود را دو برابر شده است، به نحو نقل قول
استفاده می شود، که در # شامل "mylib.h".
>> دومین چیزی که شما باید انجام دهید این است که در باینری لینک
کتابخانه فایل هنگامی که کد شما را کامپایل.
این یک گام فوق العاده مهم است.
به یاد داشته باشید بحث قبلی ما در مورد چگونگی هدر
فایل کد پیاده سازی را شامل نمی شود؟
اگر این مرحله را فراموش کرده اید، شما از اشتباهات در مورد دریافت
نمادهای تعریف نشده در کد خود اشاره شده است.
برای حل این مشکل، استفاده از-L پرچم بلافاصله به دنبال
بدون یک فضای به نام کتابخانه.
در بسیاری از سیستمها، از جمله لوازم خانگی، استاندارد C
کتابخانه ها به طور خودکار برای شما مرتبط است.
با این حال، کتابخانه ریاضی گاهی اوقات به طور جداگانه همراه
و ممکن است نیاز به با LM مرتبط.
در دستگاه، مراقبت از این کار را برای شما ما را، و ما نیز
لینک کتابخانه CS50 با lcs50.
شما می توانید تمام از این در دستگاه زمانی که شما اجرا را ببینید.
>> حالا شما باید به دانش شما نیاز به استفاده از
کتابخانه ها در C. کاوش سرگرم کننده است.
نام من مقابله Hardison است، و این CS50.