बायोजावा

बायोजावा ओपन-सोर्स सॉफ्टवेयर योजना है जो जैविक आंकड़ों को संसाधित करने के लिए जावा उपकरण प्रदान करने के लिए समर्पित है।  बायोजावा अनुक्रमों, प्रोटीन संरचनाओं, फ़ाइल पार्सर्स, कॉमन ऑब्जेक्ट रिक्वेस्ट ब्रोकर आर्किटेक्चर (कोरबा) इंटरऑपरेबिलिटी, वितरित एनोटेशन प्रणाली (डीएएस), AceDB तक पहुंच गतिशील प्रोग्रामिंग और सरल सांख्यिकीय में परिवर्तन करने के लिए प्रोग्रामिंग भाषा जावा में लिखे गए लाइब्रेरी कार्यों का समूह है। बायोजावा डीएनए और प्रोटीन अनुक्रम से लेकर 3डी प्रोटीन संरचनाओं के स्तर तक आंकड़ों की विशाल श्रृंखला का समर्थन करता है। बायोजावा लाइब्रेरी कई प्रतिदिन और सांसारिक जैव सूचना विज्ञान कार्यों को स्वचालित करने के लिए उपयोगी हैं जैसे कि प्रोटीन डेटा बैंक (पीडीबी) फ़ाइल को पार्स करना, जेएमओएल के साथ विचार करना और कई अन्य कार्य हैं। यह एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस (एपीआई) मानक डेटा प्रारूपों के साथ कार्य करने की सुविधा के लिए विभिन्न फ़ाइल पार्सर, डेटा प्रारूप और एल्गोरिदम प्रदान करता है और तीव्रता से एप्लिकेशन विकास और विश्लेषण को सक्षम बनाता है।

बायोजावा की अतिरिक्त परियोजनाओं में आरसीएसबी-सीक्वेंसव्यूअर, बायोजावा-एचटीटीपी, बायोजावा-स्पार्क और आरसीएसबी-व्यूअर्स सम्मिलित हैं।

सुविधाएँ
बायोजावा जैव सूचना विज्ञान प्रोग्रामिंग के कई विशिष्ट कार्यों के लिए सॉफ्टवेयर मॉड्यूल प्रदान करता है। इसमें सम्मिलित है:


 * स्थानीय और दूरस्थ डेटाबेस से न्यूक्लियोटाइड अनुक्रम और पेप्टाइड अनुक्रम डेटा तक पहुंचते हैं।
 * डेटाबेस/फ़ाइल रिकॉर्ड के स्वरूपों की परिवर्तनकारी सूची होती है।
 * प्रोटीन संरचना विश्लेषण और परिवर्तन होता है।
 * व्यक्तिगत अनुक्रमों में परिवर्तन करना होता है।
 * समान अनुक्रमों का शोध किया जाता है।
 * अनुक्रम संरेखण बनाना और उनमें परिवर्तन करना होता है।

इतिहास और प्रकाशन
जावा-आधारित जैव सूचना विज्ञान उपकरणों के विकास को सरल बनाने के लिए एपीआई बनाने के लिए थॉमस डाउन और मैथ्यू पोकॉक के कार्य से बायोजावा परियोजना विकसित हुई थी। बायोजावा सक्रिय ओपन सोर्स योजना है जिसे 12 से अधिक वर्षों में और 60 से अधिक डेवलपर्स द्वारा विकसित किया गया है। बायोजावा कोड द्विगुणन को अल्प करने के लिए डिज़ाइन की गई कई बायो* परियोजनाओं में से है। ऐसी परियोजनाओं के उदाहरण जो बायोजावा के अतिरिक्त बायो* के अंतर्गत आते हैं, वे बायोपाइथॉन, बायोपर्ल, बायोरूबी, ईएमबीओएसएसएस, आदि हैं।

अक्टूबर 2012 में, बायोजावा पर प्रथम पेपर प्रकाशित हुआ था। इस पेपर में बायोजावा के मॉड्यूल, कार्यप्रणाली और उद्देश्य का विवरण दिया गया है।

नवंबर 2018 तक गूगल स्कॉलर ने 130 से अधिक उद्धरण गिनाए हैं।

बायोजावा पर सबसे वर्तमान पेपर फरवरी 2017 में लिखा गया था। इस पेपर में बायोजावा-मॉडफाइंडर नाम के नए उपकरण का विवरण दिया गया है। इस उपकरण का उपयोग प्रोटीन डेटा बैंक (प्रोटीन डेटा बैंक) में प्रोटीन संशोधनों की आइडेंटिटी और उसके पश्चात 3डी में मैपिंग के लिए किया जा सकता है। पैकेज को आरसीएसबी पीडीबी वेब एप्लिकेशन के साथ भी एकीकृत किया गया था और अनुक्रम आरेख और संरचना प्रदर्शन में प्रोटीन संशोधन एनोटेशन जोड़ा गया था। बायोजावा-मॉडफाइंडर का उपयोग करके प्रोटीन संशोधनों के साथ 30,000 से अधिक संरचनाओं की पहचान की गई और इसे आरसीएसबी पीडीबी वेबसाइट पर पाया जा सकता है।

वर्ष 2008 में बायोजावा का प्रथम एप्लिकेशन नोट प्रकाशित हुआ था। इसे अप्रैल 2013 में इसके मूल सीवीएस रिपॉजिटरी से GitHub में स्थानांतरित कर दिया गया था। योजना को भिन्न रिपॉजिटरी, बायोजावा-लिगेसी में ले जाया गया है, और अभी भी छोटे परिवर्तन और बग फिक्स के लिए बनाए रखा गया है।

संस्करण 3 दिसंबर 2010 में प्रस्तावित किया गया था। यह पिछले संस्करणों के लिए प्रमुख अद्यतन था। इस प्रस्ताव का उद्देश्य बायोजावा को पुनः लिखना था जिससे इसे छोटे, पुन: प्रयोज्य घटकों में मॉड्यूलर किया जा सके। इससे डेवलपर्स को अधिक सरलता से योगदान करने और निर्भरता अल्प करने की अनुमति मिली। बायोजावा 3 में देखा गया नया दृष्टिकोण अपाचे कॉमन्स के पश्चात प्रस्तुत किया गया था।

संस्करण 4 जनवरी 2015 में प्रस्तावित किया गया था। यह संस्करण बायोजावा-कोर, बायोजावा-स्ट्रक्चर, बायोजावा-स्ट्रक्चर-गुई, बायोजावा-फिलो, साथ ही अन्य पैकेजों में कई नई सुविधाएँ और सुधार लेकर आया था। बायोजावा 4.2.0, मेवेन सेंट्रल से मेवेन का उपयोग करके उपलब्ध होने वाला प्रथम प्रस्ताव था।

संस्करण 5 मार्च 2018 में प्रस्तावित किया गया था। यह परियोजना के लिए प्रमुख माइलस्टोन दर्शाता है। बायोजावा 5.0.0 जावा 8 पर आधारित प्रथम प्रस्ताव है जो लैम्ब्डा फ़ंक्शन और स्ट्रीमिंग एपीआई कॉल का उपयोग प्रस्तुत करता है। बायोजावा-स्ट्रक्चर मॉड्यूल में भी बड़े परिवर्तन हुए। इसके अतिरिक्त, मैक्रो-आणविक संरचनाओं के लिए पिछले डेटा प्रारूप को एमएमसीआईएफ डेटा प्रारूप को अधिक सूक्ष्मता से प्रस्तुत करने के लिए अनुकूलित किया गया है। दो वर्षों से अधिक समय में यह प्रथम प्रस्ताव था। कुछ अन्य सुधारों में समरूपता को ज्ञात करने और एमएमटीएफ प्रारूपों के लिए अतिरिक्त समर्थन में सुधार के लिए बायोजावा-संरचना मॉड्यूल में अनुकूलन सम्मिलित हैं। अन्य सामान्य सुधारों में जावाडोक अपडेट, निर्भरता संस्करण सम्मिलित हैं, और सभी परीक्षण अब जूनिट4 हैं। प्रस्ताव में 19 योगदानकर्ताओं के 1,170 कमिट सम्मिलित हैं।

मॉड्यूल
2014-2015 के समय, मूल कोड आधार के बड़े भाग को पुनः लिखा गया था। बायोजावा 3 संस्करण 1 श्रृंखला से स्पष्ट विचलन है। इसमें अब अपाचे मावेन नामक स्वचालन उपकरण का उपयोग करके निर्मित कई स्वतंत्र मॉड्यूल सम्मिलित हैं। ये मॉड्यूल प्रोटीन संरचना तुलना, युग्मित और एकाधिक अनुक्रम संरेखण, डीएनए और प्रोटीन अनुक्रमों के साथ कार्य करने, अमीनो अम्ल गुणों का विश्लेषण, प्रोटीन संशोधनों को ज्ञात करने, प्रोटीन में अव्यवस्थित क्षेत्रों की भविष्यवाणी करने और सामान्य फ़ाइल के पार्सर के लिए अत्याधुनिक उपकरण जैविक रूप से सार्थक डेटा प्रारूप का उपयोग करके प्रारूप प्रदान करते हैं। मूल कोड को विभिन्न बायोजावा लीगेसी योजना में ले जाया गया है, जो अभी भी बैकवर्ड संगतता के लिए उपलब्ध है।

बायोजावा 5 ने दो मॉड्यूल, बायोजावा-संरेखण और बायोजावा-संरचना में नई सुविधाएँ प्रस्तुत की थी।

निम्नलिखित अनुभाग कई नए मॉड्यूल का वर्णन करते हैं और उन पर प्रकाश डालते हैं, जो बायोजावा के नवीनतम संस्करण में सम्मिलित हैं।

कोर मॉड्यूल
यह मॉड्यूल एमिनो अम्ल या न्यूक्लियोटाइड अनुक्रमों को मॉडल करने के लिए जावा कक्षाएं प्रदान करता है। कक्षाओं को इस प्रकार डिज़ाइन किया गया था कि नाम परिचित हों और जीवविज्ञानियों के लिए समझ में आएं और कंप्यूटर वैज्ञानिकों और प्रोग्रामरों के लिए जीन अनुक्रम से प्रोटीन अनुक्रम तक जाने के चरणों का ठोस प्रतिनिधित्व भी प्रदान करें।

प्राचीन बायोजावा योजना और बायोजावा3 के मध्य बड़ा परिवर्तन जावा में तत्कालीन नए नवाचारों का लाभ उठाने के लिए प्रारूप को डिजाइन करने के प्रकार में निहित है। अनुक्रम को सामान्य इंटरफ़ेस के रूप में परिभाषित किया गया है जो शेष मॉड्यूल को सभी अनुक्रमों पर संचालित होने वाली उपयोगिता बनाने की अनुमति देता है। जीवविज्ञानियों के लिए उपयोगिता में सुधार के लिए डीएनए और प्रोटीन जैसे सामान्य अनुक्रमों के लिए विशिष्ट वर्गों को परिभाषित किया गया है। अनुवाद इंजन वास्तव में डीएनए, आरएनए और अमीनो अम्ल अनुक्रमों के मध्य रूपांतरण की अनुमति देकर इस कार्य का लाभ उठाता है। यह इंजन कोडन तालिका को चयनित करने, स्टार्ट कोडन को मेथियोनीन में परिवर्तित करने, स्टॉप कोडन को ट्रिम करने, रीडिंग फ्रेम को निर्दिष्ट करने और अस्पष्ट अनुक्रम सौंपने जैसे विवरणों को संभाल सकता है।

स्थान की आवश्यकता को अल्प करने के लिए अनुक्रमों के भंडारण को डिजाइन करने पर विशेष ध्यान दिया गया है। प्रॉक्सी पैटर्न जैसे विशेष डिज़ाइन पैटर्न ने डेवलपर्स को फ्रेमवर्क बनाने की अनुमति दी, जिससे अनुक्रमों को मेमोरी में संग्रहीत किया जा सके, यूनीप्रोट जैसी वेब सेवा से मांग पर लाया जा सके, या आवश्यकतानुसार एफएएसटीए फ़ाइल से पढ़ा जा सके। अंत के दो दृष्टिकोण अनुक्रम डेटा को तब तक लोड न करके मेमोरी को बचाते हैं जब तक कि इसे एप्लिकेशन में संदर्भित न किया जाए। इस अवधारणा को अधिक बड़े जीनोमिक डेटासेट, जैसे एनसीबीआई जेनबैंक या स्वामित्व डेटाबेस को संभालने के लिए बढ़ाया जा सकता है।

प्रोटीन संरचना मॉड्यूल
प्रोटीन संरचना मॉड्यूल 3डी जैव-आणविक संरचनाओं का प्रतिनिधित्व और उसमें परिवर्तन करने के लिए उपकरण प्रदान करते हैं। वे प्रोटीन संरचना तुलना पर ध्यान केंद्रित करते हैं।

निम्नलिखित एल्गोरिदम को बायोजावा में प्रारम्भ और सम्मिलित किया गया है। इन एल्गोरिदम का उपयोग आरसीएसबी प्रोटीन डेटा बैंक (पीडीबी) प्रोटीन तुलना उपकरण के साथ-साथ साप्ताहिक आधार पर पीडीबी में सभी प्रोटीनों की व्यवस्थित तुलना प्रदान करने के लिए किया जाता है।
 * कोमल और कठोर शरीर संरेखण के लिए एफएटीसीएटी (FATCAT) एल्गोरिदम होता है।
 * मानक कॉम्बिनेटोरियल एक्सटेंशन (सीई) एल्गोरिदम है।
 * सीई का नया संस्करण जो प्रोटीन में गोलाकार क्रमपरिवर्तन को ज्ञात कर सकता है।

पीडीबी और एमएमसीआईएफ फ़ाइल स्वरूपों के लिए पार्सर संरचना डेटा को पुन: प्रयोज्य डेटा प्रारूप में लोड करने की अनुमति देते हैं। इस सुविधा का उपयोग एसआईएफटी योजना द्वारा यूनीप्रोट अनुक्रमों और पीडीबी संरचनाओं के मध्य मैप करने के लिए किया जाता है। डेटा को मैन्युअल रूप से डाउनलोड करने की आवश्यकता के बिना आरसीएसबी पीडीबी से सूचना गतिशील रूप से प्राप्त की जा सकती है। विज़ुअलाइज़ेशन के लिए, 3डी व्यूअर जमोल के लिए इंटरफ़ेस प्रदान किया गया है।

जीनोम और अनुक्रमण मॉड्यूल

यह मॉड्यूल कोर मॉड्यूल से जीन अनुक्रम वस्तुओं के निर्माण पर केंद्रित है। इसे ओपन सोर्स जीन भविष्यवाणी अनुप्रयोगों द्वारा उत्पन्न निम्नलिखित लोकप्रिय मानक फ़ाइल स्वरूपों के पार्सिंग का समर्थन करके अनुभूत किया गया है: फिर जीन अनुक्रम ऑब्जेक्ट को जीएफएफ3 प्रारूप के रूप में लिखा जाता है और जीएमओडी में आयात किया जाता है। ये फ़ाइल प्रारूप उचित प्रकार से परिभाषित हैं किन्तु  फ़ाइल में जो लिखा जाता है वह अधिक कोमल है।
 * जीनमार्क द्वारा उत्पन्न जीटीएफ फ़ाइलें हैं।
 * जीनआईडी द्वारा उत्पन्न जीएफएफ2 फ़ाइलें हैं।
 * ग्लिमर द्वारा उत्पन्न जीएफएफ3 फ़ाइलें हैं।

अगली पीढ़ी के सीक्वेंसर से फास्टक्यू फ़ाइल प्रारूप के कई सामान्य वेरिएंट के लिए इनपुट-आउटपुट समर्थन प्रदान करने के लिए, विभिन्न अनुक्रमण मॉड्यूल प्रदान किया गया है। इस मॉड्यूल का उपयोग कैसे करें और इसके प्रतिरूप के लिए कृपया इस लिंक पर जाएं।

संरेखण मॉड्यूल
इस मॉड्यूल में कई कक्षाएं और विधियां सम्मिलित हैं जो उपयोगकर्ताओं को युग्मित होने और एकाधिक अनुक्रम संरेखण करने की अनुमति देती हैं। अनुक्रमों को एकल और बहु-थ्रेडेड दोनों प्रकार से संरेखित किया जा सकता है। बायोजावा इष्टतम वैश्विक संरेखण के लिए नीडलमैन-वुन्श एल्गोरिदम और स्थानीय संरेखण के लिए स्मिथ एंड वॉटरमैन प्रारम्भ करता है। स्थानीय और वैश्विक संरेखण दोनों के आउटपुट मानक प्रारूपों में उपलब्ध हैं। इन दो एल्गोरिदम के अतिरिक्त, गुआन-उबरबैकर एल्गोरिदम का कार्यान्वयन है जो वैश्विक अनुक्रम संरेखण को अधिक कुशलता से निष्पादित करता है क्योंकि यह केवल रैखिक मेमोरी का उपयोग करता है।

एकाधिक अनुक्रम संरेखण के लिए, ऊपर वर्णन की गई किसी भी विधि का उपयोग क्रमिक रूप से एकाधिक अनुक्रम संरेखण करने के लिए किया जा सकता है।

मॉडफाइंडर मॉड्यूल
मॉडफाइंडर मॉड्यूल प्रोटीन 3डी संरचनाओं में प्रोटीन संशोधनों को पहचानने और वर्गीकृत करने के लिए नयी विधि प्रदान करता है। फॉस्फोराइलेशन, ग्लाइकोसिलेशन, डाइसल्फ़ाइड बॉन्ड मेटल केलेशन इत्यादि जैसे 400 से अधिक विभिन्न प्रकार के प्रोटीन संशोधनों को पीएसआई-एमओडी, आरईएसआईडी और आरसीएसबी पीडीबी में एनोटेशन के आधार पर एकत्र और क्यूरेट किया गया था।  मॉड्यूल प्रोटीन संरचनाओं के अंदर पूर्व-, सह- और पोस्ट-ट्रांसलेशनल प्रोटीन संशोधनों को ज्ञात करने के लिए एपीआई भी प्रदान करता है। यह मॉड्यूल फॉस्फोराइलेशन की पहचान भी कर सकता है और संरचना से सभी प्री-लोडेड संशोधनों को प्रिंट कर सकता है।

अमीनो अम्ल गुण मॉड्यूल
यह मॉड्यूल प्रोटीन के त्रुटिहीन भौतिक-रासायनिक गुण प्रदान करने का प्रयास करता है। इस मॉड्यूल का उपयोग करके जिन गुणों की गणना की जा सकती है वे इस प्रकार हैं:
 * मोलेकुलर द्रव्यमान
 * क्षीणन गुणांक
 * स्थिरता सूचकांक
 * स्निग्ध सूचकांक
 * हाइड्रोपैथी का भव्य औसत
 * समविभव बिंदु
 * अमीनो अम्ल संरचना

सामान्य आइसोटोपिक रूप से लेबल किए गए अमीनो अम्ल के त्रुटिहीन आणविक भार इस मॉड्यूल में सम्मिलित हैं। सरल एक्सएमएल कॉन्फ़िगरेशन फ़ाइलों का उपयोग करके नए अमीनो अम्ल अणुओं को उनके आणविक भार के साथ परिभाषित करना भी उपस्थित है। यह उपयोगी हो सकता है जहां त्रुटिहीन द्रव्यमान का उच्च महत्व है जैसे कि मास स्पेक्ट्रोमेट्री प्रयोग में होता है।

प्रोटीन विकार मॉड्यूल
इस मॉड्यूल का लक्ष्य उपयोगकर्ताओं को प्रोटीन अणुओं में विकारों को ज्ञात करने की विधि प्रदान करता है। बायोजावा में RONN प्रेडिक्टर का जावा कार्यान्वयन सम्मिलित है। बायोजावा 3.0.5 प्राचीन सी कार्यान्वयन की तुलना में आधुनिक क्वाड-कोर मशीन पर 3.2 गुना तक प्रदर्शन में सुधार करने के लिए मल्टीथ्रेडिंग के लिए जावा के समर्थन का उपयोग करता है।

इस मॉड्यूल का उपयोग करने के दो प्रकार हैं:
 * लाइब्रेरी फ़ंक्शन कॉल का उपयोग करता है।
 * कमांड लाइन का उपयोग करता है।

इस मॉड्यूल की कुछ विशेषताओं में सम्मिलित हैं:


 * क्रम में प्रत्येक अवशेष के लिए विकार की संभावना की गणना करता है।
 * एफएएसटीए इनपुट फ़ाइल से सभी प्रोटीनों के अनुक्रम में प्रत्येक अवशेष के लिए विकार की संभावना की गणना करता है।
 * एकल प्रोटीन अनुक्रम के लिए या एफएएसटीए इनपुट फ़ाइल से सभी प्रोटीनों के लिए प्रोटीन के अव्यवस्थित क्षेत्र प्राप्त करता है।

वेब सेवा एक्सेस मॉड्यूल
जैव सूचना विज्ञान में वर्तमान रुझानों के अनुसार, वेब आधारित उपकरण लोकप्रियता प्राप्त कर रहे हैं। वेब सेवा मॉड्यूल आरईएसटी प्रोटोकॉल का उपयोग करके जैव सूचना विज्ञान सेवाओं तक पहुंचने की अनुमति देता है। वर्तमान में, दो सेवाएँ कार्यान्वित हैं: ब्लास्ट यूआरएलपीआई (जिसे पूर्व में क्यूबब्लास्ट के नाम से जाना जाता था) और एचएमएमईआर वेब सेवा के माध्यम से एनसीबीआई ब्लास्ट हैं।

अन्य विकल्पों के साथ तुलना
जैव सूचना विज्ञान के क्षेत्र में अनुकूलित सॉफ्टवेयर की आवश्यकता को कई समूहों और व्यक्तियों द्वारा संबोधित किया गया है। BioJava के समान, BioPerl, BioPython, और BioRuby जैसे ओपन-सोर्स सॉफ़्टवेयर प्रोजेक्ट सभी कई कार्यक्षमता वाले टूल-किट प्रदान करते हैं जो अनुकूलित पाइपलाइन या विश्लेषण बनाना आसान बनाते हैं।

जैसा कि नाम से पता चलता है, ऊपर उल्लिखित परियोजनाएं विभिन्न प्रोग्रामिंग भाषाओं का उपयोग करती हैं। ये सभी एपीआई समान उपकरण प्रदान करते हैं तो किसी को अपनी पसंद को किस मानदंड पर आधारित करना चाहिए? ऐसे प्रोग्रामर के लिए जो इनमें से केवल भाषा में अनुभवी हैं, चुनाव सीधा है। चूँकि, पूर्ण जैव सूचना विज्ञानी के लिए जो इन सभी भाषाओं को जानता है और नौकरी के लिए सर्वोत्तम भाषा चुनना चाहता है, बायो* टूल-किट पर की गई सॉफ़्टवेयर समीक्षा द्वारा दिए गए निम्नलिखित दिशानिर्देशों के आधार पर चुनाव किया जा सकता है।

सामान्यतः, छोटे कार्यक्रमों (<500 लाइनें) के लिए जिनका उपयोग केवल व्यक्ति या छोटे समूह द्वारा किया जाएगा, पर्ल और बायोपर्ल को हराना मुश्किल है। ये बाधाएँ संभवतः 90 प्रतिशत व्यक्तिगत जैव सूचना विज्ञान प्रोग्रामिंग की जरूरतों को पूरा करती हैं।

शुरुआती लोगों के लिए, और बायो डोमेन में बड़े प्रोग्राम लिखने के लिए, विशेष रूप से जिन्हें दूसरों द्वारा साझा और समर्थित किया जाना है, पायथन (प्रोग्रामिंग भाषा) | पायथन की स्पष्टता और संक्षिप्तता इसे बहुत आकर्षक बनाती है।

उन लोगों के लिए जो जैव सूचना विज्ञान में करियर की ओर झुक रहे हैं और जो केवल भाषा सीखना चाहते हैं, जावा (प्रोग्रामिंग भाषा) में व्यापक सामान्य प्रोग्रामिंग समर्थन है, बायोजावा के साथ बायो डोमेन में बहुत अच्छा समर्थन है, और अब यह वास्तविक भाषा है व्यवसाय (नया COBOL, बेहतर या बदतर के लिए)।

इन बायो* परियोजनाओं के अतिरिक्त STRAP नामक और परियोजना है जो जावा का उपयोग करती है और समान लक्ष्य रखती है। बायोजावा के समान स्ट्रैप-टूलबॉक्स भी बायोइनफॉरमैटिक्स प्रोग्राम और स्क्रिप्ट के डिजाइन के लिए जावा-टूलकिट है। बायोजावा और स्ट्रैप के मध्य समानताएं और अंतर इस प्रकार हैं:

समानताएँ
 * दोनों प्रोटीन अनुक्रमों के लिए तरीकों का व्यापक संग्रह प्रदान करते हैं।
 * दोनों का उपयोग जावा प्रोग्रामर द्वारा जैव सूचना विज्ञान एल्गोरिदम को कोड करने के लिए किया जाता है।
 * जावा इंटरफेस का उपयोग करके दोनों अलग-अलग कार्यान्वयन और परिभाषाएँ।
 * दोनों ओपन सोर्स प्रोजेक्ट हैं।
 * दोनों कई अनुक्रम फ़ाइल स्वरूपों को पढ़ और लिख सकते हैं।

मतभेद
 * बायोजावा न्यूक्लियोटाइड और पेप्टाइड अनुक्रमों पर लागू होता है और इसे संपूर्ण जीनोम के लिए लागू किया जा सकता है। STRAP पूरे गुणसूत्र जितने लंबे समय तक एकल अनुक्रमों का सामना नहीं कर सकता है। इसके अतिरिक्त STRAP एकल प्रोटीन के आकार के पेप्टाइड अनुक्रमों और 3D- संरचनाओं में हेरफेर करता है। फिर भी, यह स्मृति में अधिक संख्या में अनुक्रमों और संरचनाओं को रख सकता है। स्ट्रैप को प्रोटीन अनुक्रमों के लिए डिज़ाइन किया गया है, लेकिन यह कोडिंग न्यूक्लियोटाइड फ़ाइलों को पढ़ सकता है, जिन्हें बाद में पेप्टाइड अनुक्रमों में अनुवादित किया जाता है।
 * स्ट्रैप बहुत तेज़ है क्योंकि ग्राफिकल यूजर इंटरफ़ेस अत्यधिक प्रतिक्रियाशील होना चाहिए। बायोजावा का उपयोग वहां किया जाता है जहां गति कम महत्वपूर्ण होती है।
 * बायोजावा को प्रकार की सुरक्षा, ऑन्टोलॉजी और ऑब्जेक्ट डिज़ाइन के मामले में अच्छी तरह से डिज़ाइन किया गया है। बायोजावा अनुक्रम, एनोटेशन और अनुक्रम स्थिति के लिए ऑब्जेक्ट का उपयोग करता है। यहां तक ​​कि एकल अमीनो एसिड या न्यूक्लियोटाइड भी वस्तु संदर्भ हैं। गति बढ़ाने के लिए, STRAP बार-बार ऑब्जेक्ट इंस्टेंटेशन और गैर-अंतिम ऑब्जेक्ट-विधियों के आह्वान से बचता है।
 * बायोजावा में पेप्टाइड अनुक्रम और न्यूक्लियोटाइड अनुक्रम प्रतीकों की सूची हैं। प्रतीकों को पुनरावर्तक के साथ के बाद पुनर्प्राप्त किया जा सकता है या उप-अनुक्रम प्राप्त किए जा सकते हैं। लाभ यह है कि संपूर्ण अनुक्रम आवश्यक रूप से मेमोरी में नहीं रहता है और प्रोग्राम प्रोग्रामिंग त्रुटियों के प्रति कम संवेदनशील होते हैं। प्रतीक वस्तुएं किसी वर्णमाला के अपरिवर्तनीय तत्व हैं। चूँकि STRAP में अनुक्रमों के लिए सरल बाइट सरणियों का उपयोग किया जाता है और निर्देशांक के लिए फ़्लोट सरणियों का उपयोग किया जाता है। गति के अतिरिक्त कम मेमोरी खपत बुनियादी डेटा प्रकारों का महत्वपूर्ण लाभ है। स्ट्रैप में कक्षाएं आंतरिक डेटा को उजागर करती हैं। इसलिए, प्रोग्रामर सेटर विधियों का उपयोग करने के अतिरिक्त सीधे बाइट सरणियों में हेरफेर करने जैसी प्रोग्रामिंग त्रुटियां कर सकते हैं। और नुकसान यह है कि STRAP में कोई जांच नहीं की जाती है कि अनुक्रम में वर्ण अंतर्निहित वर्णमाला के संबंध में मान्य हैं या नहीं।
 * बायोजावा अनुक्रम में स्थिति स्थान वर्ग द्वारा महसूस की जाती है। असंबद्ध स्थान ऑब्जेक्ट कई सन्निहित रेंजलोकेशन ऑब्जेक्ट या प्वाइंटलोकेशन ऑब्जेक्ट से बने होते हैं। चूँकि, स्ट्रैपप्रोटीन वर्ग के लिए, एकल अवशेष स्थितियों को 0 और countResidues-1 के मध्य पूर्णांक संख्याओं द्वारा दर्शाया जाता है। बूलियन सरणियों द्वारा अनेक स्थान दिए गए हैं। किसी दिए गए सूचकांक में सत्य का अर्थ चयनित है जबकि गलत का अर्थ चयनित नहीं है।
 * जब विधियों को अमान्य मापदंडों के साथ लागू किया जाता है तो बायोजावा अपवाद फेंकता है। STRAP थ्रोएबल ऑब्जेक्ट्स के समय लेने वाली रचना से बचाता है। इसके अतिरिक्त, तरीकों में त्रुटियां रिटर्न मान NaN, -1 या null द्वारा इंगित की जाती हैं। प्रोग्राम डिज़ाइन की दृष्टि से होकभी भी फेंकने योग्य वस्तुएँ अच्छी होती हैं।
 * बायोजावा में अनुक्रम वस्तु या तो पेप्टाइड अनुक्रम या न्यूक्लियोटाइड अनुक्रम है। यदि कोडिंग न्यूक्लियोटाइड अनुक्रम को पढ़ा गया और प्रोटीन में अनुवादित किया गया तो स्ट्रैपप्रोटीन दोनों को ही समय में पकड़ सकता है। न्यूक्लियोटाइड अनुक्रम और पेप्टाइड अनुक्रम दोनों ही स्ट्रैपप्रोटीन ऑब्जेक्ट में समाहित हैं। कोडिंग या गैर-कोडिंग क्षेत्रों को बदला जा सकता है और पेप्टाइड अनुक्रम तदनुसार बदल जाता है।

बायोजावा का उपयोग करने वाली परियोजनाएं
निम्नलिखित परियोजनाएँ बायोजावा का उपयोग करती हैं।
 * मेटाबोलिक पाथवे बिल्डर: जीन, प्रोटीन, प्रतिक्रियाओं और मेटाबोलिक मार्गों के मध्य कनेक्शन की खोज के लिए समर्पित सॉफ्टवेयर सूट
 * DengueInfo : डेंगू जीनोम सूचना पोर्टल जो मिडलवेयर में बायोजावा का उपयोग करता है और बायोएसक्यूएल डेटाबेस से बात करता है।
 * Dazzle: बायोजावा आधारित DAS सर्वर।
 * बायोसेंस: इन्फोरसेंस सूट के लिए प्लग-इन (कंप्यूटिंग)|प्लग-इन, आईडीबीएस द्वारा एनालिटिक्स सॉफ्टवेयर प्लेटफॉर्म जो बायोजावा को एकजुट करता है।
 * बायोक्लिप्स: अणुओं, अनुक्रमों, प्रोटीन, स्पेक्ट्रा, आदि के लिए शक्तिशाली संपादन और दृश्य क्षमताओं के साथ कीमो- और जैव सूचना विज्ञान के लिए स्वतंत्र, खुला स्रोत, कार्यक्षेत्र।
 * PROMPT: प्रोटीन सेट की तुलना और मैपिंग के लिए मुफ़्त, खुला स्रोत ढांचा और एप्लिकेशन। अधिकांश इनपुट डेटा प्रारूपों को संभालने के लिए बायोजावा का उपयोग करता है।
 * साइटोस्केप: आणविक संपर्क नेटवर्क की कल्पना करने के लिए खुला स्रोत जैव सूचना विज्ञान सॉफ्टवेयर मंच।
 * BioWeka: खुला स्रोत जैविक डेटा खनन अनुप्रयोग।
 * Geneious: आणविक जीव विज्ञान टूलकिट।
 * MassSieve: मास स्पेक प्रोटिओमिक्स डेटा का विश्लेषण करने के लिए खुला स्रोत एप्लिकेशन।
 * STRAP: एकाधिक अनुक्रम संरेखण और अनुक्रम-आधारित संरचना संरेखण के लिए उपकरण।
 * Jstacs: जैविक अनुक्रमों के सांख्यिकीय विश्लेषण और वर्गीकरण के लिए जावा ढांचा
 * jLSTM: प्रोटीन वर्गीकरण के लिए दीर्घकालिक अल्पकालिक मेमोरी
 * LaJolla: हजारों संरचनाओं के तेजी से संरेखण के लिए सूचकांक संरचना का उपयोग करके आरएनए और प्रोटीन के लिए खुला स्रोत संरचनात्मक संरेखण उपकरण; इसमें उपयोग में आसान कमांड लाइन इंटरफ़ेस सम्मिलित है।
 * GenBeans: जैव सूचना विज्ञान के लिए समृद्ध ग्राहक मंच मुख्य रूप से आणविक जीव विज्ञान और अनुक्रम विश्लेषण पर केंद्रित है।
 * Jensembl: डेटा सिस्टम को असेंबल करने के लिए संस्करण-जागरूक जावा एपीआई।
 * MUSI: बहुत बड़े पेप्टाइड या न्यूक्लिक एसिड डेटा सेट से कई विशिष्टता की पहचान करने के लिए एकीकृत प्रणाली।
 * बायोशेल: संरचनात्मक जैव सूचना विज्ञान के लिए उपयोगिता पुस्तकालय

यह भी देखें
जैव सूचना विज्ञान फाउंडेशन खोलें खोलें
 * बायोपर्ल, बायोपाइथॉन, बायोरूबी
 * बायोक्लिप्स
 * आणविक यांत्रिकी मॉडलिंग के लिए सॉफ्टवेयर की तुलना