ডেটা পাওয়ার জন্য পদ্ধতির নামগুলি [বন্ধ]


107

সতর্কতা: এটি একটি খুব গুরুতর প্রশ্ন / আলোচনা নয় যা আমি পোস্ট করছি ... তবে আমি বাজি রাখতে ইচ্ছুক যে বেশিরভাগ বিকাশকারীরা এই "ইস্যু" নিয়ে চিন্তা করেছেন ...

যে পদ্ধতিগুলি গিয়েছিল এবং কোথাও থেকে ডেটা পেয়েছে এবং ফিরে পেয়েছে এমন পদ্ধতিগুলির নামকরণের নামকরণ সম্পর্কিত অন্যান্য মতামত সর্বদা চেয়েছিল ...

বেশিরভাগ পদ্ধতির নামগুলি কিছুটা সহজ এবং সুস্পষ্ট ... SaveEmployee (), ডিলিটআর্ডার (), আপলোডডোকামেন্ট ()। অবশ্যই ক্লাসগুলির সাথে আপনি সম্ভবত সংক্ষিপ্ত ফর্মটি ব্যবহার করবেন ... যথাক্রমে যথাযথভাবে (সংরক্ষণ করুন), মুছুন (), আপলোড করুন ()।

যাইহোক, আমি সবসময় প্রাথমিক ক্রিয়ায় লড়াই করেছি ... কীভাবে ডেটা পাবেন। দেখে মনে হচ্ছে যে প্রতিটি প্রকল্পের জন্য আমি বিভিন্ন নামকরণ কনভেনশনগুলির মধ্যে ঝাঁপিয়ে পড়েছি কারণ আমি যে সর্বশেষটি ব্যবহার করেছি তার সাথে আমি কখনও খুশি নই। যতদূর আমি এগুলি বলতে পারি সম্ভাবনাগুলি ->

  • গেটবুকস ()
  • ফেচবুকস ()
  • পুনরুদ্ধারবুকগুলি ()
  • FindBooks ()
  • লোডবুকগুলি ()

আপনার চিন্তা কি?

উত্তর:


129

এটি সবই ধারাবাহিক শব্দার্থবিজ্ঞানের বিষয়ে ;

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

  1. getBooks() আপনি যখন কোনও সামগ্রীর সাথে সম্পর্কিত সমস্ত বই পেয়ে যাচ্ছেন তখন এটি ইঙ্গিত দেয় যে সেটটির মানদণ্ড ইতিমধ্যে সংজ্ঞায়িত হয়েছে এবং সেগুলি কোথা থেকে আসছে তা একটি গোপন বিশদ।
  2. findBooks(criteria) পদ্ধতি কলের পরামিতিগুলির উপর ভিত্তি করে বইগুলির একটি উপ-সেট যখন সন্ধান করার চেষ্টা করা হয় তখন এটি সাধারণত বিভিন্ন অনুসন্ধানের মানদণ্ডের সাথে ওভারলোড হবে
  3. loadBooks(source) আপনি যখন কোনও বাহ্যিক উত্স থেকে কোনও ফাইল বা ডিবি এর মতো লোড করছেন।
  4. আমি আনতে ব্যবহার করা হবে না / পুনরুদ্ধার কারণ তারা খুবই অস্পষ্ট এবং সঙ্গে মিশিয়ে ফেলেছিলেন পেতে পেতে আর কোন দ্ব্যর্থহীন পদের সঙ্গে সংশ্লিষ্ট শব্দার্থিক হয়।

উদাহরণ: আনতে বোঝা যায় যে কোনও সত্তাকে দূর থেকে দূরে থাকা কিছু পাওয়া উচিত এবং এটিকে ফিরিয়ে আনতে হবে। কুকুরগুলি একটি লাঠি নিয়ে আসে, এবং পুনরুদ্ধার করা অ্যাড সিনটিকের সাথে আনার প্রতিশব্দ যা আপনার আগেও জিনিসটির দখল থাকতে পারে। পেতে জন্য একটি প্রতিশব্দ হয় প্রাপ্ত পাশাপাশি যা বোঝা তোমাকে কিছু একমাত্র দখল আছে এবং অন্য কোন এক একযোগে এটি অর্জন করতে পারেন।

শব্দার্থবিজ্ঞান অত্যন্ত গুরুত্বপূর্ণ:

ভাষাশাস্ত্র এবং যুক্তি যুক্ত সঙ্গে শাখা

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

অস্পষ্ট বা উদ্বেগজনক অর্থ সহ শব্দগুলি তাদের ব্যক্তিগত মতামতের ভিত্তিতে পূর্বানুমতি এবং প্রাক-ধারণার কারণে বিভিন্ন ব্যক্তি বিভিন্ন শব্দার্থবিজ্ঞান দেয় এবং এটি কখনই শেষ হয় না।


5
আমি যুক্ত করব যে ডেটা বেস থেকে ডেটা পুনরুদ্ধার করা হলে আমি আনতে / পুনরুদ্ধার ব্যবহার করতাম
লিজ অ্যালবিন

4
হুমমম। আপনি কি ওয়াইল্ডকার্ডের মানদণ্ড এবং নির্দিষ্ট মানদণ্ডের মধ্যে পার্থক্য করতে চান? উদাহরণস্বরূপ, আপনি যখন কোনও নির্দিষ্ট প্রকাশকের কাছ থেকে বই খুঁজছেন তখন ফাইন্ডবুকগুলি (প্রকাশক) ব্যবহার করবেন? অথবা হতে পারে গেটবুকফ্রম প্রকাশক (প্রকাশক)?
জেসন

6
পাবলিশার.জেটবুকস () হ'ল এটি করার পছন্দীয় উপায়, যেখানে প্রকাশক কোনও প্রকাশকের নির্দিষ্ট উদাহরণ ছিল। লাইব্রেরি.বিটবুকস (প্রকাশক) যেখানে প্রকাশকরা একটি বুকসন্ধানক্রিটরিয়া ইন্টারফেস প্রয়োগ করে। লাইব্রেরি.বিটবুকস (লেখক) এর সাথে একই যেখানে লেখক একটি বুকসন্ধানক্রিটরিয়া ইন্টারফেস প্রয়োগ করেছিলেন। এছাড়াও আপনি যুক্তিসঙ্গতভাবে কারখানা পদ্ধতি হিসাবে

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

4
সাধারণত নামকরণের মত হল fetchডেটা অ্যাক্সেস সময় হয় কম , একই ডিভাইসে, অর্থাত্ মেমরি থেকে স্থানীয় ডাটাবেস থেকে। load, অথবা downloadঅ্যাক্সেসের সময়টি যদি ফাইল থেকে ইন্টারনেট, বাহ্যিক ডিবি থেকে বেশি হয়
জ্যানোস

14

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

  • গেটবুকস ()

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

  • ফেচবুকস ()

আপনি আপনার ডেটা উত্সকে রক্তাক্তের মতো ব্যবহার করেন এবং আপনার বইগুলি আনা তাঁর কাজ। আমি অনুমান করি যে তিনি একবারে কয়টি তাঁর মুখের মধ্যে ফিট করতে পারেন তা আপনার নিজেরাই সিদ্ধান্ত নেওয়া উচিত।

  • FindBooks ()

আপনার ডেটা উত্সটি একটি গ্রন্থাগারিক এবং আপনার বইগুলি অনুসন্ধানের জন্য ডিউয় দশমিক সিস্টেমটি ব্যবহার করবে।

  • লোডবুকগুলি ()

এই বইগুলি কোনও ধরণের "বৈদ্যুতিন বইয়ের ব্যাগ" এর অন্তর্গত এবং এগুলিতে অবশ্যই এটি লোড করা উচিত। এগুলি হারাতে না পারার জন্য লোড করার পরে জিপক্লোজড () কল করতে ভুলবেন না।

  • পুনরুদ্ধারবুকগুলি ()

আমার কিছু নাই.


4
গৃহীত উত্তরটি "উত্তর" এবং "আনুন" পাশাপাশি এই উত্তরটির মধ্যে পার্থক্য করে না। আনার অর্থ এটি অন্য কারো দ্বারা করাতে হবে কারণ এটি কিছুটা সময় নেবে বা এটি সম্পাদনের জন্য কিছু দক্ষতার প্রয়োজন হবে, তবে তা বোঝায় এটি তাত্ক্ষণিক এবং উপলভ্য ভার্ভ্যাটিম বা "শেল্ফের বাইরে" রয়েছে।
শ্রীধর সারনোবাত

আমিও আজ গৃহীত উত্তরটি নিয়ে সমস্যায় পড়ছি। আমার প্রকল্পের জন্য (প্রতিক্রিয়া / রেডাক্স-ভিত্তিক) আমি বিশ্বাস করি যে অ্যাপ্লিকেশনটির ডেটাবেস বনাম একটি তৃতীয় পক্ষের এপিআই বনাম রেডাক্স স্টোর থেকে নেওয়া ডেটার মধ্যে পার্থক্য করা গুরুত্বপূর্ণ। এই অধিকার প্রাপ্তি অবশ্যই ভবিষ্যতে পাঠযোগ্যতার সাথে সহায়তা করবে। addউভয়ের জন্য ব্যবহৃত আসল বিকাশকারী একটি ডেটাবেজে লেখেন এবং স্টোরটিতে লেখেন। এখন আমি এগুলি আলাদা করার চেষ্টা করছি এবং এটি একটি ব্যথা।
টিম.রোহরার

9

উত্তরটি কেবল আপনিই স্বাচ্ছন্দ্য বোধ করেন এবং সংবেদনশীল হন to

আপনার যদি কোনও বার্নস এবং আভিজাত্য ওয়েবসাইট থাকে এবং আপনি গেটবুকগুলি () ব্যবহার করেন তবে আপনার যদি মুভি সত্তার মতো অন্য আইটেম থাকে তবে গেটমোভিজ () ব্যবহার করুন। সুতরাং আপনি এবং আপনার দল যা পছন্দ করুন এবং সংবেদনশীল হন।


23
অন্তত আপনি ভুল বানান ধারাবাহিকভাবে সামঞ্জস্যপূর্ণ। ;-)
উইম হলব্রান্ডসে


মোটেও বিরক্ত নয় ... এটি নির্দেশ করার জন্য আপনাকে ধন্যবাদ।
জেসন

3

ওও (সি ++ / জাভা) এ আমি গেটসোমিং এবং সেটসামথিং ব্যবহার করার প্রবণতা রাখি কারণ খুব প্রায়ই না হলে আমি হয় সেই ডেটা অবজেক্টের প্রতিনিধিত্ব করে বা সেট করে রাখছি - গেটর / সেটার জোড়া the প্লাস হিসাবে, Eclipse এগুলি আপনার জন্য উত্পন্ন করে।

আমি যখন ফাইলগুলি বোঝি তখনই লোডটি ব্যবহার করি - যেমন "মেমরিতে লোড" হয় এবং এটি সাধারণত আদিম, স্ট্রাক্ট (সি) বা বস্তুগুলিতে লোড বোঝায়। আমি ওয়েবে প্রেরণ / গ্রহণ ব্যবহার করি।

উপরে যেমন বলা হয়েছে, ধারাবাহিকতা হ'ল সবকিছু এবং এতে ক্রস-বিকাশকারীও অন্তর্ভুক্ত রয়েছে।


1

"ডেটা পাওয়ার জন্য" আপনি কী বোঝাতে চেয়েছেন তা পরিষ্কার নয়। ডাটাবেস থেকে? একটি নথি? স্মৃতি?

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

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

আমি বরং "ফেচবুকফ্র্যামডেটাবেস", "লোডবুকফ্রাইমফাইলে", "ফাইন্ডবুকসনকলেশন" ইত্যাদির মতো কিছু দেখতে পাচ্ছি It এটি পড়ার প্রত্যেকে এখনই এটি যা করার চেষ্টা করছে তা পেয়ে যাবে।


4
ফেচবুকস থেকে ডেটাবেস নিয়ে সমস্যাটি যখন আপনি ফ্যাক্টর / জেনারেলাইজ করতে এবং ফেচবুকগুলি করতে চান তখন এক্সএমএল থেকে ডেটা টানতে পারে। আমি স্পেসিফিকেশনগুলিও পছন্দ করি তবে আপনি নিজেকে বিভিন্ন ফাংশনের নাম জুড়ে একই কার্যকারিতাটি পৃথক করে দেখতে পান । আর স্যার ঠাণ্ডা না!
জোন এইচ

আমি মনে করি গেট ভার্সেস ফাইন্ডের মধ্যে পার্থক্য সুস্পষ্ট বলে মনে হয় তবে গেট ভার্সেস আনুন সম্পর্কিত প্রশ্নটি সম্পর্কে আমি অবাক হয়েছি। হ্যালো..এখানে কি পার্থক্য আছে?
জেসন

@ জোনএইচ: আমি তাতে আপনার সাথে একমত তবে, আপনি যদি আগে থেকেই জানতেন যে আপনার কাছে বিভিন্ন ধরণের আনতে হবে, আপনি ক্লাসের নামকরণের ক্ষেত্রে এনকোড করে রেখেছিলেন (যাতে আপনি প্রসঙ্গটি থেকে অর্থটি ব্যাখ্যা করতে পারেন, যেমন, ডাটাবেসকনেক্টর বনাম এক্সএমএলকনেক্টর)।
উরি

7
@ জেসন: যেহেতু "গেটারস" এত সর্বব্যাপী (এবং এটি জাভাবিসের মতো কাঠামোর অংশ) তাই অনেক প্রোগ্রামার এগুলি ডেটা ক্ষেত্র অ্যাক্সেসের প্রায় স্বচ্ছ উপায় হিসাবে ভাবেন। অন্যদিকে, "আনুন" কিছু প্রোগ্রামারকে আরও দীর্ঘ অ্যাক্সেসের ইঙ্গিত দেয় যা স্থান থেকে অন্য জায়গায় স্থানান্তর (এ-লা সিপিইউ আনতে) বা ডাটাবেস আনতে জড়িত। উদাহরণস্বরূপ, হাইবারনেটের কোয়েরি ল্যাঙ্গুয়েজে একটি ফেচ কনস্ট্রাক্ট রয়েছে। বিকাশকারীরা ডকুমেন্টেশন পড়ার চেয়ে প্রায়শই নামগুলির প্রত্যাশার ভিত্তিতে পদ্ধতি ব্যবহার করেন যাতে ভুল সংকেত পাঠানো এড়ানো গুরুত্বপূর্ণ কারণ।
উরি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.