ভিজুয়াল বেসিক এবং বেসিকের ক্ষেত্রে ডিআইএম কী বোঝায়?


উত্তর:


318

ডিমের মূলত (বেসিকে) ডাইমেনশনের পক্ষে ছিল, কারণ এটি অ্যারের মাত্রা নির্ধারণ করতে ব্যবহৃত হয়েছিল।

(বেসিকের আসল বাস্তবায়ন ছিল ডার্টমাউথ বেসিক, যা ফোরট্রান থেকে নেমেছিল, যেখানে ডিমেনশানটি বানানযুক্ত))

আজকাল, ডিম কেবল অ্যারে নয়, কোনও পরিবর্তনশীল সংজ্ঞায়িত করতে ব্যবহৃত হয়, সুতরাং এর অর্থ আর স্বজ্ঞাত নয়।


64
একটি সামান্য ব্যাকগ্রাউন্ড সাহায্য করতে পারে। প্রাথমিকের প্রাথমিক প্রকাশে কেবলমাত্র ভেরিয়েবলগুলি ঘোষণার প্রয়োজন ছিল অ্যারে ছিল। "অ্যালি" কীওয়ার্ডটি এই অ্যারের মাত্রা নির্ধারণ করতে ব্যবহৃত হয়েছিল।
ক্রিস সিম্পসন

26
আমি 80 এর দশকের গোড়ার দিকে জিডাব্লু-বেসিক প্রোগ্রামিং গাইড পড়ার কথা মনে করি এবং আমি স্পষ্টরূপে এটি ডিআইএম ব্যাখ্যা করে মেমোরিতে ঘোষণার অর্থ ব্যাখ্যা করি। '64৪ থেকে ডার্থমাউথ বেসিক গাইড পড়ার ক্ষেত্রে এলইটি এবং রিড স্টেটমেন্টগুলি ভেরিয়েবল এবং তাদের মান নির্ধারণ করে এবং পরে '68 ডিআইএম-এ অন্তর্ভুক্ত করা হয় এবং বাস্তবে অ্যারেগুলির জন্য ব্যবহৃত হয়। bitsavers.org/pdf/dartmouth/BASIC_4th_Edition_an68.pdf
র্যান্ডিমারিস

4
একটি জিনিস মনে রাখতে হবে, প্রাথমিক ভাষা বিকাশের ক্ষেত্রে, একাধিক অর্থের জন্য কোনও কীওয়ার্ডকে ওভারলোড করা সাধারণ ছিল। যেহেতু, মূল বেসিকটিতে, "ডিম" ইতিমধ্যে একটি কীওয়ার্ড ছিল অ্যারে ভেরিয়েবলগুলি ঘোষণার জন্য, তাই কীওয়ার্ডটি সমস্ত ভেরিয়েবল ঘোষণার অন্তর্ভুক্ত করার জন্য বাড়ানো হয়েছিল। একটি নতুন কীওয়ার্ড প্রবর্তন একাধিক কারণে এড়ানো হয়েছিল, এর মধ্যে একটি হ'ল যে তারা বিদ্যমান প্রোগ্রামগুলিকে ভঙ্গ করতে চান না যারা ইতিমধ্যে নতুন কীওয়ার্ডটি ভেরিয়েবল নাম হিসাবে ব্যবহার করেছেন। আজ আমাদের কাছে আরও পরিশীলিত পার্সিং প্রযুক্তি এবং দ্রুত কম্পিউটার রয়েছে, আমরা এই ধরণের সীমাবদ্ধতা দেখতে পাই না।
zumalifeguard

3
উদাহরণস্বরূপ, পরের বেসিক যেমন ভিজ্যুয়াল বেসিকের মধ্যে একটি টাইপ এবং একটি ভেরিয়েবল একই নাম হতে পারে। অত্যধিক লোড হওয়া কীওয়ার্ডের একটি দুর্দান্ত উদাহরণ হ'ল সি ++ এ "স্ট্যাটিক"। এর অর্থ বিভিন্ন প্রসঙ্গে বিভিন্ন জিনিস।
zumalifeguard

লিঙ্কিত দুর্দান্ত বেসিক ম্যানুয়ালটি দেখার জন্য যারা র‌্যান্ডি মরিস লিঙ্ক করেছেন তাদের জন্য, ডিআইএমের প্রথম উল্লেখটি পৃষ্ঠাটি 21 নাম্বারে রয়েছে বা এটি পিডিএফের 26 পৃষ্ঠায় রয়েছে। আরও আনুষ্ঠানিক সংজ্ঞা পিডিএফ নিজেই 37 বা 41 নম্বর পৃষ্ঠায় হয়।
জন কমিংস 16

120

Dim এর সাথে যুক্ত বিভিন্ন অর্থ রয়েছে।

আমি রেফারেন্স পেয়েছি Dim, যার অর্থ "স্মৃতি ঘোষণা" আরো প্রাসঙ্গিক রেফারেন্সে হল একটি দস্তাবেজ অস্পষ্ট বিবৃতি Siebel ভিবি ভাষা রেফারেন্স অংশ হিসেবে প্রকাশিত ওরাকল। অবশ্যই, আপনি তর্ক করতে পারেন যে আপনি মেমরিতে ভেরিয়েবলগুলি ঘোষণা না করলে আপনি এটি কোথায় করেন? কীভাবে ব্যবহৃত হয় তা বিবেচনা করে "মডিউলে ঘোষনা করা" একটি ভাল বিকল্প হতে পারে Dim

আমার মতে, "ঘোষণা স্মৃতিতে" আসলে একটি হয় স্মৃতিসম্বন্ধীয় কিভাবে ব্যবহার করবেন তা জানতে সহজ করতে সৃষ্টি Dim। আমি "স্মৃতিতে ঘোষণাপত্র" একটি আরও ভাল অর্থ হিসাবে দেখতে পাই এটি ভাষার বর্তমান সংস্করণগুলিতে এটি কী করে তা বর্ণনা করে তবে এটি সঠিক অর্থ নয়।

আসলে, বেসিকের উত্সে Dimকেবল অ্যারে ঘোষণার জন্য ব্যবহৃত হত। নিয়মিত ভেরিয়েবলের জন্য কোনও কীওয়ার্ড ব্যবহার করা হয়নি, পরিবর্তে তাদের নামটি তাদের নাম থেকে অনুমান করা হয়েছিল। উদাহরণস্বরূপ, যদি ভেরিয়েবলের নামটি শেষ হয় $তবে এটি একটি স্ট্রিং (এটি এমন কিছু যা আপনি ভিবি 6 পর্যন্ত পদ্ধতির নামগুলিতে দেখতেও পেতেন, উদাহরণস্বরূপ Mid$)। এবং তাই, আপনি মাত্রাDim দিতে ব্যবহার করেছেন অ্যারেগুলিকে দেওয়ার করেছিলেন (বিজ্ঞপ্তি যা ReDimঅ্যারেগুলিকে পুনরায় আকার দেয়)।


সত্যিই, এটা কোন ব্যাপার ? আমি বলতে চাইছি এটি একটি কীওয়ার্ড যা এর একটি অর্থ কৃত্রিম ভাষার ভিতরে রয়েছে। এটি ইংরেজী বা অন্য কোনও প্রাকৃতিক ভাষায় শব্দ হতে হবে না। সুতরাং এটির অর্থ যা আপনি চান তার অর্থ হতে পারে, যা গুরুত্বপূর্ণ তা হ'ল এটি কাজ করে।

যাইহোক, এটি সম্পূর্ণ সত্য নয়। বেসিক যেহেতু আমাদের সংস্কৃতির অংশ, এবং এটি কেন এমনটি হয়েছে তা বুঝতে পেরে - আমি আশা করি - বিশ্বের আমাদের দৃষ্টি উন্নতি করতে সহায়তা করবে।


আমি আমাদের কম্পিউটার থেকে আমাদের সংস্কৃতির এই ছোট্ট টুকরোটি যা হারিয়ে গেছে মনে হয় এটি সংরক্ষণ করার জন্য সাহায্য করার ইচ্ছা নিয়ে বসেছিলাম, এটি আমাদের অনুমানের পরিবর্তে এটি কী ছিল। এবং তাই, আমি 1998 সংস্করণ থেকে এমএসডিএন বর্তমান এবং পুরাতন সিডি উভয়ই খনন করেছি। আমি পুরাতন কিউবাসিক [ডসবক্স ব্যবহার করতে হয়েছিল] এর জন্য নথিপত্রও সন্ধান করেছি এবং তারা কীভাবে কথা বলে তা খুঁজে পেতে, সমস্ত দারথমাউথ ম্যানুয়াল পেয়েছিDim । আমার হতাশার জন্য, তারা কী বোঝায় তা বলে না Dimএবং কেবল এটি কীভাবে ব্যবহৃত হয় তা বলে না।

তবে আমার আশা ম্লান হওয়ার আগে আমি এটি সন্ধান করতে পেরেছি বিবিসি মাইক্রোকম্পিউটার সিস্টেম ব্যবহৃত গাইডটি (যেটি 1984 সালের দাবি, এবং আমি এটি সন্দেহ করতে চাই না)। বিবিসি মাইক্রোকম্পিউটার বিবিসি বেসিক নামে বেসিকের একটি বৈকল্পিক ব্যবহার করেছিল এবং এটি নথিতে বর্ণিত হয়েছে। যদিও, এটি কি করে তা বলে নাDim পক্ষে দাঁড়ায় , এটি বলে (104 পৃষ্ঠায়):

... আপনি যতটা এনট্রি চান N dimen টি মাত্রা দিতে পারেন। উদাহরণস্বরূপ, ডিআইএম এন $ (1000) 1000 আলাদা আলাদা নামের জন্য একটি স্ট্রিং অ্যারে তৈরি করবে।

যেমনটি আমি বলেছিলাম, এটি বলার অপেক্ষা রাখে না যে এটি Dimমাত্রাটির জন্য দাঁড়িয়েছে, তবে সেই সহযোগীতার প্রমাণ হিসাবে কাজ করেDimDimension দলিলটি লেখার সময় তার সাথে করা একটি সাধারণ জিনিস ছিল ।

এখন, পরে আমি একটি ফলপ্রসূ আশ্চর্য পেয়েছি (পৃষ্ঠাতে 208), ডিআইএম কীওয়ার্ড বর্ণনা করে এমন বিভাগটির শিরোনাম (দ্রষ্টব্য: এটি সামগ্রীতে তালিকাভুক্ত নয়) বলেছেন:

একটি অ্যারের ডিআইএম মাত্রা

সুতরাং, "দিম স্ট্যান্ডস ..." এর উদ্ধৃতিটি আমি পাইনি তবে আমার ধারণা এটি স্পষ্ট যে কোনও শালীন মানুষ যে এই দস্তাবেজগুলি পড়তে সক্ষম হবে তার Dimঅর্থ মাত্রা বিবেচনা করবে ।


নব প্রত্যাশার সাথে, আমি কীভাবে Dimনির্বাচিত হয়েছিল তা অনুসন্ধান করার সিদ্ধান্ত নিয়েছি । আবার, আমি এই বিষয়ে কোনও অ্যাকাউন্ট পাইনি, তবুও আমি একটি নির্দিষ্ট উদ্ধৃতি খুঁজে পেতে সক্ষম হয়েছি:

আপনি কোনও অ্যারে ব্যবহার করার আগে আপনাকে অবশ্যই এটি একটি ডিআইএম (মাত্রা) বিবৃতিতে সংজ্ঞায়িত করতে হবে।

বেসিকের সহ-লেখক টমাস ইউজিন কুর্তজ প্রতিষ্ঠিত সংস্থা ট্রু বেসিক ইনক এর ওয়েব পৃষ্ঠায় ট্রু বেসিক অনলাইন ইউজার গাইডের অংশ হিসাবে এটি পেতে পারেন ।


সুতরাং, প্রকৃতপক্ষে, Dimহ'ল একটি সংক্ষিপ্ত হাত DIMENSIONএবং। এটি ফোরট্রানে আগে ছিল, সুতরাং প্যাট্রিক ম্যাকডোনাল্ড তার উত্তরে বলেছিলেন যে সম্ভবত এটি ফোরট্রানের প্রভাব দ্বারা বেছে নেওয়া হয়েছিল ।


Dim sum as string = "this is not a chinese meal" REM example usage in VB.NET ;)

1
আমি "স্মৃতিতে ঘোষণা" শুনেছি।
জোকল

"সত্যই, এটা কি গুরুত্বপূর্ণ ?" আন্ডারপ্রেসিটেড কৌতুক। এছাড়াও আমি এখন লোকদের কাছে জোর দিয়ে বলছি যে এটিই Dimআসলে যা দাঁড়ায়
জ্যাকব স্ট্যাম

30

এটি মাত্রাটির পক্ষে সংক্ষিপ্ত, কারণ এটি মূলত অ্যারেগুলির আকার নির্দিষ্ট করতে বেসিকটিতে ব্যবহৃত হয়েছিল।

ডিম - (মাত্রার জন্য সংক্ষিপ্ত) অ্যারের আকার নির্ধারণ করুন

তথ্যসূত্র: http://en.wikedia.org/wiki/Dartmouth_BASIC

মূল বেসিক সংকলক উত্স কোডের একটি অংশ, যেখানে কোনও DIMকমান্ড সন্ধান করার সময় এটি লাফিয়ে উঠত, যেখানে আপনি কীওয়ার্ডের মূল অভিপ্রায়টি স্পষ্ট দেখতে পাচ্ছেন:

DIM    LDA XR01             BACK OFF OBJECT POINTER
       SUB N3
       STA RX01
       LDA L        2       GET VARIABLE TO BE DIMENSIONED
       STA 3
       LDA S        3
       CAB N36              CHECK FOR $ ARRAY
       BRU *+7              NOT $
       ...

সূত্র: http://dtss.dartmouth.edu/scans/BASIC/BASIC%20Compiler.pdf

পরবর্তীতে এটি সমস্ত ধরণের ভেরিয়েবলগুলি ঘোষণার জন্য ব্যবহৃত হয়েছিল, যখন সাম্প্রতিক বাস্তবায়নে ভেরিয়েবলের ধরণ নির্দিষ্ট করার সম্ভাবনা যুক্ত করা হয়েছিল।


15

একটি পরিবর্তনশীল মাত্রা, মূলত আপনি সংকলকটি বলছেন যে আপনি এই সময়ে একটি পরিবর্তকের প্রয়োজন হবে।


13

এটি ডাইমেনশনটির অর্থ, তবে সাধারণত "ভেরিয়েবল তৈরি করুন" বা "এর জন্য স্থান বরাদ্দ করুন" হিসাবে পড়া হয়।


10

পরিবর্তনশীল ঘোষণা. প্রথমদিকে, এটি "মাত্রা" এর জন্য সংক্ষিপ্ত ছিল, যা কোনও শব্দ নয় যা প্রোগ্রামিংয়ে ব্যবহৃত হয় (এই নির্দিষ্ট কীওয়ার্ডের বাইরে) কোনও উল্লেখযোগ্য ডিগ্রি পর্যন্ত।

http://in.answers.yahoo.com/question/index?qid=20090310095555AANmiAZ


7

ডিআইএম মানে ডিক্লারেশন ইন মেমোরি ডিআইএম এক্স যেমন নতুন পূর্ণসংখ্যার মেমরিতে একটি স্থান তৈরি করে যেখানে ভেরিয়েবল এক্স সংরক্ষণ করা হয়


6

দিনের মধ্যে ডিআইএম অ্যারের জন্য মেমরি সংরক্ষিত ছিল এবং যখন মেমরি সীমাবদ্ধ ছিল আপনি কীভাবে এটি ব্যবহার করেছিলেন সে সম্পর্কে আপনাকে যত্নবান হতে হয়েছিল। আমি একবার (1981 সালে) 48Kb র‌্যাম সহ টিআরএস -80 মডেল তৃতীয়তে একটি বেসিক প্রোগ্রাম লিখেছিলাম। আমি ডিআইএম স্টেটমেন্ট পরিবর্তন করে অ্যারের আকার হ্রাস না করা পর্যন্ত এটি 16Kb র‌্যামের সাথে অনুরূপ মেশিনে চলবে না


4

মাত্রা জন্য সংক্ষিপ্ত। এটি এক ধরণের পরিবর্তনশীল। আপনি ঘোষণা করেন (বা "বলুন" ভিজ্যুয়াল বেসিক) যে আপনি এই শব্দটি দিয়ে একটি ভেরিয়েবল সেট আপ করছেন।


3

ডিম কীওয়ার্ডটি isচ্ছিক, যখন আমরা এটি সংশোধনকারীগুলির সাথে ব্যবহার করি - সর্বজনীন, সুরক্ষিত, বন্ধু, সুরক্ষিত বন্ধু, ব্যক্তিগত, ভাগ করা, ছায়া, স্ট্যাটিক, পঠনযোগ্য ইত্যাদি etc. উদাহরণস্বরূপ - Static nTotal As Integer

রেফারেন্স ধরণের জন্য, শ্রেণি বা কাঠামোর নতুন উদাহরণ তৈরি করতে আমাদের নতুন কীওয়ার্ড ব্যবহার করতে হবে । যেমনDim lblTop As New System.Windows.Forms.Label

যখন আপনি অপশনটি ইনফার চালু করে তখন ডিম্যাটাইপটি দিয়ে ডিম স্টেটমেন্ট ব্যবহার করা যেতে পারে । সেক্ষেত্রে সংকলক তার প্রারম্ভিক প্রকাশের ধরণ থেকে একটি ভেরিয়েবলের ডেটা টাইপ অনুমান করে। উদাহরণ:

Option Infer On

Module SampleMod

Sub Main()

 Dim nExpVar = 5

উপরোক্ত বিবৃতি সমান- Dim nExpVar As Integer


স্ট্যাকওভারফ্লোতে আপনাকে স্বাগত জানাই এবং এই উত্তরের জন্য আপনাকে ধন্যবাদ, তবে সত্যই এটি অসংখ্য উত্তর উত্তর প্রসারিত করে না যা সমস্ত একই উত্তর দেয়।
Deanna
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.