.NET প্রতিক্রিয়াশীল ফ্রেমওয়ার্ক [বন্ধ] এর ভাল পরিচয়


218

মাইক্রোসফ্ট ডকুমেন্টেশন ছাড়াও, মাইক্রোসফ্ট রিঅ্যাকটিভ (আরএক্স) কাঠামোর একটি ভাল ভূমিকা এবং টিউটোরিয়াল আছে কি?

এছাড়াও, একটি ভাল উদাহরণ কী (কোড সহ) যা প্রচলিত অ্যাসিনক্রোনাস কোডিং কৌশলগুলি ব্যবহার করে সমাধান করা চ্যালেঞ্জিং একটি প্রোগ্রামিং সমস্যাটিকে সহজ করে তোলে?


আমি দেখতে থাকি - এটির জন্য সবচেয়ে ভাল ব্যবহার করার আগে আমার ভাল ধারণা পাওয়ার আগে আমার প্রচুর উদাহরণ দেখতে হবে।
স্যাম হারওয়েল


5
আমি আমার ব্লগে একটি পোস্টের সিরিজে ঠিক এই প্রশ্নের উত্তর দিচ্ছি: rehansaeed.co.uk/reactive-extensions-part1-replacing-events
মুহাম্মদ রেহান সা Saeedদ

উত্তর:


97

আপডেট : নীচের ব্লগ পোস্টগুলি আমার অনলাইন বই www.IntroToRx.com দ্বারা ছাড়িয়ে গেছে । এটি একটি বিস্তৃত 19 টি অধ্যায়ের বই বিনামূল্যে পাওয়া যায়। আপনি এটি ওয়েবে ব্রাউজ করতে পারেন, বা আপনার প্রকারের জন্য মুবি সংস্করণটি ডাউনলোড করতে পারেন। আপনি এটি অল্প অল্প ফি (~ 99c / 77p) এর জন্য অ্যামাজন থেকে সরাসরিও পেতে পারেন। যদি বইটি আপনার চাহিদা বা প্রত্যাশা পূরণ না করে তবে আমাকে (লেখক) জানান এবং আমরা ভি 2 এর জন্য আরও ভাল করব।

হট / কোল্ড পোস্টের লিঙ্কের জন্য ধন্যবাদ। এটি সম্পূর্ণ সিরিজের কেবল একটি অংশ ,

  1. আরএক্সের পরিচিতি
  2. স্ট্যাটিক এবং এক্সটেনশন পদ্ধতি
  3. লাইফটাইম ম্যানেজমেন্ট - সম্পূর্ণ এবং আনসাবস্ক্রাইব করা
  4. প্রবাহ নিয়ন্ত্রণ
  5. একাধিক আইওজার্ভেবল স্ট্রিমগুলির সংমিশ্রণ
  6. শিডিউলিং এবং থ্রেডিং
  7. গরম এবং ঠান্ডা পর্যবেক্ষণযোগ্য
  8. পরীক্ষার আরএক্স
  9. বাফার, উইন্ডো, যোগদান এবং গ্রুপ যোগদান

আমি আরও ব্লগের আরএক্স পরিচিতি উপাদানগুলির সাথে এই ব্লগটি আপডেট করে রাখব।

আরও উন্নত সামগ্রীর জন্য আপনি আরএক্স ফোরাম (এমএসডিএন) যেতে চান ।


7
আমি আরএক্স সম্পর্কে শিখতে আমার পা টেনে নিচ্ছি কারণ সমস্ত শিখন উপকরণ ভিডিও আকারে রয়েছে। এই পাঠ্য-ভিত্তিক সংস্থান সরবরাহ করার জন্য +1।
ড্যানিয়েল শিলিং

গণনা করুন এই লিঙ্কটি মারা গেছে।
মাসলো

2
দীর্ঘ লাইভ এই লিঙ্কটি গণনা করুন
ফুলটাইম স্কেলটন

1
আমি জেমস (এনুমারেটটিস) এর সাথে কাজ করি এবং বছরের পর বছর ধরে তিনি এটিকে স্পর্শ করেননি। এটিকে পুনরুদ্ধার করার মতো সময় বা ক্ষুধা আছে বলে মনে হয় না
লি ক্যাম্পবেল

85

এখানে .NET Rx কাঠামোর বিভিন্ন বৈশিষ্ট্য কীভাবে ব্যবহার করবেন তা প্রদর্শক কোড উদাহরণ প্রচুর সঙ্গে একটি উইকি সাইট আছে: http://rxwiki.wikidot.com/101samples

আমি এটিকে সেখানে সর্বাধিক বিস্তৃত সাইট হিসাবে পেয়েছি এবং এটির সাথে দ্রুত শুরু করার একটি one


12
আমি যতক্ষণ না এই উইকিটি বলতে পারি ততটা বলে না যে কোন রেফারেন্সটি অন্তর্ভুক্ত করা উচিত। যা বরং ... হতাশাব্যঞ্জক।
জর্জ মাউয়ার

উম্মু কেবল ডেলস যুক্ত করুন এবং অবজেক্ট এক্সপ্লোরার এবং ক্লাসটি অনুসন্ধান করুন। অবশ্যই ভিজ্যুয়াল স্টুডিওতে ডান ক্লিকের প্রসঙ্গ
জো

62

আরএস-ফ্রেমওয়ার্কের জন্য এমএসডিএন সাইট

কোনও বিকাশকারী আরও গভীরতর হয়ে যাওয়ার জন্য, উত্স কোড

আরএক্স সম্পর্কে দুর্দান্ত অস্ট্রিয়ান মূল বক্তব্য

এটি আমি দেখেছি সেরা: ডেভ ক্যাম্প ২০১০ মূল কীট - আরএক্স : আপনার অ্যাসিনক্রোনাস প্রোগ্রামিং ব্লুজ নিরাময়

চ্যানেল 9 এ কিছু আকর্ষণীয় ভিডিও

কিম হ্যামিল্টন এবং ওয়েস ডায়ার: ভিতরে এন.ই.টি. আরএক্স এবং বিসিএলে IObservable / IObserver (VS 2010)

আরএক্স থেকে নির্মাতার সাথে একটি সাক্ষাত্কার: বিশেষজ্ঞ থেকে বিশেষজ্ঞ: ব্রায়ান বেকম্যান এবং এরিক মেইজার - .NET প্রতিক্রিয়াশীল ফ্রেমওয়ার্কের ভিতরে (আরএক্স)

আরএক্সের স্রষ্টার কাছ থেকে একটি ভূমিকা

একটি কোডপোজেক্ট নিবন্ধ

লিঙ্ক সহ নতুন কোর্স প্রথম ব্লগ (নতুন)


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

1
"দেবক্যাম্প 2010 মূল বক্তব্য" ভিডিওর সম্পূর্ণ নমুনা প্রকল্পটি এখানে রয়েছে: বার্টডেসমেট.नेट
ওমর

16

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

var pen = new Pen(Color.Red, 3);
var graphics = this.CreateGraphics();

var mouseMoveWhileDown = 
    from md in this.GetMouseDown()
    from mv in this.GetMouseMove().Until(this.GetMouseUp())
    select new Point(mv.X, mv.Y);

mouseMoveWhileDown
    .Pairwise()
    .Subscribe(tup => graphics.DrawLine(pen, tup.Item1, tup.Item2)); 

(আমাকে অবশ্যই স্বীকার করতে হবে যে সেই উদাহরণে, পেয়ারওয়াইস () স্বজাতীয় ...)

আইওবসারেবলের সবচেয়ে গুরুত্বপূর্ণ বিষয়টি হ'ল আইএনউমারেবলের মতো এটি 'কমপোজেবল'।

আমি অন্য উত্তরে উল্লিখিত ভিডিওটি দৃour়ভাবে সুপারিশ করছি। আসলে চ্যানেল 9-তে এই বিষয়টিতে বিভিন্ন ভিডিও রয়েছে:


কোথা থেকে আসে .যখন থেকে আসে, আমি কখনই এটি ব্যবহার করতে পারি না, আমার অবশ্যই একটি রেফারেন্স অনুপস্থিত
টিমোথিপি

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

এটি একটি দুর্দান্ত উদাহরণ যা রেক্সের আত্মাকে দেখায়। ধন্যবাদ।
ড্যান আব্রামভ

আপনি পেয়ারওয়াইসের বাস্তবায়ন ভাগ করে নিতে পারেন ()?
ব্লাস্টার

1
@blaster, কিভাবে এই বাস্তবায়ন সম্পর্কে: var pairwise = source.Zip(source.Skip(1), (x, y) => new Tuple(x, y))
মিস্টারমিটাফোর

12

আপনি একবার সহ কিছু বেসিক স্টাফ দিয়ে গেলে হ্যান্ডসঅনল্যাব স্টাফগুলি অতিক্রম করার পরে নিশ্চিত হয়ে নিন যে আপনি লি ক্যাম্পবেলের হট অ্যান্ড কোল্ড অবজার্ভবেবল আরএক্সের থেকে কিছু আরকেন রহস্য নিয়েছিল তা পরীক্ষা করে দেখুন :)


4

প্রতিক্রিয়াশীল লিনকিউ দরকারী সম্পর্কে আপনি এই সিরিজের নিবন্ধগুলি (চারটি আছে) পেতে পারেন: প্রতিক্রিয়াশীল প্রোগ্রামিং (II।) - প্রতিক্রিয়াশীল LINQ উপস্থাপন করছি

গেমটি এটি ব্যবহার করে লেখার উদাহরণ রয়েছে, তাই আশা করা যায় এটি আপনি যা খুঁজছেন তা হওয়া উচিত।



4

উদ্ভট, প্রতিক্রিয়াশীল এক্সটেনশনগুলি হোমপেজ এক ডজন ভিডিও এবং ব্লগে লিঙ্ক করে তবে বিস্তৃত সরকারী রেফারেন্স ডকুমেন্টেশনে লিঙ্ক করতে ভুলে যায়। এটি একটি হাহাকার লজ্জা, আপনি যদি দলটি জানেন তবে দয়া করে তাদের ওয়েবসাইট ঠিক করতে বলুন!



2

2

দ্বিতীয় প্রশ্নের উত্তর দেওয়ার জন্য, এখানে একটি সমস্যা যা Rx থেকে অনেক উপকার করতে পারে। এটিকে "দ্রুত সমৃদ্ধ হন" বলা হয়।

আপনি একই নামে একটি গেম তৈরি করেছেন এবং এটি বেশ ভাল বিক্রি করছে। তবে এটি কেবল আপনার স্টোরগুলিতে পাইকারি জন্য উপলব্ধ available নগদ প্রক্রিয়াকরণকে আরও সহজ করার জন্য আপনার কাছে একটি বাহক বেল্ট রয়েছে যা আপনার দিকে প্রবাহিত হবে।

(উপরে বর্ণিত গল্পটি নির্দ্বিধায় অনুভব করুন :))

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

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

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

আপনি প্রতিটি ওয়াডকে বাইট দ্বারা উপস্থাপন করতে পারেন []।

এটি মোটামুটি সাধারণ বাস্তব বিশ্বের পরিস্থিতি; যখন আপনি কোনও সংস্থান [উদাহরণস্বরূপ, সার্চ ইঞ্জিন, চিত্র বা ভিডিওগুলির জন্য ওয়েবপৃষ্ঠাগুলি] কোনও নেটওয়ার্কে বা পেরিফেরিয়াল ডেটা থেকে উদ্ধার করেন, তখন আপনি সেগুলি বাইটের (সম্ভবত শিরোনাম সহ) পেয়ে যাবেন। একটি একক থ্রেডে, বা একাধিক-থ্রেড পরিবেশে যা কাজ করা খুব কঠিন, আপনি তাদের একত্রিত করতে এবং প্রক্রিয়া করার ঝোঁক। আর না!!


এটি কেবলমাত্র কয়েকজন প্রযোজক (বিক্রয় লোকেরা) একই আইওজারবার <T> এ অননেক্সটকে কল করছেন এবং তারপরে গ্রাহক সাবস্ক্রাইব করছেন তবে নিশ্চিত করা হচ্ছে যে এটি কোথায় উত্পাদিত হচ্ছে (অননেক্সট) এটি অন্য কোনও থ্রেডে পর্যবেক্ষণ করছে।
লি ক্যাম্পবেল

2

জেসি লিবার্টির একটি বই বের হয়েছে, অক্টোবর ২০১১:

অ্যামাজন ডট কম: প্রোগ্রামিং প্রতিক্রিয়াশীল এক্সটেনশন এবং লিনকিউ

এবং চ্যানেল 9 এ আরএক্স ওয়ার্কশপ ভিডিও রয়েছে:

চ্যানেল 9: আরএক্সওয়ার্কশপ


1

আপনার "মাইক্রোসফ্ট ডকুমেন্টেশন বাদে" ধারাটি কি চ্যানেল 9 এর ভিডিওগুলিতে প্রসারিত?

প্রতিক্রিয়াশীল কাঠামোর নির্মাতা এরিক মেইজার: - বিশেষজ্ঞ থেকে বিশেষজ্ঞ: ব্রায়ান বেকম্যান এবং এরিক মাইজার -। নেট প্রতিক্রিয়াশীল ফ্রেমওয়ার্কের ভিতরে (আরএক্স)

ব্র্যান্ড নতুন : .NET এর জন্য আরএক্স এক্সটেনশানগুলির সাথে সূচনা করা



1

আন্দ্রেস হফম্যানের লিঙ্কগুলি ছাড়াও (আমি যখন আরএক্স শিখছিলাম তখন সেগুলি খুব সহায়ক হয়েছিল)

বার্ট ডি স্মেটের কয়েকটি এখানে রয়েছে (একটি খুব স্মার্ট ছেলে যিনি বিষয়গুলিকে সত্যিই ভালভাবে ব্যাখ্যা করেন) ভিডিও:

Rx- এর মাধ্যমে রান কেন্ডা:
আরএক্স - আপনার অ্যাসিনক্রোনাস প্রোগ্রামিং ব্লুজ নিরাময়

কিছু গোরীর অন্তঃস্থল + কিছু দর্শনের, এই ভিডিওগুলি সত্যই আলোকিত:
ন্যূন লিনকুই - লিনকিউয়ের সারমর্ম
(উপরের ভিডিওটিতে লিনকু কিন্ডা অন্যান্য বিষয়গুলির সাথে কীভাবে সম্পর্কিত, আরএক্সের মতো এটি সম্পর্কিত)

আইকিউজার্ভেবলে পর্যবেক্ষণ - আইকুয়েরেবলের দ্বৈত


1

DEVHOL202 - .NET (পিডিএফ, 2 মেগাবাইট) এর প্রতিক্রিয়াশীল এক্সটেনশনগুলির সাথে অ্যাসিঙ্ক্রোনাস ব্লুজগুলি নিরাময় করা আমি এখনও অবধি দেখা সেরা ল্যাব / টিউটোরিয়াল। এটি আপনাকে গ্রন্থাগারের মূল বিষয়গুলির মধ্যে গাইড করে, যাতে আপনি কী শিখেছেন তার উপর আপনি নকশা তৈরি করতে এবং নকশা করতে পারেন।

একটি জাভাস্ক্রিপ্ট সংস্করণ আছে। "পরীক্ষাগারে প্রতিক্রিয়াশীল এক্সটেনশনগুলির হাত" এর জন্য গুগল অনুসন্ধান করুন।


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