আমি প্রোগ্রামিংয়ের একটি শিক্ষানবিশ এবং পরিভাষা সম্পর্কে আমার ভাল উপলব্ধি নেই। আমি জানতে চাই যে সি বা সি ++ এর মতো সংকলিত ভাষায় লিখিত উত্স কোডটিকে কোনও প্রোগ্রাম হিসাবে বিবেচনা করা হয়? তা না হলে কেউ ব্যাখ্যা করতে পারবেন কেন?
আমি প্রোগ্রামিংয়ের একটি শিক্ষানবিশ এবং পরিভাষা সম্পর্কে আমার ভাল উপলব্ধি নেই। আমি জানতে চাই যে সি বা সি ++ এর মতো সংকলিত ভাষায় লিখিত উত্স কোডটিকে কোনও প্রোগ্রাম হিসাবে বিবেচনা করা হয়? তা না হলে কেউ ব্যাখ্যা করতে পারবেন কেন?
উত্তর:
দেখুন প্রোগ্রামের জন্য উইকিপিডিয়া এন্ট্রি : (i জুড়েছেন সাহসী )
একটি কম্পিউটার প্রোগ্রাম হ'ল নির্দেশাবলীর একটি সংগ্রহ যা একটি কম্পিউটার দ্বারা সম্পাদন করার সময় একটি নির্দিষ্ট কাজ সম্পাদন করে। একটি কম্পিউটারের কাজ করার জন্য প্রোগ্রামগুলির প্রয়োজন হয় এবং সাধারণত একটি কেন্দ্রীয় প্রক্রিয়াকরণ ইউনিটে প্রোগ্রামের নির্দেশাবলী কার্যকর করে।
একটি কম্পিউটার প্রোগ্রাম সাধারণত কম্পিউটার প্রোগ্রামার দ্বারা প্রোগ্রামিং ভাষায় লেখা হয়। সোর্স কোডটির মানব-পঠনযোগ্য আকারে প্রোগ্রাম থেকে , একটি সংকলক মেশিন কোড অর্জন করতে পারে - এমন একটি ফর্ম যা কম্পিউটার সরাসরি চালাতে পারে এমন নির্দেশাবলীর সমন্বয় করে
সুতরাং, "প্রোগ্রাম" হ'ল নির্দেশনাগুলির সেট যা কম্পিউটার চালায় এবং "উত্স কোড" সেই নির্দেশাবলীর হ'ল মানব-পঠনযোগ্য সংস্করণ।
আমি জানতে চাই যে সি বা সিপিপির মতো সংকলিত ভাষায় লিখিত উত্স কোডটিকে কোনও প্রোগ্রাম হিসাবে বিবেচনা করা হয়?
হ্যাঁ, তাই
কিন্তু
এই চিন্তাভাবনার লাইনটি নিয়ে বিপদটি এখানে পৌঁছেছে: "কম্পিউটারটি আমার প্রোগ্রামটি কার্যকর করে, আমি আমার প্রোগ্রামটি [উদাহরণস্বরূপ] সি তে লিখি, যে উত্স কোডটি কম্পিউটারের নির্দেশনা er"
এবং এই বিষয়টি আমাদের মধ্যে অনেকেই বিংশ শতাব্দীতে বহু দশক ধরে ভেবেছিলেন। আমরা গত দশকে বা এর মধ্যে যা শিখেছি তা হ'ল অন্যান্য প্রোগ্রামাররা সোর্স কোডের প্রাথমিক শ্রোতা । সুতরাং হ্যাঁ, সেই উত্সটি হ'ল প্রোগ্রামটি, আপনি যেমন থিয়েটারে একটি প্রোগ্রাম পেয়েছিলেন, তা অন্য লোকদের কী ঘটছে তা জানায়। উত্স কোডের সৌন্দর্যটি হ'ল এটি কেবল প্রোগ্রামই নয়, এটি কম্পিউটারকেও নির্দেশের একটি সেট ...
তা হোক বা না হোক, প্রসঙ্গে নির্ভর করে। এই ভাবে চিন্তা করুন। ধারণার আনুষ্ঠানিক নাম কী তা আমি ভুলে গেছি, তবে ভাষার একটি তত্ত্ব রয়েছে যা বলে যে শব্দের অর্থ রয়েছে যা কিছু যা বোঝায় তা নয়, তবে কী তা নয় । একটি লাল আপেল লাল নয় কারণ এটি ভাল, লাল, তবে এটি নীল নয়, সবুজ নয় etc. ইত্যাদি that's সত্য কিনা তা উপেক্ষা করুন না, তবে কেবল ধরে নিন যে এটি এক সেকেন্ডের জন্য রয়েছে এবং সেই প্রসঙ্গে প্রশ্নটি নিয়ে ভাবুন।
সুতরাং যখন আমরা সেই ধারণাটি ভাবি, আমরা আমাদের উত্স কোডটি কোনও বাড়ির নীলনকপির সাথে তুলনা করতে পারি। যদি আপনি অন্যান্য ব্লুপ্রিন্টগুলির একটি স্ট্যাকের নীলনকশাটি দেখেন এবং "এটি কি এটি বাড়ি" এবং অন্য ব্লুপ্রিন্টগুলি বাণিজ্যিক ভবন, সেতু ইত্যাদির জন্য থাকে তবে উত্তরটি হ্যাঁ হবে। কারণ নীলনকশাটি অন্য সমস্ত জিনিসগুলিকেই উপস্থাপন করে না এবং বাড়ির দিকটি এটি অন্যান্য ব্লুপ্রিন্টের তুলনায় আলাদা করে।
তবে স্পষ্টতই কোনও বাড়ির নীলনকশা কাঠ এবং শুকনো দিয়ে তৈরি প্রকৃত বাড়ির মতো নয় যা আপনি দাঁড়াতে পারেন There এমন নীতিগুলি রয়েছে যেখানে নীল এবং প্রকৃত বাড়ির মধ্যে পার্থক্য অর্থবহ। পরিকল্পনা এবং বিতরণযোগ্য মধ্যে পার্থক্য আছে।
সংকলিত ভাষায় প্রোগ্রামের উত্স কোডটি একইভাবে নীলনকের মতো, যদি আপনি এটি লাইব্রেরি, কার্নেল মডিউল ইত্যাদির সাথে তুলনা করেন, তবে উত্স কোড এবং প্রোগ্রামটি ধারণাগতভাবে এক এবং একই। তবে আপনি যদি দেখেন যে কীভাবে সফ্টওয়্যার সংকলন করা হয়েছে, ডিজাইন করা হয়েছে এবং স্থাপন করা হচ্ছে তবে দুটিই এক নয়। ঠিক আবার, পরিকল্পনা এবং বিতরণযোগ্য মধ্যে একটি পার্থক্য আছে।
tl; dr: কখনও কখনও কিছু কী, এবং যা প্রতিনিধিত্ব করে তা একই জিনিস হিসাবে বিবেচিত হয়, তবে অন্য সময় তা হয় না।
উত্স কোড কোডের মূল লাইনগুলির জন্য একটি সাধারণ শব্দ (মানব দ্বারা রচিত)। অন্যান্য ধরণের কোড যা উত্স নয় তা অনুবাদ বা অন্য কোনও প্রোগ্রাম দ্বারা তৈরি করা যেতে পারে।
বৌদ্ধিক সম্পত্তি আরও বিস্তৃত এবং উত্স কোড এবং অন্যান্য কোড বা ডেটা উভয়ই অন্তর্ভুক্ত করতে পারে।
একটি প্রোগ্রাম সম্পূর্ণরূপে অন্যান্য কোড (উত্স বা অন্যান্য) থেকে পৃথক করা হয়। একটি প্রোগ্রাম হ'ল কোড যা যথেষ্ট পরিমাণে সম্পূর্ণ যে এটি চালানো যেতে পারে (বা এটি চালানোর উদ্দেশ্যে)। সমস্ত কোড (উত্স বা অন্যথায়) চালানোর জন্য যথেষ্ট সম্পূর্ণতার প্রতিনিধিত্ব করে না। উদাহরণস্বরূপ লাইব্রেরিগুলি বোঝানো হয় যা অন্য কোডগুলির সাথে একত্রিত হয় এবং ব্যবহৃত হয়, এবং তাই সাধারণত কোনও প্রোগ্রাম হিসাবে বিবেচিত হবে না কারণ তারা চালানো যায় না (বোঝানো হয় না)।
এই সম্পূর্ণতা কখনও কখনও একটি থাকা মানে main
, যা অপারেটিং সিস্টেম দ্বারা প্রোগ্রামের এন্ট্রি পয়েন্ট হিসাবে ব্যবহৃত হয়
সাধারণভাবে বলতে গেলে, যখন কোনও প্রোগ্রাম চলমান থাকে, তাকে প্রক্রিয়া বলা হয়।
সোর্স কোড হল পছন্দের সফ্টওয়্যার যা আকারে মানুষের সফটওয়্যার ডেভেলপারদের হয় কাজ । অন্তর্দৃষ্টিটি হ'ল সফ্টওয়্যার বিকাশ একটি সামাজিক প্রক্রিয়া, সুতরাং উত্স কোড একটি সামাজিক ধারণা। আপনি বেশিরভাগ মানুষের জন্য উত্স কোডটি লিখেন (আপনার সহযোগী বিকাশকারীরা, বা এমনকি আপনি একই প্রোগ্রামে কয়েকমাসে কাজ করছেন), কম্পিউটারের জন্য নয়। সি তে কোডেড একটি প্রোগ্রামের জন্য এটি প্রায়শই (তবে সর্বদা নয়) .c
সি ফাইল এবং .h
শিরোনামের ফাইলগুলি হয় তবে মেকফিলও উত্স কোড। তবে কখনও কখনও, metaprogramming কৌশল ব্যবহৃত হয়: কিছু প্রোগ্রাম উৎপাদিত সি কোড, এবং তারপর ইনপুটযে জেনারেটরের উত্স কোড হিসাবে বিবেচিত হয় (এমনকি যদি সেই জেনারেটরের আউটপুট সি কোড হয়)। দুটি উদাহরণ: আপনি পার্সিং সমস্যার জন্য কিছু পার্সার জেনারেটর (যেমন জিএনইউ বাইসন ) ব্যবহার করতে পারেন , তবে সেই জেনারেটরের ইনপুট ফাইলটি সোর্স কোড। অথবা আপনি একটি ক্ষুদ্র লিখতে পারে awk বা হাবা কিছু বের করে আনতে স্ক্রিপ্ট SQLite কিছু ডেটা যা যেমন একটি বড় রূপান্তরিত করা হবে ডাটাবেসের কিছু উত্পন্ন হেডারের মধ্যে ঘোষণা; তাহলে সেই ডাটাবেসে সোর্স কোড থাকবে!.y
enum
বিপরীতে একটি কম্পিউটার প্রোগ্রাম এটি চলমান কম্পিউটারের সাথে সম্পর্কিত। এটি সাধারণত দ্বারা প্রাপ্ত হয় কম্পাইল কিছু সোর্স কোড (কিছু লেখা প্রোগ্রামিং ভাষা , এবং এই হয় উল্লেখ প্রযুক্তি সংক্রান্ত বিভিন্ন নথিপত্রের ইংরেজি লেখা -see n1570 খসড়া C11 একটি বাইনারি মধ্যে - না সফ্টওয়্যার সরঞ্জাম!) এক্সিকিউটেবল ।
বিনামূল্যে সফ্টওয়্যার সম্পর্কে আরও পড়ুন । বিদ্যমান ফ্রি সফটওয়্যার প্রকল্পগুলির উত্স কোডে ডুব দিন ( কিছু খুঁজে পাওয়ার জন্য গিথুব বা সোর্সফোর্স দেখুন )।