আমি বেশ বুড়ো। আমি সেখানে এসেছি এবং এটি দেখেছি এবং এটি সম্পর্কে আমার মাথাটি বার বার বেঁধে দিয়েছি।
আমি হার্সলে পার্কে একটি সম্মেলনে ছিলাম যেখানে আইবিএম ছেলেরা আমাদের জানায় যে এই ব্র্যান্ডের নতুন জাভা ভাষাটি কত দুর্দান্ত, কেবলমাত্র কেউ জিজ্ঞাসা করেছিল ... কেন এই বিষয়গুলির জন্য কোনও ডেস্ট্রাক্টর নেই। তিনি সি -++ তে আমরা যে জিনিসটি জানি তার অর্থ তিনি বোঝাতে চেয়েছিলেন, তবে কোনও চূড়ান্তকারী ছিল না (বা এটির ফাইনালার্স ছিল কিন্তু তারা মূলত কাজ করেনি)। এটি আবার ফিরে এসেছিল এবং আমরা ঠিক করেছি জাভা সেই সময়ে খেলনা ভাষার কিছুটা ভাষা ছিল of
এখন তারা ভাষা বর্ণনায় ফাইনালাইজার যুক্ত করেছে এবং জাভা কিছু গ্রহণ করেছে।
অবশ্যই, পরে প্রত্যেককে তাদের জিনিসগুলিতে চূড়ান্ত সিদ্ধান্ত নেওয়ার কথা বলা হয়েছিল কারণ এটি জিসিকে প্রচণ্ডভাবে হ্রাস করে। (যেহেতু এটি কেবল স্তূপটি তালাবদ্ধ না করে টেম্পল-চূড়ান্ত হওয়া অবজেক্টগুলিকে কোনও অস্থায়ী অঞ্চলে স্থানান্তরিত করতে হয়েছিল, কারণ জিসি অ্যাপ্লিকেশনটি চলমান থেকে বিরতি দিয়েছে বলে এই পদ্ধতিগুলি বলা যেতে পারে না Instead পরিবর্তে তাদের সাথে সাথে তাত্ক্ষণিক কল করা হবে জিসি চক্র) (এবং আরও খারাপ, অ্যাপ্লিকেশনটি বন্ধ হয়ে যাওয়ার সময় কখনও কখনও চূড়ান্ত পঠনকারীকে কখনই ডাকা হত না gine কখনও কখনও আপনার ফাইল হ্যান্ডেলটি বন্ধ না করে দেখুন)
তারপরে আমাদের সি # ছিল এবং আমি এমএসডিএন-তে আলোচনা ফোরামটি মনে করি যেখানে আমাদের জানানো হয়েছিল যে এই নতুন সি # ভাষাটি কী দুর্দান্ত wonderful কেউ জিজ্ঞাসা করলেন কেন কোনও নির্দোষী চূড়ান্তকরণ হয়নি এবং এমএস ছেলেরা আমাদের জানালো যে আমাদের কীভাবে এই জাতীয় জিনিসগুলির প্রয়োজন নেই, তারপরে আমাদের জানিয়েছিল আমাদের অ্যাপ্লিকেশনগুলি ডিজাইনের পদ্ধতিটি বদলে নেওয়া দরকার, তারপরে আমাদের জানান জিসি কত আশ্চর্য ছিল এবং আমাদের সমস্ত পুরানো অ্যাপ্লিকেশনগুলি কীভাবে ছিল জঞ্জাল এবং সমস্ত বৃত্তাকার উল্লেখের কারণে কখনও কাজ করেনি worked তারপরে তারা চাপের দিকে ঝুঁকে পড়ে আমাদের জানান যে আমরা এই আইডিসপোজ প্যাটার্নটি আমরা ব্যবহার করতে পারি সেই অনুমানের সাথে যুক্ত করব। আমি ভেবেছিলাম যে এটি আমাদের কাছে সি # অ্যাপ্লিকেশনগুলিতে ম্যানুয়াল মেমরির পরিচালনায় ফিরে এসেছে।
অবশ্যই, এমএস ছেলেরা পরে আবিষ্কার করেছিল যে তারা আমাদের যা বলেছিল তা হ'ল ... ঠিক আছে, তারা আইডিসপোজকে একটি স্ট্যান্ডার্ড ইন্টারফেসের চেয়ে কিছুটা বেশি তৈরি করেছিল এবং পরে ব্যবহারের বিবৃতিটি যুক্ত করেছিল। W00t! তারা বুঝতে পেরেছিল যে নির্বিচারে চূড়ান্তকরণ ভাষা থেকে কিছু হারিয়ে গেছে। অবশ্যই, আপনাকে এখনও এটি সর্বত্র রাখার কথা মনে রাখতে হবে, এটি এখনও কিছুটা ম্যানুয়াল, তবে এটি আরও ভাল।
তাহলে তারা কেন এটি করেছিল যখন তারা শুরু থেকে প্রতিটি স্কোপ ব্লকে স্বয়ংক্রিয়ভাবে স্টাইলের শব্দকোষ ব্যবহার করতে পারত? সম্ভবত দক্ষতা, তবে আমি ভাবতে চাই যে তারা ঠিক বুঝতে পারেনি। ঠিক শেষ পর্যন্ত তারা বুঝতে পেরেছিল যে আপনার এখনও। নেট (গুগল সেফহ্যান্ডল) এর স্মার্ট পয়েন্টার দরকার তারা ভেবেছিল যে জিসি সত্যই সমস্ত সমস্যার সমাধান করবে। তারা ভুলে গিয়েছিল যে কোনও বস্তু কেবল মেমরির চেয়ে বেশি এবং জিসি প্রাথমিকভাবে মেমরি পরিচালনা পরিচালনা করার জন্য তৈরি করা হয়েছিল। তারা এই ধারণাটি পেয়েছিল যে জিসি এটি পরিচালনা করবে এবং তারা ভুলে গিয়েছিল যে আপনি অন্য জিনিস সেখানে রেখেছেন, কোনও বস্তু কেবল স্মৃতির ফোসকা নয় যা আপনি কিছুক্ষণ মুছে না ফেললে কিছু যায় আসে না।
তবে আমি এটিও মনে করি যে মূল জাভাতে একটি চূড়ান্তকরণ পদ্ধতির অভাবের সাথে এটি আরও কিছুটা ছিল - আপনি যে জিনিসগুলি তৈরি করেছেন সেগুলি মেমরি সম্পর্কে ছিল এবং আপনি যদি অন্য কোনও কিছু মুছতে চান (যেমন ডিবি হ্যান্ডেল বা সকেট বা যা কিছু ) তাহলে আপনি নিজে থেকে এটি আশা করেছিলেন ।
মনে রাখবেন জাভা এম্বেড করা পরিবেশের জন্য ডিজাইন করা হয়েছিল যেখানে লোকেরা প্রচুর ম্যানুয়াল বরাদ্দের সাথে সি কোড লিখতে অভ্যস্ত ছিল, সুতরাং স্বয়ংক্রিয় ফ্রি না হওয়া কোনও সমস্যা ছিল না - তারা আগে কখনও করেনি, তাই আপনার জাভাতে কেন এটি দরকার হবে? থ্রেড, বা স্ট্যাক / হিপগুলির সাথে ইস্যুটি করার কিছুই ছিল না, সম্ভবত মেমরির বরাদ্দ (এবং তাই ডি-বরাদ্দ) কিছুটা সহজ করার জন্য এটি ছিল। সর্বোপরি চেষ্টা / অবশেষে বিবৃতি সম্ভবত স্মৃতিবিহীন সংস্থানগুলি হ্যান্ডেল করার জন্য আরও ভাল জায়গা।
আইএমএইচও, উপায়। নেট সহজেই জাভার সবচেয়ে বড় ত্রুটি অনুলিপি করা হল এটির বৃহত্তম দুর্বলতা। .NET এর চেয়ে ভাল জাভা হওয়া উচিত নয় C