রুবি শিখার সময় পাইথন বিকাশকারীকে কী জানতে হবে? [বন্ধ]


16

আমি প্রায় 18 মাস ধরে পাইথন প্রোগ্রামার হয়েছি, যার মধ্যে একটি ইন্টার্নশিপ এবং কয়েকটি পক্ষের প্রকল্প রয়েছে এবং আমি নিজেকে ভাষায় বেশ আরামদায়ক মনে করি।

তবে প্রোগ্রামিংয়ের ক্ষেত্রে রুবির প্রতি অনেকটা মনোযোগ রয়েছে বলে মনে হয়, তবে পাইথনে আর বেশি কিছু হয়নি।

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


4
পাইথনটি শিখতে হবে যদি আমি সর্বদা একজন রুবি প্রোগ্রামার হিসাবে বিবেচনা করেছি কারণ সকলেই এই বিষয়ে কথা বলে: পি
আর্লজ

গুঞ্জন সত্ত্বেও মনে হচ্ছে পাইথন এখনও রুবির দ্বিগুণ ব্যবহৃত হয় (টিআইওবি অনুসারে কমপক্ষে -> tiobe.com/index.php/content/paperinfo/tpci/index.html )।
ড্যানিয়েল স্কোকো

10
"পাইথন প্রোগ্রামার" বা "রুবি প্রোগ্রামার" হওয়ার পরিবর্তে আপনার দুর্দান্ত প্রোগ্রামার হওয়ার চেষ্টা করা উচিত। তারপরে, আপনি যখনই চান ভাষাটি ব্যবহার করতে পারেন এবং সময় ঠিক থাকলে নতুন ভাষায় যেতে পারেন।
ব্ল্যাকজ্যাক

উত্তর:


31

আমি প্লোন / জোপের পরামর্শক থাকাকালীন 2003-5- এ আমি পাইথন ফিরে এসেছি। তারপরে ২০০ 2006 সালে আমি রুবিকে বাছাই শুরু করি। আমি আর পিছনে ফিরে তাকাইনি। আমি মনে করি বিভিন্ন লোকেরা বিভিন্ন প্রোগ্রামিং ভাষা এবং সংস্কৃতিতে স্বাচ্ছন্দ্য বোধ করে তবে আমার কাছে রুবি পাইথনের চেয়ে অনেক বেশি ভাল বোধ করে।

আমি ব্যক্তিগতভাবে মনে করি যে রুবির সাথে তুলনা করলে পাইথন হ'ল নির্ভরযোগ্য ওয়ার্কহর্স যা কিছুটা স্থির ও স্থির হয়ে ওঠে। রুবি অনেক বেশি মজাদার। এটি একটি সুন্দর দেখাচ্ছে ভাষা, এবং এটি প্রচুর মজাদার এবং মজাদার জিনিসগুলি তৈরি করা যেতে পারে যা এর অনুশীলনকারীদের বজায় রাখে। আমি শুনেছি পাইথন মানুষ রুবিকে খুব বিপজ্জনক বলে আক্রমণ করার জন্য বলেছিল যে ক্লাসগুলি পুনরায় খোলা এবং এর মতো বন্য ও দায়িত্বজ্ঞানহীন জিনিস করা খুব সহজ। তবে রুবি আমার কাছে অ্যাকশন অ্যাডভেঞ্চারের মতো কৌতুক রোম্যান্স অনুভব করে what পাইথন, বিপরীতে, Ikea আসবাবের মতো আরও: এটি আনন্দদায়ক, আরামদায়ক এবং নির্ভরযোগ্য - তবে এটি কখনই আপনাকে অবাক করে এবং আপনার শ্বাসকে দূরে সরিয়ে নেবে না।

আমার দৃষ্টিকোণ থেকে রুবির সম্পর্কে দুটি সেরা বিষয় হ'ল দুটি বিষয় যা পাইথন থেকে এটি তাত্পর্যপূর্ণভাবে পৃথক করে। প্রথমত, রুবি পার্ল দ্বারা অনেক প্রভাবিত। পাইথন পার্ল-বিরোধী হিসাবে গর্বিত বলে মনে হচ্ছে। তবে রুবিল পার্লের কাছ থেকে যে জিনিস নিয়েছিল তা দুর্দান্ত ব্যবহারিক মূল্য। উদাহরণস্বরূপ নিয়মিত প্রকাশ করুন। রুবিতে আপনি নিয়মিত প্রকাশ করতে পারেন প্রাকৃতিকভাবে, যেমন if mystring =~ /^\s+hello word!/ ...। পাইথন-তে খুব বেশি কিছু নয়, কারণ পাইথন প্রতিটি জিনিসকে সমানভাবে অনুমানযোগ্য সিনট্যাক্স অনুসরণ করে তৈরি করার বিষয়ে এতটা বেঁচে থাকে। রুবিতে, আপনি সঙ্গে সঙ্গে এসটিডিএন পেতে পারেন input = STDIN.read। পাইথনে, আপনাকে import sysএবং তারপর যেতে হবে sys.stdin.read()। এগুলি কেবল দুটি উদাহরণ যেখানে পার্থের থেকে নিজেকে দূরে রাখতে এবং যথাযথভাবে নিয়মিত হওয়ার জন্য পাইথনের প্রচেষ্টা প্রতিটি ক্ষেত্রে যথাযথ বলে মনে করার জন্য রুবির ইচ্ছুকতায় স্তম্ভিত।

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

রুবির অনেকগুলি লিস্প-মতো বৈশিষ্ট্য রয়েছে যা পাইথনের চেয়ে রুবিতে কম কোড দিয়ে আরও বেশি করে করা সম্ভব করে। উদাহরণস্বরূপ, রুবির প্রতিটি বিবৃতি এবং নিয়ন্ত্রণ কাঠামো একটি মান দেয়: আপনি কখনই returnবিবৃতি ব্যবহার না করে রুবিতে পালিয়ে যেতে পারেন । এমনকি ifবিবৃতিগুলি একটি মানকে মূল্যায়ণ করে, যাতে আপনি এটি স্টাফ লিখতে পারেন

result = if output == 'hello'
           [some code here]
           "world"
         else
           [some other code here]
           "there"
         end

পাইথনে আপনাকে লিখতে হবে

if output == "hello":
  [some code here]
  result = "world"
else:
  [some other code here]
  result = "there"

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

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

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

সুতরাং এটি আপনার ব্যক্তিত্বের দিকে ফোটে।

আপনি কি অনুমানযোগ্য, নিয়মিত এবং নিরাপদ জিনিস পছন্দ করেন? আপনি কি প্রোগ্রামিং এর অপরিহার্য শৈলী পছন্দ করেন? আপনি কি গুগলের জন্য কোনও দিন কাজ করতে চান? আপনি কি মনে করেন যে পার্ল জাহান্নামের বিশৃঙ্খলা বিশৃঙ্খলা? পাইথনের সাথে লেগে থাকো।

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


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

23
কি? result = "world" if output=="hello" else "there"পাইথনটি পুরোপুরি বৈধ।
টিম পিটজ্যাকার

3
@ টিম ঠিক আছে আমাকে সংশোধন করার জন্য ধন্যবাদ। তবে আপনি যদি ইফ / এলসিফ / এলসিফ / অন্য বিবৃতি দিয়ে একই কাজ করতে পারেন - যেমন পাইথনে / এলিফ / এলিফ / অন্য কোনও? যদি অন্য কোনও ধারাটিতে একাধিক বিবৃতি দেওয়া থাকে তবে আপনি কি একই জিনিসটি করতে পারেন?
ডান

1
দাঁড়াও, পাইথনের কোন টেরিনারি অপারেটর নেই?
পিপি

3
"পাইথনের স্রষ্টা ম্যাটজ একটি লিসপ ব্যাকগ্রাউন্ড থেকে এসেছিলেন।" অপেক্ষা করুন ...
আফাইক

6

এটা নির্ভর করে.

আমার কাছে অজগরটি রুবীর চেয়ে সহজেই ধরা সহজ, পাশাপাশি উভয় ভাষারই আলাদা উদ্দেশ্য রয়েছে।

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

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


3

সংক্ষিপ্ত উত্তর: হ্যাঁ এবং হ্যাঁ

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

এটি কোনও বড় সময় বিনিয়োগ নয়, এবং আপনার সরঞ্জামবক্সে আরও বেশি সরঞ্জাম থাকা বরাবরই উপকারী, তাই এর জন্য যান!

(আমি পাইথনটি প্রায় 10 বছর ধরে ব্যবহার করেছি এবং গত বছর রুবিকে তুলেছি Currently বর্তমানে আরআর প্রকল্পে পুরো সময় কাজ করছেন)


2

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

মনে রাখবেন যে ভাষাগুলি একটি সরঞ্জাম হিসাবে প্রতিটি সরঞ্জাম এবং প্রতিটি সরঞ্জাম। আপনি যত বেশি সরঞ্জাম জানেন, দ্রুত, আরও সহজে এবং আরও সঠিকভাবে আপনি গাছের ঘরটি তৈরি করতে পারেন।


আমি একই লাইন বরাবর উত্তর দিতে চেয়েছিলেন, আশা করি আপনি সম্পাদনাটি আপত্তি করবেন না ...
দিমিত্রিওস মিস্ট্রিওটিস

2

আমি রুবি শিখতে হবে? হ্যাঁ.

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

এটা কি কঠিন হতে চলেছে? আপনি যদি পাইথন শিখে থাকেন তবে অবশ্যই আপনি রুবিও শিখতে পারবেন।

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

সিবি.কম-এ রুবি এবং পাইথনের মধ্যে একটি ভাল তুলনা রয়েছে ।

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