ইউএসএল বর্গের চিত্রগুলি কি জাভাস্ক্রিপ্ট সিস্টেম ডিজাইনের জন্য পর্যাপ্ত?


23

ইউএমএল অবজেক্ট অরিয়েন্টেশন সম্পর্কিত আরও ক্লাসিক পদ্ধতির দিকে দৃষ্টি নিবদ্ধ করা হয়েছে, এটি এখনও জাভাস্ক্রিপ্ট সিস্টেমগুলি ডিজাইনের নির্ভরযোগ্য উপায়ে ব্যবহারযোগ্য?

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

দয়া করে মনে রাখবেন যে আমি এখানে বাস্তব বিশ্বের ডোমেন সম্পর্কে কথা বলছি না; এটি সমাধানের জন্য একটি মডেল যা আমি অর্জন করার চেষ্টা করছি।


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

1
@ জিমিহোফা আমি যথেষ্ট পরিমাণে সম্মত। বিশেষত আধুনিক আইডিই'র সাহায্যে কোনও প্রোগ্রামার সহজেই অবজেক্ট-ওরিয়েন্টেড সোর্স কোডটি দেখতে এবং একই শ্রেণীর ডায়াগ্রামে বর্ণিত একই তথ্য (এবং আরও) প্রাপ্ত করতে সক্ষম হওয়া উচিত। সিন্ট্যাক্স হাইলাইটিং এবং স্বতঃ-উত্পাদিত বাহ্যরেখাগুলি উপলভ্য আধুনিক আইডিইর আগে ক্লাস ডায়াগ্রামগুলি আরও দরকারী বলে আমি কল্পনা করতে পারি। ক্লাস ডায়াগ্রামগুলি প্রোগ্রামিংয়ের অভিজ্ঞতা ছাড়াই বা এমন একটি বিশাল প্রকল্পে যেখানে বস্তুগতভাবে প্রত্যেককে ডিজাইনটি মৌখিকভাবে ব্যাখ্যা করার জন্য পর্যাপ্ত সময় নেই সেখানে অবজেক্ট-ভিত্তিক কাঠামোগুলি চিত্রিত করার জন্য উপযুক্ত হতে পারে।
ডেভিড ক্যাসিনস্কি

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

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

@ ডকব্রাউন যথেষ্ট ন্যায্য, আসুন আমরা একমত যে ইউএমএল শেখা এড়ানো উচিত এবং তার পরিবর্তে স্ট্রিং অ্যান্ড হোয়াইটের পড়াটি সম্ভবত এটি প্রতিস্থাপন করা উচিত :)
জিমি হোফা

উত্তর:


18

মনে হচ্ছে আপনি দুটি ভিন্ন জিনিস জিজ্ঞাসা করছেন

  • ইউএমএল জাভাস্ক্রিপ্ট সিস্টেম চিত্রিত করতে ব্যবহার করা যেতে পারে?
  • শ্রেণীর চিত্রগুলি জাভাস্ক্রিপ্ট সিস্টেমগুলি চিত্রিত করতে ব্যবহার করা যেতে পারে?

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

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


5

আপনার উত্তর আপনার প্রশ্নের মধ্যে লুকানো আছে:

একটি নির্দিষ্ট সমস্যা যা আমি দেখতে পাচ্ছি তা হ'ল বর্গ চিত্রগুলি সিস্টেমটির কাঠামোগত দৃষ্টিভঙ্গি এবং জাভাস্ক্রিপ্ট আরও আচরণচালিত, আপনি কীভাবে এটি মোকাবেলা করতে পারবেন?

BDD (আচরণ চালিত ডেভেলপমেন্ট) কৌশল এবং সরঞ্জাম অনুসারে যে আপনার নকশা চাহিদা চয়ন।

সম্পর্কিত আলোচনা যা আপনি দেখতে দরকারী বলে মনে করতে পারেন - বিডিতে কীভাবে গল্প / পরিস্থিতি লিখতে হয় । এবং কোড ম্যাগাজিনের একটি বিস্তৃত নিবন্ধ - আচরণ-চালিত বিকাশ

PS: সাধারণভাবে, UML represent general types of behaviorতবে এটি এখনও আপনার নকশাকে নির্বাচিত বিভাগের ডান সেট (সিকোয়েন্স ডায়াগ্রামের মতো) দিয়ে মডেল করতে ব্যবহৃত হতে পারে।I would reference the Wikipedia and find the right UML diagram category to use.


এটি সমস্যার সংজ্ঞা বা বিকাশ পরিচালনার পদ্ধতির বলে মনে হচ্ছে। আমি আসলে নীচের স্তরের ডিজাইনের কথা বলছিলাম, সমাধানের কাছাকাছি।
জুলিও রডরিগস

4

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

আমি কেন ওয়েব অ্যাপ্লিকেশন মডেল করার সর্বোত্তম বিকল্পটি বিশ্বাস করি? কারণ এভ্রিবিডি জানেন যে ক্লাস ডায়াগ্রাম কীভাবে কাজ করে এবং এটি এটির নিকটতম জিনিস। এটি খুব সহজেই বোঝা যায় এবং প্রোগ্রামাররা ডকুমেন্টেশনগুলি শব্দে পড়তে খুব অলস হয় তবে চিত্রের দিকে তাকানো তেমন শক্ত নয়;)। যাইহোক, যদি আপনি নির্বাহের সময়ে কী ঘটে থাকে তা দেখতে চান, তবে আপনার একটি সিকোয়েন্স ডায়াগ্রামের সন্ধান করা উচিত কারণ ওয়েব অ্যাপ্লিকেশনটিতে কোনও কোনও সময় গতিশীল ফাইল তৈরি করা হয়।

Node.js প্যাকেজ "wavi" দ্বারা উত্পাদিত ডায়াগ্রাম


3

ইউএমএলে এমন আচরণের মডেলও রয়েছে যা আপনি সিকোয়েন্স ডায়াগ্রাম বা স্টেট চার্ট ডায়াগ্রামের মতো সিস্টেমের আচরণ চিত্রিত করতে ব্যবহার করতে পারেন


1

হ্যাঁ, আপনি ইউএমএল ব্যবহার করতে পারেন, সর্বাধিক উল্লেখযোগ্যভাবে সিকোয়েন্স ডায়াগ্রামগুলি

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

ইউএমএলে জাভাস্ক্রিপ্টের ফ্রন্ট-এন্ড ডিজাইন করার অভিজ্ঞতার ভিত্তিতে আমি এই বিষয়ে একটি সাদা কাগজ লিখেছি: কৌণিক অ্যাপ্লিকেশনগুলির জন্য ইউএমএলে প্রযুক্তিগত নকশা


0

দেখে মনে হচ্ছে আপনি জাভাস্ক্রিপ্টের জন্য ইউএমএল ব্যবহার করতে পারেন তবে আপনি কীভাবে আপনার কাজের কাছে যেতে যাচ্ছেন তার উপর এটি নির্ভর করবে।

বিশেষত জেএস / ইউএমএল জেএসডোক, দোজো, ওয়াইউআইয়ের জন্য ইউএমএল ডকুমেন্টেশন স্বয়ংক্রিয় করতে পারে।

আমি অনুমান করব যে সেখানে আরও অনেক কিছু আছে তবে এখনও অন্য কিছু জুড়েছে না।


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