ایستگاه برنامه نویسی



جادوی زبان جاوا در برنامه نویسی


در این نوشته قصد دارم تاریخچه ، ویژگی ها و محیط های توسعه یکپارچه سازگار زبان جاوا را معرفی کنم.

تاریخچه جاوا:

Java Creation یک زبان برنامه نویسی شی گرا است که توسط جیمز گاسلینگ و پاتریک ناوشتون ، کارمندان Sun Microsystems ، با پشتیبانی بیل جوی (بنیان گذار Sun Microsystems در سال 1982) ، که بطور رسمی در 23 مه 1995 در SunWorld ارائه شده است ، ایجاد شده است. در آن زمان جاوا زبان OAK خوانده می شد. نسخه فعلی در زمان نوشتن این مقاله است. من جاوا بیش از یک زبان برنامه نویسی است ، زیرا به همراه ماشین مجازی جاوا (JVM) یا ماشین مجازی است. جاوا این یک محیط حفاظت شده است که برنامه های جاوا در آن اجرا می شود.

تعریف جاوا:

جاوا در برنامه های تلفن همراه به ویژه برنامه های Android ، برنامه های دسک تاپ، برنامه های وب، سرورهای وب و سرور برنامه ها، بازی ها، اتصال به بانک اطلاعاتی و خیلی موارد دیگر! چرا از جاوا استفاده می کنیم؟ جاوا بر روی سیستم عامل های مختلف کار می کند (ویندوز ، مک ، لینوکس ، Raspberry Pi ، و غیره) یادگیری آسان و استفاده آسان است سریع و قدرتمند از آنجا که جاوا به C ++ و C # نزدیک است ، از جامعه پشتیبانی زیادی برخوردار است.

ویژگی های جاوا:

زبان شی گرا:
Object Oriented Language Java یک زبان شی گرا است. این بدان معنی است که همه چیز در جاوا یک Object است. برنامه ها مانند دیوارهایی ساخته شده اند که در آن آجرها اشیاء هستند و سیمانی که آجرها را به هم متصل می کند ، ارتباط بین اشیاء است. یک شیء عنصری است که دارای خاصیت و رفتار است.
ساده:
یادگیری  زبان جاوا آسان است. فقط با نحو آشنا شوید مانند: قواعد اساسی زبان ، کلمات کلیدی آن و کاربرد.
 
امن:
زبان جاوا تا حدی امن است که هر برنامه در JVM اجرا شود. جاوا به لطف کلاس لودر ، سیستم فایل یک برنامه را از سیستم عامل جدا می کند. Verified Bycode برای جلوگیری از نقض حق دسترسی به اشیاء ، کد را بررسی می کند. مدیر امنیت چک می کند که کدام کلاس در برنامه می تواند روی دیسک محلی بخواند یا بنویسد.
استقلال سکو:
یک برنامه جاوا می تواند در کلیه سیستم عاملهای رایج و بدون پیکربندی زیاد اجرا شود: Windows، Linux و Mac
تنومند:
زبان جاوا مکانیسم مدیریت خطا (استثنا) برای مدیریت حافظه را دارد. اشیاء که دیگر توسط برنامه استفاده نمی شوند به طور خودکار حذف می شوند (جمع آوری زباله). جاوا تأیید می کند که متغیرهای ایجاد شده از نوع صحیح هستند.
قابل حمل:
برنامه ای در جاوا بدون نیاز به پیکربندی برای کار به راحتی از رایانه به رایانه قابل حمل است.
پویا:
کلاس در جاوا به صورت پویا در صورت تقاضا وارد برنامه می شود. حافظه بطور خودکار مدیریت می شود.
چند رشته ای:
در یک برنامه جاوا می توان چندین کار ایجاد کرد و آنها را به صورت موازی اجرا کرد.

جاوا چگونه کار می کند؟

  1. توسعه دهنده برنامه جاوا را می نویسد که به پرونده ای به نام کد منبع Java تبدیل می شود.
  2.  توسط کامپایلر جاوا که در کیت توسعه جاوا JDK)) موجود است به کد جاوا بایت تبدیل می شود. بایت کد جاوا توسط کامپایلر Just-In-Time JVM که JRE را پیاده سازی می کند تفسیر خواهد شد.
یک بار بنویسید ، همه جا را اجرا کنید:
همانطور که در بالا دیدیم ، زبان جاوا از سیستم عامل مستقل است ، بنابراین در غیر این صورت برنامه نویس یک بار برنامه خود را می نویسد و در تمام سیستم عامل ها قابل اجرا است.
کنوانسیون نامگذاری جاوا:
چگونه باید نام خود را به متغیرها ، کلاس ، متدها در جاوا بدهیم؟ یک کنوانسیون برای این امر وجود دارد:
مثال:
نام کلاس: تماشا کنید
هیچ رابطه ای وجود ندارد: محاسبه Temp
نام روش: launcChrono ()
نام متغیر: ساعت رولکس
نام بسته: ساعت سازی
نام ثابت:  MINUTE
 
محیط توسعه یکپارچه جاوا (IDE):
Eclipse ، Intellij Idea و Netbeans 3 مورد استفاده از IDE های جاوا هستند.
واژگان برنامه نویس جاوا:
JDK: مجموعه توسعه Java مجموعه ای از برنامه های ایجاد شده برای کمک به توسعه دهنده جاوا هنگام ایجاد یک برنامه است.
JRE ( Java Running Environment): محیط زمان اجراء زبان جاوا است. این ابزاری است که با JDK تهیه شده است.
JVM(Java Virtual Machine): یک محیط مستقل است که می توان به عنوان یک رایانه کوچک از آن فکر کرد و سپس برنامه های جاوا در این رایانه مستقل شروع می شود.

 

 

 

JDK: کیت توسعه جاوا مجموعه ای از برنامه های ایجاد شده برای کمک به توسعه دهنده جاوا هنگام ایجاد یک برنامه است. JRE:

 Java Running Environment محیط اجرای جاوا زبان است. این ابزاری است که با JDK تهیه شده است. JVM: JVM یا Java Virtual Machine یک محیط مستقل است که می توان به عنوان یک رایانه کوچک که راه اندازی شده است تصور کرد و سپس برنامه های جاوا در این رایانه مستقل شروع می شود.

 

 


یک تکنولوژی جدید ساخت و اجرای اینترفیس در برنامه های ویندوز
در اولین روزهایی که تکنولوژی دات نت(Net.) پدیدار شد، مایکروسافت به طور ناگهانی طیف کاملی از فناوری های جدید را معرفی کرد.
فناوری های جدید مایکروسافت عبارت بودند از:
asp.net: برای نوشتن اپلیکیشن های وب
ado.net: برای وصل شدن به انواع دیتابیس ها
#vb.net & c: دو زبان برنامه نویسی جدید
در میان این تکنولوژی ها، هنوز یک فناوری قدیمی وجود داشت به نام windoes form که یک ابزار ساخت اینترفیس برای اپلیکیشن های ویندوز است که برای روزگار ما می توان آن را عقب افتاده دانست! تا با پدید آمدن wpf ورق برگشت و بازی عوض شد.

WPF چیست؟

معرفی wpf سر آغاز سه کلمه Windows Presentation Foundation می باشد. هر کسی که تا به حال در محیط های گرافیکی و یا به اصلاح برنامه نویسان، محیط های ویژوال، برنامه نویسی کرده باشد، یقینا با مفاهیم Windows Application ها که گاها به صورت مخفف WinApp نیز نامیده می شوند، آشنا می باشد. این نوع برنامه نویسی همزمان با ورود سیستم عامل های ویندوز در دنیای کامپیوتر شروع شد و روز به روز با به وجود آمدن زبان های متفاوت جایگاه محبوبتری نزد برنامه نویسان پیدا کرد.
همانطور که می دانید، Windows Application ها، از API های سیستم عامل مربوطه ( که اکثرا ویندوز XP نیز می باشد) برای ترسیم عناصر گرافیکی یا همان عناصر ویژوال، استفاده می کنند. به عنوان مثال برای ترسیم انواع دکمه ها، فرم ها و بسیاری از عناصردیگری که با آن ها آشنا هستید، از توابع API ویندوز کمک گرفته می شود. همین مسئله باعث ایجاد محدودیت برای برنامه نویسان در ایجاد کنترل های سفارشی با ظاهر دلخواه خود شده بود. اگر چه با ابزار های گرافیکی که در دات نت فریم ورک ۲.۰ نیز وجود داشت، می توانستیم تا حد خوبی اقدام به ایجاد کنترل های مورد دلخواه خود را بکنیم، اما این موضوع نیاز به دانستن اطلاعات زیاد در مورد ایجاد کنترل های سفارشی و همچنین نوشتن گاها کد های بسیار زیادی جهت ایجاد کنترل مورد نظر می بود. این به آن دلیل بود که قالب و اساس اولیه کنترل ها بسته بود و نمی توانستید به راحتی کنترل ها را شخصی سازی نمایید. در بهترین حالت، یک برنامه نویس ماهر میتوانست با ارث بری از کلاس Control اقدام به ایجاد یک کنترل جدید با ظاهر و امکانات مورد نظر خود بکند.
این مسئله زمانی نمود بیشتری پیدا میکند که بخواهید، اکثر جنبه های یک کنترل را در کنترل سفارشی خود قرار دهید. به عنوان مثال به دلیل قرار گرفتن حالت های مختلف گرادیان بر روی منو، استفاده از امکانات قبلی مانند ترسیم متن آیتم به صورت اتوماتیک توسط خود منو و یا ترسیم کلید های میان بر آیتم و …. از بین می رود و تمامی این موارد بایستی با کد و توسط شما ایجاد گردد. درست است که می توان از کنترل های ایجاد شده توسط خودتان به کرات و در برنامه های مختلف استفاده کنید ولی تجربه نشان داده است که گاهی نیز مجبور به ایجاد کنترل دیگری شوید. این به این دلیل نیست که شما ااما کنترل قبلی خود را خوب طراحی نکرده اید. عوامل زیادی می توانند باعث بروز این مورد شوند که پرداختن به آن ها از حوصله این بحث خارج است.

معرفی مختصر خصوصیات WPF

مدل قدرتمند و قوی طراحی

توسط WPF از درگیر شدن با پیکسل ها و کار کردن بر روی ان ها رهایی خواهید یافت و در واقهع با ابجکت ها و اشکال سطح بالا تعامل خواهید داشت. همچنین قادر به ایجاد اشکال سه بعدی و… خواهید بود.
نکته: یکی از محدودیت هایی که WPF داراست، کار کردن با اشکال سه بعدی می باشد. در واقع گرچه با WPF به خوبی می توانید اقدام به ترسیم این نوع اشکال نمایید، اما از لحاظ کارایی، اشکال سه بعدی ایجاد شده با WPF کارایی کمتری نسبت به نوع های مشابه و تولید شده با DirectX و یا OpenGL به صورت مستقیم می باشد. به همین دلیل چنانچه قصد نوشتن بازیهای سه بعدی Real Time را دارید، WPF ممکن است انتخاب خوبی نباشد. چون ممکن است آن کارایی را که انتظار دارید برای شما فراهم نکند. در این موارد می توانید از محیط های دیگر و مناسب اینگونه برنامه ها استفاده نمایید.

انیمیشن، صدا و تصویر

همانطور که پیش تر نیز توضیح داده شد، علاوه بر انجام اعمال بسیاری که می توانید، با اشکال انجام دهید، اعم از چرخش، بزگر نمایی، کوچک نمایی و …، نیز می توانید اقدام به ایجاد انیمیشن های زیبا توسط WPF نمایید. همچنین قادر خواهید فایل های صوتی و ویدیویی را به خوبی به کار بگیرید.

استایل ها و قالب ها

همواره یکی از دغدغه های برنامه نویسان ویندوز، ایجاد ظاهری زیبا برای فرم ها و عناصر خود بوده است. تا آن جا که اکثر برنامه نویسان به سراغ کامپوننت های شرکت های ثالث که آن ها را Third party Components می نامیم، رفته و از آن ها به کرات در برنامه های خود استفاده می کرده و می کنند. من جدای از اینکه این کامپوننت ها چقدر در عمل و کارایی درست و حساب شده عمل می کنند، و اینکه با معیار های زبان فارسی متناسب هستند ( که اکثرا نیستند)، دلیل دیگری برای استفاده نکردن از این نوع کامپوننت ها دارم و ان هم وابستگی برنامه شما به آبجکت ها و عناصر شرکت های دیگر خواهد بود. این موضوع می تواند در طولانی مدت و استفاده مکرر از این نوع ابزار ها، ضررهای جبران ناپذیری به برنامه نویسیان وارد نماید. با تکنولوژی WPF تقریبا تمامی این مشکلات رفع شده و به راحتی می توانید اقدام به ایجاد استایل ها و قالب های متناسب با معیار خود و برنامه خود، نمایید. چنانچه برنامه نویسی مسلط به این موارد گردد، مطمئن هستم که دیگر به هیچ عنوان به دنبال ابزار های ظاهر سازی برنامه ها و کامپوننت های متفاوت نخواهد رفت.

دستورات ( Commands)

یکی از جنبه ها و امکانات فوق العاده زیبا و قدرتمند WPF استفاده از Command ها برای هماهنگ سازی واکنش های مختلف کاربر و هماهنگ سازی قسمت های مختلف برنامه به کار می رود که در جای خود، مفصلا به شرح آن خواهم پرداخت. فعلا به همین قدر بسنده کنم که با یادگیری و استفاده از این ابزار، فوق العاده شگفت زده خواهید شدد و خواهید دید که برنامه های شما با این ابزار به چه درصد بالایی از کارایی خواهد رسید.
برنامه های بر پایه صفحه : کمی پیش تر در این مورد صحبت کردم و نمونه عکس برنامه ای را هم که از صفحات استفاده شده بود را مشاهده کردید. در موقعیت مناسب تری بر روی این نوع برنامه نویسی نیز تمرکز بیشتری خواهیم کرد.

ایجاد واسط کاربر به صورت توصیفی

زمانی که نامی از تکنولوژی WPF برده میشود، در ادامه آن نامی هم از XAML می آید. XAML که یک زبان توصیفی و XML Based می باشد، توسط ویژوال استودیو به کار گرفته می شود تا شما بتوانید فرم ها و عناصر خود را با سرعت بیشتری ایجاد نمایید. به جرات می توانم بگویم که استفاده از XAML در سرعت تولید برنامه های شما، تاثیر چشمگیری خواهد داشت. در ابتدا ممکن است در استفاده از آن کمی دچار سردرگمی شوید، تا آن جایی که بخواهید آن را رها کنید و اقدام به ایجاد محیط واسط برنامه خود با کد نمایید. اما با کمی تلاش و مسلط شدن بر آن ، کار کردن با آن لذت خواهید برد، تا جایی که هیچ وقت دوست ندارید دیگر سراغ کد نویسی بروید!!! ( البته این یه امر محال خواهد. چون حتما نیاز به کدنویسی هم خواهید داشت)

عدم وابستگی WPF به رزولوشن

بدون شک یکی از جنبه های فوق العاده مفید و قوی WPF عدم وابستگی آن به رزولوشن صفحه نمایش است. اگر به خاط داشته باشید، کمی پیش در یک نکته مهم، این موضوع را یادآور شدم که یک برنامه نویس حرفه ای در WPF حتی المقدور از خواص Width و Height عناصر برای چیدمان آن ها استفاده نخواهد کرد. دلیل این گفته را در ادامه متوجه خواهید شد.
برنامه های تحت ویندوزی که تا کنون و با تکنولوژی های موجود نوشته می شدند( می شوند) وابستگی زیادی به رزولوشن صفحه نمایش دارند. یه عنوان مثال فرم های شما، که در صفحه نمایش شما با رزولوشن ۱۰۲۴ * ۷۶۸ به خوبی طراحی شده اند، ممکن است در یک کامپیوتر دیگری با رزولوشن بالاتر از ان (این امر در Laptop ها بسیار معمول می باشد. علاوه بر اینکه ان ها در بیشتر مواقع از تراکم ۱۲۰ DPI استفاده می کنند. در صورتی که مونیتور های CRT معمولا از تراکم ۹۶ DPI استفاده می کنند. گر چه قابل تغییر می باشد” ) کوچک شود، و بر عکس، در یک سیستم با رزولوشن پایین، قسمتی از فرم های شما از صفحه نمایش خارج گردد.
اما با WPF این مشکلات مرتفع می گردد. دلیل آن هم استفاده از سیستم خاصی برای اندازه گیری اجزاء و عناصر برنامه شما، می باشد. عناصر، اعم از دکمه ها، فرم ها و هر شی قابل اندازه گیری با واحدی با نام DIU (Device Independent Unit ) اندازه گیری می شوند. هر یک DIU معادل با ۱/۹۶ (۱ تقسیم بر ۹۶) هر اینچ می باشد. در واقع می توان گفت هر DIU در صفحه نمایشی با تراکم پیکسل استاندارد یعنی ۹۶ DPI ، دقیقا برابر با ۱ پیکسل فیزیکی در صفحه نمایش می باشد. حال اگر از DPI بالاتری استفاده گردد، طبیعتا هر یک DIU (در همان رزولوشن قبلی)کمتر از ۱ پیکسل خواهد شد.
حال WPF با اندازه گیری DPI در هر رزولوشنی که با فرمول مشخصی محاسبه می شود، می توانید سایز مناسب عناصر شما را محاسبه کند. این روش باعث می شود که نمایش یک کنترل مانند Button در رزولوشن ۱۰۲۴*۷۸۶ و با ۹۶ DPI تراکم، با نمایش آن در رزولوشن ۱۶۰۰*۱۲۰۰ و با تراکم ۱۲۰ DPI یکسان باشد.

آخرین ارسال ها

آخرین جستجو ها


azmagpoemo bitarayanehiy mosabeghe-bibser FARA DOWNLOAD coursa مطالب اینترنتی نابي chakavakpel pdfketab بسم الله الرحمن الرحیم والعادیات ضبحا...