Забони Java
Java на танҳо забони барномасозӣ, балки як платформаи пурраи нармафзор бо имкониятҳои васеъ мебошад. Қисмҳои асосии ин платформа инҳоянд:- Воситаҳои асосӣ барои навиштан ва иҷро кардани барномаҳои Java.
- Китобхонаҳо ва синфҳо ядрои забон мебошанд. Онҳо функсияҳои асосии барномасозии Java-ро таъмин мекунанд: коркарди истисноҳо, мултипликаторҳо, коллексияҳо, сабт, инъикос, амният, шабакасозӣ, XML, сериализатсия, ифодаҳои муқаррарӣ.
- Асбобҳо барои ҷойгиркунӣ ва ба таври худкор оғоз кардани барномаҳо.
- Асбобҳо барои сохтани фронт (GUI, интерфейси корбар). Инҳо синфҳои китобхонаҳои JavaFX, Swing ва Java2D мебошанд.
- Китобхонаҳо барои кор бо пойгоҳи додаҳои фосилавӣ тавассути шабака, ба монанди JDBC, JNDI, RMI ва Java RMI-IIOP.
-
Монеаи пасти вуруд.
Омӯзиши Java нисбат ба аксари забонҳо бо синтаксиси C-монанд осонтар аст. -
Самти an object.
Барномаҳои Java дар атрофи an objectҳо ва таъсири мутақобилаи онҳо сохта шудаанд, ки ба шумо имкон медиҳад, ки аз OOP пурра истифода баред. -
Интиқолпазирӣ.
Тавассути истифодаи тарҷумон, мошини виртуалии Java, барномаҳо ба платформаҳо ва дастгоҳҳои гуногун интиқол дода мешаванд. -
Истиқлолияти платформа
Барномае, ки дар Java барои як платформа навишта шудааст, ба byte-codeи фосилавӣ тартиб дода мешавад, ки ба туфайли тафсир аз ҷониби JVM барои ҳар як платформа метавонад дар платформаҳои дигар кор кунад. -
Мукаммалгардонии бисёрсоҳавӣ.
Хусусиятҳои Java ба шумо имкон медиҳанд, ки иҷрои якчанд риштаҳоро назорат кунед, ки ба шумо имкон медиҳад барномаҳои чанд ришта эҷод кунед. -
Бехатарӣ.
Бо шарофати санҷиши bytecodeи дарунсохташудаи JVM, набудани идоракунии хотираи дастӣ дар Java, ошкоркунии изофабори стек ва мавҷудияти API-ҳои гуногун, ки ба шумо имкон медиҳанд амниятро назорат кунед, шумо метавонед дар ин забон барномаҳои воқеан бехатар эҷод кунед. -
Таҳаммулпазирии хатогиҳо.
Механизми истисно, ҳам ҳангоми тартиб додан ва ҳам ҳангоми иҷрои мустақим, таҳаммулпазирии хатогиҳои барномаҳоро зиёд мекунад ва шумораи хатоҳоро кам мекунад. -
Тафсирпазирӣ.
Тарҷумаи Java метавонад bytecodeҳои Java-ро дар ҳама мошине, ки дорои JVM ва JRE мебошад, иҷро кунад. -
Тақсим.
Java дорои асбобҳо барои эҷоди барномаҳои тақсимшуда мебошад. -
Намоиш.
Истифодаи компилятори JIT (Just-in-time) кори баландсуръати барномаҳоро таъмин мекунад, ки бо суръат бо забонҳои C ва C++ муқоиса карда мешавад.
Чӣ тавр барномасозиро дар Java оғоз кардан мумкин аст?
Барои оғози омӯзиши Java аз сифр , тавсия дода мешавад, ки мафҳумҳои асосиро фаҳмед: забони Java чиро дар бар мегирад, барномаи Java чист ва чӣ тавр он иҷро карда мешавад. Сипас ба синтаксиси забон, асосҳои он ва омӯзиши китобхонаҳо гузаред. Пас аз хондани якчанд мақолаҳо дар бораи забони Java, шумо метавонед асосҳои онро қабул кунед.
Ба шумо чӣ лозим аст, ки дар Java барномарезӣ кунед?
Аввалан, шумо бояд нармафзорро барои таҳия ва иҷро кардани барномаҳо насб кунед - JDK (Java Development Kit). Пас аз он, JDK-ро дар компютери худ танзим кунед, яке аз IDE-ро зеркашӣ ва насб кунед (Муҳити Интегратсияи Рушд) - ин муҳити таҳияи нармафзор аст. Маъмултарин IDE IntelliJ IDEA мебошад. Алтернативаҳо Eclipse, NetBeans, JCreator ва ҳатто блокнотҳои муқаррариро дар бар мегиранд.
Насб кардани Java дар компютери шумо
Тавре ки мо аллакай фаҳмидем, вақте ки мо Java-ро аз сифр меомӯзем, қадами аввал насб кардани JDK мебошад . Барои ин ба шумо лозим меояд, ки якчанд амалҳои оддиро иҷро кунед:- Ба вебсайти Oracle равед .
- Вобаста ба системаи оператсионии шумо файли насбкуниро интихоб ва зеркашӣ кунед.
- Насбкуниро мувофиқи дастурҳои насбкунанда анҷом диҳед.
- Агар шумо Windows-ро истифода баред, тағирёбандаи муҳити зистро танзим кунед.
Таърифҳои асосӣ
Агар шумо нав ба омӯзиши Java шурӯъ карда бошед, шумо албатта бо истилоҳҳои зерин дучор хоҳед шуд: JVM (Java Virtual Machine) - мошини виртуалии Java. Ин як модули нармафзори мушаххаси платформа мебошад, ки барои тафсири bytecodeи манбаъ ба codeи мошин ва иҷрои он хидмат мекунад. JRE (Java Runtime Environment) - Муҳити кории Java. Татбиқи платформаи мушаххаси JVM ва маҷмӯи китобхонаҳоеро, ки барои иҷрои барномаҳои Java лозиманд, дар бар мегирад. JDK (Java Development Kit) маҷмӯи асбобҳои таҳиякунанда барои навиштани барномаҳо дар Java мебошад. Компилятор, JRE, маҷмӯи китобхонаҳои стандартии Java, ҳуҷҷатҳо ва утorтаҳои гуногунро дар бар мегирад. Рамзи манбаъ файли матнӣ дар Java бо тамдиди .java мебошад.Байтcode рамзи сатҳи пасти аз мошин мустақил буда, маҷмӯи дастурҳо барои JVM мебошад. Рамзи мошин маҷмӯи дастурҳои мошинӣ дар формати дуӣ мебошад, ки бевосита аз ҷониби протсессор иҷро карда мешавад. Компиляция табдил додани codeи ибтидоӣ ба bytecode мебошад. Тафсир - табдил додани bytecode ба рамзи мошин. Платформа муҳити сахтафзор ва нармафзорест, ки дар он барномаҳо ва барномаҳо иҷро мешаванд. Платформаҳои маъмултарин Microsoft Windows, Linux, Solaris OS ва Mac OS мебошанд. Ин диаграмма ба шумо дар фаҳмидани мафҳумҳои JVM, JRE ва JDK кӯмак мекунад:Давраи ҳаёти барнома
Давраи ҳаёти барномаи Java аз навиштани codeи ибтидоӣ дар формати матн оғоз мешавад. Одатан, барои ин муҳитҳои махсуси рушд истифода мешаванд - Integrated Development Environment (IDE) , аммо барномаҳои оддиро инчунин метавонанд дар муҳаррири матнӣ, ҳатто Notepad, ки бо ҳама нашри OS Windows меояд, чоп кардан мумкин аст. Рамзи манбаъ бояд дар файл бо тамдиди .java захира карда шавад. Намунаи барномаHelloWorld.java
:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("This is my first program");
}
}
Пеш аз иҷрои ин codeи ибтидоӣ, он бояд бо истифода аз компилятор ба byte code тартиб дода шавад. Компилятор як утorтаест, ки қисми JDK мебошад. Дар натиҷаи кори он мо файлеро бо тамдиди .class мегирем. Он дорои bytecode - дастурҳо барои JVM мебошад, ки формати он ба забони ассемблер шабоҳат дорад. Барномаи HelloWorld.java мо ба файли HelloWorld.class тартиб дода мешавад. Платформаи Java асбобҳоро барои таҳрири bytecode таъмин намекунад, аммо шумо ба ҳар ҳол метавонед онро бубинед. Барои дидани он ки bytecodeи барномаи Java чист, шумо метавонед утorтаи javap disassembler, ки ба JDK дохил шудааст, истифода баред. Салом Ҷаҳон. синф дорои bytecodeи монанди ин аст:
Compiled from "HelloWorld.java"
public class HelloWorld {
public HelloWorld();
Code:
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
public static void main(java.lang.String[]);
Code:
0: getstatic #2//Fieldjava/lang/System.out:Ljava/io/PrintStream;
3: ldc #3// String This is my first program
5:invokevirtual#4//Methodjava/io/PrintStream.println:(Ljava/lang/String;)V
8: return
}
Барномаи мо ҳоло дар шакли тартибдодашуда дар файли HelloWorld.class нигоҳ дошта мешавад. Барои иҷро кардани он дар ҳама гуна платформа, шумо бояд JRE-ро насб кунед. Интиқолпазирии барномаҳои Java ба ҳама гуна платформа тавассути истифодаи JVM таъмин карда мешавад. Иҷрои барнома ин иҷрои bytecode тавассути мошини виртуалии Java мебошад. Барномаҳо аз ҷониби утorтаи java иҷро карда мешаванд, ки аз шумо номи файли тартибдодашударо талаб мекунад. Иҷрокунӣ бо пайдарпаии зерин сурат мегирад:
- JVM дар хотираи RAM-и компютер кор мекунад. Аслан, ин барномаест, ки барои иҷрои барномаҳои Java, ки мо навиштаем, истифода мешавад.
- Бо истифода аз боркунаки синфи ибтидоӣ, JVM синфи моро дар хотираи компютер бор мекунад ва оғоз мекунад. Дар мисоли мо, ин синф аст
HelloWorld
. - Минбаъд, дар синфи мо, JVM ҷустуҷӯи
public static void main(String[])
. - Рамзи усул иҷро карда мешавад
main
. Агар ин барои иҷрои барнома зарур бошад, синфҳои дигар бор карда мешаванд ва оғоз карда мешаванд. - Пас аз иҷро шудани code, ҷамъоварии ахлот анҷом дода мешавад - хотира тоза карда мешавад ва барномаи JVM баста мешавад.
Интихоб ва насби муҳити рушд
Барои зуд ва самаранок барномарезӣ кардан дар Java, ба шумо муҳити рушд лозим аст - барнома барои навиштани барномаҳои Java. Маъмултарин IDE дар байни таҳиягарони Java инҳоянд:- IntelliJ IDEA
- Гирифтан
- NetBeans
Барои омӯхтани Java чанд вақт лозим аст?
Омӯзиши асосҳои Java ва малакаи барномасозӣ, вобаста ба шиддатнокии омӯзиши шумо, эҳтимол шуморо аз 6 то 12 моҳ дар ҳама ҷо мегирад. Барои систематикӣ кардани ин раванд, нақшаи омӯзишро таҳия кунед, захираҳои заруриро ҷамъ кунед ва дар як рӯз чанд соатро барои омӯзиш ҷудо кунед. Фаромӯш накунед, ки калиди омӯзиши барномасозӣ амалия аст.
Хулоса
Вақте ки мо Java-ро мустақилона меомӯзем, он дар амал назар ба назария осонтар мешавад. Барои ин дониш дар сатҳи корбари компютери фардӣ кофӣ аст. Барои самаранок оғоз кардани омӯзиши Java, якчанд қадамҳои оддиро иҷро кунед:- Java-ро дар компютери худ насб кунед
- Мафҳумҳои асосиро омӯзед
- Муҳити рушди худро танзим кунед
- Барномаи аввалини худро нависед ва иҷро кунед.
GO TO FULL VERSION