রুবি সঠিকভাবে কী করেছে (বা এটি রইল ছিল)? [বন্ধ]


13

বেশিরভাগ প্রোগ্রামিং ভাষার কিছু নকশার সিদ্ধান্ত থাকে যা তাদের ব্যবহার এবং প্রয়োগযোগ্যতার উপর প্রভাব ফেলে।

উদাহরণ স্বরূপ:

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

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

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

এর স্রষ্টার হিসাবে সর্বাধিক উল্লেখযোগ্য কারণ হ'ল '... একটি মজা দুর্বলভাবে টাইপ করা প্রোগ্রামিং ভাষা চাইছিল' - আমি পুরোপুরি একটি নতুন প্রোগ্রামিং ভাষা তৈরি করার কারণ হিসাবে দেখছি না! প্রোগ্রামিংটি ভাষা নির্বিশেষে আইএমএইচও-র নিখুঁত মজাদার (প্রতিটি ভাষার কিছু খারাপ অংশ থাকে তবে একটি হয় হয় এটির চারপাশে চলে যায় বা এর সাথে থাকে)।

তাহলে রুবি কী ভাষা ব্যবহার করেছিলেন (বা করেন) যা বর্তমান ভাষা দ্বারা শোষণ হয় না? রুবির 'স্ট্রং পয়েন্ট' (ইউএসপি) কী এটি তার ব্যাপক গ্রহণযোগ্যতার দিকে পরিচালিত করেছে? রুবি এমন কী করেছিলেন যা আগে করা হয়নি (বা অত্যন্ত কঠিন ছিল)?

আমি কোনও রুবি প্রোগ্রামার নই, কেবল একটি রুবি নবুব এবং তাই বিভ্রান্তি।

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

উত্তর:


11

আমার ধারণা রুবি অনেক কারণে বন্ধ হয়ে গেছে:

  • রেল ফ্রেমওয়ার্ক। ওয়েব অ্যাপ্লিকেশনগুলির বিকাশ সহজ করতে বিকাশকারীরা অনেকগুলি দরকারী নিদর্শন একত্রিত করে এবং বিকাশকারীর উত্পাদনশীলতা বৃদ্ধি করে। এটিকে জাভাটির ভার্বোজ এবং ক্লান্তিকর ওয়েব বিকাশ এবং "ওয়ান ম্যান শো"। নেট প্ল্যাটফর্মের সাথে তুলনা করুন। কয়েক মিনিটের মধ্যে ওয়েব্লগ ওয়েব অ্যাপ্লিকেশন তৈরি করা ছিল একটি চোয়াল ড্রপ।
    আপনি গ্রেইস, প্লে এর মতো অনেক নতুন জেভিএম ওয়েব ফ্রেমওয়ার্কে "রেলস এফেক্টস" দেখতে পাচ্ছেন! এবং স্প্রিং রু।
  • টুইটার এবং গিথুবের মতো সাফল্যের গল্প। সূচনাগুলি যত তাড়াতাড়ি সম্ভব বাজারে আসতে হবে এবং রেলগুলির সাহায্যে এটি সম্ভব। সাফল্যের গল্প ছিল একটি প্রমাণ।
  • রুবি প্রোগ্রামিং ভাষা নিজেই সুন্দর, শক্তিশালী এবং অভিব্যক্তিপূর্ণ express আইএমএইচও, রুবি রেলের সাফল্যের গোপন সস।
    শসা এবং সিনট্রা এর সৌন্দর্য দেখুন, ডিএসএলগুলির সৌন্দর্য ঠিকঠাক হয়েছে।
  • আগ্রহী এবং সাহসী সম্প্রদায় যা পরীক্ষা এবং নতুনত্ব করতে ভয় পায় না।
  • (ব্যক্তিগত মতামত এবং গুরুত্বপূর্ণ কারণ নাও হতে পারে) এটি জাপানে তৈরি হয়েছে। "মেড ইন জাপান" এর চিত্রটি কোনও কিছুই মারেনি।
    আমার কাছে, বিভিন্ন দেশে তৈরি প্রোগ্রামিং ভাষা শেখা নতুন লোকের সাথে দেখা করার সমান। এটি মজাদার এবং শিক্ষামূলক।
    রুবি / জাপান, ওক্যামেল / ফ্রান্স, লুয়া / ব্রাজিল, লিস্প / মঙ্গল :)

5
আপনি " ওয়ান ম্যান দেখান। নেট প্ল্যাটফর্ম" বলতে কী বোঝাতে চেয়েছেন তা কৌতূহলজনক, আমি এর আগে শুনেছি এমন একটি বাক্যাংশ নয়?
কারসন 63000

2
লিস্প / মঙ্গল গ্রহের জন্য +1। কোথায় সেই জায়গা হাস্কেল?
অ্যাডাম

2
হাস্কেল পৃথিবীর গভীর থেকে এসেছেন যেখানে বিকাশকারীদের মতো ছোট বামনের একটি বাহিনী ওও প্রোগ্রামারদের বিভ্রান্ত করার উদ্দেশ্যে এটি তৈরি করেছিল
ড্যানিয়েল গ্রেটজার

1
"অ্যাটলান্টিস সভ্যতা" @Adam
কাইরন

13

এটি সরাসরি শিরোনাম প্রশ্নের উত্তর দেয় না, তবে উত্থাপিত কিছু পয়েন্টগুলিতে সম্বোধন করে (যেমন কেন রুবি তৈরি করা হয়েছিল)

রুবির স্রষ্টা ইয়ুকিহিরো 'ম্যাটজ' মাত্সোমোটোর উদ্ধৃতি, যা এটির সৃষ্টিকে অনুপ্রাণিত করেছিল তা ব্যাখ্যা করতে সহায়তা করতে পারে:

  • "আমি একটি স্ক্রিপ্টিং ভাষা চেয়েছিলাম যা পার্লের চেয়ে বেশি শক্তিশালী এবং পাইথনের চেয়ে বেশি বস্তু-কেন্দ্রিক"
  • "আমি আশা করি রুবি বিশ্বের প্রতিটি প্রোগ্রামারকে উত্পাদনশীল হতে, এবং প্রোগ্রামিং উপভোগ করতে এবং আনন্দিত হতে সহায়তা করে দেখবে। এটাই রুবি ভাষার প্রাথমিক উদ্দেশ্য।"

সুতরাং মূলত, মাতজ একটি অত্যন্ত অবজেক্ট-ভিত্তিক ভাষা চেয়েছিলেন যা প্রোগ্রামার সুখের জন্য ডিজাইন করা হয়েছিল।


1
এটি চূড়ান্ত অবজেক্ট ওরিয়েন্টেড। আমি বলতে চাচ্ছি +মধ্যে 1+1একটি পদ্ধতি।
বিপ্রোমাস

5

রুবি (রেলের সাথে টোজিটার) কনফিগারেশনের উপর অধিবেশনকে জনপ্রিয় করে তুলেছিল ।

পুরানো (রেলপথে নন রুবি) পথ ছিল

  • "জন্মদিন" নামে একটি ক্ষেত্র সহ একটি ডেটাবেস টেবিল "ব্যক্তি" সংজ্ঞায়িত করুন
  • সম্পত্তি "জন্মদিন" সহ ব্যবসায়িক শ্রেণীর "ব্যক্তি" সংজ্ঞা দিন
  • ডাটাবেস এবং বিজনেসক্লাসের মধ্যে ডেটা স্থানান্তর করার জন্য একটি হেল্পক্লাস লিখুন
  • একটি গিও তৈরি করুন যে তালিকায় থাকা ব্যক্তিরা কীভাবে
  • একটি ব্যক্তির বৈশিষ্ট্য সম্পাদনা করার জন্য একটি গুই তৈরি করুন

কনফিগারেশন উপর সম্মেলনের সাথে এর জন্য বেস কাজটি স্বয়ংক্রিয়ভাবে সম্পন্ন হয়:

  • আপনি কোডে একজন ব্যক্তির সংজ্ঞা দিন
  • ডাটাবেস টেবিল, ম্যাপিং, গুই-উপাদানগুলি স্বয়ংক্রিয়ভাবে আপনার জন্য পাওয়ারফুল দোভাষী বা কোডজেনেটর দ্বারা তৈরি করা হয়

বিপরীতে: আপনাকে সমস্ত কেন্দ্রিক শিখতে হবে তাই প্রথম রানে রেলপথে রুবি শেখা আরও কঠিন।

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

ইতিমধ্যে কনফিগারেশন উপর কনভেনশন অনেক কোডিং ইকো সিস্টেমগুলিতে প্রবেশ করেছে


4

প্রথমত, রুবি একটি "বর্তমান ভাষা"। আপনার অর্থ হতে পারে "1995 সালে রুবি তৈরি করার সময় যে ভাষাগুলি জনপ্রিয় ছিল" "

আমি রুবিকে একই কারণে পার্ল পছন্দ করেছি:

  1. এটি শক্তিশালী এবং অভিব্যক্তিপূর্ণ। আমি জাভা বা সি ++ এর পাঁচটি লাইনের পরিবর্তে রুবি কোডের প্রায় এক লাইন লিখতে পারি। এমন কোনও পুনরাবৃত্তি নেই যা ন্যূনতম গোলমাল দ্বারা সন্ধান করা যায় না।

  2. এটা গতিশীল। রান-টাইমে পদ্ধতি এবং বৈশিষ্ট্য তৈরি করা যেতে পারে, সুতরাং আমি বাহ্যিকভাবে সংজ্ঞায়িত জিনিসগুলি যেমন ডাটাবেস টেবিলগুলির চারপাশে এই জিনিসগুলির সংজ্ঞাটি সদৃশ না করে এবং অ্যাপ্লিকেশনটি পুনর্নির্মাণ না করে মোড়তে পারি।

  3. ভাষার উপর একটি দুর্দান্ত বই রয়েছে ( প্রোগ্রামিং রুবি ) যা পাঠযোগ্য এবং বিস্তৃত উভয়ই।

  4. সর্বজনীন-ডোমেন প্যাকেজগুলির জন্য একটি একক সংগ্রহস্থল এবং সংগ্রহস্থলের জন্য একটি সুবিধাজনক কমান্ড-লাইন ইন্টারফেস রয়েছে।

তবে আমি রুবিকে পার্লের চেয়ে বেশি পছন্দ করি কারণ এটি আরও পাঠযোগ্য।

পাইথনের সাথে রুবীর তুলনা করে অসংখ্য পৃষ্ঠা রয়েছে। আমি তাদের উভয় পছন্দ। আমি রুবিকে পছন্দ করি তবে পাইথনের সাথে আমার অভিজ্ঞতা সীমিত।


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

@ কেভিন: সেগুলি ভাষার বৈশিষ্ট্যগুলির মধ্যে কয়েকটি এবং আমি সেগুলি সম্পর্কে ভাল জানি। তবে, "আমি একটি মজাদার / দুর্বলভাবে টাইপ করা ভাষা চাই" (বা সে কারণটি কি যথেষ্ট বড় ??
পিএইচডি

1
@ নূপুল: এই জিনিসগুলি কমিটি দ্বারা করা হয় না। মাতজ একটি ধারণা নিয়েছিলেন এবং লিখেছিলেন রুবি। কিছুক্ষণ পরে তিনি এটি অন্য কিছু লোককে দেখিয়েছিলেন এবং তাদের মধ্যে কেউ কেউ এটি পছন্দ করেছেন। এভাবেই এলআইএসপি, স্মলটালক, সি, সি ++, পাস্কাল, পার্ল, রুবি এবং পাইথন তৈরি হয়েছিল। আমি মনে করি এটি বেশিরভাগ প্রোগ্রামিং ভাষার ক্ষেত্রে একই। কমিটি বা কর্পোরেট উদ্যোগে কয়েকটি তৈরি হয়েছিল।
কেভিন ক্লিনে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.