গতিশীল ভাষাগুলিতে একটি ptionচ্ছিক / সম্ভবত টাইপ দরকারী?


14

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

উত্তর:


13

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

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

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


0

আমি অবজেক্টিভ-সি এর জন্য কথা বলতে পারি।

যেহেতু গতিশীল টাইপ করা ভাষাগুলি দেরিতে আবদ্ধ হয়, তাই একটি "alচ্ছিক" (একটি মানহীন প্রতিনিধিত্ব করা হয় না nil) জন্য পরীক্ষা করা সহজাত: আপনি রানটাইম টাইপের জন্য যদি পরীক্ষা করেন তবে আপনি স্পষ্টভাবে পরীক্ষা করে দেখুন nil। অবশ্যই এটি চেইনযোগ্য। এটিও সহজাতভাবে করা হয়।

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

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