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