{"id":5176,"date":"2025-08-06T07:52:05","date_gmt":"2025-08-06T00:52:05","guid":{"rendered":"https:\/\/www.linuxid.net\/istilah\/?p=5176"},"modified":"2025-08-06T07:52:05","modified_gmt":"2025-08-06T00:52:05","slug":"class-library-in-object-oriented-programming","status":"publish","type":"post","link":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/","title":{"rendered":"class library (in object-oriented programming)"},"content":{"rendered":"<h2>Apa itu Class Library (dalam pemrograman berorientasi objek)?<\/h2>\n<p>Dalam <a href=\"https:\/\/www.linuxid.net\/istilah\/object-oriented-programming-OOP\/\">pemrograman berorientasi objek<\/a>, class library adalah kumpulan dari <a href=\"https:\/\/www.linuxid.net\/istilah\/class\/\">kelas<\/a> dan komponen <a href=\"https:\/\/www.linuxid.net\/istilah\/component\/\">perangkat lunak<\/a> lainnya yang bisa digunakan kembali, seperti interface dan tipe nilai (value types). Developer bisa mengimpor class library ini atau komponennya ke dalam <a href=\"https:\/\/www.linuxid.net\/istilah\/application\/\">aplikasi<\/a> mereka dan menggunakan kode yang sudah tersedia untuk menjalankan tugas tertentu.<\/p>\n<p>Class library \u2014 atau singkatnya disebut <i>library<\/i> \u2014 bisa diibaratkan seperti subroutine library di pemrograman prosedural zaman dulu.<\/p>\n<p>Setelah sebuah class library diimpor ke dalam aplikasi, developer bisa membuat <a href=\"https:\/\/www.linuxid.net\/istilah\/object\/\">objek<\/a> berdasarkan kelas yang ada di dalam library tersebut. Objek ini nantinya bisa digunakan untuk mengakses method dan properti yang tersedia di dalam kelas tersebut.<\/p>\n<figure class=\"main-article-image half-col\" data-img-fullsize=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming.png\/\"><img decoding=\"async\" class=\"lazy\" src=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png\" srcset=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png 960w,https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming.png 1280w\" alt=\"structure and naming in object-oriented programming\" width=\"279\/\" height=\"321\" \/><figcaption><i class=\"icon pictures\" data-icon=\"z\/\"><\/i>Figure 1. Diagram struktur dan penamaan dalam pemrograman berorientasi objek.<\/figcaption><div class=\"main-article-image-enlarge\/\"><\/div>\n<\/figure>\n<h2>Contoh pemrograman berorientasi objek dalam praktik<\/h2>\n<p>Sebagai contoh, <b>python-docx<\/b> adalah library open source untuk <a href=\"https:\/\/www.linuxid.net\/istilah\/Python\/\">Python<\/a> yang bisa digunakan developer untuk membuat atau memperbarui dokumen Microsoft Word. Setelah menginstal library ini di sistem, developer bisa mengimpornya ke dalam script Python dengan perintah <span style=\"font-family: courier new, courier, monospace;\">import docx<\/span>. Dari situ, developer bisa memakai namespace <span style=\"font-family: courier new, courier, monospace;\">docx<\/span> untuk mengakses kelas-kelas yang ada dalam library tersebut. Gambar 2 di bawah ini menunjukkan script Python sederhana yang menggunakan python-docx untuk membuat dokumen Word dan menambahkan konten awal.<\/p>\n<figure class=\"main-article-image full-col\" data-img-fullsize=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_1_class_library-h.jpg\/\"><img decoding=\"async\" class=\"lazy\" src=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_1_class_library-h_mobile.jpg\" srcset=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_1_class_library-h_mobile.jpg 960w,https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_1_class_library-h.jpg 1280w\" alt=\"Python script showing how use the python-docx library\" width=\"560\/\" height=\"333\" \/><figcaption><i class=\"icon pictures\" data-icon=\"z\/\"><\/i>Figure 2. Screenshot script Python sederhana yang menunjukkan cara menggunakan library python-docx untuk membuat dokumen Word dan menambahkan konten awal.<\/figcaption><div class=\"main-article-image-enlarge\/\"><\/div>\n<\/figure>\n<p>Script ini pertama-tama mengimpor library python-docx, lalu mendefinisikan path lengkap dan nama file untuk dokumen baru, yang disimpan dalam variabel <span style=\"font-family: courier new, courier, monospace;\">test_doc<\/span>. Selanjutnya, script membuat objek berdasarkan kelas <span style=\"font-family: courier new, courier, monospace;\">Document<\/span> dari namespace <span style=\"font-family: courier new, courier, monospace;\">docx<\/span> dan menyimpannya dalam variabel <span style=\"font-family: courier new, courier, monospace;\">doc<\/span>.<\/p>\n<p>Variabel <span style=\"font-family: courier new, courier, monospace;\">doc<\/span> kemudian dipakai untuk memanggil method <span style=\"font-family: courier new, courier, monospace;\">add\\_heading<\/span> dan <span style=\"font-family: courier new, courier, monospace;\">add\\_paragraph<\/span> dari kelas <span style=\"font-family: courier new, courier, monospace;\">Document<\/span>. Method <span style=\"font-family: courier new, courier, monospace;\">add\\_heading<\/span> menerima dua argumen: teks heading dan tingkat heading-nya. Level 0 untuk heading utama, level 1 untuk sub-heading, dan seterusnya. Sementara itu, <span style=\"font-family: courier new, courier, monospace;\">add\\_paragraph<\/span> juga menerima dua argumen: teks paragraf dan gaya paragraf, yang dalam kasus ini adalah &#8220;Normal&#8221;. Teksnya sendiri berasal dari variabel <span style=\"font-family: courier new, courier, monospace;\">intro<\/span> dan <span style=\"font-family: courier new, courier, monospace;\">section<\/span>.<\/p>\n<p>Setelah menambahkan dua heading dan dua paragraf, script kemudian menggunakan variabel <span style=\"font-family: courier new, courier, monospace;\">doc<\/span> untuk memanggil method <span style=\"font-family: courier new, courier, monospace;\">save<\/span>. Argumennya adalah variabel <span style=\"font-family: courier new, courier, monospace;\">test\\_doc<\/span>. Ketika dijalankan, script ini akan membuat dokumen Word sesuai path yang ditentukan lengkap dengan konten yang sudah dimasukkan, seperti yang ditampilkan di Gambar 3.<\/p>\n<figure class=\"main-article-image full-col\" data-img-fullsize=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_2_class_library-h.jpg\/\"><img decoding=\"async\" class=\"lazy\" src=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_2_class_library-h_mobile.jpg\" srcset=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_2_class_library-h_mobile.jpg 960w,https:\/\/www.techtarget.com\/rms\/onlineimages\/screen_shot_2_class_library-h.jpg 1280w\" alt=\"Python creates a specified Word document\" width=\"560\/\" height=\"346\" \/><figcaption><i class=\"icon pictures\" data-icon=\"z\/\"><\/i>Figure 3. Python membuat dokumen Word sesuai spesifikasi ketika script dijalankan.<\/figcaption><div class=\"main-article-image-enlarge\/\"><\/div>\n<\/figure>\n<p>Kalau library python-docx (atau library sejenis lainnya) tidak tersedia, setiap developer Python yang ingin membuat atau memperbarui dokumen Word harus membuat komponen tersebut dari nol \u2014 meskipun semua mencoba mencapai tujuan yang sama. Mereka mungkin bisa membagikan kode masing-masing lewat cara lain, tapi pendekatan ini juga punya tantangannya sendiri.<\/p>\n<h2>Kenapa class library sangat membantu developer?<\/h2>\n<p>Class library sangat mempermudah kerja developer karena menyediakan kode yang siap pakai untuk menjalankan tugas tertentu tanpa perlu menulis semuanya dari awal. Banyak library yang juga tersedia sebagai proyek Open Source, jadi bisa dikustomisasi sesuai kebutuhan developer atau organisasi tertentu. Ini sangat berguna terutama kalau library-nya dipakai di banyak aplikasi.<\/p>\n<p>Bahasa pemrograman biasanya menyediakan class library inti (core) yang bisa langsung digunakan oleh developer. Python, misalnya, sudah dibekali dengan Standard Library yang berisi banyak modul built-in yang ditulis dalam <a href=\"https:\/\/www.linuxid.net\/istilah\/C\/\">C<\/a> atau Python dan menyediakan berbagai macam kelas.<\/p>\n<p>Contoh lainnya adalah <a href=\"https:\/\/www.linuxid.net\/istilah\/Java\/\">Java<\/a> Class Library, yang merupakan kumpulan besar kelas yang dikelompokkan dalam paket-paket berdasarkan fungsinya. Paket-paket ini tersedia saat <a href=\"https:\/\/www.linuxid.net\/istilah\/runtime\/\">runtime<\/a> untuk aplikasi yang berjalan di dalam Java Virtual Machine. Microsoft juga punya <a href=\"https:\/\/www.linuxid.net\/istilah\/NET-Framework\/\">.NET Framework<\/a> yang menyediakan berbagai class library \u2014 ada yang berupa base class library untuk fungsionalitas inti dan ada juga framework class library yang menyediakan koleksi kelas yang lebih lengkap.<\/p>\n<div class=\"youtube-iframe-container\/\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Apa itu Class Library (dalam pemrograman berorientasi objek)? Dalam pemrograman berorientasi objek, class library adalah kumpulan dari kelas dan komponen perangkat lunak lainnya yang bisa digunakan kembali, seperti interface dan tipe nilai (value types). Developer bisa mengimpor class library ini atau komponennya ke dalam aplikasi mereka dan menggunakan kode yang sudah tersedia untuk menjalankan tugas [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[271],"tags":[50],"class_list":["post-5176","post","type-post","status-publish","format-standard","hentry","category-software-development","tag-programming"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Apa itu class library (in object-oriented programming)? - Istilah Komputer<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apa itu class library (in object-oriented programming)? - Istilah Komputer\" \/>\n<meta property=\"og:description\" content=\"Apa itu Class Library (dalam pemrograman berorientasi objek)? Dalam pemrograman berorientasi objek, class library adalah kumpulan dari kelas dan komponen perangkat lunak lainnya yang bisa digunakan kembali, seperti interface dan tipe nilai (value types). Developer bisa mengimpor class library ini atau komponennya ke dalam aplikasi mereka dan menggunakan kode yang sudah tersedia untuk menjalankan tugas [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/\" \/>\n<meta property=\"og:site_name\" content=\"Istilah Komputer\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-06T00:52:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png\" \/>\n<meta name=\"author\" content=\"adhit\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"adhit\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/\",\"url\":\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/\",\"name\":\"Apa itu class library (in object-oriented programming)? - Istilah Komputer\",\"isPartOf\":{\"@id\":\"https:\/\/linuxid.net\/istilah\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png\",\"datePublished\":\"2025-08-06T00:52:05+00:00\",\"author\":{\"@id\":\"https:\/\/linuxid.net\/istilah\/#\/schema\/person\/ec7c6c711087fb70886ff5a4fe68e83d\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#primaryimage\",\"url\":\"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png\",\"contentUrl\":\"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/linuxid.net\/istilah\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"class library (in object-oriented programming)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/linuxid.net\/istilah\/#website\",\"url\":\"https:\/\/linuxid.net\/istilah\/\",\"name\":\"Istilah Komputer\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/linuxid.net\/istilah\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/linuxid.net\/istilah\/#\/schema\/person\/ec7c6c711087fb70886ff5a4fe68e83d\",\"name\":\"adhit\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/linuxid.net\/istilah\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.linuxid.net\/istilah\/wp-content\/litespeed\/avatar\/808829c8eb1b70c161b392916104c2ba.jpg?ver=1775983753\",\"contentUrl\":\"https:\/\/www.linuxid.net\/istilah\/wp-content\/litespeed\/avatar\/808829c8eb1b70c161b392916104c2ba.jpg?ver=1775983753\",\"caption\":\"adhit\"},\"sameAs\":[\"https:\/\/linuxid.net\/istilah\"],\"url\":\"https:\/\/www.linuxid.net\/istilah\/author\/xsandradietsax\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Apa itu class library (in object-oriented programming)? - Istilah Komputer","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/","og_locale":"id_ID","og_type":"article","og_title":"Apa itu class library (in object-oriented programming)? - Istilah Komputer","og_description":"Apa itu Class Library (dalam pemrograman berorientasi objek)? Dalam pemrograman berorientasi objek, class library adalah kumpulan dari kelas dan komponen perangkat lunak lainnya yang bisa digunakan kembali, seperti interface dan tipe nilai (value types). Developer bisa mengimpor class library ini atau komponennya ke dalam aplikasi mereka dan menggunakan kode yang sudah tersedia untuk menjalankan tugas [&hellip;]","og_url":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/","og_site_name":"Istilah Komputer","article_published_time":"2025-08-06T00:52:05+00:00","og_image":[{"url":"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png","type":"","width":"","height":""}],"author":"adhit","twitter_card":"summary_large_image","twitter_misc":{"Ditulis oleh":"adhit","Estimasi waktu membaca":"3 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/","url":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/","name":"Apa itu class library (in object-oriented programming)? - Istilah Komputer","isPartOf":{"@id":"https:\/\/linuxid.net\/istilah\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#primaryimage"},"image":{"@id":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#primaryimage"},"thumbnailUrl":"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png","datePublished":"2025-08-06T00:52:05+00:00","author":{"@id":"https:\/\/linuxid.net\/istilah\/#\/schema\/person\/ec7c6c711087fb70886ff5a4fe68e83d"},"breadcrumb":{"@id":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#primaryimage","url":"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png","contentUrl":"https:\/\/www.techtarget.com\/rms\/onlineimages\/whatis-object_oriented_programming_half_column_mobile.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.linuxid.net\/istilah\/class-library-in-object-oriented-programming\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/linuxid.net\/istilah\/"},{"@type":"ListItem","position":2,"name":"class library (in object-oriented programming)"}]},{"@type":"WebSite","@id":"https:\/\/linuxid.net\/istilah\/#website","url":"https:\/\/linuxid.net\/istilah\/","name":"Istilah Komputer","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/linuxid.net\/istilah\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Person","@id":"https:\/\/linuxid.net\/istilah\/#\/schema\/person\/ec7c6c711087fb70886ff5a4fe68e83d","name":"adhit","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/linuxid.net\/istilah\/#\/schema\/person\/image\/","url":"https:\/\/www.linuxid.net\/istilah\/wp-content\/litespeed\/avatar\/808829c8eb1b70c161b392916104c2ba.jpg?ver=1775983753","contentUrl":"https:\/\/www.linuxid.net\/istilah\/wp-content\/litespeed\/avatar\/808829c8eb1b70c161b392916104c2ba.jpg?ver=1775983753","caption":"adhit"},"sameAs":["https:\/\/linuxid.net\/istilah"],"url":"https:\/\/www.linuxid.net\/istilah\/author\/xsandradietsax\/"}]}},"_links":{"self":[{"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/posts\/5176","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/comments?post=5176"}],"version-history":[{"count":1,"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/posts\/5176\/revisions"}],"predecessor-version":[{"id":6159,"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/posts\/5176\/revisions\/6159"}],"wp:attachment":[{"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/media?parent=5176"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/categories?post=5176"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxid.net\/istilah\/wp-json\/wp\/v2\/tags?post=5176"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}