Әртүрлі пайдалы деректер түрлері (стектер, sdovari, хэш кестелері, күндер, генератор кездейсоқ сандар )
java.util.zip
Мұрағаттауға арналған сабақтар
Java тілі 1995 жылы жасалды және 22 жыл ішінде ол миллиондаған бағдарламашылардың жүрегін жаулап алды. Ол мұны қалай жасады? Осы уақыт ішінде неге бірде-бір лайықты алмастырушы пайда болмады? Мұны түсіну үшін Java тілінің мүмкіндіктеріне тоқталайық.
Sun Microsystems тілді шығару кезінде ықтимал табыстың 5 парадигмасын көрсетті:
қарапайымдылығы, объектіге бағдарлануы және түсініктілігі;
Тілдің синтаксисі C++ тілінен мұраға қалды. Бүгінгі таңда Python, Groove немесе Go фонында оны қарапайым деп айту қиын, бірақ содан кейін эволюциялық көрініс C әзірлеушілерінің назарын аударуға мүмкіндік берді.
Стандартты «Hello World» бағдарламасы келесідей көрінеді:
public static void main(Stringargs)
{
System.out.println («Сәлем әлем»);
}
Құрылыстың бұл түрі теру жылдамдығын арттырмайды, бірақ оқуға, түсінуге және жаңғыртуға оңай.
Сенімділік
Сенімділік екі принциппен қамтамасыз етіледі:
OOP. Мұрагерлік иерархия кодтың оқылу мүмкіндігін арттырады және мәжбүрленбеген қателердің санын азайтады.
Қатаң теру. Әзірлеуші көп жұмыс істеуі керек, бірақ деректер бір мәнді түсіндіріледі.
Сонымен қатар, Java бастапқыда жадқа тікелей қол жеткізуге тыйым салуы керек еді, бұл сенімділікті арттырады. Бірақ әзірлеушілер бұл тыйымды айналып өтетін sun.misc.Unsafe бэкдоры сияқты бірнеше бос орындар қалдырды.
Қауіпсіздік
Конструкциялардың жалпы формасын сақтаумен қатар, Java C++-пен салыстырғанда ресми түрде екі ықтимал қауіпті жоғалтты: көрсеткіштер және көп мұра. Іс жүзінде екі функция да сақталған, бірақ басқа пішінде ұсынылған: көрсеткіштердің орнына мәндер пайдаланылады, сыныптар емес, интерфейстер бірнеше мұраға қатысады. Дегенмен, java бағдарламалаудың бұл мүмкіндігі әзірлеушінің назарынан тыс болуы мүмкін зақымдануды дерлік жояды.
Ыңғайлылық
Тура мағынада Java ұғымы: «Бір рет жаз, кез келген жерде іске қос». Яғни, кодтың орындалу мүмкіндігі қолданылатын операциялық жүйеге немесе орнатылған бағдарламалық құралға байланысты емес. Бұған JVM виртуалды машинасы арқылы байт кодқа аудару арқылы қол жеткізіледі.
Айтпақшы, Android жүйесіндегі java-ның бұл мүмкіндігі пайдалы болды. Әртүрлі өндірушілер, телефон үлгілері, сипаттамалар - мұның бәрі, егер мұндай әмбебап құрал болмаса, қолданбалардың жұмысына теріс әсер етуі мүмкін.
Байткодқа аударумен байланысты Java мүмкіндігі соңғы өнімдердің өнімділігіне оң әсер етеді. Орындалу жылдамдығы бойынша java тіліндегі ұқсас бағдарламалар C/C++ тіліндегі бағдарламалардан 1,5-2 есе төмен, бұл ретте JavaScript, Ruby, Python тілдерінен асып түседі.
Дамыған экожүйе
Өмірінің 22 жылында тіл ондаған IDE және фреймворктарды, жүздеген қауымдастықтар мен форумдарды, мыңдаған кітапханалар мен плагиндерді сатып алды. Мұның бәрі мамандыққа кіру шегіне, java көмегімен өндірілетін өнімнің сұранысы мен сапасына жақсы әсер етеді.
Әрине, әрбір танымал бағдарламалау тілі бірегей, әрқайсысының өзіндік артықшылықтары мен кемшіліктері бар. Java мүмкіндіктері революциялық емес, олар кішігірім, бірақ сонымен бірге олар негізгі болып табылады. Жақсы тілді жақсыдан ажырататын да осы.
Подробнее: https://sukachoff.ru/kk/vosstanovlenie/yazyk-programmirovaniya-dzhava-yazyk-java-yazyk-programmirovaniya/