جاوا زبان برنامه نویسی بسیار کاربردی ایست که با استفاده از آن میتوان برنامه های بسیاری را که با سیستم عامل های ویندوز ، مک او اس ایکس و لینوکس سازگارند ، تولید کرد.بسیاری از کدنویسان بازی و اپلیکیشن نویسان دستگاه های هوشمند از زبان جاوا برای برنامه نویسی استفاده می کنند چرا که زبانی یکپارچه و سازگار است. توانایی ساخت کدهایی که می توان دوباره از آنها استفاده کرد یکی از ویژگی های جاواست که باعث شده برنامه نویسان حرفه ای نرم افزار و همچنین کارآموزان برنامه نوییس از آن به عنوان زبانی ایده آل استفاده کنند.
اگر می خواهید بهترین نتیجه را از جاوا بگیرید و به حرفه ای ترین برنامه نویس تبدیل شوید ، ده توصیه ی اثبات شده ی زیر را مطالعه کنید.
1.از لینک کردن کدهای رشته ای در حلقه ی های بزرگ بپرهیزید
لینک کردن کدهای رشته ای یعنی ترکیب دو یا چند کاراکتر رشته ای برای ساخت یک کاراکتر رشته ای جدید.این قابلیت برنامه نویسان را قادر می سازد تا کدهایی بسیار بزرگ بسازند که دوباره می توان از آن ها استفاده نمود.همچنین به برنامه نویسان کمک می کند تا بتوانند حجم زیادی از اطلاعات متنی و عددی را ذخیره نمایند. لینک کردن کاراکترهای رشته ای باعث می شود تا خواندن کدهای شما راحت تر شود.
بسیاری از برنامه نویسان مبتدی از عملگر “+” استفاده می کنند تا بتوانند دو یا چند رشته را در یک حلقه به هم لینک نمایند. این کار باعث تلف شدن حافظه می شود چرا که هر گاه یک رشته ی جدید ایجاد می شود ، یک String Object جدید توسط خود جاوا ایجاد می گردد . تولید مداوم رشته های از نوع شیءstring object)) باعث می شود اجرای برنامه ی کدنویسی شده ، کند شود.
2. برای Type checking به هنگام کامپایل کردن از جنریک ها استفاده کنید
ذات جاوا از نوع جنریک می باشد و این به برنامه نویسان نرم افزار کمک می کند تابتوانند مجموعه ای از متدها و نوعtype ) )های مرتبط را با استفاده از یک کلاس یا متد حوزه بندی نام گذاری کنند. قابلیت جنریک به برنامه نویس کمک می کند تا بتواند از کدهای نوشته شده در برنامه های مشابه دیگر استفاده نمایند. این کار باعث صرفه جویی در وقت برنام نویس می شود چرا که دیگر لازم نیست کدهای جدید بنویسد.
استفاده از جنریک ، باعث می شود تشخیص خطاها توسط برنامه نویسان سریعتر انجام گیرد چرا که جاوا با استفاده از type های (انواع ) پیشرفته ، کدها را cross check (کنترل کدها با استفاده از چند منبع) می کند. جنریک ها به هنگام تولید و به کارگیری الگوریتم های عمومی نیز کاربرد دارند. کدنویسان نرم افزار دانا از جنریک ها استفاده می کنند تا دیگر نیازی به cast کردن نداشته باشند.
3. همیشه بازبینی های Parameter precondition را انجام دهید
سیستم fail fast سیستمی است که به محض تشخیص خطا در کدها ، اجرای برنامه را متوقف می کند. این قابلیت به برنامه نویسان کمک میکند تا بتوانند به هنگام تولید پروژه های پیچیده که قسمت های زیادی دارند ، کدهایی را که ایراد دارند به سرعت تشخیص دهند .
استفاده از سیستم fail fast باعث می شود تااحتمال درستی پارامترهای نوشته شده بیشتر شود.همچنین می توانید پارامترهای بدون مقدار را که مان عملکرد درست برنامه هایتان می شود ، حذف نمایید.Google Guava لیستی از ابزارهای کنترل قابل اعتماد را معرفی کرده است که با استفاده از آن کار باpreconditon ها را راحت تر می کند.توصیه می شود precondition ها به هنگان دیباگ کردن ، خط به خط کنید تا تشخیص خط های معیوب برایتان راحت تر شود.
4. از قابلیت تغییر پذیری object ها استفاده نکنید
یک شی ء(object) تغییر پذیر در هر مرحله ای قابل تغیر است. خیلی راحت می توان متغیرهایش را تغییر داد. برعکس یک شیء غیر قابل تغییر (immutable object) را پس از ایجاد نمی توان تغییر داد.وقتی روی یک پروژه ی پیچیده کار می کنید اینکه بتوانید تغییراتی که در شی ء های قابل تغییر ایجاد شده است، کنترل کنید خیلی سخت است . بنابراین دیباگ و ویرایش کردن خطوط نیازمند صرف وقت زیادی می باشد.
یکی از روش هایی که با استفاده از آن می توانید با شیء های غیر قابل تغییر راحت تر کار کنید استفاده از dependency injector هایی مثل Guice یا Spring می باشد.توجه کنید که هرگز نباید از Setter ها استفاده کنید چرا که فیلد کلاستان را تغییر می دهند.
5. استفاده ی درست از Utility Classes را یاد بگیرید
بعضی برنامه نویسان در استفاده از متدهای equal یا hashcode به مشکل می خورند.این باعث می شود که نتوانند به درستی از collection class جاوا استفاده کنند.اصلی ترین عیب استفاده از کدهای IDE جنریک این است که طولانی هستند. این باعث می شود تا خواندن و فهم کدها به دلیل وجود خطوط و کاراکترهای غیر ضروری ، سخت تر شود.
با استفاده از Java 7 و Google Guava در استفاده از Utility class ها بهتر میشوید.این کار باعث می شود بتوانید خطوطی مختصر را در کمترین زمان ممکن تولید کنید.جاوا 7 برنامه نویسان را قادر می سازد تا بتوانند با استفاده از 2 متد استاتیک hash code بسازند.Google Guava کتابخانه هایی دارد که به دانشجویان برنامه نویسی کمک می کند تا جاوا را بهتر یاد بگیرند.
6. از deadlock ها بپرهیزید
Deadlock (بن بست در پایگاه داده ها) وقتی اتفاق می افتد که یک فرایند یا thread دیگر کار نمی کند.دومین thread منتظر اولیست تا system resource مهمی را آزاد کند.وجود deadlock ها باعث به تأخیر افتادن پروژه می شود، چرا که وقتی یک thread که حاوی منابع سیستمی مهمی است منقضی می شود ، تمام thread های وابسته به خود را از کار می اندازد.
پیدا و درست کردن deadlock ها درمرحله ی دیباگ کاربسیار سختیست و وقتی که یک thread منقضی می شود خیلی سخت می توان آن را با استفاده از تکنیک های دیباگ کردن ، بازیابی نمود.توصیه می شود تا جاییکه می توانیدtransaction ها را کوتاه نگه دارید و آنها را در یک batch قرار دهید .این کار باعث می شود تا احتمال بروز deadlock ها کمتر شود و thread ها بهتر اجرا شوند.
7. حافظه ی کافی برای جاوا خالی نگاه دارید
آیا وقتی از جاوا استفاده می کنید سیستمتان هنگ می کند؟ عامل بروز این مشکل اینست که جاوا برنامه سنگینی است و RAM زیادی مصرف می کند. اگر مدیا پلیر یا موتور جستجویتان هم به طور ناگهانی از کار می افتد به همین دلیل است. این کمبود حافظه با عث می شود احتمال از کار افتادن ناگهانی جاوا حین کدنویسی زیاد شود و در نتیجه تمام مراحل ذخیره نشده پروژه را از دست خواهید داد.
یکی از راه های افزایش رم سیستم این است که تمام برنامه هایی که از آن استفاده می کنید را uninstall کنید. پاک کردن برنامه های غیر فعال باعث می شود تعداد برنامه هایی که در background تسک منیجر در حال اجرا هستند ، کمتر شود و در نتیجه جاوا با سرعت بیشتری اجرا شود.اگر مشکل برطرف نشد ، باید یک رم 4 یا 8 گیگ بخرید. همیشه با نصب یک آنتی ویروس قوی ، عملکرد سریع سیستم را با حذف ویروس ها ، که باعث کندی در عملکر سی پی یو می شوند ، تضمین کنید.
8. از مزایای java collection classes استفاده کنید
جاوا کدهایی دارد که برای کسانی که می خواهند آن رایاد بگیرند مفید است.می توانید با استفاده از Vector کدهایی بگیرید که می توان از آنها دوباره استفاده کرد و برای انجام پروژه های پایان ترم یا تکالیفتان از آنها استفاده کنید.Stack وHashtable کدهایی در اختیار شما قرار می دهند که به خوبی مستند شده و فرمت درستی دارند تا یادگیری و به اشتراک گذاری آنها را راحت تر کند.راه های زیادی وجود دارد تا قبل از اجرای کدهایتان بتوانید از عملکرد درست آنها اطمینان پیدا کنید.
استفاده از java collection باعث می شود تا دیگر لازم نباشد برای پروژه های مشابه وقت زیادی برای نوشتن کد صرف کنید.این کالکشن ها حتی برای کد نویسی به زبان های برنامه نویسی دیگر نیز مناسبند.
9. از ایجاد object های غیر ضروری خود داری کنید
یکی از دلایلی که کدهایتان به درستی اجرا نمی شود ، حضور object های غیر ضروری است.وجود object های غیر ضروری باعث می شود برنامه نتواند به درستی دستورات را اجرا کند و این منجر به بروز deadlock می شود.همچنین حذف object های غیر ضروری وقتی کدهای نوشته شده حاوی object های قابل تغییر است ، بسیار کار طاقت فرسایی است.حضور این نوع object ها کار مستند سازی برنامه نویس را سخت می کند.
اگر از object های غیرقابل تغییر استفاده کنید خیلی بهتر از اینست که نوع قابل تغییر آنها را بسازید.این کار باعث می شود در اجرای کدهایتان کمتر دچار مشکل شوید.دیباگ کردن برنامه ای که object های غیر ضروری ندارد خیلی راحت است چرا که برنامه نویس می تواند تمام تغییرهای ایجاد شده را کنترل کند.
10. حافظه تان را مدیریت کنید
وقتی از جاوا روی رایانه خود استفاده می کنید ، باید ظرفیت حاظه تان را مدیریت کنید تا تمام عملکردها به درستی اجرا شوند.کمبود حافظه وقتی اتفاق میفتد که نمی توان به object های ذخیره شده دسترسی پیدا کرد چون کدهای در حال اجرایی که باید object ها را بازخوانی کنند ، حافظه را اشغال می کنند . کمبود حافظه وقتی افتاد می افتد که از object هایی غیر مدیریت شده با native API استفاده می کنید.اگر کمبود حافظه مدت زیادی مدیریت نشود ، در اجرای دیگر نرم افزارها هم تداخل ایجاد می کند.با استفاده از Java’s garbage collector (زباله روب جاوا) می توانید از کمبود حافظه جلوگیری کنید.این ابزار که در خود نرم افزار تعبیه شده باعث تخصیص درست حافظه می شود.Tomcat وJBoss دو نرم افزار کاربردی برای کنترل کمبود حافظه هستند.
توصیه های دیگر
- برای هر کلاس عمومی یا پابلیک از کامنت های Javadoc استفاده کنید. این باعث می شود کسانی که کدهای شما رو می خوانند ، متوجه تمام تغیرات در کدها شوند.
- Class behavior و هدف آن را مشخص کنید.
- برای اینکه خواننده ها بتوانند کدهایتان را بخوانند از عبارات مشخص و دقیق استفاده کنید.
- در مورد Parameter value معتبر توضیح دهید.
- پارامتر ها را به طور واضح مشخص کنید.
- برای اینکه مشخص شود چه کسی کد ها را نوشته از” اسم خودتان@” استفاده کنید.
- برای کدهای مشخص و واضح ، کامنت ننویسید.
با تمرین این ده تکنیک می توانید در مدت زمان کوتاهی ، سطح مهارت خود در برنامه نویسی جاوا بالا ببرید.