প্যাকেজের নামে আলাদা আলাদা শব্দ কীভাবে করা উচিত? নিচের কোনটি সঠিক?
com.stackoverflow.my_package
(আন্ডারস্কোর)com.stackoverflow.my-package
(হাইফেন)com.stackoverflow.MyPackage
(ক্যামেলকেস)
সাধারণ মান কী?
প্যাকেজের নামে আলাদা আলাদা শব্দ কীভাবে করা উচিত? নিচের কোনটি সঠিক?
com.stackoverflow.my_package
(আন্ডারস্কোর)com.stackoverflow.my-package
(হাইফেন)com.stackoverflow.MyPackage
(ক্যামেলকেস)সাধারণ মান কী?
উত্তর:
অফিসিয়াল নামকরণের কনভেনশনগুলির নথি যা লিখেছিল তা এখানে:
প্যাকেজগুলি
একটি অনন্য প্যাকেজের নাম উপসর্গ সবসময় সব ছোট হাতের হওয়া ASCII অক্ষর লেখা আছে এবং টপ লেভেল ডোমেইন নেম এক হওয়া উচিত, বর্তমানে
com
,edu
,gov
,mil
,net
,org
, অথবা ইংরেজি দুই অক্ষর কোড দেশ চিহ্নিতকরণের এক আইএসও উল্লেখিত স্ট্যান্ডার্ড 3166, 1981।প্যাকেজ নামের পরবর্তী উপাদানগুলি কোনও সংস্থার নিজস্ব অভ্যন্তরীণ নামকরণ কনভেনশন অনুসারে পরিবর্তিত হয়। এই জাতীয় সম্মেলনগুলি নির্দিষ্ট ডিরেক্টরি নামের উপাদানগুলি বিভাগ, বিভাগ, প্রকল্প, মেশিন বা লগইন নাম উল্লেখ করে।
উদাহরণ
com.sun.eng
com.apple.quicktime.v2
edu.cmu.cs.bovik.cheese
দ্রষ্টব্য যে বিশেষত উপরের নথির দ্বারা শীর্ষ স্তরের ডোমেন উপসর্গ অনুসরণ করা কিছু নির্দিষ্ট করা হয়নি। জেএলএসও নিম্নলিখিত উদাহরণগুলি দিয়ে এর সাথে একমত:
com.sun.sunsoft.DOE
gov.whitehouse.socks.mousefinder
com.JavaSoft.jag.Oak
org.npr.pledge.driver
uk.ac.city.rugby.game
নিম্নলিখিত অংশগুলি প্রাসঙ্গিক:
কিছু ক্ষেত্রে, ইন্টারনেট ডোমেন নামটি কোনও বৈধ প্যাকেজের নাম নাও হতে পারে। এই পরিস্থিতিগুলি মোকাবেলার জন্য কয়েকটি প্রস্তাবিত কনভেনশন রয়েছে:
- যদি ডোমেন নামটিতে একটি হাইফেন থাকে বা কোনও সনাক্তকারীতে অনুমতি না পাওয়া অন্য কোনও বিশেষ অক্ষর থাকে তবে এটিকে আন্ডারস্কোর রূপান্তর করুন।
- ফলাফল প্রাপ্ত প্যাকেজ নামের উপাদানগুলির মধ্যে যদি কীওয়ার্ড হয় তবে সেগুলিতে আন্ডারস্কোর যুক্ত করুন।
- ফলাফল প্রাপ্ত প্যাকেজ নামের উপাদানগুলির মধ্যে যদি কোনও অঙ্ক দিয়ে শুরু হয়, বা অন্য কোনও অক্ষর যা সনাক্তকারীর প্রাথমিক চরিত্র হিসাবে অনুমোদিত নয়, উপাদানটির সাথে উপরিবর্তিত একটি আন্ডারস্কোর রয়েছে।
তিনটিই কনভেনশন নয়।
ব্যবহার com.stackoverflow.mypackage
।
প্যাকেজের নামগুলি উটের কেসিং বা আন্ডারস্কোর বা হাইফেন প্যাকেজ নামকরণের কনভেনশন অনুসরণ করে না ।
এছাড়াও, গুগল জাভা স্টাইল গাইড ঠিক একই (যেমন com.stackoverflow.mypackage
) কনভেনশনটি নির্দিষ্ট করে:
5.2.1 প্যাকেজের নাম
প্যাকেজের নামগুলি সমস্ত ছোট হাতের অক্ষর, একটানা শব্দের সাথে একসাথে একত্রিত (কোনও আন্ডারস্কোর নেই)। উদাহরণস্বরূপ,
com.example.deepspace
, নাcom.example.deepSpace
বাcom.example.deep_space
।- গুগল জাভা স্টাইল গাইড: 5.2 আইডেন্টিফায়ার টাইপের দ্বারা বিধি: 5.2.1 প্যাকেজের নাম ।
যে কেউ আন্ডারস্কোর _ (এটি ঠিক আছে) ব্যবহার করতে পারবেন
হাইপেন ব্যবহার করা উচিত নয় - (এটির খারাপ অভ্যাস)
কারও প্যাকেজ নামের ভিতরে বড় অক্ষর ব্যবহার করা উচিত নয় (খারাপ অভ্যাস)
দ্রষ্টব্য: এখানে "খারাপ অনুশীলন" প্রযুক্তিগতভাবে আপনাকে এটি ব্যবহারের অনুমতি দেওয়া হয়, তবে প্রচলিতভাবে এটি লেখার পক্ষে ভাল আচরণ নয়।
আনুষ্ঠানিক নামকরণের কনভেনশনগুলি কঠোর নয়, এমনকি তারা উটের মামলার স্বীকৃতি উপসর্গ ব্যতীত ( com
আপনার উদাহরণে) 'নিষিদ্ধ' করে না ।
তবে আমি ব্যক্তিগতভাবে বড় হাতের অক্ষর এবং হাইফেনেশনগুলি এমনকি সংখ্যাকে এড়িয়ে যাব । আমি com.stackoverflow.mypackage
ব্র্যাগবয়ের মতো প্রস্তাবিত পছন্দ করব।
(হাইফেনেশন '-' প্যাকেজের নামে বৈধ নয়)
সম্পাদনা
আকর্ষণীয় - নামকরণের সম্মেলন সম্পর্কেও ভাষা স্পেসিফিকেশনের কিছু বলতে হবে।
ইন অধ্যায় 7.7 একটি স্বতন্ত্র প্যাকেজের নাম আমরা যে (তাই ক্যামেলকেস স্বরলিপি ঠিক আছে হবে) বড় হাতের অক্ষরে অক্ষরে গঠিত প্যাকেজের নামের সাথে উদাহরণ দেখুন ও তারা একটি আন্ডারস্কোর ( "মেরি Lou," -> "mary_lou") দ্বারা hyphonation প্রতিস্থাপন করতে সুপারিশ এবং উপসর্গ জাভা একটি আন্ডারস্কোর সহ কীওয়ার্ডগুলি ("com.example.enum" -> "com.example._enum")
প্যাকেজ নামের উচ্চ স্তরের বর্ণগুলির জন্য আরও কয়েকটি উদাহরণ অধ্যায় 6.8.1 প্যাকেজের নামগুলিতে পাওয়া যাবে ।
বুদ্ধিমানরা প্যাকেজের নামগুলিতে কুৎসিত দেখাচ্ছে। কিসের জন্য মূল্য, আমি তিনটি বা তার বেশি শব্দের সংমিশ্রণের ক্ষেত্রে আমি আদ্যক্ষর ব্যবহার করি (উদাহরণস্বরূপ com.company.app.ingresoegresofijo (ingreso/egreso fijo) -> com.company.app.iefijo
:) এবং তারপরে প্যাকেজটির উদ্দেশ্যটি নথিভুক্ত করি package-info.java
।
প্যাকেজের নামে শব্দের সংমিশ্রণ এমন কিছু যা বেশিরভাগ বিকাশকারী না করেন।
আপনি যেমন কিছু ব্যবহার করতে পারেন।
com.stackoverflow.mypackage
পড়ুন JLS নাম ঘোষণা
com.stackoverflow.my.package