আমি কিছুক্ষণ লুপ ব্যবহার করতে পছন্দ করি তবে একটি নাল অভিব্যক্তি আপনাকে এটি লিখতে দেয়:
for (;;) { thread.run(); }
যাইহোক, একটি নাল বিবৃতি আপনি এটি লিখুন:
while(true);
{
thread.run();
}
যার প্রাথমিক উদ্দেশ্যটি হ'ল দরিদ্র রক্ষণাবেক্ষণ প্রোগ্রামারের সময় নষ্ট করা যিনি আপনার পরে আসেন এবং অবাক হন যে কেন থ্রেডটি চলছে না। একটি বিবৃতি অবশ্যই কিছুক্ষণ অনুসরণ করবে। একাকী; একটি বিবৃতি। সুতরাং এই বিবৃতি ব্লক আসলে লুপ অংশ নয়।
এটির ব্যবহারের ভাল ব্যবহার করার কথা নেই। তারা কেবল বিরল। এগুলি দেখতে সাধারণত:
{
;
}
কারণ এইভাবে এটি দেখতে আপনার বোঝার মতো আরও বেশি দেখাচ্ছে (এমনকি এটি কখনও কখনও যথেষ্ট নয়)।
সমাবেশে এই শূন্য বিবৃতিটিকে একটি এনওপি বলা হয় । পাইথনে একে পাস বলে । জাভাতে (এবং সি এর অন্যান্য সন্তানদের) এটি যেমন আপনি বলেছিলেন তেমন একটি সেমিকোলন, বা এমনকি সত্য দাবি করেছেন;
আমি কয়েকটি ব্যবহার সম্পর্কে জানি:
শব্দার্থক ।
একটি খালি জায়গা এবং উত্তর হিসাবে একটি শূন্য নিচে রাখার মধ্যে পার্থক্য রয়েছে। এটি স্পষ্টভাবে বলে, না আমি এখানে কিছু রাখা ভুলে যাইনি। এই কিছুই কিছুই বোঝানো হয় না। এটি সুস্পষ্ট কিছুই নয়। এই স্থান ইচ্ছাকৃতভাবে ফাঁকা রাখা। এইভাবে আমরা সংকলন করার জন্য N / A পাই।
নাল প্যাটার্ন
একটি জটিল এবং ব্যয়বহুল হালকা সিগন্যালিং মেশিনের কল্পনা করুন যা বারবার একটি কনভেয়ার বেল্ট থেকে রঙিন আলোর বাল্বটি তুলে নিয়েছিল, এটি একটি সকেটে নিয়ে যায়, চালিত করে, মুছে ফেলে এবং পরবর্তীটি তুলে নেয়। আপনি যে জিনিসটি বেল্টে রেখেছেন তার রঙ দ্বারা এই জিনিসটি কী সংকেতযুক্ত তা আপনি নিয়ন্ত্রণ করতে পারেন। দুর্দান্ত, এখন যে শেষ পর্যন্ত নির্দোষভাবে কাজ করছে আপনার বস আপনাকে এই সংকেতগুলির সময় নিয়ন্ত্রণ করার জন্য একটি উপায় তৈরি করতে চান। তিনি বার্তাগুলির মধ্যে একটি ফাঁক যোগ করতে চান। আপনি ভয়াবহতার সাথে মনে রেখেছেন যে অনেকগুলি অংশ এই সংকেতগুলির সময় সম্পর্কে চিন্তা করে এবং সেগুলিকে সিঙ্কে পেতে কী কষ্ট পেয়েছিল। সপ্তাহান্তে আপনাকে কাজের সময় এনে না রেখে আপনি কীভাবে সময় নিয়ন্ত্রণ করতে চলেছেন? আপনি পুড়ে যাওয়া বাল্বগুলির একটি বিনের দিকে নজর রাখবেন এবং আক্ষরিক অর্থে নয়, একটি উজ্জ্বল ধারণা পাবেন।
কখনও কখনও আপনি কিছু না ভাঙ্গিয়ে কিছু বন্ধ করতে পলিমারফিজমটি ব্যবহার করতে চান।
ডিবাগ
আপনি যখন ব্রেক ব্রেকপয়েন্ট সেট করেন তখন ব্রেকআপপয়েন্ট হওয়ার জন্য আপনার জায়গা দরকার। এখন নিশ্চিত হোন যে কিছু ডিবাগার আপনাকে এটিকে শেষের কোঁকড়া ধনুর্বন্ধনীতে সেট করতে দেবে তবে তারা যদি এটি সুন্দর না হয় তবে ভাষাটি আপনাকে সেই জায়গাটি কিছু না করলেও একটি জায়গা রাখার জন্য জোর করে।
সত্যিই কোনও জাভা জিনিস নয় তবে আরও রয়েছে:
বাইনারি ফিডিং
সমাবেশগুলি নওপ নির্দেশনা সংকলিত বাইনারি এক্সিকিউটেবলের সাথে ফিডলিংয়ের অনুমতি দেয়। তবে আধুনিক জাভা সংকলকরা এতদূর অপ্টিমাইজ করে আমি নিশ্চিত না যে সেমিকোলনটি কেবল পুফ হয় না। তবে পুরানো দিনগুলিতে সময় নির্ধারণের জন্য এক্সিকিউটেবলের মধ্যে আমরা এই খালি দাগগুলি ব্যবহার করতাম বা পরে একটি হুকের মধ্যে ফেলে দিতে পারি। এনওপি ব্যতীত সেখানে প্রকৃত নির্দেশাবলী থাকবে, সুতরাং আপনি হুক করতে চাইলে হুকের জন্য জায়গা তৈরি করার জন্য আপনাকে সেই নির্দেশাবলী অন্য কোথাও অনুলিপি করতে হবে। এটি সি ভাষায় ঠিক একইভাবে কাজ করে যা থেকে জাভা তার সিনট্যাক্সের বেশিরভাগ অংশ পায়। তবে আমি মনে করি না জাভাতে এই হুক ফিডলিং অনেক বেশি ঘটে। আমরা এটি করতে অ্যাস্পেক্ট ওরিয়েন্টেড প্রোগ্রামিং ব্যবহার করি।