برنامه نویسی با مستند سازی مناسب
مستندسازی کد چیست؟ 13 ابزار مستندسازی کد که باید بشناسید
در صورت تغییر هم می توان با یک دستور و ساخت دوباره مدل از تغییرات آگاه شد. مهم نیست که در چه سطحی از کد نویسی قرار دارید، شما با استفاده از آموزشها این سایت می توانید آن را به خوبی بیاموزید. تمام مباحث در این سایت به خوبی توضیح داده شده است و همراه آن قطعه کدهایی قرار داده شده که نشان می دهد چه کار باید انجام گردد. محصول خود را چقدر خوب می شناسید؟ اگر این نرم افزار یک تلاش تیمی است، تا زمانی که راضی شوید که تمام ویژگی ها را درک می کنید، با این نرم افزار کار کنید. اگر ویژگی های نرم افزار را نمی دانید، نوشتن در مورد نحوه استفاده از آنها دشوار خواهد بود و بعضا باعث گمراهی دیگران می شود. این کار یک درس مفید برای خودش می تواند باشد و نمونه ای از چگونگی ایجاد یک پروژه را نشان می دهد.
استفاده از الگوهای مشخص میتواند به تسهیل در نوشتن مستندات کمک کند و از عدم انسجام جلوگیری کند. به عنوان مثال، داشتن یک الگوی ثابت برای مستندات فنی میتواند به کاهش زمان نوشتن کمک کند و کیفیت مستندات را افزایش دهد. در سیستم عاملهای مختلف ویندوز مایکروسافت، از ابزارهای خط فرمان برای توسعه به ندرت استفاده میشود. با این حال، هر یک از طراحی متفاوتی که معمولاً ناسازگاری ایجاد میکند، استفاده میکنند. اکثر فروشندگان اصلی کامپایلر برای ویندوز هنوز نسخههای رایگان ابزار خط فرمان خود، از جمله مایکروسافت (Visual C ++، Platform SDK , .NET Framework SDK، ابزار nmake) را ارائه میدهند.
در این راهنماییها میتوان فرض کرد مخاطب هدف، کمی با تجربه تر از کاربران Tutorial هستند. مستنداتی که برای مخاطبان فنی نوشته شده است، مواردی از قبیل کد، الگوریتم ها و رابطه ها را پوشش میدهد. اگر شخص دیگری باید روی کد شما با بروزرسانی یا تجدید نظر در آن کار کند، مستندات خوب باعث ساده و روان تر شدن روال انجام آن می شود. ویرایشگر IDE معمولاً برجسته سازی نحو را ارائه میدهد، میتواند ساختارها، کلمات کلیدی زبان و خطاهای نحوی را با رنگهای بصری و جلوههای فونت نشان دهد. Maestro I محصولی از Softlab مونیخ است و نخستین محیط توسعه یکپارچه جهان برای نرمافزار بود.
پشتیبانی از زبانهای جایگزین اغلب توسط افزونهها ارائه میشود و به آنها امکان میدهد همزمان در همان IDE نصب شوند. به عنوان مثال، Flycheck یک برنامه مدرن چک کردن نحو در پرواز برای GNU Emacs 24 با پشتیبانی از ۳۹ زبان است. تکمیل کد یک ویژگی مهم IDE است که برای سرعت بخشیدن به برنامهنویسی در نظر گرفته شده است. برخی از IDEها به یک زبان برنامهنویسی اختصاصی اختصاص داده شده است؛ این امکان را میدهد که مجموعهای از ویژگیها که بیشترین تطابق را با الگوی برنامهنویسی زبان دارد. هر حرفهای مزایا و معایب خاص خود را دارد و برنامهنویسی نیز از این قاعده مستثنا نیست. اگر به فکر ورود به دنیای برنامهنویسی هستید، آگاهی از جنبههای مثبت و منفی آن میتواند به شما کمک کند تصمیم بهتری بگیرید.
اما اگر از تلاش و پیشرفت لذت میبرید، این ویژگی به شما کمک میکند تا به یک برنامهنویس موفق تبدیل شوید. در هر پروژه مستندها را به مدیر فنی و یا حتی دیگر همکارتان نشان دهید. خود من بارها شده است که کامنتی در کد نوشته ام یا مستندی درست کرده ام که هیچکس دیگری نمی توانسته آن ها را بفهمد. حتی خود من بعد از گذشت مدت زمان کوتاهی متوجه مستندات خودم ، نمی شدم. این کار برای خود ما هم لازم است، چون نکاتی را که امروز در حافظه داریم ممکن است یک هفته بعد فراموش کنیم. نمودار context نرمافزار را به صورت جعبهای در وسط که در حال تعامل با کاربران و سایر سیستمهایی که خارج از مرز و محدوده کنترل ماست نشان میدهد.
مساله مهم دیگر کدنوشتن دونفره pair programming یا چندنفره mob programing است. این مدل کدنوشتن کمک میکند که سلیقه های تیم مشترک شود و سطح دانش افراد هم تراز شود. در نهایت کدها یکدست شده و برای اعضای تیم خواناتر خواهد شد، اختلاف سلیقه کمرنگ تر شده و کیفیت کدها افزایش خواهد یافت. یک یادداشت کوتاه اما توصیفی بنویسید و نکات اصلی آنچه را که ساختهاید، توضیح دهید. این کار به خوانندگان کمک میکند تا هدف این ویژگی را بفهمند و نیازهای خود را مطابق با آن بدانند. عکسهای صفحه و دستورالعمل های ویدئویی معمولاً از ابزارهای آموزشی بهتری نسبت به متن هستند.
این مستندات، معماری سطح بالای سیستم را تعریف میکند، از قبیل مؤلفهها، کارکردهای آنها و جریان داده و کنترل در این مستندات گنجانده میشوند. آنها برای اجرای دستورها یا ماکروها معمولاً از کلیدهای عملکردی یا کلیدهای مهم استفاده میکنند. دقت داشته باشید در حالتی که کدها را در پنجرهٔ تعاملی یا شِل IDLE وارد میکنیم، امکان ویرایش مجدد آنها را نداریم و این روش غیرفعال کردن کدها برای حالتی است که کدها را به صورت اسکریپتی وارد میکنیم. شما به راحتی میتوانید جزئیات پشتیبانی را حتی پس از استراحت کوتاهی از پروژه خود فراموش کنید. لینک به READMEs، مراحل نصب، و سایر موارد پشتیبانی مربوطه را بنویسید یا لینک کنید. اقدامات command-line که مرتبا انجام میدهید را طوری برای خود مرتب یا حتی اتومات کنید که هر بار که به پروژه برمیگردید، مجبور به انجام کارهای معمول نباشید.
بعضی ابزارها حتی میتونن بهصورت خودکار مستندات رو تولید و بهروز کنن. Read the Docs یه پلتفرم محبوب برای میزبانی و مدیریت مستنداته، مخصوصاً برای پروژههای متنباز. این ابزار بهصورت خودکار مستندات رو میسازه، نسخهبندی میکنه و اونها رو میزبانی میکنه، که باعث میشه برای توسعهدهندهها و نویسندههای فنی خیلی کارآمد باشه. Docstringها ابزار خیلی خوبی هستن برای مستندسازی بخشهای مختلف کدت که بهصورت توابع یا کلاسها نوشته شدن. این توضیحات چند خطی معمولاً اول تعریف تابع یا کلاس قرار میگیرن و به شکلی استاندارد توضیح میدن که اون بخش کد چه کاری انجام میده.
مستندات رسمی به معنا استفاده از استانداردها، قوانین و روشهای مشخص برای ثبت و نگهداری اطلاعات است. این نوع معتبر سازی معمولا توسط سازمانها و شرکتها به منظور ارتقا قابلیت اطمینان و دسترسی به اطلاعات استفاده میشود. از جمله مثالهای مستندات رسمی میتوان به استفاده از سیستمهای مدیریت اطلاعات (DMS)، استفاده از فرآیندهای مشخص برای ثبت و نگهداری اطلاعات و استفاده از استانداردهای مشخص برای نگهداری دادهها اشاره کرد. امروزه framework و چهارچوب های بسیاری برای انواع زبان های برنامه نویسی وجود دارد. انتخاب یک فریم ورک خوب میتواند کمک زیادی به کیفیت کد و کم شدن نیاز مستندسازی داشته باشد. مثلا در زبان js انتخاب چهارچوبی مثل nestjs برای نوشتن api باعث می شود که کد نهایی ساختار منظم و قابل قبولی داشته و یکدست باشد.
معمولاً، یک تیم QA برای هر واحد محصول یک سند مشخصات جداگانه می نویسد. موارد مورد آزمون براساس رویکردی که در برنامه آزمون آمده است، مشخص می شود. یک کار خوب ساده کردن توضیحات و مشخصات و همچنین جلوگیری از تکرار موارد آزمایش است. یکی از مهمترین قسمت های طراحی یک محصول که باید به آن پرداخته شود، مستندات اون محصول هست. این قسمت همیشه کمتر از باقی قسمت ها بهش ارزش و بها داده میشه در صورتی که جز پایه ای ترین قسمت های انجام یک پروژه است.
بهترین حالت اینه که همزمان با کدنویسی، این Docstringها رو هم بنویسی و هر وقت کدت رو تغییر دادی، این مستندات رو هم آپدیت کنی تا همه چیز دقیق و بهروز باشه. در صورتی که بهتره در کامنتها توضیح بدی منطق پشت کد و الگوریتمها چیه و چرا این تصمیمات رو گرفتی. این باعث میشه وقتی بعداً سراغ کد برمیگردی، به راحتی یادت بیاد چرا اینطوری کد رو نوشتی. قبل از اینکه بری سراغ نوشتن مستندات، باید مطمئن شی که کدت خودِ خودش تمیز و قابل فهمه. چون اگه کد نامفهوم باشه، هر چقدر هم مستندات بنویسی فایدهای نداره. پس اول باید کد رو به شکلی بنویسی که ساختار منطقی داشته باشه و قابل درک باشه.
Doxygen یه ابزار قدرتمند برای تولید مستندات خودکار از کده که توی خیلی از پروژههای نرمافزاری استفاده میشه. این ابزار با خوندن کامنتهایی که توی کدت گذاشتی، مستندات رو به صورت خودکار تولید میکنه و اطلاعات مربوط به کلاسها، توابع و متغیرها رو استخراج میکنه. Doxygen میتونه خروجیهایی مثل HTML، PDF و حتی LaTeX تولید کنه و از زبانهای برنامهنویسی مختلفی مثل C++، C، جاوا، پایتون و خیلیهای دیگه پشتیبانی میکنه، پس برای پروژههای مختلف خیلی کاربردیه. مستندسازی به معنای ثبت و نگهداری اطلاعات مرتبط با نرمافزار، کدها و فرآیندهای توسعه است. این اطلاعات شامل توضیحات فنی، راهنماهای کاربری و مستندات API میشود. به عنوان مثال، در یک پروژه نرمافزاری، مستندات میتوانند شامل توضیحات در مورد نحوه نصب، راهاندازی و استفاده از نرمافزار باشند.
همچنین، فریمورکهای معروفی مانند React، Angular و Vue.js بر پایه JavaScript ساخته شدهاند و به توسعهدهندگان اجازه میدهند اپلیکیشنهای پیچیده وب ایجاد کنند. JavaScript نه تنها در مرورگرها، بلکه در سمت سرور نیز با استفاده از Node.js کاربرد دارد. این زبان بسیار انعطافپذیر است و یادگیری آن میتواند فرصتهای شغلی گستردهای برای شما فراهم کند. برای شروع آموزش جاوا اسکریپت میتوانید از منابع متنوع موجود استفاده کنید. با دسترسی به اطلاعات دقیق و جامع در مورد فرآیندهای خود، سازمانها میتوانند نقاط ضعف را پیدا کرده و راهکارهای مناسب برای بهبود آنها بیابند.
مسیرهای دیگری مثل نویسندگی، آموزش یا هنرهای دیجیتال را نیز امتحان کنید و از تجربیات خود، مثل تقویت تفکر منطقی و حل مسئله، در انتخابهای جدید بهره بگیرید. در نهایت، با بازگشت به علایق اصلیتان و مشورت با افراد حرفهای، مسیری را انتخاب کنید که بیشترین رضایت و رشد را برایتان به ارمغان بیاورد. اگر میتوانید به خوبی با دیگران همکاری کنید، ایدههای خود را به اشتراک بگذارید و بازخورد دریافت کنید، این مهارت میتواند در موفقیت شما نقش کلیدی ایفا کند. آیا میخواهید یک توسعهدهنده وب شوید؟ یا شاید علاقهمند به ساخت اپلیکیشنهای موبایل هستید؟ هدف شما تعیینکننده مسیر یادگیری و زبانهای برنامهنویسیای است که باید یاد بگیرید. به عنوان مثال، اگر میخواهید وبسایت بسازید، بهتر است زبانهایی مانند HTML، CSS و JavaScript را یاد بگیرید. برای توسعه اپلیکیشنهای موبایل، میتوانید به سراغ زبانهایی مانند جاوا یا Swift بروید.
IDE در ابتدا هنگام توسعه از طریق کنسول یا ترمینال امکانپذیر شد. مبتنی بر دستور، و بنابراین به نظر نمیرسد بسیار شبیه به IDEهای گرافیکی مبتنی بر منو پس از ظهور رابط کاربری گرافیکی. با این حال، ویرایش، مدیریت پرونده، تلفیق، اشکال زدایی و اجرای را به روشی سازگار با IDE مدرن یکپارچه کرده است. پس از کسب مهارتهای اولیه، به دنبال پروژههای واقعی یا کارآموزی باشید. حتی اگر پروژههای کوچک رایگان انجام دهید، این تجربهها به شما کمک میکنند مهارتهایتان را تقویت کنید و نمونه کار (Portfolio) بسازید. یادگیری برنامهنویسی زمانبر است و ممکن است گاهی احساس خستگی کنید یا به بنبست بخورید.
اگر نرم افزار شما به اندازه کافی متنوع است و می تواند چندین پروژه مختلف ایجاد کند، ممکن است نیاز باشد چندین آموزش همراه آن باشد. بر اساس نظراتی که گرفته اید مجددا مستندات خود را بررسی کنید، تست کنید و وقتی این کار تمام شد، شما یک پیش نویس نهایی دارید که برای انتشار آماده است. بعد از انتشار، این مستندات هستند که مرجع اصلی در شناخت و نحوه کارکرد نرم افزار می شوند. انواع مستندات مختلف یک هدف را دنبال می کنند و آن هم این است که کاربران یک نرم افزار با استفاده از آن، نرم افزار را ساده تر درک کنند و از آن برای انجام کاری در سیستم استفاده کنند. Asciidoctor ابزاریه که متنهای ساده نوشته شده با فرمت AsciiDoc رو به خروجیهای مختلف و با فرمتبندی حرفهای تبدیل میکنه.
این با توسعه نرمافزار با استفاده از ابزارهای نامربوط، مانند vi, GCC یا make سازگار است. برای شروع، زبانهای ساده و پرکاربرد مثل Python یا JavaScript گزینههای خوبی هستند. اگر به توسعه وب علاقه دارید، تکنولوژی هایی مثل HTML، CSS، و JavaScript شروع خوبی است. اگر به تحلیل دادهها و هوش مصنوعی علاقهمندید، Python میتواند بهترین گزینه باشد. قبل از شروع، مشخص کنید چرا میخواهید برنامهنویسی یاد بگیرید و به چه چیزی میخواهید برسید.
در این بخش، مزایا و معایب برنامهنویسی را به صورت کامل و خلاصه بررسی میکنیم تا دیدی شفافتر از این مسیر به دست آورید. شما باید راهحلهایی خلاقانه برای مشکلات پیدا کنید و گاهی رویکردهایی را در پیش بگیرید که دیگران به آن فکر نکردهاند. اگر برای مسائل روزمره زندگی خود خلاقیت زیادی به خرج میدهید و توانایی دیدن زوایای متفاوت را دارید، این یک امتیاز مثبت برای شما است. بخش عمده هزینههای تک دیک با بودجه شخصی و حمایتهای شما کاربران گرامی تأمین میشود. اگر محتوای این صفحه برای شما مفید واقع شده با روشهای مختلفی از سراسر دنیا میتوانید در تکمیل و تداوم فعالیت این سایت به گروه کوچک ما کمک کنید و در اجر معنوی آن نیز سهیم شوید. ارتباط با دیگر برنامهنویسان میتواند به شما در یادگیری سریعتر و به دست آوردن فرصتهای شغلی کمک کند.
البته فقط نمونههای کد نیستن که ممکنه قدیمی بشن؛ هر فرایندی که توی مستندات توضیح داده شده هم ممکنه با تغییر کدها از کار بیفته. این تغییرات میتونه مربوط به جزئیات کوچیک مثل مقادیر عددی باشه یا حتی مفاهیم کلیتر مثل معماری نرمافزار یا جریان اصلی کار. وقتی مستندات کد رو مینویسی، باید حواست به سطح دانش و نیازهای مخاطبهات باشه. اگه مخاطبهات خیلی متفاوت باشن، ممکنه برای برنامهنویسهای باتجربه زیاد توضیح بدی و حوصلشون سر بره، یا برعکس، برای برنامهنویسهای تازهکار اطلاعات مهم رو جا بندازی. داکاسترینگها یه نوع خاص از کامنت هستن که به صورت ساختاریافته توی کلاسها، توابع یا ماژولها قرار میگیرن تا اونها رو توضیح بدن.
اگر احساس میکنید این چالشها برایتان هیجانانگیز هستند و دوست دارید به نتیجه برسید، احتمالا برنامهنویسی شغل مناسبی برای شماست. اما اگر از این چالشها خسته میشوید و کار را نیمه تمام رها میکنید، شاید نیاز باشد بیشتر درباره مسیرتان فکر کنید. وقتی برای اولین بار شروع به یادگیری کدنویسی میکنید، به احساستان توجه کنید. آیا حس میکنید که از نوشتن کدها و دیدن نتیجه آن لذت میبرید؟ یا اینکه احساس خستگی و سردرگمی میکنید؟ لذت بردن از فرآیند یادگیری یکی از نشانههای اصلی این است که برنامه نویسی برای شما جذاب است. پلتفرمهایی مانند Coursera، Udemy و Codecademy منابع عالی برای شروع برنامهنویسی ارائه میدهند.
همچنین مثل یه راهنمای مرجع میشه برای برنامهنویسهای تازهوارد، و نگهداری، تغییرات و دیباگ کردن رو خیلی سادهتر میکنه. این نشان می دهد که چه تست هایی تکمیل شده و چه تعداد شکست خورده است. سعی کنید لیست های بلند تست را در لیست های کوچتر تست گروه بندی کنید. این روش به شما کمک میکند تا در طول کار راحتر پیگیر انجام آنها شوید و هیچکدام را از دست ندهید. همچنین اگر فکر میکنید به تست کنندگان کمک میکند تا برنامه را به درستی بررسی کنند، میتوانید نظرات خود را در قسمت های مشخص در لیست اضافه کنید.
تعیین زمان کمی برای نوشتن و توضیح دادن آنچه که نوشتهاید، میتواند مدت زمان بسیار زیادی را در آینده برایتان نجات دهد. در این مقاله به شما میگویم که چرا مستندسازی از شما توسعهدهنده و مشارکت کننده بهتری در تیمتان میسازد. پروژه های مشترک پروژه هایی هستند که در آنها با چند نفر دیگر در توسعه و/یا استفاده از پروژه همکاری می کنید. "مشتری" یا کاربر پروژه همچنان شما هستید و تعداد محدودی که از پروژه نیز استفاده می کنند. به یاد داشته باشید، اگرچه پروژه های خصوصی برای شخص شما در نظر گرفته شده است، اما شما نیز یک کاربر محسوب می شوید.
مقادیر پیش فرض چه چیزهایی هستند و پروژه چگونه تنظیم و مقداردهی میشود. نمودار container نشان دهندهی یک برنامهی قابل اجرا به تنهایی است که انتزاع سطح بالایی از کد و فناوریهای به کار رفته را نشان میدهد و مناسب افراد فنی داخل و خارج تیم است. اما هر نمودار UML به خودی خود دارای سطح مشخصی از انتزاع بوده و برای تمامی افراد فنی و غیرفنی مناسب نیست. در توسعهی یک نرمافزار ذینفعان فنی و غیرفنی زیادی وجود دارند که باید برای تعامل مناسب و درست، درک یکسانی از نرمافزار در حال توسعهی خود داشته باشند. هرکدام از موضوعات در این مستندات به خوبی توضیح داده شده و همراه با آنها نیز قطعه کدهایی ارائه شده است.
وقتی کدها از چندین مخزن (ریپازیتوری) مختلف استفاده میکنن، این موضوع پیچیدهتر هم میشه. این سند باید مشکلات شناخته شده در مورد سیستم و راه حل های پیشنهادی آنها را توصیف کند. این سند به دسته بندی های مختلف میتواند تبدیل شود و تمامی مواردی که نرم افزار در هنگام اجرا با آن ها در ارتباط است را شامل می شود. مقاله ای که در ادامه مطالعه می کنید سعی در ارایه انواع روش های مستندسازی پروژه دارد. همچنین کمک می کند دید بهتری به فرایند و دلایل مستند نویسی پیدا کنید.
شما میخواهید مطمئن شوید که محتوا، ایدهها و تصمیمگیریها، وقتی آنها را برای خود توضیح میدهید، همه در ذهن شما تازه هستند. زمان ایدهآل برای انجام این مرحله زمانی است که کد نمیزنید و در حال استراحت هستید، اما قبل از اینکه به طور کامل کار خود را ترک کنید و مثلا برای صرف ناهار بروید، این کار را انجام دهید. این نمودارها برای قابل درکتر بودن توسط همه بهتر است از نوتیشنهای UML هم استفاده کرده و دارای عنوان مناسب، شرحی کوتاه و خطوط یک طرفه برچسب دار باشند. که چون ابتدای هر ۴ کلمه دارای C است، سایمون این روش را C4 نام گذاری کرده است. مدیران سحاب به دنبال بهترین ها هستند و بهترین ها را شایسته مشتریان خود می دانند. شعار شرکت سحاب، مشتری مداری، صداقت و تلاش در جهت موفقیت مشتریان است.
مثلاً توی پایتون به صورت رشتهای و توی R به صورت کامنت نوشته میشن. وقتی برنامهنویسها نمیتونن کدهای فاقد مستند رو بهخوبی بفهمن و تغییر بدن، ممکنه مجبور بشن از راهحلهای موقتی و میانبر استفاده کنن. این کار باعث میشه کد به مرور زمان پیچیدهتر و نگهداریش سختتر بشه و در نهایت هزینه و زمان بیشتری برای نگهداری لازم داشته باشه. اعضای تیم نمیتونن راحت کدهای همدیگه رو بفهمن، که این موضوع میتونه مشکلاتی مثل سختی در هماهنگی، ادغام کدها و حتی تضادهای کاری به وجود بیاره. این وضعیت باعث میشه بهرهوری تیم پایین بیاد و کارها به خوبی پیش نره.
ابزارهایی مانند Swagger برای مستندسازی API و Markdown برای نوشتن مستندات متنی میتوانند مفید باشند. این ابزارها به توسعهدهندگان کمک میکنند تا مستندات خود را به راحتی ایجاد و بهروزرسانی کنند. استفاده از ابزارهای مناسب میتواند زمان لازم برای نوشتن مستندات را کاهش دهد. مستندات دقیق به توسعهدهندگان جدید کمک میکند تا سریعتر با کد آشنا شوند و تغییرات را به راحتی انجام دهند. در یک نظرسنجی، 60% از توسعهدهندگان اعلام کردند که مستندات مناسب به آنها در نگهداری و بهروزرسانی نرمافزار کمک کرده است. Swift زبان برنامهنویسی اصلی اپل برای توسعه اپلیکیشنهای iOS و macOS است.
هرکدام از پیادهسازیها و جزییات کد را به طور کامل شرح دهید و نتایج موردنظر را نشان دهید. IDEهای پیشرفته پشتیبانی از پالایشگاههای خودکار را پشتیبانی میکنند. ما در تک دیک تلاش می کنیم محتوایی دقیق، واضح و بدون اشتباه منتشر کنیم. از طرف دیگر با توجه به حجم بالای مطالب به کمک شما هم نیاز داریم. اگر احساس میکنید محتوای این صفحه باید بروزرسانی، تکمیل یا تصحیح شود و یا سوالی در مورد این مطلب دارید که بدون پاسخ مانده خوشحال میشویم آن را در بخش دیدگاههای همین مطلب با ما در میان بگذارید.
یکی از ویژگیهای مهم Java، قابلیت اجرای آن بر روی پلتفرمهای مختلف با استفاده از JVM (Java Virtual Machine) است. یادگیری Java میتواند شما را برای مشاغل مختلف آماده کند، از توسعه نرمافزارهای موبایل گرفته تا طراحی سیستمهای بزرگ سازمانی. ابزارها و فریمورکهایی مانند Spring و Hibernate نیز به توسعهدهندگان Java امکانات بیشتری میدهند. برای شروع آموزش جاوا میتوانید از منابع متنوع موجود استفاده کنید. مستند سازی در حوزه مهندسی برای ثبت و نگهداری اطلاعات مربوط به طراحی، ساخت و نگهداری سازهها، ماشین آلات و فرآیندها استفاده میشود. این اطلاعات شامل نقشهها، دفترچه راهنما، گزارشها و غیره میباشند.
برنامه نویسی گرافیکی