2009-02-19 10 views
8

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

एसक्यूएल के आसपास पहली ऑर्डर फ़ंक्शन के रूप में पास करना? लेकिन एचटीएमएल-जनरेटिंग कोड में एसक्यूएल बहुत बदसूरत नहीं है?

धन्यवाद,

Olek

उत्तर

3

कॉमन लिस्प एक आत्म बूझकर एफपी भाषा नहीं है। क्लोजर सिर्फ हाइबरनेट का उपयोग कर सकते हैं।

सामान्य लिस्प के लिए: databases। यहां एक persistent object one है। और here एक ट्यूटोरियल का पहला भाग है जो इसे Hunchentoot, एक CL webserver और गतिशील वेबपृष्ठ टूलकिट के साथ उपयोग करता है। एसएल can look like this में एसक्यूएल (जो वास्तव में उससे अधिक दिखता है, क्योंकि एसक्यूएल क्षैतिज रूप से स्वरूपित है और सीएल नहीं है)। और यदि आप चाहें, this guy एक वेब ढांचे पर काम कर रहा है (सीएलएसक्यूएल और हाथी का उपयोग कर, पहले से ही जुड़ा हुआ है) जिसका लक्ष्य चापलूसी पर है, जिससे चाप चुनौती पर नजर आती है।

संपादित करें: a recent answer इस पर विस्तार करता है।

+0

सीएल-एसक्यूएल वास्तव में अच्छा है, और पता चलता है कि वस्तु उन्मुख और कार्यात्मक एक साथ काम कर सकते हैं। – Svante

0

कॉमन लिस्प उपकरण का एक वैकल्पिक सेट, another answer

1

उर/वेब में वर्णित दिलचस्प हो सकता है, हालांकि यह तुतलाना आधारित नहीं है: http://plv.csail.mit.edu/ur/

अपनी साइट से उद्धृत:

उर/वेब एसक्यूएल डेटाबेस द्वारा समर्थित गतिशील वेब अनुप्रयोगों के निर्माण का समर्थन करता है। मानक पुस्तकालय का हस्ताक्षर ऐसा है कि अच्छी तरह से टाइप किए गए उर/वेब प्रोग्राम बहुत व्यापक अर्थ में "गलत मत बनें"। न केवल वे नहीं विशेष पृष्ठ पीढ़ियों के दौरान दुर्घटना है, लेकिन वे भी नहीं कर सकते:

  • कोड इंजेक्शन हमलों के किसी भी प्रकार से पीड़ित
  • वापसी अमान्य HTML
  • मृत इंट्रा-आवेदन लिंक
  • होते हैं HTML फॉर्मों और उनके हैंडलर द्वारा अपेक्षित फ़ील्ड के बीच विसंगतियां
  • क्लाइंट-साइड कोड शामिल करें जो "AJAX" -style सेवाओं के बारे में गलत धारणाएं करता है जो रिमोट वेब सर्वर
  • प्रदान करता है प्रयास अमान्य एसक्यूएल SQL डेटाबेस के साथ या ब्राउज़र और वेब सर्वर के बीच संचार में
  • उपयोग अनुचित marshaling या unmarshaling प्रश्नों
संबंधित मुद्दे

 संबंधित मुद्दे